diff -Nru lincity-ng-2.0/Bugs-beta lincity-ng-2.9~git20150314/Bugs-beta --- lincity-ng-2.0/Bugs-beta 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/Bugs-beta 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +* regression from 1.0.3 (dont know precisely when) + When tech is not high enough, trying to build a grayed item, just close the item tray, + and show a message in the console only. + 1.0.3 behavior is to let the item tray open, so info_bubble pop-up and shows the required tech. + +* waterwell icon, tile (hmmm, must be redrawn by someone competent :-) + +* info with query tool seems to not work on desert and trees, or work randomly + +* bug of trunk = (re)initialisation of engine and UI is not enough. (max tech level...) + diff -Nru lincity-ng-2.0/config.h.in lincity-ng-2.9~git20150314/config.h.in --- lincity-ng-2.0/config.h.in 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/config.h.in 1970-01-01 00:00:00.000000000 +0000 @@ -1,110 +0,0 @@ -/* config.h.in. Generated from configure.ac by autoheader. */ - -/* Include pthread support for binary relocation? */ -#undef BR_PTHREAD - -/* Use binary relocation? */ -#undef ENABLE_BINRELOC - -/* Use the Apple OpenGL framework. */ -#undef HAVE_APPLE_OPENGL_FRAMEWORK - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -#undef HAVE_DIRENT_H - -/* Define to 1 if you have the `gettimeofday' function. */ -#undef HAVE_GETTIMEOFDAY - -/* Define if you have the iconv() function. */ -#undef HAVE_ICONV - -/* Define to 1 if you have the header file. */ -#undef HAVE_INTTYPES_H - -/* Define to 1 if you have the `pthread' library (-lpthread). */ -#undef HAVE_LIBPTHREAD - -/* Define to 1 if you have the header file. */ -#undef HAVE_MEMORY_H - -/* Define to 1 if you have the `mkdir' function. */ -#undef HAVE_MKDIR - -/* Define to 1 if you have the header file, and it defines `DIR'. */ -#undef HAVE_NDIR_H - -/* Define to 1 if you have the `popen' function. */ -#undef HAVE_POPEN - -/* Define if you have POSIX threads libraries and header files. */ -#undef HAVE_PTHREAD - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDINT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STDLIB_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRINGS_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_STRING_H - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -#undef HAVE_SYS_DIR_H - -/* Define to 1 if you have the header file, and it defines `DIR'. - */ -#undef HAVE_SYS_NDIR_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_STAT_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_SYS_TYPES_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_UNISTD_H - -/* Define to 1 if you have the header file. */ -#undef HAVE_WINDOWS_H - -/* Define as const if the declaration of iconv() needs const. */ -#undef ICONV_CONST - -/* Define to the address where bug reports for this package should be sent. */ -#undef PACKAGE_BUGREPORT - -/* Define to the full name of this package. */ -#undef PACKAGE_NAME - -/* Define to the full name and version of this package. */ -#undef PACKAGE_STRING - -/* Define to the one symbol short name of this package. */ -#undef PACKAGE_TARNAME - -/* Define to the version of this package. */ -#undef PACKAGE_VERSION - -/* Define to necessary symbol if this constant uses a non-standard name on - your system. */ -#undef PTHREAD_CREATE_JOINABLE - -/* Define to 1 if you have the ANSI C header files. */ -#undef STDC_HEADERS - -/* Define to 1 if you can safely include both and . */ -#undef TIME_WITH_SYS_TIME - -/* Define to empty if `const' does not conform to ANSI C. */ -#undef const - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -#undef inline -#endif diff -Nru lincity-ng-2.0/configure lincity-ng-2.9~git20150314/configure --- lincity-ng-2.0/configure 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/configure 1970-01-01 00:00:00.000000000 +0000 @@ -1,9060 +0,0 @@ -#! /bin/sh -# Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.61 for lincity-ng 2.0. -# -# Report bugs to . -# -# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. -# This configure script is free software; the Free Software Foundation -# gives unlimited permission to copy, distribute and modify it. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -as_nl=' -' -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - -if test "x$CONFIG_SHELL" = x; then - if (eval ":") 2>/dev/null; then - as_have_required=yes -else - as_have_required=no -fi - - if test $as_have_required = yes && (eval ": -(as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} - -exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : -else - exitcode=1 - echo positional parameters were not saved. -fi - -test \$exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=\$LINENO - as_lineno_2=\$LINENO - test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && - test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } -") 2> /dev/null; then - : -else - as_candidate_shells= - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - case $as_dir in - /*) - for as_base in sh bash ksh sh5; do - as_candidate_shells="$as_candidate_shells $as_dir/$as_base" - done;; - esac -done -IFS=$as_save_IFS - - - for as_shell in $as_candidate_shells $SHELL; do - # Try only shells that exist, to save several forks. - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { ("$as_shell") 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - -: -_ASEOF -}; then - CONFIG_SHELL=$as_shell - as_have_required=yes - if { "$as_shell" 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - -: -(as_func_return () { - (exit $1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} - -exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = "$1" ); then - : -else - exitcode=1 - echo positional parameters were not saved. -fi - -test $exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } - -_ASEOF -}; then - break -fi - -fi - - done - - if test "x$CONFIG_SHELL" != x; then - for as_var in BASH_ENV ENV - do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - done - export CONFIG_SHELL - exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} -fi - - - if test $as_have_required = no; then - echo This script requires a shell more modern than all the - echo shells that I found on your system. Please install a - echo modern shell, or manually run the script under such a - echo shell if you do have one. - { (exit 1); exit 1; } -fi - - -fi - -fi - - - -(eval "as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} - -exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : -else - exitcode=1 - echo positional parameters were not saved. -fi - -test \$exitcode = 0") || { - echo No shell found that supports shell functions. - echo Please tell autoconf@gnu.org about your system, - echo including any error possibly output before this - echo message -} - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir -fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - - -exec 7<&0 &1 - -# Name of the host. -# hostname on some systems (SVR3.2, Linux) returns a bogus exit status, -# so uname gets run too. -ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` - -# -# Initializations. -# -ac_default_prefix=/usr/local -ac_clean_files= -ac_config_libobj_dir=. -LIBOBJS= -cross_compiling=no -subdirs= -MFLAGS= -MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} - -# Identity of this package. -PACKAGE_NAME='lincity-ng' -PACKAGE_TARNAME='lincity-ng' -PACKAGE_VERSION='2.0' -PACKAGE_STRING='lincity-ng 2.0' -PACKAGE_BUGREPORT='matze@braunis.de' - -ac_unique_file="mk/jam/build.jam" -# Factoring default headers for most tests. -ac_includes_default="\ -#include -#ifdef HAVE_SYS_TYPES_H -# include -#endif -#ifdef HAVE_SYS_STAT_H -# include -#endif -#ifdef STDC_HEADERS -# include -# include -#else -# ifdef HAVE_STDLIB_H -# include -# endif -#endif -#ifdef HAVE_STRING_H -# if !defined STDC_HEADERS && defined HAVE_MEMORY_H -# include -# endif -# include -#endif -#ifdef HAVE_STRINGS_H -# include -#endif -#ifdef HAVE_INTTYPES_H -# include -#endif -#ifdef HAVE_STDINT_H -# include -#endif -#ifdef HAVE_UNISTD_H -# include -#endif" - -ac_subst_vars='SHELL -PATH_SEPARATOR -PACKAGE_NAME -PACKAGE_TARNAME -PACKAGE_VERSION -PACKAGE_STRING -PACKAGE_BUGREPORT -exec_prefix -prefix -program_transform_name -bindir -sbindir -libexecdir -datarootdir -datadir -sysconfdir -sharedstatedir -localstatedir -includedir -oldincludedir -docdir -infodir -htmldir -dvidir -pdfdir -psdir -libdir -localedir -mandir -DEFS -ECHO_C -ECHO_N -ECHO_T -LIBS -build_alias -host_alias -target_alias -build -build_cpu -build_vendor -build_os -host -host_cpu -host_vendor -host_os -target -target_cpu -target_vendor -target_os -VARIANT -CXX -CXXFLAGS -LDFLAGS -CPPFLAGS -ac_ct_CXX -EXEEXT -OBJEXT -INSTALL_PROGRAM -INSTALL_SCRIPT -INSTALL_DATA -XGETTEXT -XSLTPROC -CC -CFLAGS -ac_ct_CC -CPP -GREP -EGREP -LIBICONV -LTLIBICONV -ICONV_LIBS -BINRELOC_CFLAGS -BINRELOC_LIBS -ZLIB_AVAILABLE -ZLIB_CFLAGS -ZLIB_LIBS -PKG_CONFIG -LIBXML_CFLAGS -LIBXML_LIBS -XMKMF -acx_pthread_config -PTHREAD_CC -PTHREAD_LIBS -PTHREAD_CFLAGS -GL_CFLAGS -GL_LIBS -SDL_CONFIG -SDL_CFLAGS -SDL_LIBS -SDLMIXER_AVAILABLE -SDLMIXER_CFLAGS -SDLMIXER_LIBS -SDLIMAGE_AVAILABLE -SDLIMAGE_CFLAGS -SDLIMAGE_LIBS -SDLTTF_AVAILABLE -SDLTTF_CFLAGS -SDLTTF_LIBS -SDLGFX_AVAILABLE -SDLGFX_CFLAGS -SDLGFX_LIBS -PHYSFS_AVAILABLE -PHYSFS_CFLAGS -PHYSFS_LIBS -INSTALL -LIBOBJS -LTLIBOBJS' -ac_subst_files='' - ac_precious_vars='build_alias -host_alias -target_alias -CXX -CXXFLAGS -LDFLAGS -LIBS -CPPFLAGS -CCC -CC -CFLAGS -CPP -XMKMF' - - -# Initialize some variables set by options. -ac_init_help= -ac_init_version=false -# The variables have the same names as the options, with -# dashes changed to underlines. -cache_file=/dev/null -exec_prefix=NONE -no_create= -no_recursion= -prefix=NONE -program_prefix=NONE -program_suffix=NONE -program_transform_name=s,x,x, -silent= -site= -srcdir= -verbose= -x_includes=NONE -x_libraries=NONE - -# Installation directory options. -# These are left unexpanded so users can "make install exec_prefix=/foo" -# and all the variables that are supposed to be based on exec_prefix -# by default will actually change. -# Use braces instead of parens because sh, perl, etc. also accept them. -# (The list follows the same order as the GNU Coding Standards.) -bindir='${exec_prefix}/bin' -sbindir='${exec_prefix}/sbin' -libexecdir='${exec_prefix}/libexec' -datarootdir='${prefix}/share' -datadir='${datarootdir}' -sysconfdir='${prefix}/etc' -sharedstatedir='${prefix}/com' -localstatedir='${prefix}/var' -includedir='${prefix}/include' -oldincludedir='/usr/include' -docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' -infodir='${datarootdir}/info' -htmldir='${docdir}' -dvidir='${docdir}' -pdfdir='${docdir}' -psdir='${docdir}' -libdir='${exec_prefix}/lib' -localedir='${datarootdir}/locale' -mandir='${datarootdir}/man' - -ac_prev= -ac_dashdash= -for ac_option -do - # If the previous option needs an argument, assign it. - if test -n "$ac_prev"; then - eval $ac_prev=\$ac_option - ac_prev= - continue - fi - - case $ac_option in - *=*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; - *) ac_optarg=yes ;; - esac - - # Accept the important Cygnus configure options, so we can diagnose typos. - - case $ac_dashdash$ac_option in - --) - ac_dashdash=yes ;; - - -bindir | --bindir | --bindi | --bind | --bin | --bi) - ac_prev=bindir ;; - -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) - bindir=$ac_optarg ;; - - -build | --build | --buil | --bui | --bu) - ac_prev=build_alias ;; - -build=* | --build=* | --buil=* | --bui=* | --bu=*) - build_alias=$ac_optarg ;; - - -cache-file | --cache-file | --cache-fil | --cache-fi \ - | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) - ac_prev=cache_file ;; - -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ - | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) - cache_file=$ac_optarg ;; - - --config-cache | -C) - cache_file=config.cache ;; - - -datadir | --datadir | --datadi | --datad) - ac_prev=datadir ;; - -datadir=* | --datadir=* | --datadi=* | --datad=*) - datadir=$ac_optarg ;; - - -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ - | --dataroo | --dataro | --datar) - ac_prev=datarootdir ;; - -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ - | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) - datarootdir=$ac_optarg ;; - - -disable-* | --disable-*) - ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` - eval enable_$ac_feature=no ;; - - -docdir | --docdir | --docdi | --doc | --do) - ac_prev=docdir ;; - -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) - docdir=$ac_optarg ;; - - -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) - ac_prev=dvidir ;; - -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) - dvidir=$ac_optarg ;; - - -enable-* | --enable-*) - ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_feature" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid feature name: $ac_feature" >&2 - { (exit 1); exit 1; }; } - ac_feature=`echo $ac_feature | sed 's/[-.]/_/g'` - eval enable_$ac_feature=\$ac_optarg ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix=$ac_optarg ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he | -h) - ac_init_help=long ;; - -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) - ac_init_help=recursive ;; - -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) - ac_init_help=short ;; - - -host | --host | --hos | --ho) - ac_prev=host_alias ;; - -host=* | --host=* | --hos=* | --ho=*) - host_alias=$ac_optarg ;; - - -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) - ac_prev=htmldir ;; - -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ - | --ht=*) - htmldir=$ac_optarg ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir=$ac_optarg ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir=$ac_optarg ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir=$ac_optarg ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir=$ac_optarg ;; - - -localedir | --localedir | --localedi | --localed | --locale) - ac_prev=localedir ;; - -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) - localedir=$ac_optarg ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst | --locals) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) - localstatedir=$ac_optarg ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir=$ac_optarg ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c | -n) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir=$ac_optarg ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix=$ac_optarg ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix=$ac_optarg ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix=$ac_optarg ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name=$ac_optarg ;; - - -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) - ac_prev=pdfdir ;; - -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) - pdfdir=$ac_optarg ;; - - -psdir | --psdir | --psdi | --psd | --ps) - ac_prev=psdir ;; - -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) - psdir=$ac_optarg ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir=$ac_optarg ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir=$ac_optarg ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site=$ac_optarg ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir=$ac_optarg ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir=$ac_optarg ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target_alias ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target_alias=$ac_optarg ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers | -V) - ac_init_version=: ;; - - -with-* | --with-*) - ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/[-.]/_/g'` - eval with_$ac_package=\$ac_optarg ;; - - -without-* | --without-*) - ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` - # Reject names that are not valid shell variable names. - expr "x$ac_package" : ".*[^-._$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid package name: $ac_package" >&2 - { (exit 1); exit 1; }; } - ac_package=`echo $ac_package | sed 's/[-.]/_/g'` - eval with_$ac_package=no ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes=$ac_optarg ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries=$ac_optarg ;; - - -*) { echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } - ;; - - *=*) - ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` - # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } - eval $ac_envvar=\$ac_optarg - export $ac_envvar ;; - - *) - # FIXME: should be removed in autoconf 3.0. - echo "$as_me: WARNING: you should use --build, --host, --target" >&2 - expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && - echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} - ;; - - esac -done - -if test -n "$ac_prev"; then - ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } -fi - -# Be sure to have absolute directory names. -for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ - datadir sysconfdir sharedstatedir localstatedir includedir \ - oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ - libdir localedir mandir -do - eval ac_val=\$$ac_var - case $ac_val in - [\\/$]* | ?:[\\/]* ) continue;; - NONE | '' ) case $ac_var in *prefix ) continue;; esac;; - esac - { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; } -done - -# There might be people who depend on the old broken behavior: `$host' -# used to hold the argument of --host etc. -# FIXME: To remove some day. -build=$build_alias -host=$host_alias -target=$target_alias - -# FIXME: To remove some day. -if test "x$host_alias" != x; then - if test "x$build_alias" = x; then - cross_compiling=maybe - echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. - If a cross compiler is detected then cross compile mode will be used." >&2 - elif test "x$build_alias" != "x$host_alias"; then - cross_compiling=yes - fi -fi - -ac_tool_prefix= -test -n "$host_alias" && ac_tool_prefix=$host_alias- - -test "$silent" = yes && exec 6>/dev/null - - -ac_pwd=`pwd` && test -n "$ac_pwd" && -ac_ls_di=`ls -di .` && -ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - { echo "$as_me: error: Working directory cannot be determined" >&2 - { (exit 1); exit 1; }; } -test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - { echo "$as_me: error: pwd does not report name of working directory" >&2 - { (exit 1); exit 1; }; } - - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then the parent directory. - ac_confdir=`$as_dirname -- "$0" || -$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$0" : 'X\(//\)[^/]' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X"$0" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - srcdir=$ac_confdir - if test ! -r "$srcdir/$ac_unique_file"; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r "$srcdir/$ac_unique_file"; then - test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } -fi -ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" -ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || { echo "$as_me: error: $ac_msg" >&2 - { (exit 1); exit 1; }; } - pwd)` -# When building in place, set srcdir=. -if test "$ac_abs_confdir" = "$ac_pwd"; then - srcdir=. -fi -# Remove unnecessary trailing slashes from srcdir. -# Double slashes in file names in object file debugging info -# mess up M-x gdb in Emacs. -case $srcdir in -*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; -esac -for ac_var in $ac_precious_vars; do - eval ac_env_${ac_var}_set=\${${ac_var}+set} - eval ac_env_${ac_var}_value=\$${ac_var} - eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} - eval ac_cv_env_${ac_var}_value=\$${ac_var} -done - -# -# Report the --help message. -# -if test "$ac_init_help" = "long"; then - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat <<_ACEOF -\`configure' configures lincity-ng 2.0 to adapt to many kinds of systems. - -Usage: $0 [OPTION]... [VAR=VALUE]... - -To assign environment variables (e.g., CC, CFLAGS...), specify them as -VAR=VALUE. See below for descriptions of some of the useful variables. - -Defaults for the options are specified in brackets. - -Configuration: - -h, --help display this help and exit - --help=short display options specific to this package - --help=recursive display the short help of all the included packages - -V, --version display version information and exit - -q, --quiet, --silent do not print \`checking...' messages - --cache-file=FILE cache test results in FILE [disabled] - -C, --config-cache alias for \`--cache-file=config.cache' - -n, --no-create do not create output files - --srcdir=DIR find the sources in DIR [configure dir or \`..'] - -Installation directories: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [PREFIX] - -By default, \`make install' will install all the files in -\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify -an installation prefix other than \`$ac_default_prefix' using \`--prefix', -for instance \`--prefix=\$HOME'. - -For better control, use the options below. - -Fine tuning of the installation directories: - --bindir=DIR user executables [EPREFIX/bin] - --sbindir=DIR system admin executables [EPREFIX/sbin] - --libexecdir=DIR program executables [EPREFIX/libexec] - --sysconfdir=DIR read-only single-machine data [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] - --localstatedir=DIR modifiable single-machine data [PREFIX/var] - --libdir=DIR object code libraries [EPREFIX/lib] - --includedir=DIR C header files [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc [/usr/include] - --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] - --datadir=DIR read-only architecture-independent data [DATAROOTDIR] - --infodir=DIR info documentation [DATAROOTDIR/info] - --localedir=DIR locale-dependent data [DATAROOTDIR/locale] - --mandir=DIR man documentation [DATAROOTDIR/man] - --docdir=DIR documentation root [DATAROOTDIR/doc/lincity-ng] - --htmldir=DIR html documentation [DOCDIR] - --dvidir=DIR dvi documentation [DOCDIR] - --pdfdir=DIR pdf documentation [DOCDIR] - --psdir=DIR ps documentation [DOCDIR] -_ACEOF - - cat <<\_ACEOF - -X features: - --x-includes=DIR X include files are in DIR - --x-libraries=DIR X library files are in DIR - -System types: - --build=BUILD configure for building on BUILD [guessed] - --host=HOST cross-compile to build programs to run on HOST [BUILD] - --target=TARGET configure for building compilers for TARGET [HOST] -_ACEOF -fi - -if test -n "$ac_init_help"; then - case $ac_init_help in - short | recursive ) echo "Configuration of lincity-ng 2.0:";; - esac - cat <<\_ACEOF - -Optional Features: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --enable-optimize build with optimizations enabled (default YES) - --enable-debug build with debugging information (default NO) - --enable-profile build with profiling information (default NO) - --disable-rpath do not hardcode runtime library paths - --enable-binreloc compile with binary relocation support - (default=disabled) - --enable-binreloc-threads compile binary relocation with threads support - (default=yes) - --disable-sdltest Do not try to compile and run a test SDL program - -Optional Packages: - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-gnu-ld assume the C compiler uses GNU ld default=no - --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib - --without-libiconv-prefix don't search for libiconv in includedir and libdir - --with-libzlib=dir specify location of libzlib if not detected - automatically; uses dir, dir/include and dir/lib - --with-x use the X Window System - --with-apple-opengl-framework - use Apple OpenGL framework (Mac OS X only) - --with-sdl-prefix=PFX Prefix where SDL is installed (optional) - --with-sdl-exec-prefix=PFX Exec prefix where SDL is installed (optional) - --with-libSDL_mixer=dir specify location of libSDL_mixer if not detected - automatically; uses dir, dir/include and dir/lib - --with-libSDL_image=dir specify location of libSDL_image if not detected - automatically; uses dir, dir/include and dir/lib - --with-libSDL_ttf=dir specify location of libSDL_ttf if not detected - automatically; uses dir, dir/include and dir/lib - --with-libSDL_gfx=dir specify location of libSDL_gfx if not detected - automatically; uses dir, dir/include and dir/lib - --with-libphysfs=dir specify location of libphysfs if not detected - automatically; uses dir, dir/include and dir/lib - -Some influential environment variables: - CXX C++ compiler command - CXXFLAGS C++ compiler flags - LDFLAGS linker flags, e.g. -L if you have libraries in a - nonstandard directory - LIBS libraries to pass to the linker, e.g. -l - CPPFLAGS C/C++/Objective C preprocessor flags, e.g. -I if - you have headers in a nonstandard directory - CC C compiler command - CFLAGS C compiler flags - CPP C preprocessor - XMKMF Path to xmkmf, Makefile generator for X Window System - -Use these variables to override the choices made by `configure' or to help -it to find libraries and programs with nonstandard names/locations. - -Report bugs to . -_ACEOF -ac_status=$? -fi - -if test "$ac_init_help" = "recursive"; then - # If there are subdirs, report their specific --help. - for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue - test -d "$ac_dir" || continue - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - cd "$ac_dir" || { ac_status=$?; continue; } - # Check for guested configure. - if test -f "$ac_srcdir/configure.gnu"; then - echo && - $SHELL "$ac_srcdir/configure.gnu" --help=recursive - elif test -f "$ac_srcdir/configure"; then - echo && - $SHELL "$ac_srcdir/configure" --help=recursive - else - echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 - fi || ac_status=$? - cd "$ac_pwd" || { ac_status=$?; break; } - done -fi - -test -n "$ac_init_help" && exit $ac_status -if $ac_init_version; then - cat <<\_ACEOF -lincity-ng configure 2.0 -generated by GNU Autoconf 2.61 - -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. -This configure script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it. -_ACEOF - exit -fi -cat >config.log <<_ACEOF -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. - -It was created by lincity-ng $as_me 2.0, which was -generated by GNU Autoconf 2.61. Invocation command line was - - $ $0 $@ - -_ACEOF -exec 5>>config.log -{ -cat <<_ASUNAME -## --------- ## -## Platform. ## -## --------- ## - -hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` -uname -m = `(uname -m) 2>/dev/null || echo unknown` -uname -r = `(uname -r) 2>/dev/null || echo unknown` -uname -s = `(uname -s) 2>/dev/null || echo unknown` -uname -v = `(uname -v) 2>/dev/null || echo unknown` - -/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` -/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` - -/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` -/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` -/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` -/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` -/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` -/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` -/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` - -_ASUNAME - -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - echo "PATH: $as_dir" -done -IFS=$as_save_IFS - -} >&5 - -cat >&5 <<_ACEOF - - -## ----------- ## -## Core tests. ## -## ----------- ## - -_ACEOF - - -# Keep a trace of the command line. -# Strip out --no-create and --no-recursion so they do not pile up. -# Strip out --silent because we don't want to record it for future runs. -# Also quote any args containing shell meta-characters. -# Make two passes to allow for proper duplicate-argument suppression. -ac_configure_args= -ac_configure_args0= -ac_configure_args1= -ac_must_keep_next=false -for ac_pass in 1 2 -do - for ac_arg - do - case $ac_arg in - -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - continue ;; - *\'*) - ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; - esac - case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; - 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" - if test $ac_must_keep_next = true; then - ac_must_keep_next=false # Got value, back to normal. - else - case $ac_arg in - *=* | --config-cache | -C | -disable-* | --disable-* \ - | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ - | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ - | -with-* | --with-* | -without-* | --without-* | --x) - case "$ac_configure_args0 " in - "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; - esac - ;; - -* ) ac_must_keep_next=true ;; - esac - fi - ac_configure_args="$ac_configure_args '$ac_arg'" - ;; - esac - done -done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } - -# When interrupted or exit'd, cleanup temporary files, and complete -# config.log. We remove comments because anyway the quotes in there -# would cause problems or look ugly. -# WARNING: Use '\'' to represent an apostrophe within the trap. -# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. -trap 'exit_status=$? - # Save into config.log some information that might help in debugging. - { - echo - - cat <<\_ASBOX -## ---------------- ## -## Cache variables. ## -## ---------------- ## -_ASBOX - echo - # The following way of writing the cache mishandles newlines in values, -( - for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 -echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - *) $as_unset $ac_var ;; - esac ;; - esac - done - (set) 2>&1 | - case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - sed -n \ - "s/'\''/'\''\\\\'\'''\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" - ;; #( - *) - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) - echo - - cat <<\_ASBOX -## ----------------- ## -## Output variables. ## -## ----------------- ## -_ASBOX - echo - for ac_var in $ac_subst_vars - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - echo "$ac_var='\''$ac_val'\''" - done | sort - echo - - if test -n "$ac_subst_files"; then - cat <<\_ASBOX -## ------------------- ## -## File substitutions. ## -## ------------------- ## -_ASBOX - echo - for ac_var in $ac_subst_files - do - eval ac_val=\$$ac_var - case $ac_val in - *\'\''*) ac_val=`echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; - esac - echo "$ac_var='\''$ac_val'\''" - done | sort - echo - fi - - if test -s confdefs.h; then - cat <<\_ASBOX -## ----------- ## -## confdefs.h. ## -## ----------- ## -_ASBOX - echo - cat confdefs.h - echo - fi - test "$ac_signal" != 0 && - echo "$as_me: caught signal $ac_signal" - echo "$as_me: exit $exit_status" - } >&5 - rm -f core *.core core.conftest.* && - rm -f -r conftest* confdefs* conf$$* $ac_clean_files && - exit $exit_status -' 0 -for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal -done -ac_signal=0 - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -f -r conftest* confdefs.h - -# Predefined preprocessor variables. - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_NAME "$PACKAGE_NAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_TARNAME "$PACKAGE_TARNAME" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION "$PACKAGE_VERSION" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_STRING "$PACKAGE_STRING" -_ACEOF - - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" -_ACEOF - - -# Let the site file select an alternate cache file if it wants to. -# Prefer explicitly selected file to automatically selected ones. -if test -n "$CONFIG_SITE"; then - set x "$CONFIG_SITE" -elif test "x$prefix" != xNONE; then - set x "$prefix/share/config.site" "$prefix/etc/config.site" -else - set x "$ac_default_prefix/share/config.site" \ - "$ac_default_prefix/etc/config.site" -fi -shift -for ac_site_file -do - if test -r "$ac_site_file"; then - { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 -echo "$as_me: loading site script $ac_site_file" >&6;} - sed 's/^/| /' "$ac_site_file" >&5 - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - # Some versions of bash will fail to source /dev/null (special - # files actually), so we avoid doing that. - if test -f "$cache_file"; then - { echo "$as_me:$LINENO: loading cache $cache_file" >&5 -echo "$as_me: loading cache $cache_file" >&6;} - case $cache_file in - [\\/]* | ?:[\\/]* ) . "$cache_file";; - *) . "./$cache_file";; - esac - fi -else - { echo "$as_me:$LINENO: creating cache $cache_file" >&5 -echo "$as_me: creating cache $cache_file" >&6;} - >$cache_file -fi - -# Check that the precious variables saved in the cache have kept the same -# value. -ac_cache_corrupted=false -for ac_var in $ac_precious_vars; do - eval ac_old_set=\$ac_cv_env_${ac_var}_set - eval ac_new_set=\$ac_env_${ac_var}_set - eval ac_old_val=\$ac_cv_env_${ac_var}_value - eval ac_new_val=\$ac_env_${ac_var}_value - case $ac_old_set,$ac_new_set in - set,) - { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,set) - { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 -echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} - ac_cache_corrupted=: ;; - ,);; - *) - if test "x$ac_old_val" != "x$ac_new_val"; then - { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 -echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} - { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 -echo "$as_me: former value: $ac_old_val" >&2;} - { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 -echo "$as_me: current value: $ac_new_val" >&2;} - ac_cache_corrupted=: - fi;; - esac - # Pass precious variables to config.status. - if test "$ac_new_set" = set; then - case $ac_new_val in - *\'*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; - *) ac_arg=$ac_var=$ac_new_val ;; - esac - case " $ac_configure_args " in - *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; - esac - fi -done -if $ac_cache_corrupted; then - { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 -echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - - - - - - - - - - - - - - - - - - - - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - -ac_aux_dir= -for ac_dir in mk/autoconf "$srcdir"/mk/autoconf; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi -done -if test -z "$ac_aux_dir"; then - { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in mk/autoconf \"$srcdir\"/mk/autoconf" >&5 -echo "$as_me: error: cannot find install-sh or install.sh in mk/autoconf \"$srcdir\"/mk/autoconf" >&2;} - { (exit 1); exit 1; }; } -fi - -# These three variables are undocumented and unsupported, -# and are intended to be withdrawn in a future Autoconf release. -# They can cause serious problems if a builder's source tree is in a directory -# whose full name contains unusual characters. -ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. -ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. -ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. - - - -# Make sure we can run config.sub. -$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - { { echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 -echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} - { (exit 1); exit 1; }; } - -{ echo "$as_me:$LINENO: checking build system type" >&5 -echo $ECHO_N "checking build system type... $ECHO_C" >&6; } -if test "${ac_cv_build+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_build_alias=$build_alias -test "x$ac_build_alias" = x && - ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` -test "x$ac_build_alias" = x && - { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } -ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 -echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} - { (exit 1); exit 1; }; } - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_build" >&5 -echo "${ECHO_T}$ac_cv_build" >&6; } -case $ac_cv_build in -*-*-*) ;; -*) { { echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 -echo "$as_me: error: invalid value of canonical build" >&2;} - { (exit 1); exit 1; }; };; -esac -build=$ac_cv_build -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_build -shift -build_cpu=$1 -build_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -build_os=$* -IFS=$ac_save_IFS -case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac - - -{ echo "$as_me:$LINENO: checking host system type" >&5 -echo $ECHO_N "checking host system type... $ECHO_C" >&6; } -if test "${ac_cv_host+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "x$host_alias" = x; then - ac_cv_host=$ac_cv_build -else - ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 -echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} - { (exit 1); exit 1; }; } -fi - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_host" >&5 -echo "${ECHO_T}$ac_cv_host" >&6; } -case $ac_cv_host in -*-*-*) ;; -*) { { echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 -echo "$as_me: error: invalid value of canonical host" >&2;} - { (exit 1); exit 1; }; };; -esac -host=$ac_cv_host -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_host -shift -host_cpu=$1 -host_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -host_os=$* -IFS=$ac_save_IFS -case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac - - -{ echo "$as_me:$LINENO: checking target system type" >&5 -echo $ECHO_N "checking target system type... $ECHO_C" >&6; } -if test "${ac_cv_target+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "x$target_alias" = x; then - ac_cv_target=$ac_cv_host -else - ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || - { { echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5 -echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;} - { (exit 1); exit 1; }; } -fi - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_target" >&5 -echo "${ECHO_T}$ac_cv_target" >&6; } -case $ac_cv_target in -*-*-*) ;; -*) { { echo "$as_me:$LINENO: error: invalid value of canonical target" >&5 -echo "$as_me: error: invalid value of canonical target" >&2;} - { (exit 1); exit 1; }; };; -esac -target=$ac_cv_target -ac_save_IFS=$IFS; IFS='-' -set x $ac_cv_target -shift -target_cpu=$1 -target_vendor=$2 -shift; shift -# Remember, the first character of IFS is used to create $*, -# except with old shells: -target_os=$* -IFS=$ac_save_IFS -case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac - - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -test -n "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- - -#---------------------------------------------------------------------------- -# Configuration header -#---------------------------------------------------------------------------- -ac_config_headers="$ac_config_headers config.h" - - -# stupid autoconf is adding default -g -O2 flags when we don't want this :-/ -test ".$CXXFLAGS" = "." && CXXFLAGS=" " -test ".$CFLAGS" = "." && CFLAGS=" " - -#---------------------------------------------------------------------------- -# Check for build variant (debug, profile, optimize) -#---------------------------------------------------------------------------- -VARIANT=optimize -# Check whether --enable-optimize was given. -if test "${enable_optimize+set}" = set; then - enableval=$enable_optimize; test "$enableval" = "yes" && VARIANT=optimize -fi - - -# Check whether --enable-debug was given. -if test "${enable_debug+set}" = set; then - enableval=$enable_debug; test "$enableval" = "yes" && VARIANT=debug -fi - - -# Check whether --enable-profile was given. -if test "${enable_profile+set}" = set; then - enableval=$enable_profile; test "$enableval" = "yes" && VARIANT=profile -fi - - - -#---------------------------------------------------------------------------- -# find applications -#---------------------------------------------------------------------------- -ac_ext=cpp -ac_cpp='$CXXCPP $CPPFLAGS' -ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -if test -z "$CXX"; then - if test -n "$CCC"; then - CXX=$CCC - else - if test -n "$ac_tool_prefix"; then - for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CXX"; then - ac_cv_prog_CXX="$CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -CXX=$ac_cv_prog_CXX -if test -n "$CXX"; then - { echo "$as_me:$LINENO: result: $CXX" >&5 -echo "${ECHO_T}$CXX" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - test -n "$CXX" && break - done -fi -if test -z "$CXX"; then - ac_ct_CXX=$CXX - for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CXX"; then - ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_CXX="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -ac_ct_CXX=$ac_cv_prog_ac_ct_CXX -if test -n "$ac_ct_CXX"; then - { echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 -echo "${ECHO_T}$ac_ct_CXX" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - test -n "$ac_ct_CXX" && break -done - - if test "x$ac_ct_CXX" = x; then - CXX="g++" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - CXX=$ac_ct_CXX - fi -fi - - fi -fi -# Provide some information about the compiler. -echo "$as_me:$LINENO: checking for C++ compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler -V >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.exe b.out" -# Try to create an executable without -o first, disregard a.out. -# It will help us diagnose broken compilers, and finding out an intuition -# of exeext. -{ echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5 -echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6; } -ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` -# -# List of possible output files, starting from the most likely. -# The algorithm is not robust to junk in `.', hence go to wildcards (a.*) -# only as a last resort. b.out is created by i960 compilers. -ac_files='a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out' -# -# The IRIX 6 linker writes into existing files which may not be -# executable, retaining their permissions. Remove them first so a -# subsequent execution test works. -ac_rmfiles= -for ac_file in $ac_files -do - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; - * ) ac_rmfiles="$ac_rmfiles $ac_file";; - esac -done -rm -f $ac_rmfiles - -if { (ac_try="$ac_link_default" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link_default") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. -# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' -# in a Makefile. We should not override ac_cv_exeext if it was cached, -# so that the user can short-circuit this test for compilers unknown to -# Autoconf. -for ac_file in $ac_files '' -do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) - ;; - [ab].out ) - # We found the default executable, but exeext='' is most - # certainly right. - break;; - *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; - then :; else - ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - fi - # We set ac_cv_exeext here because the later test for it is not - # safe: cross compilers may not add the suffix if given an `-o' - # argument, so we may need to know it at that point already. - # Even if this section looks crufty: it has the advantage of - # actually working. - break;; - * ) - break;; - esac -done -test "$ac_cv_exeext" = no && ac_cv_exeext= - -else - ac_file='' -fi - -{ echo "$as_me:$LINENO: result: $ac_file" >&5 -echo "${ECHO_T}$ac_file" >&6; } -if test -z "$ac_file"; then - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: C++ compiler cannot create executables -See \`config.log' for more details." >&5 -echo "$as_me: error: C++ compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; } -fi - -ac_exeext=$ac_cv_exeext - -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5 -echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6; } -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 -# If not cross compiling, check that we can run a simple program. -if test "$cross_compiling" != yes; then - if { ac_try='./$ac_file' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cross_compiling=no - else - if test "$cross_compiling" = maybe; then - cross_compiling=yes - else - { { echo "$as_me:$LINENO: error: cannot run C++ compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot run C++ compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - fi - fi -fi -{ echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } - -rm -f a.out a.exe conftest$ac_cv_exeext b.out -ac_clean_files=$ac_clean_files_save -# Check that the compiler produces executables we can run. If not, either -# the compiler is broken, or we cross compile. -{ echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 -echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6; } -{ echo "$as_me:$LINENO: result: $cross_compiling" >&5 -echo "${ECHO_T}$cross_compiling" >&6; } - -{ echo "$as_me:$LINENO: checking for suffix of executables" >&5 -echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6; } -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - # If both `conftest.exe' and `conftest' are `present' (well, observable) -# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will -# work properly (i.e., refer to `conftest.exe'), while it won't with -# `rm'. -for ac_file in conftest.exe conftest conftest.*; do - test -f "$ac_file" || continue - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.o | *.obj ) ;; - *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` - break;; - * ) break;; - esac -done -else - { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest$ac_cv_exeext -{ echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 -echo "${ECHO_T}$ac_cv_exeext" >&6; } - -rm -f conftest.$ac_ext -EXEEXT=$ac_cv_exeext -ac_exeext=$EXEEXT -{ echo "$as_me:$LINENO: checking for suffix of object files" >&5 -echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6; } -if test "${ac_cv_objext+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.o conftest.obj -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then - for ac_file in conftest.o conftest.obj conftest.*; do - test -f "$ac_file" || continue; - case $ac_file in - *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf ) ;; - *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` - break;; - esac -done -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f conftest.$ac_cv_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 -echo "${ECHO_T}$ac_cv_objext" >&6; } -OBJEXT=$ac_cv_objext -ac_objext=$OBJEXT -{ echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6; } -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_cxx_compiler_gnu=$ac_compiler_gnu - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6; } -GXX=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CXXFLAGS=${CXXFLAGS+set} -ac_save_CXXFLAGS=$CXXFLAGS -{ echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 -echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6; } -if test "${ac_cv_prog_cxx_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_save_cxx_werror_flag=$ac_cxx_werror_flag - ac_cxx_werror_flag=yes - ac_cv_prog_cxx_g=no - CXXFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_prog_cxx_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CXXFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cxx_werror_flag=$ac_save_cxx_werror_flag - CXXFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_prog_cxx_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cxx_werror_flag=$ac_save_cxx_werror_flag -fi -{ echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6; } -if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS=$ac_save_CXXFLAGS -elif test $ac_cv_prog_cxx_g = yes; then - if test "$GXX" = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-g" - fi -else - if test "$GXX" = yes; then - CXXFLAGS="-O2" - else - CXXFLAGS= - fi -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AmigaOS /C/install, which installs bootblocks on floppy discs -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" -# OS/2's system install, which has a completely different semantic -# ./install, which can be erroneously created by make from ./install.sh. -{ echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 -echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6; } -if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ - /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ - /usr/ucb/* ) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_prog$ac_exec_ext" && $as_test_x "$as_dir/$ac_prog$ac_exec_ext"; }; then - if test $ac_prog = install && - grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - elif test $ac_prog = install && - grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then - # program-specific install script used by HP pwplus--don't use. - : - else - ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" - break 3 - fi - fi - done - done - ;; -esac -done -IFS=$as_save_IFS - - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL=$ac_cv_path_install - else - # As a last resort, use the slow shell script. Don't cache a - # value for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the value is a relative name. - INSTALL=$ac_install_sh - fi -fi -{ echo "$as_me:$LINENO: result: $INSTALL" >&5 -echo "${ECHO_T}$INSTALL" >&6; } - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -for ac_prog in xgettext -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_XGETTEXT+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$XGETTEXT"; then - ac_cv_prog_XGETTEXT="$XGETTEXT" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_XGETTEXT="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -XGETTEXT=$ac_cv_prog_XGETTEXT -if test -n "$XGETTEXT"; then - { echo "$as_me:$LINENO: result: $XGETTEXT" >&5 -echo "${ECHO_T}$XGETTEXT" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - test -n "$XGETTEXT" && break -done - -for ac_prog in xsltproc -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_XSLTPROC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$XSLTPROC"; then - ac_cv_prog_XSLTPROC="$XSLTPROC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_XSLTPROC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -XSLTPROC=$ac_cv_prog_XSLTPROC -if test -n "$XSLTPROC"; then - { echo "$as_me:$LINENO: result: $XSLTPROC" >&5 -echo "${ECHO_T}$XSLTPROC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - test -n "$XSLTPROC" && break -done - - -# check if our c++ compiler is gcc3.2 or newer -{ echo "$as_me:$LINENO: checking whether g++ is new enough" >&5 -echo $ECHO_N "checking whether g++ is new enough... $ECHO_C" >&6; } - -ac_ext=cpp -ac_cpp='$CXXCPP $CPPFLAGS' -ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_cxx_compiler_gnu - - -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - -#ifndef __GNUC__ -#error no gcc compiler found (__GNUC__ not defined) -#endif -#if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC__ < 2) -#error gcc compiler too old. Need at least version 3.2.0 -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - { echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } - { { echo "$as_me:$LINENO: error: -Error: Your gcc version is too old. Lincity-ng needs at least gcc 3.2.0. -" >&5 -echo "$as_me: error: -Error: Your gcc version is too old. Lincity-ng needs at least gcc 3.2.0. -" >&2;} - { (exit 1); exit 1; }; } -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -#---------------------------------------------------------------------------- -# check headers -#---------------------------------------------------------------------------- -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. -set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_CC="${ac_tool_prefix}gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - -fi -if test -z "$ac_cv_prog_CC"; then - ac_ct_CC=$CC - # Extract the first word of "gcc", so it can be a program name with args. -set dummy gcc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_CC="gcc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -else - CC="$ac_cv_prog_CC" -fi - -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. -set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_CC="${ac_tool_prefix}cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - fi -fi -if test -z "$CC"; then - # Extract the first word of "cc", so it can be a program name with args. -set dummy cc; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else - ac_prog_rejected=no -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then - ac_prog_rejected=yes - continue - fi - ac_cv_prog_CC="cc" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -if test $ac_prog_rejected = yes; then - # We found a bogon in the path, so make sure we never use it. - set dummy $ac_cv_prog_CC - shift - if test $# != 0; then - # We chose a different compiler from the bogus one. - # However, it has the same basename, so the bogon will be chosen - # first if we set CC to just the basename; use the full file name. - shift - ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" - fi -fi -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - -fi -if test -z "$CC"; then - if test -n "$ac_tool_prefix"; then - for ac_prog in cl.exe - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$CC"; then - ac_cv_prog_CC="$CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -CC=$ac_cv_prog_CC -if test -n "$CC"; then - { echo "$as_me:$LINENO: result: $CC" >&5 -echo "${ECHO_T}$CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - test -n "$CC" && break - done -fi -if test -z "$CC"; then - ac_ct_CC=$CC - for ac_prog in cl.exe -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$ac_ct_CC"; then - ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_CC="$ac_prog" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - -fi -fi -ac_ct_CC=$ac_cv_prog_ac_ct_CC -if test -n "$ac_ct_CC"; then - { echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 -echo "${ECHO_T}$ac_ct_CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - test -n "$ac_ct_CC" && break -done - - if test "x$ac_ct_CC" = x; then - CC="" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ echo "$as_me:$LINENO: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&5 -echo "$as_me: WARNING: In the future, Autoconf will not detect cross-tools -whose name does not start with the host triplet. If you think this -configuration is useful to you, please write to autoconf@gnu.org." >&2;} -ac_tool_warned=yes ;; -esac - CC=$ac_ct_CC - fi -fi - -fi - - -test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } - -# Provide some information about the compiler. -echo "$as_me:$LINENO: checking for C compiler version" >&5 -ac_compiler=`set X $ac_compile; echo $2` -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compiler -V >&5") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } - -{ echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 -echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_compiler_gnu=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_c_compiler_gnu=$ac_compiler_gnu - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 -echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6; } -GCC=`test $ac_compiler_gnu = yes && echo yes` -ac_test_CFLAGS=${CFLAGS+set} -ac_save_CFLAGS=$CFLAGS -{ echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 -echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_save_c_werror_flag=$ac_c_werror_flag - ac_c_werror_flag=yes - ac_cv_prog_cc_g=no - CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_c_werror_flag=$ac_save_c_werror_flag - CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_prog_cc_g=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_c_werror_flag=$ac_save_c_werror_flag -fi -{ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_g" >&6; } -if test "$ac_test_CFLAGS" = set; then - CFLAGS=$ac_save_CFLAGS -elif test $ac_cv_prog_cc_g = yes; then - if test "$GCC" = yes; then - CFLAGS="-g -O2" - else - CFLAGS="-g" - fi -else - if test "$GCC" = yes; then - CFLAGS="-O2" - else - CFLAGS= - fi -fi -{ echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 -echo $ECHO_N "checking for $CC option to accept ISO C89... $ECHO_C" >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_prog_cc_c89=no -ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include -/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ -struct buf { int x; }; -FILE * (*rcsopen) (struct buf *, struct stat *, int); -static char *e (p, i) - char **p; - int i; -{ - return p[i]; -} -static char *f (char * (*g) (char **, int), char **p, ...) -{ - char *s; - va_list v; - va_start (v,p); - s = g (p, va_arg (v,int)); - va_end (v); - return s; -} - -/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has - function prototypes and stuff, but not '\xHH' hex character constants. - These don't provoke an error unfortunately, instead are silently treated - as 'x'. The following induces an error, until -std is added to get - proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an - array size at least. It's necessary to write '\x00'==0 to get something - that's true only with -std. */ -int osf4_cc_array ['\x00' == 0 ? 1 : -1]; - -/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters - inside strings and character constants. */ -#define FOO(x) 'x' -int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; - -int test (int i, double x); -struct s1 {int (*f) (int a);}; -struct s2 {int (*f) (double a);}; -int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); -int argc; -char **argv; -int -main () -{ -return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; - ; - return 0; -} -_ACEOF -for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ - -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" -do - CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_prog_cc_c89=$ac_arg -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext - test "x$ac_cv_prog_cc_c89" != "xno" && break -done -rm -f conftest.$ac_ext -CC=$ac_save_CC - -fi -# AC_CACHE_VAL -case "x$ac_cv_prog_cc_c89" in - x) - { echo "$as_me:$LINENO: result: none needed" >&5 -echo "${ECHO_T}none needed" >&6; } ;; - xno) - { echo "$as_me:$LINENO: result: unsupported" >&5 -echo "${ECHO_T}unsupported" >&6; } ;; - *) - CC="$CC $ac_cv_prog_cc_c89" - { echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 -echo "${ECHO_T}$ac_cv_prog_cc_c89" >&6; } ;; -esac - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - - - - - -ac_header_dirent=no -for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do - as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` -{ echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5 -echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include <$ac_hdr> - -int -main () -{ -if ((DIR *) 0) -return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_Header=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 -_ACEOF - -ac_header_dirent=$ac_hdr; break -fi - -done -# Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. -if test $ac_header_dirent = dirent.h; then - { echo "$as_me:$LINENO: checking for library containing opendir" >&5 -echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; } -if test "${ac_cv_search_opendir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_func_search_save_LIBS=$LIBS -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char opendir (); -int -main () -{ -return opendir (); - ; - return 0; -} -_ACEOF -for ac_lib in '' dir; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - ac_cv_search_opendir=$ac_res -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext - if test "${ac_cv_search_opendir+set}" = set; then - break -fi -done -if test "${ac_cv_search_opendir+set}" = set; then - : -else - ac_cv_search_opendir=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 -echo "${ECHO_T}$ac_cv_search_opendir" >&6; } -ac_res=$ac_cv_search_opendir -if test "$ac_res" != no; then - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -fi - -else - { echo "$as_me:$LINENO: checking for library containing opendir" >&5 -echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6; } -if test "${ac_cv_search_opendir+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_func_search_save_LIBS=$LIBS -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char opendir (); -int -main () -{ -return opendir (); - ; - return 0; -} -_ACEOF -for ac_lib in '' x; do - if test -z "$ac_lib"; then - ac_res="none required" - else - ac_res=-l$ac_lib - LIBS="-l$ac_lib $ac_func_search_save_LIBS" - fi - rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - ac_cv_search_opendir=$ac_res -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext - if test "${ac_cv_search_opendir+set}" = set; then - break -fi -done -if test "${ac_cv_search_opendir+set}" = set; then - : -else - ac_cv_search_opendir=no -fi -rm conftest.$ac_ext -LIBS=$ac_func_search_save_LIBS -fi -{ echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 -echo "${ECHO_T}$ac_cv_search_opendir" >&6; } -ac_res=$ac_cv_search_opendir -if test "$ac_res" != no; then - test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" - -fi - -fi - -{ echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 -echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6; } -if test "${ac_cv_header_time+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include - -int -main () -{ -if ((struct tm *) 0) -return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_header_time=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_time=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 -echo "${ECHO_T}$ac_cv_header_time" >&6; } -if test $ac_cv_header_time = yes; then - -cat >>confdefs.h <<\_ACEOF -#define TIME_WITH_SYS_TIME 1 -_ACEOF - -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 -echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6; } -# On Suns, sometimes $CPP names a directory. -if test -n "$CPP" && test -d "$CPP"; then - CPP= -fi -if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Double quotes because CPP needs to be expanded - for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" - do - ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi - -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi - -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - break -fi - - done - ac_cv_prog_CPP=$CPP - -fi - CPP=$ac_cv_prog_CPP -else - ac_cv_prog_CPP=$CPP -fi -{ echo "$as_me:$LINENO: result: $CPP" >&5 -echo "${ECHO_T}$CPP" >&6; } -ac_preproc_ok=false -for ac_c_preproc_warn_flag in '' yes -do - # Use a header file that comes with gcc, so configuring glibc - # with a fresh cross-compiler works. - # Prefer to if __STDC__ is defined, since - # exists even on freestanding compilers. - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifdef __STDC__ -# include -#else -# include -#endif - Syntax error -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Broken: fails on valid input. -continue -fi - -rm -f conftest.err conftest.$ac_ext - - # OK, works on sane cases. Now check whether nonexistent headers - # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - # Broken: success on invalid input. -continue -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - # Passes both tests. -ac_preproc_ok=: -break -fi - -rm -f conftest.err conftest.$ac_ext - -done -# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. -rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : -else - { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; } -fi - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -{ echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 -echo $ECHO_N "checking for grep that handles long lines and -e... $ECHO_C" >&6; } -if test "${ac_cv_path_GREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # Extract the first word of "grep ggrep" to use in msg output -if test -z "$GREP"; then -set dummy grep ggrep; ac_prog_name=$2 -if test "${ac_cv_path_GREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_path_GREP_found=false -# Loop through the user's path and test for each of PROGNAME-LIST -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue - # Check for GNU ac_path_GREP and select it if it is found. - # Check for GNU $ac_path_GREP -case `"$ac_path_GREP" --version 2>&1` in -*GNU*) - ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; -*) - ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - echo 'GREP' >> "conftest.nl" - "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` - if test $ac_count -gt ${ac_path_GREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_GREP="$ac_path_GREP" - ac_path_GREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - - $ac_path_GREP_found && break 3 - done -done - -done -IFS=$as_save_IFS - - -fi - -GREP="$ac_cv_path_GREP" -if test -z "$GREP"; then - { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } -fi - -else - ac_cv_path_GREP=$GREP -fi - - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 -echo "${ECHO_T}$ac_cv_path_GREP" >&6; } - GREP="$ac_cv_path_GREP" - - -{ echo "$as_me:$LINENO: checking for egrep" >&5 -echo $ECHO_N "checking for egrep... $ECHO_C" >&6; } -if test "${ac_cv_path_EGREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 - then ac_cv_path_EGREP="$GREP -E" - else - # Extract the first word of "egrep" to use in msg output -if test -z "$EGREP"; then -set dummy egrep; ac_prog_name=$2 -if test "${ac_cv_path_EGREP+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_path_EGREP_found=false -# Loop through the user's path and test for each of PROGNAME-LIST -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do - for ac_exec_ext in '' $ac_executable_extensions; do - ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" - { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue - # Check for GNU ac_path_EGREP and select it if it is found. - # Check for GNU $ac_path_EGREP -case `"$ac_path_EGREP" --version 2>&1` in -*GNU*) - ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; -*) - ac_count=0 - echo $ECHO_N "0123456789$ECHO_C" >"conftest.in" - while : - do - cat "conftest.in" "conftest.in" >"conftest.tmp" - mv "conftest.tmp" "conftest.in" - cp "conftest.in" "conftest.nl" - echo 'EGREP' >> "conftest.nl" - "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break - diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` - if test $ac_count -gt ${ac_path_EGREP_max-0}; then - # Best one so far, save it but keep looking for a better one - ac_cv_path_EGREP="$ac_path_EGREP" - ac_path_EGREP_max=$ac_count - fi - # 10*(2^10) chars as input seems more than enough - test $ac_count -gt 10 && break - done - rm -f conftest.in conftest.tmp conftest.nl conftest.out;; -esac - - - $ac_path_EGREP_found && break 3 - done -done - -done -IFS=$as_save_IFS - - -fi - -EGREP="$ac_cv_path_EGREP" -if test -z "$EGREP"; then - { { echo "$as_me:$LINENO: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -echo "$as_me: error: no acceptable $ac_prog_name could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } -fi - -else - ac_cv_path_EGREP=$EGREP -fi - - - fi -fi -{ echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 -echo "${ECHO_T}$ac_cv_path_EGREP" >&6; } - EGREP="$ac_cv_path_EGREP" - - -{ echo "$as_me:$LINENO: checking for ANSI C header files" >&5 -echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6; } -if test "${ac_cv_header_stdc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#include -#include - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_header_stdc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_stdc=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - -if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include - -_ACEOF -if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : -else - ac_cv_header_stdc=no -fi -rm -f conftest* - -fi - -if test $ac_cv_header_stdc = yes; then - # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then - : -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -#if ((' ' & 0x0FF) == 0x020) -# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) -#else -# define ISLOWER(c) \ - (('a' <= (c) && (c) <= 'i') \ - || ('j' <= (c) && (c) <= 'r') \ - || ('s' <= (c) && (c) <= 'z')) -# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) -#endif - -#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) -int -main () -{ - int i; - for (i = 0; i < 256; i++) - if (XOR (islower (i), ISLOWER (i)) - || toupper (i) != TOUPPER (i)) - return 2; - return 0; -} -_ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -ac_cv_header_stdc=no -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - - -fi -fi -{ echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 -echo "${ECHO_T}$ac_cv_header_stdc" >&6; } -if test $ac_cv_header_stdc = yes; then - -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF - -fi - - -# compiler characteristics -{ echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 -echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6; } -if test "${ac_cv_c_const+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -/* FIXME: Include the comments suggested by Paul. */ -#ifndef __cplusplus - /* Ultrix mips cc rejects this. */ - typedef int charset[2]; - const charset cs; - /* SunOS 4.1.1 cc rejects this. */ - char const *const *pcpcc; - char **ppc; - /* NEC SVR4.0.2 mips cc rejects this. */ - struct point {int x, y;}; - static struct point const zero = {0,0}; - /* AIX XL C 1.02.0.0 rejects this. - It does not let you subtract one const X* pointer from another in - an arm of an if-expression whose if-part is not a constant - expression */ - const char *g = "string"; - pcpcc = &g + (g ? g-g : 0); - /* HPUX 7.0 cc rejects these. */ - ++pcpcc; - ppc = (char**) pcpcc; - pcpcc = (char const *const *) ppc; - { /* SCO 3.2v4 cc rejects this. */ - char *t; - char const *s = 0 ? (char *) 0 : (char const *) 0; - - *t++ = 0; - if (s) return 0; - } - { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ - int x[] = {25, 17}; - const int *foo = &x[0]; - ++foo; - } - { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ - typedef const int *iptr; - iptr p = 0; - ++p; - } - { /* AIX XL C 1.02.0.0 rejects this saying - "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ - struct s { int j; const int *ap[3]; }; - struct s *b; b->j = 5; - } - { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ - const int foo = 10; - if (!foo) return 0; - } - return !cs[0] && !zero.x; -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_c_const=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_c_const=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 -echo "${ECHO_T}$ac_cv_c_const" >&6; } -if test $ac_cv_c_const = no; then - -cat >>confdefs.h <<\_ACEOF -#define const -_ACEOF - -fi - -{ echo "$as_me:$LINENO: checking for inline" >&5 -echo $ECHO_N "checking for inline... $ECHO_C" >&6; } -if test "${ac_cv_c_inline+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_cv_c_inline=no -for ac_kw in inline __inline__ __inline; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#ifndef __cplusplus -typedef int foo_t; -static $ac_kw foo_t static_foo () {return 0; } -$ac_kw foo_t foo () {return 0; } -#endif - -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_c_inline=$ac_kw -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - test "$ac_cv_c_inline" != no && break -done - -fi -{ echo "$as_me:$LINENO: result: $ac_cv_c_inline" >&5 -echo "${ECHO_T}$ac_cv_c_inline" >&6; } - - -case $ac_cv_c_inline in - inline | yes) ;; - *) - case $ac_cv_c_inline in - no) ac_val=;; - *) ac_val=$ac_cv_c_inline;; - esac - cat >>confdefs.h <<_ACEOF -#ifndef __cplusplus -#define inline $ac_val -#endif -_ACEOF - ;; -esac - - - - -for ac_func in gettimeofday mkdir popen -do -as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ echo "$as_me:$LINENO: checking for $ac_func" >&5 -echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func - -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ - -#ifdef __STDC__ -# include -#else -# include -#endif - -#undef $ac_func - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif - -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - eval "$as_ac_var=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_var=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi -ac_res=`eval echo '${'$as_ac_var'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -if test `eval echo '${'$as_ac_var'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - -fi -done - - - - if test "X$prefix" = "XNONE"; then - acl_final_prefix="$ac_default_prefix" - else - acl_final_prefix="$prefix" - fi - if test "X$exec_prefix" = "XNONE"; then - acl_final_exec_prefix='${prefix}' - else - acl_final_exec_prefix="$exec_prefix" - fi - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" - prefix="$acl_save_prefix" - - -# Check whether --with-gnu-ld was given. -if test "${with_gnu_ld+set}" = set; then - withval=$with_gnu_ld; test "$withval" = no || with_gnu_ld=yes -else - with_gnu_ld=no -fi - -# Prepare PATH_SEPARATOR. -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi -ac_prog=ld -if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - { echo "$as_me:$LINENO: checking for ld used by GCC" >&5 -echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6; } - case $host in - *-*-mingw*) - # gcc leaves a trailing carriage return which upsets mingw - ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; - *) - ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; - esac - case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do - ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` - done - test -z "$LD" && LD="$ac_prog" - ;; - "") - # If it fails, then pretend we aren't using GCC. - ac_prog=ld - ;; - *) - # If it is relative, then search for the first ld in PATH. - with_gnu_ld=unknown - ;; - esac -elif test "$with_gnu_ld" = yes; then - { echo "$as_me:$LINENO: checking for GNU ld" >&5 -echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6; } -else - { echo "$as_me:$LINENO: checking for non-GNU ld" >&5 -echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6; } -fi -if test "${acl_cv_path_LD+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -z "$LD"; then - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then - acl_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. - case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in - *GNU* | *'with BFD'*) - test "$with_gnu_ld" != no && break ;; - *) - test "$with_gnu_ld" != yes && break ;; - esac - fi - done - IFS="$ac_save_ifs" -else - acl_cv_path_LD="$LD" # Let the user override the test with a path. -fi -fi - -LD="$acl_cv_path_LD" -if test -n "$LD"; then - { echo "$as_me:$LINENO: result: $LD" >&5 -echo "${ECHO_T}$LD" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi -test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 -echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} - { (exit 1); exit 1; }; } -{ echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 -echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6; } -if test "${acl_cv_prog_gnu_ld+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # I'd rather use --version here, but apparently some GNU ld's only accept -v. -case `$LD -v 2>&1 &5 -echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6; } -with_gnu_ld=$acl_cv_prog_gnu_ld - - - - { echo "$as_me:$LINENO: checking for shared library run path origin" >&5 -echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6; } -if test "${acl_cv_rpath+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ - ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh - . ./conftest.sh - rm -f ./conftest.sh - acl_cv_rpath=done - -fi -{ echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 -echo "${ECHO_T}$acl_cv_rpath" >&6; } - wl="$acl_cv_wl" - libext="$acl_cv_libext" - shlibext="$acl_cv_shlibext" - hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" - hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" - hardcode_direct="$acl_cv_hardcode_direct" - hardcode_minus_L="$acl_cv_hardcode_minus_L" - # Check whether --enable-rpath was given. -if test "${enable_rpath+set}" = set; then - enableval=$enable_rpath; : -else - enable_rpath=yes -fi - - - - - - - - - use_additional=yes - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - -# Check whether --with-libiconv-prefix was given. -if test "${with_libiconv_prefix+set}" = set; then - withval=$with_libiconv_prefix; - if test "X$withval" = "Xno"; then - use_additional=no - else - if test "X$withval" = "X"; then - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - - eval additional_includedir=\"$includedir\" - eval additional_libdir=\"$libdir\" - - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - else - additional_includedir="$withval/include" - additional_libdir="$withval/lib" - fi - fi - -fi - - LIBICONV= - LTLIBICONV= - INCICONV= - rpathdirs= - ltrpathdirs= - names_already_handled= - names_next_round='iconv ' - while test -n "$names_next_round"; do - names_this_round="$names_next_round" - names_next_round= - for name in $names_this_round; do - already_handled= - for n in $names_already_handled; do - if test "$n" = "$name"; then - already_handled=yes - break - fi - done - if test -z "$already_handled"; then - names_already_handled="$names_already_handled $name" - uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` - eval value=\"\$HAVE_LIB$uppername\" - if test -n "$value"; then - if test "$value" = yes; then - eval value=\"\$LIB$uppername\" - test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" - eval value=\"\$LTLIB$uppername\" - test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" - else - : - fi - else - found_dir= - found_la= - found_so= - found_a= - if test $use_additional = yes; then - if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then - found_dir="$additional_libdir" - found_so="$additional_libdir/lib$name.$shlibext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi - else - if test -f "$additional_libdir/lib$name.$libext"; then - found_dir="$additional_libdir" - found_a="$additional_libdir/lib$name.$libext" - if test -f "$additional_libdir/lib$name.la"; then - found_la="$additional_libdir/lib$name.la" - fi - fi - fi - fi - if test "X$found_dir" = "X"; then - for x in $LDFLAGS $LTLIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - case "$x" in - -L*) - dir=`echo "X$x" | sed -e 's/^X-L//'` - if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then - found_dir="$dir" - found_so="$dir/lib$name.$shlibext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi - else - if test -f "$dir/lib$name.$libext"; then - found_dir="$dir" - found_a="$dir/lib$name.$libext" - if test -f "$dir/lib$name.la"; then - found_la="$dir/lib$name.la" - fi - fi - fi - ;; - esac - if test "X$found_dir" != "X"; then - break - fi - done - fi - if test "X$found_dir" != "X"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" - if test "X$found_so" != "X"; then - if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $found_dir" - fi - if test "$hardcode_direct" = yes; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $found_dir" - fi - else - haveit= - for x in $LDFLAGS $LIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$found_dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" - fi - if test "$hardcode_minus_L" != no; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - fi - fi - fi - fi - else - if test "X$found_a" != "X"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" - fi - fi - additional_includedir= - case "$found_dir" in - */lib | */lib/) - basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` - additional_includedir="$basedir/include" - ;; - esac - if test "X$additional_includedir" != "X"; then - if test "X$additional_includedir" != "X/usr/include"; then - haveit= - if test "X$additional_includedir" = "X/usr/local/include"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - for x in $CPPFLAGS $INCICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-I$additional_includedir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_includedir"; then - INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" - fi - fi - fi - fi - fi - if test -n "$found_la"; then - save_libdir="$libdir" - case "$found_la" in - */* | *\\*) . "$found_la" ;; - *) . "./$found_la" ;; - esac - libdir="$save_libdir" - for dep in $dependency_libs; do - case "$dep" in - -L*) - additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` - if test "X$additional_libdir" != "X/usr/lib"; then - haveit= - if test "X$additional_libdir" = "X/usr/local/lib"; then - if test -n "$GCC"; then - case $host_os in - linux*) haveit=yes;; - esac - fi - fi - if test -z "$haveit"; then - haveit= - for x in $LDFLAGS $LIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" - fi - fi - haveit= - for x in $LDFLAGS $LTLIBICONV; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X-L$additional_libdir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - if test -d "$additional_libdir"; then - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" - fi - fi - fi - fi - ;; - -R*) - dir=`echo "X$dep" | sed -e 's/^X-R//'` - if test "$enable_rpath" != no; then - haveit= - for x in $rpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - rpathdirs="$rpathdirs $dir" - fi - haveit= - for x in $ltrpathdirs; do - if test "X$x" = "X$dir"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - ltrpathdirs="$ltrpathdirs $dir" - fi - fi - ;; - -l*) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` - ;; - *.la) - names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` - ;; - *) - LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" - ;; - esac - done - fi - else - LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" - fi - fi - fi - done - done - if test "X$rpathdirs" != "X"; then - if test -n "$hardcode_libdir_separator"; then - alldirs= - for found_dir in $rpathdirs; do - alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" - done - acl_save_libdir="$libdir" - libdir="$alldirs" - eval flag=\"$hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" - else - for found_dir in $rpathdirs; do - acl_save_libdir="$libdir" - libdir="$found_dir" - eval flag=\"$hardcode_libdir_flag_spec\" - libdir="$acl_save_libdir" - LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" - done - fi - fi - if test "X$ltrpathdirs" != "X"; then - for found_dir in $ltrpathdirs; do - LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" - done - fi - - - - - - - - am_save_CPPFLAGS="$CPPFLAGS" - - for element in $INCICONV; do - haveit= - for x in $CPPFLAGS; do - - acl_save_prefix="$prefix" - prefix="$acl_final_prefix" - acl_save_exec_prefix="$exec_prefix" - exec_prefix="$acl_final_exec_prefix" - eval x=\"$x\" - exec_prefix="$acl_save_exec_prefix" - prefix="$acl_save_prefix" - - if test "X$x" = "X$element"; then - haveit=yes - break - fi - done - if test -z "$haveit"; then - CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" - fi - done - - - { echo "$as_me:$LINENO: checking for iconv" >&5 -echo $ECHO_N "checking for iconv... $ECHO_C" >&6; } -if test "${am_cv_func_iconv+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -int -main () -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - am_cv_func_iconv=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS $LIBICONV" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include -int -main () -{ -iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - am_cv_lib_iconv=yes - am_cv_func_iconv=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - LIBS="$am_save_LIBS" - fi - -fi -{ echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 -echo "${ECHO_T}$am_cv_func_iconv" >&6; } - if test "$am_cv_func_iconv" = yes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_ICONV 1 -_ACEOF - - fi - if test "$am_cv_lib_iconv" = yes; then - { echo "$as_me:$LINENO: checking how to link with libiconv" >&5 -echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6; } - { echo "$as_me:$LINENO: result: $LIBICONV" >&5 -echo "${ECHO_T}$LIBICONV" >&6; } - else - CPPFLAGS="$am_save_CPPFLAGS" - LIBICONV= - LTLIBICONV= - fi - - - - if test "$am_cv_func_iconv" = yes; then - { echo "$as_me:$LINENO: checking for iconv declaration" >&5 -echo $ECHO_N "checking for iconv declaration... $ECHO_C" >&6; } - if test "${am_cv_proto_iconv+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include -extern -#ifdef __cplusplus -"C" -#endif -#if defined(__STDC__) || defined(__cplusplus) -size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); -#else -size_t iconv(); -#endif - -int -main () -{ - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - am_cv_proto_iconv_arg1="" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - am_cv_proto_iconv_arg1="const" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);" -fi - - am_cv_proto_iconv=`echo "$am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` - { echo "$as_me:$LINENO: result: ${ac_t:- - }$am_cv_proto_iconv" >&5 -echo "${ECHO_T}${ac_t:- - }$am_cv_proto_iconv" >&6; } - -cat >>confdefs.h <<_ACEOF -#define ICONV_CONST $am_cv_proto_iconv_arg1 -_ACEOF - - fi - -ICONV_LIBS=$LIBICONV - - -#---------------------------------------------------------------------------- -# find libraries -#---------------------------------------------------------------------------- - - # Check whether --enable-binreloc was given. -if test "${enable_binreloc+set}" = set; then - enableval=$enable_binreloc; enable_binreloc=$enableval -else - enable_binreloc=no -fi - - - # Check whether --enable-binreloc-threads was given. -if test "${enable_binreloc_threads+set}" = set; then - enableval=$enable_binreloc_threads; enable_binreloc_threads=$enableval -else - enable_binreloc_threads=yes -fi - - - BINRELOC_CFLAGS= - BINRELOC_LIBS= - if test "x$enable_binreloc" = "xauto"; then - { echo "$as_me:$LINENO: checking for /proc/self/maps" >&5 -echo $ECHO_N "checking for /proc/self/maps... $ECHO_C" >&6; } -if test "${ac_cv_file__proc_self_maps+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - test "$cross_compiling" = yes && - { { echo "$as_me:$LINENO: error: cannot check for file existence when cross compiling" >&5 -echo "$as_me: error: cannot check for file existence when cross compiling" >&2;} - { (exit 1); exit 1; }; } -if test -r "/proc/self/maps"; then - ac_cv_file__proc_self_maps=yes -else - ac_cv_file__proc_self_maps=no -fi -fi -{ echo "$as_me:$LINENO: result: $ac_cv_file__proc_self_maps" >&5 -echo "${ECHO_T}$ac_cv_file__proc_self_maps" >&6; } - - { echo "$as_me:$LINENO: checking whether everything is installed to the same prefix" >&5 -echo $ECHO_N "checking whether everything is installed to the same prefix... $ECHO_C" >&6; } -if test "${br_cv_valid_prefixes+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - - if test "$bindir" = '${exec_prefix}/bin' -a "$sbindir" = '${exec_prefix}/sbin' -a \ - "$datadir" = '${prefix}/share' -a "$libdir" = '${exec_prefix}/lib' -a \ - "$libexecdir" = '${exec_prefix}/libexec' -a "$sysconfdir" = '${prefix}/etc' - then - br_cv_valid_prefixes=yes - else - br_cv_valid_prefixes=no - fi - -fi -{ echo "$as_me:$LINENO: result: $br_cv_valid_prefixes" >&5 -echo "${ECHO_T}$br_cv_valid_prefixes" >&6; } - fi - { echo "$as_me:$LINENO: checking whether binary relocation support should be enabled" >&5 -echo $ECHO_N "checking whether binary relocation support should be enabled... $ECHO_C" >&6; } -if test "${br_cv_binreloc+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "x$enable_binreloc" = "xyes"; then - br_cv_binreloc=yes - elif test "x$enable_binreloc" = "xauto"; then - if test "x$br_cv_valid_prefixes" = "xyes" -a \ - "x$ac_cv_file__proc_self_maps" = "xyes"; then - br_cv_binreloc=yes - else - br_cv_binreloc=no - fi - else - br_cv_binreloc=no - fi -fi -{ echo "$as_me:$LINENO: result: $br_cv_binreloc" >&5 -echo "${ECHO_T}$br_cv_binreloc" >&6; } - - if test "x$br_cv_binreloc" = "xyes"; then -#BINRELOC_CFLAGS="-DENABLE_BINRELOC" - -cat >>confdefs.h <<\_ACEOF -#define ENABLE_BINRELOC -_ACEOF - - if test "x$enable_binreloc_threads" = "xyes"; then - -{ echo "$as_me:$LINENO: checking for pthread_getspecific in -lpthread" >&5 -echo $ECHO_N "checking for pthread_getspecific in -lpthread... $ECHO_C" >&6; } -if test "${ac_cv_lib_pthread_pthread_getspecific+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_getspecific (); -int -main () -{ -return pthread_getspecific (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - ac_cv_lib_pthread_pthread_getspecific=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_pthread_pthread_getspecific=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_getspecific" >&5 -echo "${ECHO_T}$ac_cv_lib_pthread_pthread_getspecific" >&6; } -if test $ac_cv_lib_pthread_pthread_getspecific = yes; then - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBPTHREAD 1 -_ACEOF - - LIBS="-lpthread $LIBS" - -fi - - fi - - { echo "$as_me:$LINENO: checking whether binary relocation should use threads" >&5 -echo $ECHO_N "checking whether binary relocation should use threads... $ECHO_C" >&6; } -if test "${br_cv_binreloc_threads+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test "x$enable_binreloc_threads" = "xyes"; then - if test "x$ac_cv_lib_pthread_pthread_getspecific" = "xyes"; then - br_cv_binreloc_threads=yes - else - br_cv_binreloc_threads=no - fi - else - br_cv_binreloc_threads=no - fi -fi -{ echo "$as_me:$LINENO: result: $br_cv_binreloc_threads" >&5 -echo "${ECHO_T}$br_cv_binreloc_threads" >&6; } - - if test "x$br_cv_binreloc_threads" = "xyes"; then - BINRELOC_LIBS="-lpthread" - -cat >>confdefs.h <<\_ACEOF -#define BR_PTHREAD 1 -_ACEOF - - else - BINRELOC_CFLAGS="$BINRELOC_CFLAGS -DBR_PTHREADS=0" - -cat >>confdefs.h <<\_ACEOF -#define BR_PTHREAD 0 -_ACEOF - - fi - fi - - - - - - -# Check whether --with-libzlib was given. -if test "${with_libzlib+set}" = set; then - withval=$with_libzlib; -fi - - - save_CFLAGS="$CFLAGS" - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - - RESCFLAGS="" - RESLIBS="-lz" - CFLAGS="$CFLAGS " - CPPFLAGS="$CPPFLAGS " - LIBS="$LIBS -lz " - - if test -n "$with_libzlib"; then - - CFLAGS="-I$with_libzlib/include $CFLAGS" - CPPFLAGS="-I$with_libzlib/include $CPPFLAGS" - LIBS="-L$with_libzlib/lib $LIBS" - RESCFLAGS="-I$with_libzlib/include $RESCFLAGS" - RESLIBS="-L$with_libzlib/lib $RESLIBS" - -fi - - - { echo "$as_me:$LINENO: checking for zlib" >&5 -echo $ECHO_N "checking for zlib... $ECHO_C" >&6; } - - cat >conftest.$ac_ext <<_ACEOF -#include -int -main(int argc, char** argv) -{ -gzFile* file = gzopen("", ""); - ; - return 0; -} - -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - buildok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - buildok=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS=$save_LIBS - CPPFLAGS=$save_CPPFLAGS - CFLAGS=$save_CFLAGS - - if test $buildok = yes; then - { echo "$as_me:$LINENO: result: found" >&5 -echo "${ECHO_T}found" >&6; } - ZLIB_AVAILABLE=yes - ZLIB_CFLAGS="$RESCFLAGS" - ZLIB_LIBS="$RESLIBS" -else - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } - ZLIB_AVAILABLE=no - ZLIB_CFLAGS="" - ZLIB_LIBS="" -fi - - - - - - - if test $buildok = yes; then - : -else - { { echo "$as_me:$LINENO: error: Please install zlib" >&5 -echo "$as_me: error: Please install zlib" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - succeeded=no - - if test -z "$PKG_CONFIG"; then - # Extract the first word of "pkg-config", so it can be a program name with args. -set dummy pkg-config; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_path_PKG_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $PKG_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - - test -z "$ac_cv_path_PKG_CONFIG" && ac_cv_path_PKG_CONFIG="no" - ;; -esac -fi -PKG_CONFIG=$ac_cv_path_PKG_CONFIG -if test -n "$PKG_CONFIG"; then - { echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5 -echo "${ECHO_T}$PKG_CONFIG" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - fi - - if test "$PKG_CONFIG" = "no" ; then - echo "*** The pkg-config script could not be found. Make sure it is" - echo "*** in your path, or set the PKG_CONFIG environment variable" - echo "*** to the full path to pkg-config." - echo "*** Or see http://www.freedesktop.org/software/pkgconfig to get pkg-config." - else - PKG_CONFIG_MIN_VERSION=0.9.0 - if $PKG_CONFIG --atleast-pkgconfig-version $PKG_CONFIG_MIN_VERSION; then - { echo "$as_me:$LINENO: checking for libxml-2.0 >= 2.6.11" >&5 -echo $ECHO_N "checking for libxml-2.0 >= 2.6.11... $ECHO_C" >&6; } - - if $PKG_CONFIG --exists "libxml-2.0 >= 2.6.11" ; then - { echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } - succeeded=yes - - { echo "$as_me:$LINENO: checking LIBXML_CFLAGS" >&5 -echo $ECHO_N "checking LIBXML_CFLAGS... $ECHO_C" >&6; } - LIBXML_CFLAGS=`$PKG_CONFIG --cflags "libxml-2.0 >= 2.6.11"` - { echo "$as_me:$LINENO: result: $LIBXML_CFLAGS" >&5 -echo "${ECHO_T}$LIBXML_CFLAGS" >&6; } - - { echo "$as_me:$LINENO: checking LIBXML_LIBS" >&5 -echo $ECHO_N "checking LIBXML_LIBS... $ECHO_C" >&6; } - LIBXML_LIBS=`$PKG_CONFIG --libs "libxml-2.0 >= 2.6.11"` - { echo "$as_me:$LINENO: result: $LIBXML_LIBS" >&5 -echo "${ECHO_T}$LIBXML_LIBS" >&6; } - else - LIBXML_CFLAGS="" - LIBXML_LIBS="" - ## If we have a custom action on failure, don't print errors, but - ## do set a variable so people can do so. - LIBXML_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "libxml-2.0 >= 2.6.11"` - echo $LIBXML_PKG_ERRORS - fi - - - - else - echo "*** Your version of pkg-config is too old. You need version $PKG_CONFIG_MIN_VERSION or newer." - echo "*** See http://www.freedesktop.org/software/pkgconfig" - fi - fi - - if test $succeeded = yes; then - : - else - { { echo "$as_me:$LINENO: error: Library requirements (libxml-2.0 >= 2.6.11) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&5 -echo "$as_me: error: Library requirements (libxml-2.0 >= 2.6.11) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them." >&2;} - { (exit 1); exit 1; }; } - fi - - -{ echo "$as_me:$LINENO: checking for X" >&5 -echo $ECHO_N "checking for X... $ECHO_C" >&6; } - - -# Check whether --with-x was given. -if test "${with_x+set}" = set; then - withval=$with_x; -fi - -# $have_x is `yes', `no', `disabled', or empty when we do not yet know. -if test "x$with_x" = xno; then - # The user explicitly disabled X. - have_x=disabled -else - case $x_includes,$x_libraries in #( - *\'*) { { echo "$as_me:$LINENO: error: Cannot use X directory names containing '" >&5 -echo "$as_me: error: Cannot use X directory names containing '" >&2;} - { (exit 1); exit 1; }; };; #( - *,NONE | NONE,*) if test "${ac_cv_have_x+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - # One or both of the vars are not set, and there is no cached value. -ac_x_includes=no ac_x_libraries=no -rm -f -r conftest.dir -if mkdir conftest.dir; then - cd conftest.dir - cat >Imakefile <<'_ACEOF' -incroot: - @echo incroot='${INCROOT}' -usrlibdir: - @echo usrlibdir='${USRLIBDIR}' -libdir: - @echo libdir='${LIBDIR}' -_ACEOF - if (export CC; ${XMKMF-xmkmf}) >/dev/null 2>/dev/null && test -f Makefile; then - # GNU make sometimes prints "make[1]: Entering...", which would confuse us. - for ac_var in incroot usrlibdir libdir; do - eval "ac_im_$ac_var=\`\${MAKE-make} $ac_var 2>/dev/null | sed -n 's/^$ac_var=//p'\`" - done - # Open Windows xmkmf reportedly sets LIBDIR instead of USRLIBDIR. - for ac_extension in a so sl; do - if test ! -f "$ac_im_usrlibdir/libX11.$ac_extension" && - test -f "$ac_im_libdir/libX11.$ac_extension"; then - ac_im_usrlibdir=$ac_im_libdir; break - fi - done - # Screen out bogus values from the imake configuration. They are - # bogus both because they are the default anyway, and because - # using them would break gcc on systems where it needs fixed includes. - case $ac_im_incroot in - /usr/include) ac_x_includes= ;; - *) test -f "$ac_im_incroot/X11/Xos.h" && ac_x_includes=$ac_im_incroot;; - esac - case $ac_im_usrlibdir in - /usr/lib | /lib) ;; - *) test -d "$ac_im_usrlibdir" && ac_x_libraries=$ac_im_usrlibdir ;; - esac - fi - cd .. - rm -f -r conftest.dir -fi - -# Standard set of common directories for X headers. -# Check X11 before X11Rn because it is often a symlink to the current release. -ac_x_header_dirs=' -/usr/X11/include -/usr/X11R6/include -/usr/X11R5/include -/usr/X11R4/include - -/usr/include/X11 -/usr/include/X11R6 -/usr/include/X11R5 -/usr/include/X11R4 - -/usr/local/X11/include -/usr/local/X11R6/include -/usr/local/X11R5/include -/usr/local/X11R4/include - -/usr/local/include/X11 -/usr/local/include/X11R6 -/usr/local/include/X11R5 -/usr/local/include/X11R4 - -/usr/X386/include -/usr/x386/include -/usr/XFree86/include/X11 - -/usr/include -/usr/local/include -/usr/unsupported/include -/usr/athena/include -/usr/local/x11r5/include -/usr/lpp/Xamples/include - -/usr/openwin/include -/usr/openwin/share/include' - -if test "$ac_x_includes" = no; then - # Guess where to find include files, by looking for Xlib.h. - # First, try using that file with no special directory specified. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - # We can compile using X headers with no special include directory. -ac_x_includes= -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - for ac_dir in $ac_x_header_dirs; do - if test -r "$ac_dir/X11/Xlib.h"; then - ac_x_includes=$ac_dir - break - fi -done -fi - -rm -f conftest.err conftest.$ac_ext -fi # $ac_x_includes = no - -if test "$ac_x_libraries" = no; then - # Check for the libraries. - # See if we find them without any special options. - # Don't add to $LIBS permanently. - ac_save_LIBS=$LIBS - LIBS="-lX11 $LIBS" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -XrmInitialize () - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - LIBS=$ac_save_LIBS -# We can link X programs with no special library path. -ac_x_libraries= -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - LIBS=$ac_save_LIBS -for ac_dir in `echo "$ac_x_includes $ac_x_header_dirs" | sed s/include/lib/g` -do - # Don't even attempt the hair of trying to link an X program! - for ac_extension in a so sl; do - if test -r "$ac_dir/libX11.$ac_extension"; then - ac_x_libraries=$ac_dir - break 2 - fi - done -done -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext -fi # $ac_x_libraries = no - -case $ac_x_includes,$ac_x_libraries in #( - no,* | *,no | *\'*) - # Didn't find X, or a directory has "'" in its name. - ac_cv_have_x="have_x=no";; #( - *) - # Record where we found X for the cache. - ac_cv_have_x="have_x=yes\ - ac_x_includes='$ac_x_includes'\ - ac_x_libraries='$ac_x_libraries'" -esac -fi -;; #( - *) have_x=yes;; - esac - eval "$ac_cv_have_x" -fi # $with_x != no - -if test "$have_x" != yes; then - { echo "$as_me:$LINENO: result: $have_x" >&5 -echo "${ECHO_T}$have_x" >&6; } - no_x=yes -else - # If each of the values was on the command line, it overrides each guess. - test "x$x_includes" = xNONE && x_includes=$ac_x_includes - test "x$x_libraries" = xNONE && x_libraries=$ac_x_libraries - # Update the cache value to reflect the command line values. - ac_cv_have_x="have_x=yes\ - ac_x_includes='$x_includes'\ - ac_x_libraries='$x_libraries'" - { echo "$as_me:$LINENO: result: libraries $x_libraries, headers $x_includes" >&5 -echo "${ECHO_T}libraries $x_libraries, headers $x_includes" >&6; } -fi - - - - -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -acx_pthread_ok=no - -# We used to check for pthread.h first, but this fails if pthread.h -# requires special compiler flags (e.g. on True64 or Sequent). -# It gets checked for in the link test anyway. - -# First of all, check if the user has set any of the PTHREAD_LIBS, -# etcetera environment variables, and if threads linking works using -# them: -if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - { echo "$as_me:$LINENO: checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS" >&5 -echo $ECHO_N "checking for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS... $ECHO_C" >&6; } - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char pthread_join (); -int -main () -{ -return pthread_join (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - acx_pthread_ok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - { echo "$as_me:$LINENO: result: $acx_pthread_ok" >&5 -echo "${ECHO_T}$acx_pthread_ok" >&6; } - if test x"$acx_pthread_ok" = xno; then - PTHREAD_LIBS="" - PTHREAD_CFLAGS="" - fi - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" -fi - -# We must check for the threads library under a number of different -# names; the ordering is very important because some systems -# (e.g. DEC) have both -lpthread and -lpthreads, where one of the -# libraries is broken (non-POSIX). - -# Create a list of thread flags to try. Items starting with a "-" are -# C compiler flags, and other items are library names, except for "none" -# which indicates that we try without any flags at all, and "pthread-config" -# which is a program returning the flags for the Pth emulation library. - -acx_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" - -# The ordering *is* (sometimes) important. Some notes on the -# individual items follow: - -# pthreads: AIX (must check this before -lpthread) -# none: in case threads are in libc; should be tried before -Kthread and -# other compiler flags to prevent continual compiler warnings -# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) -# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) -# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) -# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) -# -pthreads: Solaris/gcc -# -mthreads: Mingw32/gcc, Lynx/gcc -# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it -# doesn't hurt to check since this sometimes defines pthreads too; -# also defines -D_REENTRANT) -# pthread: Linux, etcetera -# --thread-safe: KAI C++ -# pthread-config: use pthread-config program (for GNU Pth library) - -case "${host_cpu}-${host_os}" in - *solaris*) - - # On Solaris (at least, for some versions), libc contains stubbed - # (non-functional) versions of the pthreads routines, so link-based - # tests will erroneously succeed. (We need to link with -pthread or - # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather - # a function called by this macro, so we could check for that, but - # who knows whether they'll stub that too in a future libc.) So, - # we'll just look for -pthreads and -lpthread first: - - acx_pthread_flags="-pthread -pthreads pthread -mt $acx_pthread_flags" - ;; -esac - -if test x"$acx_pthread_ok" = xno; then -for flag in $acx_pthread_flags; do - - case $flag in - none) - { echo "$as_me:$LINENO: checking whether pthreads work without any flags" >&5 -echo $ECHO_N "checking whether pthreads work without any flags... $ECHO_C" >&6; } - ;; - - -*) - { echo "$as_me:$LINENO: checking whether pthreads work with $flag" >&5 -echo $ECHO_N "checking whether pthreads work with $flag... $ECHO_C" >&6; } - PTHREAD_CFLAGS="$flag" - ;; - - pthread-config) - # Extract the first word of "pthread-config", so it can be a program name with args. -set dummy pthread-config; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_acx_pthread_config+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$acx_pthread_config"; then - ac_cv_prog_acx_pthread_config="$acx_pthread_config" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_acx_pthread_config="yes" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_acx_pthread_config" && ac_cv_prog_acx_pthread_config="no" -fi -fi -acx_pthread_config=$ac_cv_prog_acx_pthread_config -if test -n "$acx_pthread_config"; then - { echo "$as_me:$LINENO: result: $acx_pthread_config" >&5 -echo "${ECHO_T}$acx_pthread_config" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - if test x"$acx_pthread_config" = xno; then continue; fi - PTHREAD_CFLAGS="`pthread-config --cflags`" - PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" - ;; - - *) - { echo "$as_me:$LINENO: checking for the pthreads library -l$flag" >&5 -echo $ECHO_N "checking for the pthreads library -l$flag... $ECHO_C" >&6; } - PTHREAD_LIBS="-l$flag" - ;; - esac - - save_LIBS="$LIBS" - save_CFLAGS="$CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - - # Check for various functions. We must include pthread.h, - # since some functions may be macros. (On the Sequent, we - # need a special flag -Kthread to make this header compile.) - # We check for pthread_join because it is in -lpthread on IRIX - # while pthread_create is in libc. We check for pthread_attr_init - # due to DEC craziness with -lpthreads. We check for - # pthread_cleanup_push because it is one of the few pthread - # functions on Solaris that doesn't have a non-functional libc stub. - # We try pthread_create on general principles. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -pthread_t th; pthread_join(th, 0); - pthread_attr_init(0); pthread_cleanup_push(0, 0); - pthread_create(0,0,0,0); pthread_cleanup_pop(0); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - acx_pthread_ok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - - { echo "$as_me:$LINENO: result: $acx_pthread_ok" >&5 -echo "${ECHO_T}$acx_pthread_ok" >&6; } - if test "x$acx_pthread_ok" = xyes; then - break; - fi - - PTHREAD_LIBS="" - PTHREAD_CFLAGS="" -done -fi - -# Various other checks: -if test "x$acx_pthread_ok" = xyes; then - save_LIBS="$LIBS" - LIBS="$PTHREAD_LIBS $LIBS" - save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - - # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. - { echo "$as_me:$LINENO: checking for joinable pthread attribute" >&5 -echo $ECHO_N "checking for joinable pthread attribute... $ECHO_C" >&6; } - attr_name=unknown - for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -int -main () -{ -int attr=$attr; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - attr_name=$attr; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - done - { echo "$as_me:$LINENO: result: $attr_name" >&5 -echo "${ECHO_T}$attr_name" >&6; } - if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then - -cat >>confdefs.h <<_ACEOF -#define PTHREAD_CREATE_JOINABLE $attr_name -_ACEOF - - fi - - { echo "$as_me:$LINENO: checking if more special flags are required for pthreads" >&5 -echo $ECHO_N "checking if more special flags are required for pthreads... $ECHO_C" >&6; } - flag=no - case "${host_cpu}-${host_os}" in - *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; - *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";; - esac - { echo "$as_me:$LINENO: result: ${flag}" >&5 -echo "${ECHO_T}${flag}" >&6; } - if test "x$flag" != xno; then - PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" - fi - - LIBS="$save_LIBS" - CFLAGS="$save_CFLAGS" - - # More AIX lossage: must compile with cc_r - # Extract the first word of "cc_r", so it can be a program name with args. -set dummy cc_r; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_prog_PTHREAD_CC+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - if test -n "$PTHREAD_CC"; then - ac_cv_prog_PTHREAD_CC="$PTHREAD_CC" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_PTHREAD_CC="cc_r" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - - test -z "$ac_cv_prog_PTHREAD_CC" && ac_cv_prog_PTHREAD_CC="${CC}" -fi -fi -PTHREAD_CC=$ac_cv_prog_PTHREAD_CC -if test -n "$PTHREAD_CC"; then - { echo "$as_me:$LINENO: result: $PTHREAD_CC" >&5 -echo "${ECHO_T}$PTHREAD_CC" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - -else - PTHREAD_CC="$CC" -fi - - - - - -# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: -if test x"$acx_pthread_ok" = xyes; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_PTHREAD 1 -_ACEOF - - : -else - acx_pthread_ok=no - -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - -# On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - -for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ - inttypes.h stdint.h unistd.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_ac_Header=yes" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_Header=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - -# -# There isn't a reliable way to know we should use the Apple OpenGL framework -# without a configure option. A Mac OS X user may have installed an -# alternative GL implementation (e.g., Mesa), which may or may not depend on X. -# - -# Check whether --with-apple-opengl-framework was given. -if test "${with_apple_opengl_framework+set}" = set; then - withval=$with_apple_opengl_framework; -fi - -if test "X$with_apple_opengl_framework" = "Xyes"; then - -cat >>confdefs.h <<\_ACEOF -#define HAVE_APPLE_OPENGL_FRAMEWORK 1 -_ACEOF - - GL_LIBS="-framework OpenGL" -else - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - - - { echo "$as_me:$LINENO: checking whether we are using the Microsoft C compiler" >&5 -echo $ECHO_N "checking whether we are using the Microsoft C compiler... $ECHO_C" >&6; } -if test "${ax_cv_c_compiler_ms+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -int -main () -{ -#ifndef _MSC_VER - choke me -#endif - - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ax_compiler_ms=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ax_compiler_ms=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ax_cv_c_compiler_ms=$ax_compiler_ms - -fi -{ echo "$as_me:$LINENO: result: $ax_cv_c_compiler_ms" >&5 -echo "${ECHO_T}$ax_cv_c_compiler_ms" >&6; } - if test X$ax_compiler_ms = Xno; then - GL_CFLAGS="${PTHREAD_CFLAGS}" - GL_LIBS="${PTHREAD_LIBS} -lm" - fi - - # - # Use x_includes and x_libraries if they have been set (presumably by - # AC_PATH_X). - # - if test "X$no_x" != "Xyes"; then - if test -n "$x_includes"; then - GL_CFLAGS="-I${x_includes} ${GL_CFLAGS}" - fi - if test -n "$x_libraries"; then - GL_LIBS="-L${x_libraries} -lX11 ${GL_LIBS}" - fi - fi - - -for ac_header in windows.h -do -as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - { echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } -else - # Is the header compilable? -{ echo "$as_me:$LINENO: checking $ac_header usability" >&5 -echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -echo "${ECHO_T}$ac_header_compiler" >&6; } - -# Is the header present? -{ echo "$as_me:$LINENO: checking $ac_header presence" >&5 -echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include <$ac_header> -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -echo "${ECHO_T}$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 -echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 -echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 -echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 -echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 -echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 -echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} - { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 -echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## ------------------------------- ## -## Report this to matze@braunis.de ## -## ------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ echo "$as_me:$LINENO: checking for $ac_header" >&5 -echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - eval "$as_ac_Header=\$ac_header_preproc" -fi -ac_res=`eval echo '${'$as_ac_Header'}'` - { echo "$as_me:$LINENO: result: $ac_res" >&5 -echo "${ECHO_T}$ac_res" >&6; } - -fi -if test `eval echo '${'$as_ac_Header'}'` = yes; then - cat >>confdefs.h <<_ACEOF -#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 -_ACEOF - -fi - -done - - - { echo "$as_me:$LINENO: checking for OpenGL library" >&5 -echo $ECHO_N "checking for OpenGL library... $ECHO_C" >&6; } -if test "${ax_cv_check_gl_libgl+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - ax_cv_check_gl_libgl="no" - ax_save_CPPFLAGS="${CPPFLAGS}" - CPPFLAGS="${GL_CFLAGS} ${CPPFLAGS}" - ax_save_LIBS="${LIBS}" - LIBS="" - ax_check_libs="-lopengl32 -lGL" - for ax_lib in ${ax_check_libs}; do - if test X$ax_compiler_ms = Xyes; then - ax_try_lib=`echo $ax_lib | sed -e 's/^-l//' -e 's/$/.lib/'` - else - ax_try_lib="${ax_lib}" - fi - LIBS="${ax_try_lib} ${GL_LIBS} ${ax_save_LIBS}" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -# if HAVE_WINDOWS_H && defined(_WIN32) -# include -# endif -# include -int -main () -{ -glBegin(0) - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - ax_cv_check_gl_libgl="${ax_try_lib}"; break -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - done - LIBS=${ax_save_LIBS} - CPPFLAGS=${ax_save_CPPFLAGS} -fi -{ echo "$as_me:$LINENO: result: $ax_cv_check_gl_libgl" >&5 -echo "${ECHO_T}$ax_cv_check_gl_libgl" >&6; } - - if test "X${ax_cv_check_gl_libgl}" = "Xno"; then - no_gl="yes" - GL_CFLAGS="" - GL_LIBS="" - else - GL_LIBS="${ax_cv_check_gl_libgl} ${GL_LIBS}" - fi - ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu - -fi - - - - -if test "$no_gl" = "yes"; then - { { echo "$as_me:$LINENO: error: Couldn't find opengl libraries or headers" >&5 -echo "$as_me: error: Couldn't find opengl libraries or headers" >&2;} - { (exit 1); exit 1; }; } -fi - - -# Check whether --with-sdl-prefix was given. -if test "${with_sdl_prefix+set}" = set; then - withval=$with_sdl_prefix; sdl_prefix="$withval" -else - sdl_prefix="" -fi - - -# Check whether --with-sdl-exec-prefix was given. -if test "${with_sdl_exec_prefix+set}" = set; then - withval=$with_sdl_exec_prefix; sdl_exec_prefix="$withval" -else - sdl_exec_prefix="" -fi - -# Check whether --enable-sdltest was given. -if test "${enable_sdltest+set}" = set; then - enableval=$enable_sdltest; -else - enable_sdltest=yes -fi - - - if test x$sdl_exec_prefix != x ; then - sdl_args="$sdl_args --exec-prefix=$sdl_exec_prefix" - if test x${SDL_CONFIG+set} != xset ; then - SDL_CONFIG=$sdl_exec_prefix/bin/sdl-config - fi - fi - if test x$sdl_prefix != x ; then - sdl_args="$sdl_args --prefix=$sdl_prefix" - if test x${SDL_CONFIG+set} != xset ; then - SDL_CONFIG=$sdl_prefix/bin/sdl-config - fi - fi - - - PATH="$prefix/bin:$prefix/usr/bin:$PATH" - # Extract the first word of "sdl-config", so it can be a program name with args. -set dummy sdl-config; ac_word=$2 -{ echo "$as_me:$LINENO: checking for $ac_word" >&5 -echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6; } -if test "${ac_cv_path_SDL_CONFIG+set}" = set; then - echo $ECHO_N "(cached) $ECHO_C" >&6 -else - case $SDL_CONFIG in - [\\/]* | ?:[\\/]*) - ac_cv_path_SDL_CONFIG="$SDL_CONFIG" # Let the user override the test with a path. - ;; - *) - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_path_SDL_CONFIG="$as_dir/$ac_word$ac_exec_ext" - echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done -done -IFS=$as_save_IFS - - test -z "$ac_cv_path_SDL_CONFIG" && ac_cv_path_SDL_CONFIG="no" - ;; -esac -fi -SDL_CONFIG=$ac_cv_path_SDL_CONFIG -if test -n "$SDL_CONFIG"; then - { echo "$as_me:$LINENO: result: $SDL_CONFIG" >&5 -echo "${ECHO_T}$SDL_CONFIG" >&6; } -else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } -fi - - - min_sdl_version=1.2.5 - { echo "$as_me:$LINENO: checking for SDL - version >= $min_sdl_version" >&5 -echo $ECHO_N "checking for SDL - version >= $min_sdl_version... $ECHO_C" >&6; } - no_sdl="" - if test "$SDL_CONFIG" = "no" ; then - no_sdl=yes - else - SDL_CFLAGS=`$SDL_CONFIG $sdlconf_args --cflags` - SDL_LIBS=`$SDL_CONFIG $sdlconf_args --libs` - - sdl_major_version=`$SDL_CONFIG $sdl_args --version | \ - sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'` - sdl_minor_version=`$SDL_CONFIG $sdl_args --version | \ - sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\2/'` - sdl_micro_version=`$SDL_CONFIG $sdl_config_args --version | \ - sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\3/'` - if test "x$enable_sdltest" = "xyes" ; then - ac_save_CFLAGS="$CFLAGS" - ac_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $SDL_CFLAGS" - LIBS="$LIBS $SDL_LIBS" - rm -f conf.sdltest - if test "$cross_compiling" = yes; then - echo $ac_n "cross compiling; assumed OK... $ac_c" -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include -#include -#include "SDL.h" - -char* -my_strdup (char *str) -{ - char *new_str; - - if (str) - { - new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char)); - strcpy (new_str, str); - } - else - new_str = NULL; - - return new_str; -} - -int main (int argc, char *argv[]) -{ - int major, minor, micro; - char *tmp_version; - - /* This hangs on some systems (?) - system ("touch conf.sdltest"); - */ - { FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); } - - /* HP/UX 9 (%@#!) writes to sscanf strings */ - tmp_version = my_strdup("$min_sdl_version"); - if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) { - printf("%s, bad version string\n", "$min_sdl_version"); - exit(1); - } - - if (($sdl_major_version > major) || - (($sdl_major_version == major) && ($sdl_minor_version > minor)) || - (($sdl_major_version == major) && ($sdl_minor_version == minor) && ($sdl_micro_version >= micro))) - { - return 0; - } - else - { - printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", $sdl_major_version, $sdl_minor_version, $sdl_micro_version); - printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro); - printf("*** best to upgrade to the required version.\n"); - printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n"); - printf("*** to point to the correct copy of sdl-config, and remove the file\n"); - printf("*** config.cache before re-running configure\n"); - return 1; - } -} - - -_ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -no_sdl=yes -fi -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - - - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - if test "x$no_sdl" = x ; then - { echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6; } - : - else - { echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6; } - if test "$SDL_CONFIG" = "no" ; then - echo "*** The sdl-config script installed by SDL could not be found" - echo "*** If SDL was installed in PREFIX, make sure PREFIX/bin is in" - echo "*** your path, or set the SDL_CONFIG environment variable to the" - echo "*** full path to sdl-config." - else - if test -f conf.sdltest ; then - : - else - echo "*** Could not run SDL test program, checking why..." - CFLAGS="$CFLAGS $SDL_CFLAGS" - LIBS="$LIBS $SDL_LIBS" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include "SDL.h" - -int main(int argc, char *argv[]) -{ return 0; } -#undef main -#define main K_and_R_C_main - -int -main () -{ - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - echo "*** The test program compiled, but did not run. This usually means" - echo "*** that the run-time linker is not finding SDL or finding the wrong" - echo "*** version of SDL. If it is not finding SDL, you'll need to set your" - echo "*** LD_LIBRARY_PATH environment variable, or edit /etc/ld.so.conf to point" - echo "*** to the installed location Also, make sure you have run ldconfig if that" - echo "*** is required on your system" - echo "***" - echo "*** If you have an old version installed, it is best to remove it, although" - echo "*** you may also be able to get things to work by modifying LD_LIBRARY_PATH" -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - echo "*** The test program failed to compile or link. See the file config.log for the" - echo "*** exact error that occured. This usually means SDL was incorrectly installed" - echo "*** or that you have moved SDL since it was installed. In the latter case, you" - echo "*** may want to edit the sdl-config script: $SDL_CONFIG" -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - CFLAGS="$ac_save_CFLAGS" - LIBS="$ac_save_LIBS" - fi - fi - SDL_CFLAGS="" - SDL_LIBS="" - { { echo "$as_me:$LINENO: error: Please install libsdl >= 1.2.5" >&5 -echo "$as_me: error: Please install libsdl >= 1.2.5" >&2;} - { (exit 1); exit 1; }; } - fi - - - rm -f conf.sdltest - - - - -# Check whether --with-libSDL_mixer was given. -if test "${with_libSDL_mixer+set}" = set; then - withval=$with_libSDL_mixer; -fi - - - save_CFLAGS="$CFLAGS" - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - - RESCFLAGS="" - RESLIBS="-lSDL_mixer" - CFLAGS="$CFLAGS $SDL_CFLAGS" - CPPFLAGS="$CPPFLAGS $SDL_CFLAGS" - LIBS="$LIBS -lSDL_mixer $SDL_LIBS" - - if test -n "$with_libSDL_mixer"; then - - CFLAGS="-I$with_libSDL_mixer/include $CFLAGS" - CPPFLAGS="-I$with_libSDL_mixer/include $CPPFLAGS" - LIBS="-L$with_libSDL_mixer/lib $LIBS" - RESCFLAGS="-I$with_libSDL_mixer/include $RESCFLAGS" - RESLIBS="-L$with_libSDL_mixer/lib $RESLIBS" - -fi - - - { echo "$as_me:$LINENO: checking for SDL_mixer >= 1.2" >&5 -echo $ECHO_N "checking for SDL_mixer >= 1.2... $ECHO_C" >&6; } - - cat >conftest.$ac_ext <<_ACEOF -#include -#if MIX_MAJOR_VERSION < 1 -# error SDLMix too old -#else -# if MIX_MAJOR_VERSION == 1 -# if MIX_MINOR_VERSION < 2 -# error SDLMix too old -# endif -# endif -#endif -int -main(int argc, char** argv) -{ -Mix_OpenAudio(0, 0, 0, 0); - ; - return 0; -} - -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - buildok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - buildok=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS=$save_LIBS - CPPFLAGS=$save_CPPFLAGS - CFLAGS=$save_CFLAGS - - if test $buildok = yes; then - { echo "$as_me:$LINENO: result: found" >&5 -echo "${ECHO_T}found" >&6; } - SDLMIXER_AVAILABLE=yes - SDLMIXER_CFLAGS="$RESCFLAGS" - SDLMIXER_LIBS="$RESLIBS" -else - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } - SDLMIXER_AVAILABLE=no - SDLMIXER_CFLAGS="" - SDLMIXER_LIBS="" -fi - - - - - - - if test $buildok = yes; then - : -else - { { echo "$as_me:$LINENO: error: Please install SDLMixer >=1.2.2" >&5 -echo "$as_me: error: Please install SDLMixer >=1.2.2" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - -# Check whether --with-libSDL_image was given. -if test "${with_libSDL_image+set}" = set; then - withval=$with_libSDL_image; -fi - - - save_CFLAGS="$CFLAGS" - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - - RESCFLAGS="" - RESLIBS="-lSDL_image" - CFLAGS="$CFLAGS $SDL_CFLAGS" - CPPFLAGS="$CPPFLAGS $SDL_CFLAGS" - LIBS="$LIBS -lSDL_image $SDL_LIBS" - - if test -n "$with_libSDL_image"; then - - CFLAGS="-I$with_libSDL_image/include $CFLAGS" - CPPFLAGS="-I$with_libSDL_image/include $CPPFLAGS" - LIBS="-L$with_libSDL_image/lib $LIBS" - RESCFLAGS="-I$with_libSDL_image/include $RESCFLAGS" - RESLIBS="-L$with_libSDL_image/lib $RESLIBS" - -fi - - - { echo "$as_me:$LINENO: checking for SDL_image >= 1.2" >&5 -echo $ECHO_N "checking for SDL_image >= 1.2... $ECHO_C" >&6; } - - cat >conftest.$ac_ext <<_ACEOF -#include -int -main(int argc, char** argv) -{ -IMG_Load(""); - ; - return 0; -} - -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - buildok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - buildok=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS=$save_LIBS - CPPFLAGS=$save_CPPFLAGS - CFLAGS=$save_CFLAGS - - if test $buildok = yes; then - { echo "$as_me:$LINENO: result: found" >&5 -echo "${ECHO_T}found" >&6; } - SDLIMAGE_AVAILABLE=yes - SDLIMAGE_CFLAGS="$RESCFLAGS" - SDLIMAGE_LIBS="$RESLIBS" -else - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } - SDLIMAGE_AVAILABLE=no - SDLIMAGE_CFLAGS="" - SDLIMAGE_LIBS="" -fi - - - - - - - if test $buildok = yes; then - : -else - { { echo "$as_me:$LINENO: error: Please install SDLImage >= 1.2.1" >&5 -echo "$as_me: error: Please install SDLImage >= 1.2.1" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - -# Check whether --with-libSDL_ttf was given. -if test "${with_libSDL_ttf+set}" = set; then - withval=$with_libSDL_ttf; -fi - - - save_CFLAGS="$CFLAGS" - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - - RESCFLAGS="" - RESLIBS="-lSDL_ttf" - CFLAGS="$CFLAGS $SDL_CFLAGS" - CPPFLAGS="$CPPFLAGS $SDL_CFLAGS" - LIBS="$LIBS -lSDL_ttf $SDL_LIBS" - - if test -n "$with_libSDL_ttf"; then - - CFLAGS="-I$with_libSDL_ttf/include $CFLAGS" - CPPFLAGS="-I$with_libSDL_ttf/include $CPPFLAGS" - LIBS="-L$with_libSDL_ttf/lib $LIBS" - RESCFLAGS="-I$with_libSDL_ttf/include $RESCFLAGS" - RESLIBS="-L$with_libSDL_ttf/lib $RESLIBS" - -fi - - - { echo "$as_me:$LINENO: checking for SDL_ttf >= 2.0.8" >&5 -echo $ECHO_N "checking for SDL_ttf >= 2.0.8... $ECHO_C" >&6; } - - cat >conftest.$ac_ext <<_ACEOF -#include -int -main(int argc, char** argv) -{ -if(!TTF_WasInit()) TTF_Init(); - ; - return 0; -} - -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - buildok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - buildok=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS=$save_LIBS - CPPFLAGS=$save_CPPFLAGS - CFLAGS=$save_CFLAGS - - if test $buildok = yes; then - { echo "$as_me:$LINENO: result: found" >&5 -echo "${ECHO_T}found" >&6; } - SDLTTF_AVAILABLE=yes - SDLTTF_CFLAGS="$RESCFLAGS" - SDLTTF_LIBS="$RESLIBS" -else - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } - SDLTTF_AVAILABLE=no - SDLTTF_CFLAGS="" - SDLTTF_LIBS="" -fi - - - - - - - if test $buildok = yes; then - : -else - { { echo "$as_me:$LINENO: error: Please install SDL_ttf >= 2.0.8" >&5 -echo "$as_me: error: Please install SDL_ttf >= 2.0.8" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - -# Check whether --with-libSDL_gfx was given. -if test "${with_libSDL_gfx+set}" = set; then - withval=$with_libSDL_gfx; -fi - - - save_CFLAGS="$CFLAGS" - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - - RESCFLAGS="" - RESLIBS="-lSDL_gfx" - CFLAGS="$CFLAGS $SDL_CFLAGS" - CPPFLAGS="$CPPFLAGS $SDL_CFLAGS" - LIBS="$LIBS -lSDL_gfx $SDL_LIBS" - - if test -n "$with_libSDL_gfx"; then - - CFLAGS="-I$with_libSDL_gfx/include $CFLAGS" - CPPFLAGS="-I$with_libSDL_gfx/include $CPPFLAGS" - LIBS="-L$with_libSDL_gfx/lib $LIBS" - RESCFLAGS="-I$with_libSDL_gfx/include $RESCFLAGS" - RESLIBS="-L$with_libSDL_gfx/lib $RESLIBS" - -fi - - - { echo "$as_me:$LINENO: checking for SDL_gfx >= 2.0.13" >&5 -echo $ECHO_N "checking for SDL_gfx >= 2.0.13... $ECHO_C" >&6; } - - cat >conftest.$ac_ext <<_ACEOF -#include -#if SDL_GFXPRIMITIVES_MAJOR < 2 -# error SDL_GFX too old -#endif - -int -main(int argc, char** argv) -{ -hlineColor(0, 0, 0, 0, 0); - ; - return 0; -} - -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - buildok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - buildok=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS=$save_LIBS - CPPFLAGS=$save_CPPFLAGS - CFLAGS=$save_CFLAGS - - if test $buildok = yes; then - { echo "$as_me:$LINENO: result: found" >&5 -echo "${ECHO_T}found" >&6; } - SDLGFX_AVAILABLE=yes - SDLGFX_CFLAGS="$RESCFLAGS" - SDLGFX_LIBS="$RESLIBS" -else - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } - SDLGFX_AVAILABLE=no - SDLGFX_CFLAGS="" - SDLGFX_LIBS="" -fi - - - - - - - if test $buildok = yes; then - : -else - { { echo "$as_me:$LINENO: error: Please install SDL_gfx >= 2.0.13" >&5 -echo "$as_me: error: Please install SDL_gfx >= 2.0.13" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - -# Check whether --with-libphysfs was given. -if test "${with_libphysfs+set}" = set; then - withval=$with_libphysfs; -fi - - - save_CFLAGS="$CFLAGS" - save_CPPFLAGS="$CPPFLAGS" - save_LIBS="$LIBS" - - RESCFLAGS="" - RESLIBS="-lphysfs" - CFLAGS="$CFLAGS " - CPPFLAGS="$CPPFLAGS " - LIBS="$LIBS -lphysfs " - - if test -n "$with_libphysfs"; then - - CFLAGS="-I$with_libphysfs/include $CFLAGS" - CPPFLAGS="-I$with_libphysfs/include $CPPFLAGS" - LIBS="-L$with_libphysfs/lib $LIBS" - RESCFLAGS="-I$with_libphysfs/include $RESCFLAGS" - RESLIBS="-L$with_libphysfs/lib $RESLIBS" - -fi - - - { echo "$as_me:$LINENO: checking for physfs >= 1.0.0" >&5 -echo $ECHO_N "checking for physfs >= 1.0.0... $ECHO_C" >&6; } - - cat >conftest.$ac_ext <<_ACEOF - -#include -#include -#if PHYSFS_VER_MAJOR < 1 -# error PHYSFS is too old -#endif -int -main(int argc, char** argv) -{ - - ; - return 0; -} - -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval "echo \"\$as_me:$LINENO: $ac_try_echo\"") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && - $as_test_x conftest$ac_exeext; then - buildok=yes -else - echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - buildok=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext - - LIBS=$save_LIBS - CPPFLAGS=$save_CPPFLAGS - CFLAGS=$save_CFLAGS - - if test $buildok = yes; then - { echo "$as_me:$LINENO: result: found" >&5 -echo "${ECHO_T}found" >&6; } - PHYSFS_AVAILABLE=yes - PHYSFS_CFLAGS="$RESCFLAGS" - PHYSFS_LIBS="$RESLIBS" -else - { echo "$as_me:$LINENO: result: not found" >&5 -echo "${ECHO_T}not found" >&6; } - PHYSFS_AVAILABLE=no - PHYSFS_CFLAGS="" - PHYSFS_LIBS="" -fi - - - - - - - if test $buildok = yes; then - : -else - { { echo "$as_me:$LINENO: error: Please install physfs >= 1.0" >&5 -echo "$as_me: error: Please install physfs >= 1.0" >&2;} - { (exit 1); exit 1; }; } -fi - - - - - ac_config_commands="$ac_config_commands Jamfile" - - -# Handle the case when no prefix is given. And the special case when a path -# contains more than 2 slashes, these paths seem to be correct but jam fails -# on them. -if test $prefix = NONE; then - prefix="$ac_default_prefix" -else - prefix=`echo "$prefix" | sed -e 's:///*:/:g'` -fi - -if test $exec_prefix = NONE; then - exec_prefix="\$(prefix)" -else - exec_prefix=`echo "$exec_prefix" | sed -e 's:///*:/:g'` -fi - - -prefix=`echo "$prefix" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -exec_prefix=`echo "$exec_prefix" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -bindir=`echo "$bindir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -sbindir=`echo "$sbindir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -libexecdir=`echo "$libexecdir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -datarootdir=`echo "$datarootdir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -datadir=`echo "$datadir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -sysconfdir=`echo "$sysconfdir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -sharedstatedir=`echo "$sharedstatedir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -localstatedir=`echo "$localstatedir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -libdir=`echo "$libdir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -includedir=`echo "$includedir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -oldincludedir=`echo "$oldincludedir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -infodir=`echo "$infodir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -mandir=`echo "$mandir" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` - -#hack to get the order right :-/ (autoconf --trace reports wrong order...) - - - - - - - - - - - - - - - - - - -INSTALL=`echo "$INSTALL" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -INSTALL_PROGRAM=`echo "$INSTALL_PROGRAM" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -INSTALL_SCRIPT=`echo "$INSTALL_SCRIPT" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` -INSTALL_DATA=`echo "$INSTALL_DATA" | sed -e 's/\${\([a-zA-Z_][a-zA-Z_]*\)}/$(\1)/g' -e 's/\\\\/\\\\\\\\/g'` - -# fix for order... - - - - - -ac_config_files="$ac_config_files Jamconfig" - - -# We have a config.h file -CPPFLAGS="$CPPFLAGS -DHAVE_CONFIG_H" - -cat >confcache <<\_ACEOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs, see configure's option --config-cache. -# It is not useful on other systems. If it contains results you don't -# want to keep, you may remove or edit it. -# -# config.status only pays attention to the cache file if you give it -# the --recheck option to rerun configure. -# -# `ac_cv_env_foo' variables (set or unset) will be overridden when -# loading this file, other *unset* `ac_cv_foo' will be assigned the -# following values. - -_ACEOF - -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, we kill variables containing newlines. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -( - for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do - eval ac_val=\$$ac_var - case $ac_val in #( - *${as_nl}*) - case $ac_var in #( - *_cv_*) { echo "$as_me:$LINENO: WARNING: Cache variable $ac_var contains a newline." >&5 -echo "$as_me: WARNING: Cache variable $ac_var contains a newline." >&2;} ;; - esac - case $ac_var in #( - _ | IFS | as_nl) ;; #( - *) $as_unset $ac_var ;; - esac ;; - esac - done - - (set) 2>&1 | - case $as_nl`(ac_space=' '; set) 2>&1` in #( - *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - "s/'/'\\\\''/g; - s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" - ;; #( - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" - ;; - esac | - sort -) | - sed ' - /^ac_cv_env_/b end - t clear - :clear - s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ - t end - s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ - :end' >>confcache -if diff "$cache_file" confcache >/dev/null 2>&1; then :; else - if test -w "$cache_file"; then - test "x$cache_file" != "x/dev/null" && - { echo "$as_me:$LINENO: updating cache $cache_file" >&5 -echo "$as_me: updating cache $cache_file" >&6;} - cat confcache >$cache_file - else - { echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 -echo "$as_me: not updating unwritable cache $cache_file" >&6;} - fi -fi -rm -f confcache - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -DEFS=-DHAVE_CONFIG_H - -ac_libobjs= -ac_ltlibobjs= -for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue - # 1. Remove the extension, and $U if already installed. - ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' - ac_i=`echo "$ac_i" | sed "$ac_script"` - # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR - # will be set to the directory where LIBOBJS objects are built. - ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' -done -LIBOBJS=$ac_libobjs - -LTLIBOBJS=$ac_ltlibobjs - - - -: ${CONFIG_STATUS=./config.status} -ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 -echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF -#! $SHELL -# Generated by $as_me. -# Run this file to recreate the current configuration. -# Compiler output produced by configure, useful for debugging -# configure, is in config.log if it exists. - -debug=false -ac_cs_recheck=false -ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## - -# Be more Bourne compatible -DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - -# The user is always right. -if test "${PATH_SEPARATOR+set}" != set; then - echo "#! /bin/sh" >conf$$.sh - echo "exit 0" >>conf$$.sh - chmod +x conf$$.sh - if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then - PATH_SEPARATOR=';' - else - PATH_SEPARATOR=: - fi - rm -f conf$$.sh -fi - -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - - -# IFS -# We need space, tab and new line, in precisely that order. Quoting is -# there to prevent editors from complaining about space-tab. -# (If _AS_PATH_WALK were called with IFS unset, it would disable word -# splitting by setting IFS to empty value.) -as_nl=' -' -IFS=" "" $as_nl" - -# Find who we are. Look in the path if we contain no directory separator. -case $0 in - *[\\/]* ) as_myself=$0 ;; - *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done -IFS=$as_save_IFS - - ;; -esac -# We did not find ourselves, most probably we were run as `sh COMMAND' -# in which case we are not to be found in the path. -if test "x$as_myself" = x; then - as_myself=$0 -fi -if test ! -f "$as_myself"; then - echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } -fi - -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var -done -PS1='$ ' -PS2='> ' -PS4='+ ' - -# NLS nuisances. -for as_var in \ - LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ - LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ - LC_TELEPHONE LC_TIME -do - if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then - eval $as_var=C; export $as_var - else - ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - fi -done - -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - -ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in --n*) - case `echo 'x\c'` in - *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; - esac;; -*) - ECHO_N='-n';; -esac - -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -rm -f conf$$ conf$$.exe conf$$.file -if test -d conf$$.dir; then - rm -f conf$$.dir/conf$$.file -else - rm -f conf$$.dir - mkdir conf$$.dir -fi -echo >conf$$.file -if ln -s conf$$.file conf$$ 2>/dev/null; then - as_ln_s='ln -s' - # ... but there are two gotchas: - # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. - # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. - # In both cases, we have to default to `cp -p'. - ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || - as_ln_s='cp -p' -elif ln conf$$.file conf$$ 2>/dev/null; then - as_ln_s=ln -else - as_ln_s='cp -p' -fi -rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file -rmdir conf$$.dir 2>/dev/null - -if mkdir -p . 2>/dev/null; then - as_mkdir_p=: -else - test -d ./-p && rmdir ./-p - as_mkdir_p=false -fi - -if test -x / >/dev/null 2>&1; then - as_test_x='test -x' -else - if ls -dL / >/dev/null 2>&1; then - as_ls_L_option=L - else - as_ls_L_option= - fi - as_test_x=' - eval sh -c '\'' - if test -d "$1"; then - test -d "$1/."; - else - case $1 in - -*)set "./$1";; - esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in - ???[sx]*):;;*)false;;esac;fi - '\'' sh - ' -fi -as_executable_p=$as_test_x - -# Sed expression to map a string onto a valid CPP name. -as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" - -# Sed expression to map a string onto a valid variable name. -as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -exec 6>&1 - -# Save the log message, to keep $[0] and so on meaningful, and to -# report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. -ac_log=" -This file was extended by lincity-ng $as_me 2.0, which was -generated by GNU Autoconf 2.61. Invocation command line was - - CONFIG_FILES = $CONFIG_FILES - CONFIG_HEADERS = $CONFIG_HEADERS - CONFIG_LINKS = $CONFIG_LINKS - CONFIG_COMMANDS = $CONFIG_COMMANDS - $ $0 $@ - -on `(hostname || uname -n) 2>/dev/null | sed 1q` -" - -_ACEOF - -cat >>$CONFIG_STATUS <<_ACEOF -# Files that config.status was made for. -config_files="$ac_config_files" -config_headers="$ac_config_headers" -config_commands="$ac_config_commands" - -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. - -Usage: $0 [OPTIONS] [FILE]... - - -h, --help print this help, then exit - -V, --version print version number and configuration settings, then exit - -q, --quiet do not print progress messages - -d, --debug don't remove temporary files - --recheck update $as_me by reconfiguring in the same conditions - --file=FILE[:TEMPLATE] - instantiate the configuration file FILE - --header=FILE[:TEMPLATE] - instantiate the configuration header FILE - -Configuration files: -$config_files - -Configuration headers: -$config_headers - -Configuration commands: -$config_commands - -Report bugs to ." - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -ac_cs_version="\\ -lincity-ng config.status 2.0 -configured by $0, generated by GNU Autoconf 2.61, - with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" - -Copyright (C) 2006 Free Software Foundation, Inc. -This config.status script is free software; the Free Software Foundation -gives unlimited permission to copy, distribute and modify it." - -ac_pwd='$ac_pwd' -srcdir='$srcdir' -INSTALL='$INSTALL' -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If no file are specified by the user, then we need to provide default -# value. By we need to know if files were specified by the user. -ac_need_defaults=: -while test $# != 0 -do - case $1 in - --*=*) - ac_option=`expr "X$1" : 'X\([^=]*\)='` - ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` - ac_shift=: - ;; - *) - ac_option=$1 - ac_optarg=$2 - ac_shift=shift - ;; - esac - - case $ac_option in - # Handling of the options. - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - ac_cs_recheck=: ;; - --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) - echo "$ac_cs_version"; exit ;; - --debug | --debu | --deb | --de | --d | -d ) - debug=: ;; - --file | --fil | --fi | --f ) - $ac_shift - CONFIG_FILES="$CONFIG_FILES $ac_optarg" - ac_need_defaults=false;; - --header | --heade | --head | --hea ) - $ac_shift - CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" - ac_need_defaults=false;; - --he | --h) - # Conflict between --help and --header - { echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit ;; - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil | --si | --s) - ac_cs_silent=: ;; - - # This is an error. - -*) { echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; - - *) ac_config_targets="$ac_config_targets $1" - ac_need_defaults=false ;; - - esac - shift -done - -ac_configure_extra_args= - -if $ac_cs_silent; then - exec 6>/dev/null - ac_configure_extra_args="$ac_configure_extra_args --silent" -fi - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -if \$ac_cs_recheck; then - echo "running CONFIG_SHELL=$SHELL $SHELL $0 "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 - CONFIG_SHELL=$SHELL - export CONFIG_SHELL - exec $SHELL "$0"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion -fi - -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -exec 5>>config.log -{ - echo - sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX -## Running $as_me. ## -_ASBOX - echo "$ac_log" -} >&5 - -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF - -# Handling of arguments. -for ac_config_target in $ac_config_targets -do - case $ac_config_target in - "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; - "Jamfile") CONFIG_COMMANDS="$CONFIG_COMMANDS Jamfile" ;; - "Jamconfig") CONFIG_FILES="$CONFIG_FILES Jamconfig" ;; - - *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; - esac -done - - -# If the user did not use the arguments to specify the items to instantiate, -# then the envvar interface is used. Set only those that are not. -# We use the long form for the default assignment because of an extremely -# bizarre bug on SunOS 4.1.3. -if $ac_need_defaults; then - test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files - test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers - test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands -fi - -# Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason against having it here, and in addition, -# creating and moving files from /tmp can sometimes cause problems. -# Hook for its removal unless debugging. -# Note that there is a small window in which the directory will not be cleaned: -# after its creation but before its name has been assigned to `$tmp'. -$debug || -{ - tmp= - trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status -' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 -} -# Create a (secure) tmp directory for tmp files. - -{ - tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" -} || -{ - tmp=./conf$$-$RANDOM - (umask 077 && mkdir "$tmp") -} || -{ - echo "$me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} - -# -# Set up the sed scripts for CONFIG_FILES section. -# - -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "$CONFIG_FILES"; then - -_ACEOF - - - -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -SHELL!$SHELL$ac_delim -PATH_SEPARATOR!$PATH_SEPARATOR$ac_delim -PACKAGE_NAME!$PACKAGE_NAME$ac_delim -PACKAGE_TARNAME!$PACKAGE_TARNAME$ac_delim -PACKAGE_VERSION!$PACKAGE_VERSION$ac_delim -PACKAGE_STRING!$PACKAGE_STRING$ac_delim -PACKAGE_BUGREPORT!$PACKAGE_BUGREPORT$ac_delim -exec_prefix!$exec_prefix$ac_delim -prefix!$prefix$ac_delim -program_transform_name!$program_transform_name$ac_delim -bindir!$bindir$ac_delim -sbindir!$sbindir$ac_delim -libexecdir!$libexecdir$ac_delim -datarootdir!$datarootdir$ac_delim -datadir!$datadir$ac_delim -sysconfdir!$sysconfdir$ac_delim -sharedstatedir!$sharedstatedir$ac_delim -localstatedir!$localstatedir$ac_delim -includedir!$includedir$ac_delim -oldincludedir!$oldincludedir$ac_delim -docdir!$docdir$ac_delim -infodir!$infodir$ac_delim -htmldir!$htmldir$ac_delim -dvidir!$dvidir$ac_delim -pdfdir!$pdfdir$ac_delim -psdir!$psdir$ac_delim -libdir!$libdir$ac_delim -localedir!$localedir$ac_delim -mandir!$mandir$ac_delim -DEFS!$DEFS$ac_delim -ECHO_C!$ECHO_C$ac_delim -ECHO_N!$ECHO_N$ac_delim -ECHO_T!$ECHO_T$ac_delim -LIBS!$LIBS$ac_delim -build_alias!$build_alias$ac_delim -host_alias!$host_alias$ac_delim -target_alias!$target_alias$ac_delim -build!$build$ac_delim -build_cpu!$build_cpu$ac_delim -build_vendor!$build_vendor$ac_delim -build_os!$build_os$ac_delim -host!$host$ac_delim -host_cpu!$host_cpu$ac_delim -host_vendor!$host_vendor$ac_delim -host_os!$host_os$ac_delim -target!$target$ac_delim -target_cpu!$target_cpu$ac_delim -target_vendor!$target_vendor$ac_delim -target_os!$target_os$ac_delim -VARIANT!$VARIANT$ac_delim -CXX!$CXX$ac_delim -CXXFLAGS!$CXXFLAGS$ac_delim -LDFLAGS!$LDFLAGS$ac_delim -CPPFLAGS!$CPPFLAGS$ac_delim -ac_ct_CXX!$ac_ct_CXX$ac_delim -EXEEXT!$EXEEXT$ac_delim -OBJEXT!$OBJEXT$ac_delim -INSTALL_PROGRAM!$INSTALL_PROGRAM$ac_delim -INSTALL_SCRIPT!$INSTALL_SCRIPT$ac_delim -INSTALL_DATA!$INSTALL_DATA$ac_delim -XGETTEXT!$XGETTEXT$ac_delim -XSLTPROC!$XSLTPROC$ac_delim -CC!$CC$ac_delim -CFLAGS!$CFLAGS$ac_delim -ac_ct_CC!$ac_ct_CC$ac_delim -CPP!$CPP$ac_delim -GREP!$GREP$ac_delim -EGREP!$EGREP$ac_delim -LIBICONV!$LIBICONV$ac_delim -LTLIBICONV!$LTLIBICONV$ac_delim -ICONV_LIBS!$ICONV_LIBS$ac_delim -BINRELOC_CFLAGS!$BINRELOC_CFLAGS$ac_delim -BINRELOC_LIBS!$BINRELOC_LIBS$ac_delim -ZLIB_AVAILABLE!$ZLIB_AVAILABLE$ac_delim -ZLIB_CFLAGS!$ZLIB_CFLAGS$ac_delim -ZLIB_LIBS!$ZLIB_LIBS$ac_delim -PKG_CONFIG!$PKG_CONFIG$ac_delim -LIBXML_CFLAGS!$LIBXML_CFLAGS$ac_delim -LIBXML_LIBS!$LIBXML_LIBS$ac_delim -XMKMF!$XMKMF$ac_delim -acx_pthread_config!$acx_pthread_config$ac_delim -PTHREAD_CC!$PTHREAD_CC$ac_delim -PTHREAD_LIBS!$PTHREAD_LIBS$ac_delim -PTHREAD_CFLAGS!$PTHREAD_CFLAGS$ac_delim -GL_CFLAGS!$GL_CFLAGS$ac_delim -GL_LIBS!$GL_LIBS$ac_delim -SDL_CONFIG!$SDL_CONFIG$ac_delim -SDL_CFLAGS!$SDL_CFLAGS$ac_delim -SDL_LIBS!$SDL_LIBS$ac_delim -SDLMIXER_AVAILABLE!$SDLMIXER_AVAILABLE$ac_delim -SDLMIXER_CFLAGS!$SDLMIXER_CFLAGS$ac_delim -SDLMIXER_LIBS!$SDLMIXER_LIBS$ac_delim -SDLIMAGE_AVAILABLE!$SDLIMAGE_AVAILABLE$ac_delim -SDLIMAGE_CFLAGS!$SDLIMAGE_CFLAGS$ac_delim -SDLIMAGE_LIBS!$SDLIMAGE_LIBS$ac_delim -SDLTTF_AVAILABLE!$SDLTTF_AVAILABLE$ac_delim -SDLTTF_CFLAGS!$SDLTTF_CFLAGS$ac_delim -_ACEOF - - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then - break - elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done - -ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` -if test -n "$ac_eof"; then - ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` - ac_eof=`expr $ac_eof + 1` -fi - -cat >>$CONFIG_STATUS <<_ACEOF -cat >"\$tmp/subs-1.sed" <<\CEOF$ac_eof -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -_ACEOF -sed ' -s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g -s/^/s,@/; s/!/@,|#_!!_#|/ -:n -t n -s/'"$ac_delim"'$/,g/; t -s/$/\\/; p -N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n -' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF -CEOF$ac_eof -_ACEOF - - -ac_delim='%!_!# ' -for ac_last_try in false false false false false :; do - cat >conf$$subs.sed <<_ACEOF -SDLTTF_LIBS!$SDLTTF_LIBS$ac_delim -SDLGFX_AVAILABLE!$SDLGFX_AVAILABLE$ac_delim -SDLGFX_CFLAGS!$SDLGFX_CFLAGS$ac_delim -SDLGFX_LIBS!$SDLGFX_LIBS$ac_delim -PHYSFS_AVAILABLE!$PHYSFS_AVAILABLE$ac_delim -PHYSFS_CFLAGS!$PHYSFS_CFLAGS$ac_delim -PHYSFS_LIBS!$PHYSFS_LIBS$ac_delim -INSTALL!$INSTALL$ac_delim -LIBOBJS!$LIBOBJS$ac_delim -LTLIBOBJS!$LTLIBOBJS$ac_delim -_ACEOF - - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 10; then - break - elif $ac_last_try; then - { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } - else - ac_delim="$ac_delim!$ac_delim _$ac_delim!! " - fi -done - -ac_eof=`sed -n '/^CEOF[0-9]*$/s/CEOF/0/p' conf$$subs.sed` -if test -n "$ac_eof"; then - ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` - ac_eof=`expr $ac_eof + 1` -fi - -cat >>$CONFIG_STATUS <<_ACEOF -cat >"\$tmp/subs-2.sed" <<\CEOF$ac_eof -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b end -_ACEOF -sed ' -s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g -s/^/s,@/; s/!/@,|#_!!_#|/ -:n -t n -s/'"$ac_delim"'$/,g/; t -s/$/\\/; p -N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n -' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF -:end -s/|#_!!_#|//g -CEOF$ac_eof -_ACEOF - - -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/ -s/:*\${srcdir}:*/:/ -s/:*@srcdir@:*/:/ -s/^\([^=]*=[ ]*\):*/\1/ -s/:*$// -s/^[^=]*=[ ]*$// -}' -fi - -cat >>$CONFIG_STATUS <<\_ACEOF -fi # test -n "$CONFIG_FILES" - - -for ac_tag in :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS -do - case $ac_tag in - :[FHLC]) ac_mode=$ac_tag; continue;; - esac - case $ac_mode$ac_tag in - :[FHL]*:*);; - :L* | :C*:*) { { echo "$as_me:$LINENO: error: Invalid tag $ac_tag." >&5 -echo "$as_me: error: Invalid tag $ac_tag." >&2;} - { (exit 1); exit 1; }; };; - :[FH]-) ac_tag=-:-;; - :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; - esac - ac_save_IFS=$IFS - IFS=: - set x $ac_tag - IFS=$ac_save_IFS - shift - ac_file=$1 - shift - - case $ac_mode in - :L) ac_source=$1;; - :[FH]) - ac_file_inputs= - for ac_f - do - case $ac_f in - -) ac_f="$tmp/stdin";; - *) # Look for the file first in the build tree, then in the source tree - # (if the path is not absolute). The absolute path cannot be DOS-style, - # because $ac_f cannot contain `:'. - test -f "$ac_f" || - case $ac_f in - [\\/$]*) false;; - *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; - esac || - { { echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; - esac - ac_file_inputs="$ac_file_inputs $ac_f" - done - - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - configure_input="Generated from "`IFS=: - echo $* | sed 's|^[^:]*/||;s|:[^:]*/|, |g'`" by configure." - if test x"$ac_file" != x-; then - configure_input="$ac_file. $configure_input" - { echo "$as_me:$LINENO: creating $ac_file" >&5 -echo "$as_me: creating $ac_file" >&6;} - fi - - case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin";; - esac - ;; - esac - - ac_dir=`$as_dirname -- "$ac_file" || -$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$ac_file" : 'X\(//\)[^/]' \| \ - X"$ac_file" : 'X\(//\)$' \| \ - X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || -echo X"$ac_file" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } - ac_builddir=. - -case "$ac_dir" in -.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; -*) - ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` - # A ".." for each directory in $ac_dir_suffix. - ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,/..,g;s,/,,'` - case $ac_top_builddir_sub in - "") ac_top_builddir_sub=. ac_top_build_prefix= ;; - *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; - esac ;; -esac -ac_abs_top_builddir=$ac_pwd -ac_abs_builddir=$ac_pwd$ac_dir_suffix -# for backward compatibility: -ac_top_builddir=$ac_top_build_prefix - -case $srcdir in - .) # We are building in place. - ac_srcdir=. - ac_top_srcdir=$ac_top_builddir_sub - ac_abs_top_srcdir=$ac_pwd ;; - [\\/]* | ?:[\\/]* ) # Absolute name. - ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir - ac_abs_top_srcdir=$srcdir ;; - *) # Relative name. - ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_build_prefix$srcdir - ac_abs_top_srcdir=$ac_pwd/$srcdir ;; -esac -ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix - - - case $ac_mode in - :F) - # - # CONFIG_FILE - # - - case $INSTALL in - [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; - esac -_ACEOF - -cat >>$CONFIG_STATUS <<\_ACEOF -# If the template does not know about datarootdir, expand it. -# FIXME: This hack should be removed a few years after 2.60. -ac_datarootdir_hack=; ac_datarootdir_seen= - -case `sed -n '/datarootdir/ { - p - q -} -/@datadir@/p -/@docdir@/p -/@infodir@/p -/@localedir@/p -/@mandir@/p -' $ac_file_inputs` in -*datarootdir*) ac_datarootdir_seen=yes;; -*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 -echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF - ac_datarootdir_hack=' - s&@datadir@&$datadir&g - s&@docdir@&$docdir&g - s&@infodir@&$infodir&g - s&@localedir@&$localedir&g - s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; -esac -_ACEOF - -# Neutralize VPATH when `$srcdir' = `.'. -# Shell code in configure.ac might set extrasub. -# FIXME: do we really want to maintain this feature? -cat >>$CONFIG_STATUS <<_ACEOF - sed "$ac_vpsub -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -/@[a-zA-Z_][a-zA-Z_0-9]*@/!b -s&@configure_input@&$configure_input&;t t -s&@top_builddir@&$ac_top_builddir_sub&;t t -s&@srcdir@&$ac_srcdir&;t t -s&@abs_srcdir@&$ac_abs_srcdir&;t t -s&@top_srcdir@&$ac_top_srcdir&;t t -s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t -s&@builddir@&$ac_builddir&;t t -s&@abs_builddir@&$ac_abs_builddir&;t t -s&@abs_top_builddir@&$ac_abs_top_builddir&;t t -s&@INSTALL@&$ac_INSTALL&;t t -$ac_datarootdir_hack -" $ac_file_inputs | sed -f "$tmp/subs-1.sed" | sed -f "$tmp/subs-2.sed" >$tmp/out - -test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&5 -echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' -which seems to be undefined. Please make sure it is defined." >&2;} - - rm -f "$tmp/stdin" - case $ac_file in - -) cat "$tmp/out"; rm -f "$tmp/out";; - *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; - esac - ;; - :H) - # - # CONFIG_HEADER - # -_ACEOF - -# Transform confdefs.h into a sed script `conftest.defines', that -# substitutes the proper values into config.h.in to produce config.h. -rm -f conftest.defines conftest.tail -# First, append a space to every undef/define line, to ease matching. -echo 's/$/ /' >conftest.defines -# Then, protect against being on the right side of a sed subst, or in -# an unquoted here document, in config.status. If some macros were -# called several times there might be several #defines for the same -# symbol, which is useless. But do not sort them, since the last -# AC_DEFINE must be honored. -ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* -# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where -# NAME is the cpp macro being defined, VALUE is the value it is being given. -# PARAMS is the parameter list in the macro definition--in most cases, it's -# just an empty string. -ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' -ac_dB='\\)[ (].*,\\1define\\2' -ac_dC=' ' -ac_dD=' ,' - -uniq confdefs.h | - sed -n ' - t rset - :rset - s/^[ ]*#[ ]*define[ ][ ]*// - t ok - d - :ok - s/[\\&,]/\\&/g - s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p - s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p - ' >>conftest.defines - -# Remove the space that was appended to ease matching. -# Then replace #undef with comments. This is necessary, for -# example, in the case of _POSIX_SOURCE, which is predefined and required -# on some systems where configure will not decide to define it. -# (The regexp can be short, since the line contains either #define or #undef.) -echo 's/ $// -s,^[ #]*u.*,/* & */,' >>conftest.defines - -# Break up conftest.defines: -ac_max_sed_lines=50 - -# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" -# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" -# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" -# et cetera. -ac_in='$ac_file_inputs' -ac_out='"$tmp/out1"' -ac_nxt='"$tmp/out2"' - -while : -do - # Write a here document: - cat >>$CONFIG_STATUS <<_ACEOF - # First, check the format of the line: - cat >"\$tmp/defines.sed" <<\\CEOF -/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def -/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def -b -:def -_ACEOF - sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS - echo 'CEOF - sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS - ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in - sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail - grep . conftest.tail >/dev/null || break - rm -f conftest.defines - mv conftest.tail conftest.defines -done -rm -f conftest.defines conftest.tail - -echo "ac_result=$ac_in" >>$CONFIG_STATUS -cat >>$CONFIG_STATUS <<\_ACEOF - if test x"$ac_file" != x-; then - echo "/* $configure_input */" >"$tmp/config.h" - cat "$ac_result" >>"$tmp/config.h" - if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then - { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 -echo "$as_me: $ac_file is unchanged" >&6;} - else - rm -f $ac_file - mv "$tmp/config.h" $ac_file - fi - else - echo "/* $configure_input */" - cat "$ac_result" - fi - rm -f "$tmp/out12" - ;; - - :C) { echo "$as_me:$LINENO: executing $ac_file commands" >&5 -echo "$as_me: executing $ac_file commands" >&6;} - ;; - esac - - - case $ac_file$ac_mode in - "Jamfile":C) if test ! -f "${ac_top_builddir}Jamfile"; then - echo Installing Jamfile wrapper. - echo "# This file was automatically create by config.status" > Jamfile - echo "TOP ?= $ac_top_srcdir ;" >> Jamfile - echo "top_builddir ?= . ;" >> Jamfile - echo "include \$(TOP)/Jamfile ;" >> Jamfile -fi - ;; - - esac -done # for ac_tag - - -{ (exit 0); exit 0; } -_ACEOF -chmod +x $CONFIG_STATUS -ac_clean_files=$ac_clean_files_save - - -# configure is writing to config.log, and then calls config.status. -# config.status does its own redirection, appending to config.log. -# Unfortunately, on DOS this fails, as config.log is still kept open -# by configure, so config.status won't be able to write to it; its -# output is simply discarded. So we exec the FD to /dev/null, -# effectively closing config.log, so it can be properly (re)opened and -# appended to by config.status. When coming back to configure, we -# need to make the FD available again. -if test "$no_create" != yes; then - ac_cs_success=: - ac_config_status_args= - test "$silent" = yes && - ac_config_status_args="$ac_config_status_args --quiet" - exec 5>/dev/null - $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false - exec 5>>config.log - # Use ||, not &&, to avoid exiting from the if with $? = 1, which - # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } -fi - - -{ echo "$as_me:$LINENO: - -Notice: This project uses jam (and not make) as build tool. -" >&5 -echo "$as_me: - -Notice: This project uses jam (and not make) as build tool. -" >&6;} diff -Nru lincity-ng-2.0/configure.ac lincity-ng-2.9~git20150314/configure.ac --- lincity-ng-2.0/configure.ac 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/configure.ac 2015-05-05 16:32:49.000000000 +0000 @@ -4,7 +4,7 @@ #---------------------------------------------------------------------------- AC_PREREQ([2.54]) -AC_INIT([lincity-ng], [2.0], [matze@braunis.de]) +AC_INIT([lincity-ng], [2.9.beta], [matze@braunis.de]) AC_CONFIG_SRCDIR([mk/jam/build.jam]) AC_CONFIG_AUX_DIR([mk/autoconf]) @@ -98,7 +98,7 @@ AC_MSG_ERROR([Couldn't find opengl libraries or headers]) fi -AM_PATH_SDL([1.2.5], , AC_MSG_ERROR([Please install libsdl >= 1.2.5])) +AM_PATH_SDL([1.2.14], , AC_MSG_ERROR([Please install libsdl >= 1.2.14])) NP_FINDLIB([SDLMIXER], [SDL_mixer], [SDL_mixer >= 1.2], NP_LANG_PROGRAM([#include diff -Nru lincity-ng-2.0/contrib/autocrop.cxx lincity-ng-2.9~git20150314/contrib/autocrop.cxx --- lincity-ng-2.0/contrib/autocrop.cxx 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/autocrop.cxx 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,352 @@ +// Copyright (C) 2002 Ingo Ruhnke +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +class Rect +{ +public: + Rect(int x1_, int y1_, + int x2_, int y2_) + : x1(x1_), y1(y1_), + x2(x2_), y2(y2_) + {} + + int x1; + int y1; + int x2; + int y2; +}; + +class Color +{ +public: + int red; + int green; + int blue; + + Color () + : red (0), green (255), blue (0) + { + } + + Color (int r, int g, int b) + : red (r), green (g), blue (b) + { + } +}; + +class Image +{ +private: + int m_width; + int m_height; + int row_bytes; + + std::vector m_image; + +public: + Image (const Image& image) + : m_width(image.m_width), + m_height(image.m_height), + row_bytes(image.row_bytes), + m_image(image.m_image) + { + } + + Image(int width, int height) { + m_width = width; + m_height = height; + row_bytes = width * 4; + m_image.resize(row_bytes * height); + } + + /** Load an image from a given png source */ + Image (const std::string& filename) + { + FILE* fp; + png_structp png_ptr; + png_infop info_ptr; + png_uint_32 pwidth, pheight; + int bit_depth, color_type, interlace_type, compression_type, filter_type; + + if ((fp = fopen(filename.c_str (), "rb")) == NULL) + { + perror (filename.c_str ()); + exit (EXIT_FAILURE); + } + + png_ptr = png_create_read_struct(PNG_LIBPNG_VER_STRING, + NULL, NULL, NULL); + info_ptr = png_create_info_struct(png_ptr); + png_init_io(png_ptr, fp); + png_read_info(png_ptr, info_ptr); + png_get_IHDR(png_ptr, info_ptr, &pwidth, &pheight, + &bit_depth, &color_type, &interlace_type, + &compression_type, &filter_type); + row_bytes = png_get_rowbytes(png_ptr, info_ptr); + + if (0) + { + std::cout << "BitDepth: " << bit_depth << "\n" + << "Colortype: " << color_type << "\n" + << "Interlace: " << interlace_type << "\n" + << "Filter Type: " << filter_type << "\n" + << "Row Bytes: " << row_bytes << "\n" + << "Width: " << pwidth << "\n" + << "Height: " << pheight << "\n" + << std::endl; + } + + // Create the 'data' array + png_bytep row_pointers[pheight]; + for (unsigned int i = 0; i < pheight; ++i) + row_pointers[i] = new png_byte[row_bytes]; + + png_read_image(png_ptr, row_pointers); + + if (color_type != PNG_COLOR_TYPE_RGBA) + { + std::cout << "Unsupported color type" << std::endl; + exit (EXIT_FAILURE); + } + + m_width = pwidth; + m_height = pheight; + + m_image.resize (m_height * row_bytes); + + // Convert the png into our internal data structure + for (int y = 0; y < m_height; ++y) + for (int i = 0; i < row_bytes; ++i) + { + m_image[i + (row_bytes * y)] = row_pointers[y][i]; + } + + png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL); + fclose (fp); + } + + ~Image () + { + } + + Image crop(Rect rect) + { + Image img(rect.x2 - rect.x1, + rect.y2 - rect.y1); + + for(int y = 0; y < img.m_height; ++y) + { + for(int x = 0; x < img.row_bytes; ++x) + { + img.m_image[img.row_bytes * y + x] = m_image[(row_bytes * (y + rect.y1)) + x + rect.x1*4]; + } + } + + return img; + } + + Rect calc_crop_region() { + Rect rect(m_width-1, m_height-1, 0, 0); + + for(int y = 0; y < m_height; ++y) + { + for(int x = 0; x < m_width; ++x) + { + if (m_image[4*(y * m_width + x)+3] != 0) + { // Found non-transparent pixel + rect.x1 = std::min(x, rect.x1); + break; + } + } + + for(int x = m_width-1; x >=0; --x) + { + if (m_image[4*(y * m_width + x)+3] != 0) + { // Found non-transparent pixel + rect.x2 = std::max(x, rect.x2); + break; + } + } + } + + for(int x = 0; x < m_width; ++x) + { + for(int y = 0; y < m_height; ++y) + { + if (m_image[4*(y * m_width + x)+3] != 0) + { // Found non-transparent pixel + rect.y1 = std::min(y, rect.y1); + break; + } + } + + for(int y = m_height-1; y >=0; --y) + { + if (m_image[4*(y * m_width + x)+3] != 0) + { // Found non-transparent pixel + rect.y2 = std::max(y, rect.y2); + break; + } + } + } + + return rect; + } + + void write_pnm(std::string filename) + { + FILE* fp; + fp = fopen(filename.c_str (), "wb"); + if (fp == NULL) + assert (false); + + fprintf(fp, "P3\n# CREATOR\n"); + fprintf(fp, "%d %d\n", m_width, m_height); + fprintf(fp, "255\n"); + + for (unsigned int i = 0; i < m_image.size (); ++i) + fprintf(fp, "%d\n", m_image[i]); + + fclose(fp); + } + + void write_png_file(std::string filename) + { + FILE* fp; + fp = fopen(filename.c_str (), "wb"); + if (fp == NULL) + assert (false); + + write_png(fp); + + fclose(fp); + } + + void write_png (FILE* fp) + { + png_structp png_ptr; + png_infop info_ptr; + + png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); + info_ptr = png_create_info_struct(png_ptr); + + png_init_io(png_ptr, fp); + + png_set_IHDR(png_ptr, info_ptr, + m_width, m_height, 8 /* bitdepth */, + PNG_COLOR_TYPE_RGBA, + PNG_INTERLACE_NONE, + PNG_COMPRESSION_TYPE_BASE, + PNG_FILTER_TYPE_BASE); + + png_write_info(png_ptr, info_ptr); + + png_uint_32 height = m_height; + + png_byte image[height * row_bytes]; + png_bytep row_pointers[height]; + + // fill the image with data + for (unsigned int i = 0; i < m_image.size (); ++i) + image[i] = m_image[i]; + + // generate row pointers + for (unsigned int k = 0; k < height; k++) + row_pointers[k] = image + (k * row_bytes); + + png_write_image(png_ptr, row_pointers); + + png_write_end(png_ptr, info_ptr); + } + + void add_overlay(Image& mask, Image& image) + { + for (int y = 0; y < m_height; ++y) + for (int x = 0; x < row_bytes; ++x) + { + int i = (y * row_bytes) + x; + float alpha = (mask.m_image[i]/255.0); + int new_color = int((m_image[i] * (1.0f - alpha)) + (image.m_image[i] * alpha)); + m_image[i] = new_color > 255 ? 255 : new_color; + } + } + + void rotate_90() + { + Image image(*this); + + for (int y = 0; y < m_height; ++y) + for (int x = 0; x < m_width; ++x) + { + m_image[(y * row_bytes) + 3*x + 0] = image.m_image[((m_height - x - 1) * row_bytes) + 3*y + 0]; + m_image[(y * row_bytes) + 3*x + 1] = image.m_image[((m_height - x - 1) * row_bytes) + 3*y + 1]; + m_image[(y * row_bytes) + 3*x + 2] = image.m_image[((m_height - x - 1) * row_bytes) + 3*y + 2]; + } + } + + void flip() + { + Image image(*this); + + for (int y = 0; y < m_height; ++y) + for (int x = 0; x < m_width; ++x) + { + m_image[(y * row_bytes) + 3*x + 0] = image.m_image[((m_height - y - 1) * row_bytes) + 3*x + 0]; + m_image[(y * row_bytes) + 3*x + 1] = image.m_image[((m_height - y - 1) * row_bytes) + 3*x + 1]; + m_image[(y * row_bytes) + 3*x + 2] = image.m_image[((m_height - y - 1) * row_bytes) + 3*x + 2]; + } + } +}; + +int main (int argc, char* argv[]) +{ + if (argc != 3) + { + puts("Usage: autocrop INFILE OUTFILE"); + } + else + { + Image image(argv[1]); + Rect crop = image.calc_crop_region(); + if (1) + { + std::cout << "Crop: " << crop.x1 << ", " << crop.y1 << ", " + << crop.x2 << ", " << crop.y2 << std::endl; + } + + char* file = strdup(argv[2]); + file = basename(file); + std::cout << " +Summary: City Simulation Game +URL: http://lincity-ng.berlios.de +License: GNU General Public License, Version 2 +SoftwareVersion: 2.0 +AutopackageTarget: 1.2 +PackageVersion: 1 + +[Description] +LinCity-NG is a city simulation game. It is a polished and improved +version of the classic LinCity game. In the game, you are required +to build and maintain a city. You can win the game either by +building a sustainable economy or by evacuating all citizens with +spaceships. + +[BuildPrepare] +jam clean #required for dual compilation with CXX2 +old_build_root="$build_root" #prepareBuild changes build_root :-/ +APKG_BUILD_SKIP_MAKE=1 +APKG_BUILD_ROOT=0 +prepareBuild --enable-binreloc=yes --build=i386 +jam +jam "-sDESTDIR=$old_build_root" install + +[BuildUnprepare] +unprepareBuild + +[Imports] +echo '*' | import + +[Prepare] +require @gnu.org/libstdc++ 3 +require @opengl.org/opengl 1.4 +require @libsdl.org/sdl 1.2 +require @icculus.org/physfs 1.0 +require @libsdl.org/sdl_image 1.2 +require @libsdl.org/sdl_mixer 1.2 +require @libsdl.org/sdl_ttf 2.0 +require @ferzkopp.net/sdl_gfx 13.0 +require @zlib.org/zlib 1.0 +require @xmlsoft.org/libxml2 2.6 + +[Install] +# Put your installation script here +installExe bin/* +installData share/lincity-ng +installData share/doc +installIcon share/pixmaps/*.png +installDesktop Games share/applications/lincity-ng.desktop + +[Uninstall] +# Usually just the following line is enough to uninstall everything +uninstallFromLog + diff -Nru lincity-ng-2.0/contrib/autopackage/skeletons/@ferzkopp.net/sdl_gfx/skeleton.1 lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@ferzkopp.net/sdl_gfx/skeleton.1 --- lincity-ng-2.0/contrib/autopackage/skeletons/@ferzkopp.net/sdl_gfx/skeleton.1 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@ferzkopp.net/sdl_gfx/skeleton.1 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +[Meta] +RootName: @ferzkopp.net/sdl_gfx +DisplayName: SDL_gfx +ShortName: sdl_gfx +Skeleton-Author: Matthias Braun +Skeleton-Version: 1 +Repository: http://lincity-ng.berlios.de/autopackage/sdl_gfx.xml + +[Notes] + +[Test] +INTERFACE_VERSIONS=$( testForLib -i libSDL_gfx.so ) +if [ "$INTERFACE_VERSIONS" != "" ]; then + SOFTWARE_VERSIONS="2.0" +fi + diff -Nru lincity-ng-2.0/contrib/autopackage/skeletons/@icculus.org/physfs/skeleton.1 lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@icculus.org/physfs/skeleton.1 --- lincity-ng-2.0/contrib/autopackage/skeletons/@icculus.org/physfs/skeleton.1 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@icculus.org/physfs/skeleton.1 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +[Meta] +RootName: @icculus.org/physfs +DisplayName: PhysicsFS +ShortName: physfs +Skeleton-Author: Matthias Braun +Skeleton-Version: 1 +Repository: http://lincity-ng.berlios.de/autopackage/physfs.xml + +[Notes] +The interface version follows the software version in this library. +This skeleton can detect 1.0 +Does not set SOFTWARE_VERSION + +[Test] +testForLib libphysfs-1.0.so.0 && { + INTERFACE_VERSIONS="1.0" + SOFTWARE_VERSIONS="1.0" +} diff -Nru lincity-ng-2.0/contrib/autopackage/skeletons/@libsdl.org/sdl_image/skeleton.1 lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@libsdl.org/sdl_image/skeleton.1 --- lincity-ng-2.0/contrib/autopackage/skeletons/@libsdl.org/sdl_image/skeleton.1 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@libsdl.org/sdl_image/skeleton.1 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +[Meta] +RootName: @libsdl.org/sdl_image +DisplayName: SDL Image Library +ShortName: sdl_image +Skeleton-Author: Matthias Braun +Skeleton-Version: 1 +Repository: http://lincity-ng.berlios.de/autopackage/sdl_image.xml + +[Notes] +The interface version follows the software version in this library. + +[Test] +testForLib libSDL_image-1.2.so.0 && { + INTERFACE_VERSIONS="1.2" + SOFTWARE_VERSIONS="1.2" +} diff -Nru lincity-ng-2.0/contrib/autopackage/skeletons/@libsdl.org/sdl_ttf/skeleton.1 lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@libsdl.org/sdl_ttf/skeleton.1 --- lincity-ng-2.0/contrib/autopackage/skeletons/@libsdl.org/sdl_ttf/skeleton.1 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/autopackage/skeletons/@libsdl.org/sdl_ttf/skeleton.1 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +[Meta] +RootName: @libsdl.org/sdl_ttf +DisplayName: Simple DirectMedia Layer TTF +ShortName: sdl_ttf +Skeleton-Author: Matthias Braun +Skeleton-Version: 1 +Repository: http://lincity-ng.berlios.de/autopackage/sdl_ttf.xml + +[Notes] +The interface version follows the software version in this library. +This skeleton can detect 2.0 + +[Test] +testForLib libSDL_ttf-2.0.so.0 && { + INTERFACE_VERSIONS="2.0" + SOFTWARE_VERSIONS="2.0" +} diff -Nru lincity-ng-2.0/contrib/croprender.sh lincity-ng-2.9~git20150314/contrib/croprender.sh --- lincity-ng-2.0/contrib/croprender.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/croprender.sh 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +#!/bin/sh + +for i in ../data/images/tiles.render/*; do + ./autocrop "$i" "$i" +done + +# EOF # diff -Nru lincity-ng-2.0/contrib/Makefile lincity-ng-2.9~git20150314/contrib/Makefile --- lincity-ng-2.0/contrib/Makefile 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/Makefile 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +all: autocrop + +autocrop : autocrop.cxx + $(CXX) -Wall -O2 -g -o $@ $< `pkg-config --cflags --libs libpng` + +render: + ./render.sh + +crop: + ./croprender.sh + +# EOF # diff -Nru lincity-ng-2.0/contrib/render.py lincity-ng-2.9~git20150314/contrib/render.py --- lincity-ng-2.0/contrib/render.py 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/render.py 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,60 @@ +import Blender +from Blender import * +from Blender.Scene import * + +print "Hello World: ", Blender + +scn = Scene.GetCurrent() + +# Remove all lamps +for obj in scn.getChildren(): + if obj.getType() == 'Lamp': + scn.unlink(obj) + +c = Camera.New('ortho') # create new ortho camera data +c.lens = 10.0 # set lens value +# c.setType("ortho") +ob = Object.New('Camera') # make camera object +ob.link(c) # link camera data with this object +ob.setLocation(-10, -10, 10) +ob.setEuler([60.0/180.0 * 3.1415927, 0, -45.0/180.0 * 3.1415927]) +scn.link(ob) # link object into scene +scn.setCurrentCamera(ob) + +l = Lamp.New('Lamp') # create new 'Spot' lamp data +l.setEnergy(0.5) +# l.setMode('square', 'shadow') # set these two lamp mode flags +ob = Object.New('Lamp') # create new lamp object +ob.link(l) +ob.setEuler([3.1415927/4.0, 0, 3.1415927/4.0]) +ob.setLocation(10, -10, 14) +scn.link(ob) + +l = Lamp.New('Sun') # create new 'Spot' lamp data +l.setEnergy(1.0) +# l.setMode('square', 'shadow') # set these two lamp mode flags +ob = Object.New('Lamp') # create new lamp object +ob.link(l) +ob.setEuler([60.0/180.0 * 3.1415927, 0, -45.0/180.0 * 3.1415927]) +ob.setLocation(-10, -10, 10) +scn.link(ob) + +# Rendering parameters +context = scn.getRenderingContext() +context.enableRGBAColor() +context.setImageType(Render.PNG) +context.setRenderWinSize(100) +context.imageSizeX(1024) +context.imageSizeY(768) +context.enableOversampling(1) +context.setOversamplingLevel(8) +context.setRenderPath("tmp/") +context.startFrame(1) +context.endFrame(1) + +Blender.Save("tmp/tmp.blend", 1) + +# context.renderAnim() +# Blender.Quit() + +# EOF # diff -Nru lincity-ng-2.0/contrib/render.sh lincity-ng-2.9~git20150314/contrib/render.sh --- lincity-ng-2.0/contrib/render.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/render.sh 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +#!/bin/sh + +set -e -x + +mkdir -p tmp/ +mkdir -p ../data/images/tiles.render/ + +for i in ../data/models/*.blend; do + blender -b "$i" -P render.py + blender -b tmp/tmp.blend -a + b=`basename $i` + cp -v tmp/0001 "../data/images/tiles.render/${b%%.blend}.png" +done + +# EOF # Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/contrib/win32/lincity-ng.ico and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/contrib/win32/lincity-ng.ico differ diff -Nru lincity-ng-2.0/contrib/win32/lincity-ng.iss lincity-ng-2.9~git20150314/contrib/win32/lincity-ng.iss --- lincity-ng-2.0/contrib/win32/lincity-ng.iss 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/contrib/win32/lincity-ng.iss 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,46 @@ +; LinCity-NG setup script. Process this scrip with InnoSetup +; +; This script assumes that you have prepared a directory that contains all +; files that "jam install" installs in the data\ subdir. You should also place +; files like README and COPYING +; into the doc\ dir. +; The main directory should contain this file the lincity-ng.ico, all .dll +; files and the lincity-ng.exe file. +[Setup] +AppName=LinCity-NG +AppVerName=LinCity-NG 1.1.2 +AppPublisher=LinCity-NG Developers +AppPublisherURL=http://lincity-ng.berlios.de/wiki +AppSupportURL=http://lincity-ng.berlios.de/wiki +AppUpdatesURL=http://lincity-ng.berlios.de/wiki +DefaultDirName={pf}\LinCity-NG +DefaultGroupName=LinCity-NG +UninstallDisplayIcon={app}\lincity-ng.ico + +[Tasks] +Name: "desktopicon"; Description: "Create a &desktop icon"; GroupDescription: "Additional icons:"; Flags: unchecked + +[Files] +Source: "lincity-ng.exe"; DestDir: "{app}"; Flags: ignoreversion +Source: "lincity-ng.ico"; DestDir: "{app}"; Flags: ignoreversion +Source: "*.dll"; DestDir: "{app}"; Flags: ignoreversion +Source: "doc\*.*"; DestDir: "{app}\doc\"; Flags: ignoreversion recursesubdirs +Source: "data\*.*"; DestDir: "{app}\data\"; Flags: ignoreversion recursesubdirs + +[INI] +Filename: "{app}\lincity-ng.url"; Section: "InternetShortcut"; Key: "URL"; String: "http://lincity-ng.berlios.de" + +[Icons] +Name: "{group}\LinCity-NG"; Filename: "{app}\lincity-ng.exe"; WorkingDir: "{app}"; IconFilename: "{app}\lincity-ng.ico" +Name: "{group}\LinCity-NG on the Web"; Filename: "{app}\lincity-ng.url" +Name: "{group}\Uninstall LinCity-NG"; Filename: "{uninstallexe}" +Name: "{userdesktop}\LinCity-NG"; Filename: "{app}\lincity-ng.exe"; WorkingDir: "{app}"; IconFilename: "{app}\lincity-ng.ico"; Tasks: desktopicon + +[Run] +Filename: "{app}\lincity-ng.exe"; Description: "Launch LinCityNG"; WorkingDir: "{app}"; Flags: nowait postinstall skipifsilent + +[UninstallDelete] +Type: files; Name: "{app}\lincity-ng.url" +Type: files; Name: "{app}\stdout.txt" +Type: files; Name: "{app}\stderr.txt" + diff -Nru lincity-ng-2.0/CREDITS lincity-ng-2.9~git20150314/CREDITS --- lincity-ng-2.0/CREDITS 2009-01-25 20:21:28.000000000 +0000 +++ lincity-ng-2.9~git20150314/CREDITS 1970-01-01 00:00:00.000000000 +0000 @@ -1,53 +0,0 @@ - - - -Credits - -Original Idea and Code -Gregory Sharp -Cory Keasling -Ian J Peters - -Code -Wolfgang Becker -Matthias Braun -David Kamphausen -Alain Baeckeroot -Jaky - -Graphics -Ingo Ruhnke -Christoph Brill -Ken Hirsch -Ivar ten Cate - -Sound and Music -Paulo Augusto -Robert van Herk -Pronobozo - -Translation -ca - Joan Padró -ca - Alfred Galitó Trilla -cs - Ondrej Novy -cs - Jan Kalab -de - Wolfgang Becker -de - Michael Skiba -es - Jorge González González -fr - Arnaud Quette -fr - Laurent Rocher -fr - Alain Baeckeroot -gl - Xabier Cancela -ja - MH35 -nl - Nathan Samson -nl - Ronald Stroethoff -nl - Ivar ten Cate -pl - MichaÅ‚ DrzaÅ‚ -pl - Piotr Pacholak -pt_BR - Jose Carlos Medeiros -pt_BR - Nilo Menezes -ru - Leonid Myravyev -sv - Daniel Nylander -tr - Uyg Y. - -# automatically generated from data/gui/creditslist.xml. Do not edit. # diff -Nru lincity-ng-2.0/data/gui/app.xml lincity-ng-2.9~git20150314/data/gui/app.xml --- lincity-ng-2.0/data/gui/app.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/app.xml 2015-05-05 16:32:49.000000000 +0000 @@ -10,11 +10,11 @@ - - - - - + + + + + @@ -33,8 +33,8 @@ - - + + + + + + + + + + + + + + + + + + diff -Nru lincity-ng-2.0/data/gui/dialogs/firestationup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/firestationup.xml --- lincity-ng-2.0/data/gui/dialogs/firestationup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/firestationup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Fire Stations available +

You have reached the tech level which enables you to build fire stations. + Fire stations prevent most fires from starting. + If you haven't had any fires yet, you might not + think you need them.

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/fire.xml lincity-ng-2.9~git20150314/data/gui/dialogs/fire.xml --- lincity-ng-2.0/data/gui/dialogs/fire.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ + + + A Fire has started + warning.png + A Fire has started +

You better go and look for it

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/gamestats.xml lincity-ng-2.9~git20150314/data/gui/dialogs/gamestats.xml --- lincity-ng-2.0/data/gui/dialogs/gamestats.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/gamestats.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,345 @@ + + + Gamestats + + + + + + + + + + + + + + ----- IN TEST MODE ------- + + + Game statistics from LinCity-NG Version 1.99 + + + Initial loaded scene - meltdown.scn + + + Economy is sustainable + + + Population %d of which %d are not housed. + + + Max population %d Number evacuated %d Total births %d + + + Date %s %04d Money %8d Tech-level %5.1f (%5.1f) + + + Deaths by starvation %7d History %8.3f + + + Deaths from pollution %7d History %8.3f + + + Years of unemployment %7d History %8.3f + + + Rockets launched %2d Successful launches %2d + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + Label + + + value + + + Label + + + value + + + Label + + + value + + + + + + + + diff -Nru lincity-ng-2.0/data/gui/dialogs/healthup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/healthup.xml --- lincity-ng-2.0/data/gui/dialogs/healthup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/healthup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + Health Centres available +

You have reached the tech level which enables you to build health centres. + Heath centres reduce the number of people killed by pollution and increase + overall productivity.

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/hvindustryup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/hvindustryup.xml --- lincity-ng-2.0/data/gui/dialogs/hvindustryup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/hvindustryup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Heavy Industry available +

You have reached the tech level which enables + you to build heavy industry (steel works). + Heavy industry produces steel. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/import-exportup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/import-exportup.xml --- lincity-ng-2.0/data/gui/dialogs/import-exportup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/import-exportup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Import/Export available +

+ You can now import and export coal, goods, + ore and steel. Read the help pages on these + subjects to find out how to use them. +

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/launch-evac.xml lincity-ng-2.9~git20150314/data/gui/dialogs/launch-evac.xml --- lincity-ng-2.0/data/gui/dialogs/launch-evac.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/launch-evac.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ + + + Evacuation Launch Good + info.png + Evacuation Launch Good +

+You have evacuated 1000 people. You might want to reduce the size of your +economy to reflect the reduced population. +

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/launch-fail.xml lincity-ng-2.9~git20150314/data/gui/dialogs/launch-fail.xml --- lincity-ng-2.0/data/gui/dialogs/launch-fail.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/launch-fail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Launch Failure + warning.png + Launch Failure +

Your rocket crashed shortly after launch. People no longer trust the + technology for evacuation. You must launch five more unmanned rockets to + restore confidence.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/launch-gone.xml lincity-ng-2.9~git20150314/data/gui/dialogs/launch-gone.xml --- lincity-ng-2.0/data/gui/dialogs/launch-gone.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/launch-gone.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ + + + Total Evacuation Complete. + info.png +

Well done you have evacuated all your people.

+ You have won the game. +
diff -Nru lincity-ng-2.0/data/gui/dialogs/launch-good.xml lincity-ng-2.9~git20150314/data/gui/dialogs/launch-good.xml --- lincity-ng-2.0/data/gui/dialogs/launch-good.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/launch-good.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ + + + Launch Successfull + info.png + Launch Successfull +

Doing well.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/launch_rocket_yn.xml lincity-ng-2.9~git20150314/data/gui/dialogs/launch_rocket_yn.xml --- lincity-ng-2.0/data/gui/dialogs/launch_rocket_yn.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/launch_rocket_yn.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,35 @@ + + + Rocket Ready + info.png + Rocket ready to launch +

You can launch the rocket now or wait until later. If you wait it will + continue costing you money to keep the rocket ready. Launch it later by + clicking on the rocket area.

+

Launch now?

+ + + + + + + + + + + + + +
diff -Nru lincity-ng-2.0/data/gui/dialogs/ltindustryup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/ltindustryup.xml --- lincity-ng-2.0/data/gui/dialogs/ltindustryup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/ltindustryup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ + + + Light Industry available +

+ You have reached the tech level which enables + you to build light industry. + Light industry produces goods. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/millup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/millup.xml --- lincity-ng-2.0/data/gui/dialogs/millup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/millup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ + + + Mills available +

+ You have reached the tech level which enables + you to build mills. + Mills use jobs and food to make goods. + Watch out, they can use a lot of food! +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/mod_wind_up.xml lincity-ng-2.9~git20150314/data/gui/dialogs/mod_wind_up.xml --- lincity-ng-2.0/data/gui/dialogs/mod_wind_up.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/mod_wind_up.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Modern Windmills available +

+You have reached the tech level which enables +you to build modern, more efficient, windmills. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/nobull-tip.xml lincity-ng-2.9~git20150314/data/gui/dialogs/nobull-tip.xml --- lincity-ng-2.0/data/gui/dialogs/nobull-tip.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/nobull-tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ + + + Not Allowed + warning.png + Not Allowed +

Sorry you can't bulldoze a tip.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/no-credit-parkland.xml lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-parkland.xml --- lincity-ng-2.0/data/gui/dialogs/no-credit-parkland.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-parkland.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + No Credit Available + warning.png + No Credit Available +

You have a budget deficit. The legislative council will not allow you to build + parks on credit.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/no-credit-recycle.xml lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-recycle.xml --- lincity-ng-2.0/data/gui/dialogs/no-credit-recycle.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + No Credit Available + warning.png + No Credit Available +

You have a budget deficit. The legislative council will not allow you to build + recycling centres on credit.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/no-credit-rocket.xml lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-rocket.xml --- lincity-ng-2.0/data/gui/dialogs/no-credit-rocket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + No Credit Available + warning.png + No Credit Available +

You have a budget deficit. The legislative council will not allow you to build + rocket launch pads on credit.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/no-credit-solar-power.xml lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-solar-power.xml --- lincity-ng-2.0/data/gui/dialogs/no-credit-solar-power.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-solar-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + No Credit Available + warning.png + No Credit Available +

You have a budget deficit. The legislative council will not allow you to build + solar power stations on credit.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/no-credit-university.xml lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-university.xml --- lincity-ng-2.0/data/gui/dialogs/no-credit-university.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/no-credit-university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + No Credit Available + warning.png + No Credit Available +

You have a budget deficit. The legislative council will not allow you to build + universities on credit.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/parkup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/parkup.xml --- lincity-ng-2.0/data/gui/dialogs/parkup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/parkup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Parks available +

+You have reached the tech level which enables +you to build parks. Parks are used to absorb pollution. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/portdialog.xml lincity-ng-2.9~git20150314/data/gui/dialogs/portdialog.xml --- lincity-ng-2.0/data/gui/dialogs/portdialog.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/portdialog.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,120 @@ + + + Harbour Trade Settings + + + + + + + + + Product + + + + Buy + + + + Sell + + + + + Food + + + + + + + + + + + + + + + + Coal + + + + + + + + + + + + + + + + Ore + + + + + + + + + + + + + + + + Goods + + + + + + + + + + + + + + + + Steel + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru lincity-ng-2.0/data/gui/dialogs/potteryup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/potteryup.xml --- lincity-ng-2.0/data/gui/dialogs/potteryup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/potteryup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ + + + Potteries available +

+You have reached the tech level which enables +you to build potteries. +Potteries use jobs and ore to make goods. +(You need ore mines to get ore) +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/railwayup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/railwayup.xml --- lincity-ng-2.0/data/gui/dialogs/railwayup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/railwayup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Railways available +

+You have reached the tech level which enables +you to build railways. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/recycleup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/recycleup.xml --- lincity-ng-2.0/data/gui/dialogs/recycleup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/recycleup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ + + + Recycling Centres available +

+You have reached the tech level which enables +you to recycling centres. +Recycling centres recycle used goods back into ore. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/riverup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/riverup.xml --- lincity-ng-2.0/data/gui/dialogs/riverup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/riverup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Rivers available +

+You have reached the tech level which enables +you to build rivers. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/roadup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/roadup.xml --- lincity-ng-2.0/data/gui/dialogs/roadup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/roadup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,6 @@ + + + Roads available +

You have reached the tech level which enables you to + build roads. See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/rocketup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/rocketup.xml --- lincity-ng-2.0/data/gui/dialogs/rocketup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/rocketup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ + + + Rocket Launch Pad available +

You have reached the tech level which enables you to build rocket launch + pads. Rockets enable you to evacuate your population and is a way to 'win' the + game.

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/schoolup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/schoolup.xml --- lincity-ng-2.0/data/gui/dialogs/schoolup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/schoolup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ + + + Schools available +

+You have reached the tech level which enables +you to build schools. +Schools use jobs and goods to increase tech level. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/shfire-oc.xml lincity-ng-2.9~git20150314/data/gui/dialogs/shfire-oc.xml --- lincity-ng-2.0/data/gui/dialogs/shfire-oc.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/shfire-oc.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ + + + Fire + info.png + Fire! +

+A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may +spread to other areas. +

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/shfire-uc.xml lincity-ng-2.9~git20150314/data/gui/dialogs/shfire-uc.xml --- lincity-ng-2.0/data/gui/dialogs/shfire-uc.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/shfire-uc.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ + + + Fire + info.png + Fire! +

+A fire has broken out at a shanty town. It is in a fire cover area +and APPEARS to be under control. +

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/solarpowerup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/solarpowerup.xml --- lincity-ng-2.0/data/gui/dialogs/solarpowerup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/solarpowerup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Solar Power Stations available +

+You have reached the tech level which enables +you to build solar power stations. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/sustain.xml lincity-ng-2.9~git20150314/data/gui/dialogs/sustain.xml --- lincity-ng-2.0/data/gui/dialogs/sustain.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ + + + Economy Sustainable. + info.png +

LinCity has determined that you have a sustainable economy.

+ You have won the game. +
diff -Nru lincity-ng-2.0/data/gui/dialogs/tradedialog.xml lincity-ng-2.9~git20150314/data/gui/dialogs/tradedialog.xml --- lincity-ng-2.0/data/gui/dialogs/tradedialog.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/tradedialog.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,137 @@ + + + Trade Settings + + + + + + + + + Product + + + + Buy + + + + Sell + + + + + Jobs + + + + + + + + + + + + + + + + + Food + + + + + + + + + + + + + + + + Coal + + + + + + + + + + + + + + + + Ore + + + + + + + + + + + + + + + + Goods + + + + + + + + + + + + + + + + Steel + + + + + + + + + + + + + + + + + + + + + + + + + + + diff -Nru lincity-ng-2.0/data/gui/dialogs/universityup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/universityup.xml --- lincity-ng-2.0/data/gui/dialogs/universityup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/universityup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ + + + University available +

+You have reached the tech level which enables +you to build universities. +Universities produces PhDs, which produce more +technology. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/warning.xml lincity-ng-2.9~git20150314/data/gui/dialogs/warning.xml --- lincity-ng-2.0/data/gui/dialogs/warning.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/warning.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ + + + Warning + warning.png + Warning +

+
diff -Nru lincity-ng-2.0/data/gui/dialogs/windmillup.xml lincity-ng-2.9~git20150314/data/gui/dialogs/windmillup.xml --- lincity-ng-2.0/data/gui/dialogs/windmillup.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/dialogs/windmillup.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ + + + Windmills available +

+You have reached the tech level which enables +you to build windmills. +

+

See the help screen for more information.

+
diff -Nru lincity-ng-2.0/data/gui/gamestats.xml lincity-ng-2.9~git20150314/data/gui/gamestats.xml --- lincity-ng-2.0/data/gui/gamestats.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/gamestats.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ - + <Document> <Paragraph style="title" translatable="yes" halign="center" name="DialogTitle">Gamestats</Paragraph> @@ -18,9 +18,9 @@ <TableLayout rows="2" cols="1"> <rowsize row="2" fixed="50"/> <cell row="1" col="1"> - <DefineStyle xmlns="" name="statistic_text" color="black" font-size="14" halign="left"/> - <DefineStyle xmlns="" name="statistic_label" color="black" font-size="14" halign="right"/> - <DefineStyle xmlns="" name="statistic_value" color="black" font-size="14" halign="right"/> + <DefineStyle xmlns="" name="statistic_text" color="black" font-size="13" halign="left"/> + <DefineStyle xmlns="" name="statistic_label" color="black" font-size="13" halign="right"/> + <DefineStyle xmlns="" name="statistic_value" color="black" font-size="13" halign="right"/> <TableLayout xmlns="" rows="26" cols="6"> <colsize col="1" relative="20"/> <colsize col="2" relative="10"/> diff -Nru lincity-ng-2.0/data/gui/helpwindow.xml lincity-ng-2.9~git20150314/data/gui/helpwindow.xml --- lincity-ng-2.0/data/gui/helpwindow.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/helpwindow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -12,7 +12,7 @@ </Button> </cell> <cell row="1" col="2"> - <Paragraph halign="center" color="white" name="HelpWindowTitle" + <Paragraph halign="center" color="white" name="HelpWindowTitle" translatable="yes" height="30" font-size="20">Help</Paragraph> </cell> </TableLayout> diff -Nru lincity-ng-2.0/data/gui/loadgame.xml lincity-ng-2.9~git20150314/data/gui/loadgame.xml --- lincity-ng-2.0/data/gui/loadgame.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/loadgame.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <gui> - <Image src="images/mainmenu/newgame_back.png" resizable="yes"/> + <Image src="images/mainmenu/loadsave_back.png" resizable="yes"/> <!-- Split window into title/top - contents and bottom/buttons area --> <TableLayout rows="3" cols="1" > <rowsize row="1" relative="3"/> <rowsize row="2" relative="5"/> <rowsize row="3" relative="2.5"/> - + <cell row="1" col="1"> <Paragraph style="menutitle" translatable="yes">Load Game</Paragraph> </cell> @@ -83,23 +83,21 @@ <rowsize row="3" relative="1"/> <colsize col="1" fixed="75"/> <colsize col="4" fixed="75"/> - + <cell row="2" col="2" halign="left"> <Button name="BackButton"> - <text style="button" translatable="yes">Back</text> - <text-hover style="button-hover" - translatable="yes">Back</text-hover> - <text-clicked style="button-clicked" - translatable="yes">Back</text-clicked> + <text-caption style="button" translatable="yes">Back</text-caption> + <image src="images/mainmenu/buttons/back.png"/> + <image-hover src="images/mainmenu/buttons/back-hover.png"/> + <image-clicked src="images/mainmenu/buttons/back-clicked.png"/> </Button> </cell> <cell row="2" col="3" halign="right"> <Button name="LoadButton"> - <text style="button" translatable="yes">Load</text> - <text-hover style="button-hover" - translatable="yes">Load</text-hover> - <text-clicked style="button-clicked" - translatable="yes">Load</text-clicked> + <text-caption style="button" translatable="yes">Load</text-caption> + <image src="images/mainmenu/buttons/start.png"/> + <image-hover src="images/mainmenu/buttons/start-hover.png"/> + <image-clicked src="images/mainmenu/buttons/start-clicked.png"/> </Button> </cell> </TableLayout> diff -Nru lincity-ng-2.0/data/gui/mainmenu.xml lincity-ng-2.9~git20150314/data/gui/mainmenu.xml --- lincity-ng-2.0/data/gui/mainmenu.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/mainmenu.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,88 +1,109 @@ <?xml version="1.0" encoding="UTF-8"?> <gui> - <DefineStyle name="normal" color="white" font-size="30"/> - <DefineStyle name="hover" color="#339fe6" font-size="30"/> - <DefineStyle name="clicked" color="#339fe6" font-size="30" margin-left="5" margin-top="5"/> + <!-- + <DefineStyle name="normal" color="white" font-size="30"/> + <DefineStyle name="hover" color="#339fe6" font-size="30"/> + <DefineStyle name="clicked" color="#339fe6" font-size="30" margin-left="5" margin-top="5"/> + --> + <!-- Menus --> + <!-- + <DefineStyle name="menutitle" color="black" font-size="50" halign="center"/> + <DefineStyle name="listtitle" color="black" font-size="30"/> + <DefineStyle name="boxtext" color="blue" font-size="16" margin-left="10"/> + <DefineStyle name="button" color="blue" font-size="30" margin-left="20" margin-right="20"/> + <DefineStyle name="dialogbutton" color="white" font-size="20" margin-left="20" margin-right="20"/> + <DefineStyle name="button-hover" color="red" font-size="30" margin-left="20" margin-right="20"/> + <DefineStyle name="button-clicked" color="red" font-size="30" margin-top="3" margin-left="23" margin-right="20"/> + --> + <!-- Dirty hack to deactivate now fixed left, right margins --> - <!-- Menus --> - <DefineStyle name="menutitle" color="black" font-size="50" halign="center"/> - <DefineStyle name="listtitle" color="black" font-size="30"/> - <DefineStyle name="boxtext" color="blue" font-size="16" margin-left="10"/> - <DefineStyle name="button" color="blue" font-size="30" margin-left="20" margin-right="20"/> - <DefineStyle name="dialogbutton" color="white" font-size="20" margin-left="20" margin-right="20"/> - <DefineStyle name="button-hover" color="red" font-size="30" margin-left="20" margin-right="20"/> - <DefineStyle name="button-clicked" color="red" font-size="30" margin-top="3" margin-left="23" margin-right="20"/> - - <Image src="images/mainmenu/menu_back.png" resizable="yes"/> - <TableLayout rows="8" cols="3"> - <colsize col="1" relative="1"/> - <colsize col="2" relative="0.5"/> - <colsize col="3" relative="1"/> - <rowsize row="1" relative="2.5"/> - <rowsize row="2" relative="1"/> - <rowsize row="3" relative="1"/> - <rowsize row="4" relative="1"/> - <rowsize row="5" relative="1"/> - <rowsize row="6" relative="1"/> - <rowsize row="7" relative="1"/> - <rowsize row="8" relative="1"/> - <cell row="3" col="3"> - <Button name="NewGameButton"> - <text-caption translatable="yes" style="normal">New Game</text-caption> - <image src="images/mainmenu/buttons/new.png"/> - <image-hover src="images/mainmenu/buttons/new-hover.png"/> - <image-clicked src="images/mainmenu/buttons/new-clicked.png"/> - </Button> - </cell> - <cell row="2" col="3"> - <Button name="ContinueButton"> - <text-caption translatable="yes" style="normal">Continue</text-caption> - <image src="images/mainmenu/buttons/continue.png"/> - <image-hover src="images/mainmenu/buttons/continue-hover.png"/> - <image-clicked src="images/mainmenu/buttons/continue-clicked.png"/> - </Button> - </cell> - <cell row="4" col="3"> - <Button name="LoadButton"> - <text-caption translatable="yes" style="normal">Load</text-caption> - <image src="images/mainmenu/buttons/load.png"/> - <image-hover src="images/mainmenu/buttons/load-hover.png"/> - <image-clicked src="images/mainmenu/buttons/load-clicked.png"/> - </Button> - </cell> - <cell row="5" col="3"> - <Button name="SaveButton"> - <text-caption translatable="yes" style="normal">Save</text-caption> - <image src="images/mainmenu/buttons/save.png"/> - <image-hover src="images/mainmenu/buttons/save-hover.png"/> - <image-clicked src="images/mainmenu/buttons/save-clicked.png"/> - </Button> - </cell> + <DefineStyle name="normal" color="white" font-size="30"/> +<!-- + <DefineStyle name="hover" color="#339fe6" font-size="30" margin-top="5"/> + <DefineStyle name="clicked" color="#339fe6" font-size="30" margin-top="5"/> +--> - <cell row="6" col="3"> - <Button name="OptionsButton"> - <text-caption translatable="yes" style="normal">Options</text-caption> - <image src="images/mainmenu/buttons/options.png"/> - <image-hover src="images/mainmenu/buttons/options-hover.png"/> - <image-clicked src="images/mainmenu/buttons/options-clicked.png"/> - </Button> - </cell> - <cell row="7" col="3"> - <Button name="CreditsButton"> - <text-caption translatable="yes" style="normal">Credits</text-caption> - <image src="images/mainmenu/buttons/credits.png"/> - <image-hover src="images/mainmenu/buttons/credits-hover.png"/> - <image-clicked src="images/mainmenu/buttons/credits-clicked.png"/> - </Button> - </cell> - <cell row="8" col="3"> - <Button name="QuitButton"> - <text-caption translatable="yes" style="normal">Quit</text-caption> - <image src="images/mainmenu/buttons/quit.png"/> - <image-hover src="images/mainmenu/buttons/quit-hover.png"/> - <image-clicked src="images/mainmenu/buttons/quit-clicked.png"/> - </Button> - </cell> - </TableLayout> + <!-- Menus --> + <DefineStyle name="menutitle" color="black" font-size="50" halign="center"/> + <DefineStyle name="listtitle" color="black" font-size="30"/> + <DefineStyle name="boxtext" color="blue" font-size="16" /> + <DefineStyle name="button" color="blue" font-size="30" /> + <DefineStyle name="dialogbutton" color="white" font-size="20" /> +<!-- + <DefineStyle name="button-hover" color="red" font-size="30" margin-top="3"/> + <DefineStyle name="button-clicked" color="red" font-size="30" margin-top="3"/> +--> + + <Image src="images/mainmenu/menu_back.png" resizable="yes"/> + <TableLayout rows="8" cols="3"> + <colsize col="1" relative="1"/> + <colsize col="2" relative="0.5"/> + <colsize col="3" relative="1"/> + <rowsize row="1" relative="2.5"/> + <rowsize row="2" relative="1"/> + <rowsize row="3" relative="1"/> + <rowsize row="4" relative="1"/> + <rowsize row="5" relative="1"/> + <rowsize row="6" relative="1"/> + <rowsize row="7" relative="1"/> + <rowsize row="8" relative="1"/> + <cell row="3" col="3"> + <Button name="NewGameButton"> + <text-caption translatable="yes" style="normal">New Game</text-caption> + <image src="images/mainmenu/buttons/new.png"/> + <image-hover src="images/mainmenu/buttons/new-hover.png"/> + <image-clicked src="images/mainmenu/buttons/new-clicked.png"/> + </Button> + </cell> + <cell row="2" col="3"> + <Button name="ContinueButton"> + <text-caption translatable="yes" style="normal">Continue</text-caption> + <image src="images/mainmenu/buttons/continue.png"/> + <image-hover src="images/mainmenu/buttons/continue-hover.png"/> + <image-clicked src="images/mainmenu/buttons/continue-clicked.png"/> + </Button> + </cell> + <cell row="4" col="3"> + <Button name="LoadButton"> + <text-caption translatable="yes" style="normal">Load</text-caption> + <image src="images/mainmenu/buttons/load.png"/> + <image-hover src="images/mainmenu/buttons/load-hover.png"/> + <image-clicked src="images/mainmenu/buttons/load-clicked.png"/> + </Button> + </cell> + <cell row="5" col="3"> + <Button name="SaveButton"> + <text-caption translatable="yes" style="normal">Save</text-caption> + <image src="images/mainmenu/buttons/save.png"/> + <image-hover src="images/mainmenu/buttons/save-hover.png"/> + <image-clicked src="images/mainmenu/buttons/save-clicked.png"/> + </Button> + </cell> + + <cell row="6" col="3"> + <Button name="OptionsButton"> + <text-caption translatable="yes" style="normal">Options</text-caption> + <image src="images/mainmenu/buttons/options.png"/> + <image-hover src="images/mainmenu/buttons/options-hover.png"/> + <image-clicked src="images/mainmenu/buttons/options-clicked.png"/> + </Button> + </cell> + <cell row="7" col="3"> + <Button name="CreditsButton"> + <text-caption translatable="yes" style="normal">Credits</text-caption> + <image src="images/mainmenu/buttons/credits.png"/> + <image-hover src="images/mainmenu/buttons/credits-hover.png"/> + <image-clicked src="images/mainmenu/buttons/credits-clicked.png"/> + </Button> + </cell> + <cell row="8" col="3"> + <Button name="QuitButton"> + <text-caption translatable="yes" style="normal">Quit</text-caption> + <image src="images/mainmenu/buttons/quit.png"/> + <image-hover src="images/mainmenu/buttons/quit-hover.png"/> + <image-clicked src="images/mainmenu/buttons/quit-clicked.png"/> + </Button> + </cell> + </TableLayout> </gui> diff -Nru lincity-ng-2.0/data/gui/minimap.xml lincity-ng-2.9~git20150314/data/gui/minimap.xml --- lincity-ng-2.0/data/gui/minimap.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/minimap.xml 2015-05-05 16:32:49.000000000 +0000 @@ -23,7 +23,7 @@ <image-clicked src="images/gui/buttons/tabbed/tabbed-clicked.png" /> <image-checked src="images/gui/buttons/tabbed/tabbed-clicked.png" /> <text-caption font-size="16" translatable="yes">Stats</text-caption> - <tooltip translatable="yes">Show resources.</tooltip> + <tooltip translatable="yes">Show resources. Use scroll buttons to cylce through views.</tooltip> </CheckButton> </cell> <cell row="1" col="3" valign="bottom"> @@ -33,7 +33,7 @@ <image-clicked src="images/gui/buttons/tabbed/tabbed-clicked.png" /> <image-checked src="images/gui/buttons/tabbed/tabbed-clicked.png" /> <text-caption font-size="16" translatable="yes">$</text-caption> - <tooltip translatable="yes">Show Income and Expenses. Click this tab again to cycle through views.</tooltip> + <tooltip translatable="yes">Show Income and Expenses. Use scroll buttons to cylce through views.</tooltip> </CheckButton> </cell> <cell row="1" col="4" valign="bottom"> @@ -46,6 +46,28 @@ <tooltip translatable="yes">Show economy graphs.</tooltip> </CheckButton> </cell> + <cell row="1" col="5" valign="bottom"> + <TableLayout rows="1" cols="2" border="false"> + <cell row="1" col="1" valign="bottom"> + <Button name="ScrollPageUp"> + <image src="images/gui/buttons/round/button-round-20.png"/> + <image-hover src="images/gui/buttons/round/button-round-hover-20.png"/> + <image-clicked src="images/gui/buttons/round/button-round-clicked-20.png"/> + <image-caption src="images/gui/scrollbar/arrow_up.png"/> + <tooltip translatable="yes">[m] Scroll up.</tooltip> + </Button> + </cell> + <cell row="1" col="2" valign="bottom"> + <Button name="ScrollPageDown"> + <image src="images/gui/buttons/round/button-round-20.png"/> + <image-hover src="images/gui/buttons/round/button-round-hover-20.png"/> + <image-clicked src="images/gui/buttons/round/button-round-clicked-20.png"/> + <image-caption src="images/gui/scrollbar/arrow_down.png"/> + <tooltip translatable="yes">[n] Scroll down.</tooltip> + </Button> + </cell> + </TableLayout> + </cell> </TableLayout> </cell> <cell row="2" col="1"> @@ -74,6 +96,15 @@ <tooltip translatable="yes">[-] Zoom out</tooltip> </Button> </cell> + <cell row="3" col="3" halign="center" valign="bottom"> + <Button name="showTerrainHeight"> + <image src="images/gui/buttons/round/button-round-20.png"/> + <image-hover src="images/gui/buttons/round/button-round-hover-20.png"/> + <image-clicked src="images/gui/buttons/round/button-round-clicked-20.png"/> + <image-caption src="images/gui/info/terrainheight.png"/> + <tooltip translatable="yes">toggle terrain height rendering</tooltip> + </Button> + </cell> </TableLayout> </cell> <cell row="3" col="1" > @@ -128,6 +159,7 @@ <SwitchComponent name="MiniMapSwitch"> <MiniMap name="MiniMap" width="200" height="200" tilesize="2"/> <Import src="gui/pbar.xml"/> + <Import src="gui/pbar2nd.xml"/> <Mps name="GlobalMPS"> <Import src="gui/mps.xml"/> </Mps> diff -Nru lincity-ng-2.0/data/gui/mps.xml lincity-ng-2.9~git20150314/data/gui/mps.xml --- lincity-ng-2.0/data/gui/mps.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/mps.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,47 +1,54 @@ <Panel width="204" height="204" background="images/gui/pbar_bg.png"> - <DefineStyle name="mps_text" color="black" font-size="12" halign="left"/> - <TableLayout rows="15" cols="2"> - <colsize col="1" fixed="8"/> - <rowsize row="1" fixed="8"/> - <rowsize row="15" fixed="8"/> - <cell row="2" col="2" halign="left"> - <Paragraph name="mps_text0" style="mps_text"/> - </cell> - <cell row="3" col="2" halign="left"> - <Paragraph name="mps_text1" style="mps_text"/> - </cell> - <cell row="4" col="2" halign="left"> - <Paragraph name="mps_text2" style="mps_text"/> - </cell> - <cell row="5" col="2" halign="left"> - <Paragraph name="mps_text3" style="mps_text"/> - </cell> - <cell row="6" col="2" halign="left"> - <Paragraph name="mps_text4" style="mps_text"/> - </cell> - <cell row="7" col="2" halign="left"> - <Paragraph name="mps_text5" style="mps_text"/> - </cell> - <cell row="8" col="2" halign="left"> - <Paragraph name="mps_text6" style="mps_text"/> - </cell> - <cell row="9" col="2" halign="left"> - <Paragraph name="mps_text7" style="mps_text"/> - </cell> - <cell row="10" col="2" halign="left"> - <Paragraph name="mps_text8" style="mps_text"/> - </cell> - <cell row="11" col="2" halign="left"> - <Paragraph name="mps_text9" style="mps_text"/> - </cell> - <cell row="12" col="2" halign="left"> - <Paragraph name="mps_text10" style="mps_text"/> - </cell> - <cell row="13" col="2" halign="left"> - <Paragraph name="mps_text11" style="mps_text"/> - </cell> - <cell row="14" col="2" halign="left"> - <Paragraph name="mps_text12" style="mps_text"/> - </cell> - </TableLayout> + <DefineStyle name="mps_text" color="black" font-size="12" halign="left" margin-left="0" margin-right="0"/> + <DefineStyle name="mps_title" color="black" font-size="12" halign="left" font-style="normal" margin-left="0" margin-right="0"/> + <TableLayout rows="3" cols="3"> + <colsize col="1" fixed="6"/> + <colsize col="3" fixed="4"/> + <rowsize row="1" fixed="8"/> + <rowsize row="3" fixed="8"/> + <cell row="2" col="2"> + <TableLayout rows="13" cols="1"> + <cell row="1" col="1" halign="center"> + <Paragraph name="mps_text0" style="mps_title"/> + </cell> + <cell row="2" col="1" halign="left"> + <Paragraph name="mps_text1" style="mps_text"/> + </cell> + <cell row="3" col="1" halign="left"> + <Paragraph name="mps_text2" style="mps_text"/> + </cell> + <cell row="4" col="1" halign="left"> + <Paragraph name="mps_text3" style="mps_text"/> + </cell> + <cell row="5" col="1" halign="left"> + <Paragraph name="mps_text4" style="mps_text"/> + </cell> + <cell row="6" col="1" halign="left"> + <Paragraph name="mps_text5" style="mps_text"/> + </cell> + <cell row="7" col="1" halign="left"> + <Paragraph name="mps_text6" style="mps_text"/> + </cell> + <cell row="8" col="1" halign="left"> + <Paragraph name="mps_text7" style="mps_text"/> + </cell> + <cell row="9" col="1" halign="left"> + <Paragraph name="mps_text8" style="mps_text"/> + </cell> + <cell row="10" col="1" halign="left"> + <Paragraph name="mps_text9" style="mps_text"/> + </cell> + <cell row="11" col="1" halign="left"> + <Paragraph name="mps_text10" style="mps_text"/> + </cell> + <cell row="12" col="1" halign="left"> + <Paragraph name="mps_text11" style="mps_text"/> + </cell> + <cell row="13" col="1" halign="left"> + <Paragraph name="mps_text12" style="mps_text"/> + </cell> + </TableLayout> + </cell> + <!-- <cell row="1" col= "3"/> --> + </TableLayout> </Panel> diff -Nru lincity-ng-2.0/data/gui/newgame.xml lincity-ng-2.9~git20150314/data/gui/newgame.xml --- lincity-ng-2.0/data/gui/newgame.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/newgame.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,140 +1,188 @@ <?xml version="1.0" encoding="UTF-8"?> <gui> - <Image src="images/mainmenu/newgame_back.png" resizable="yes"/> - <!-- Split window into title/top - contents and bottom/buttons area --> - <TableLayout rows="4" cols="1"> - <rowsize row="1" relative="3"/> - <rowsize row="2" relative="5"/> - <rowsize row="3" relative="1.5"/> - <rowsize row="4" relative="1"/> - - <cell row="1" col="1"> - <TableLayout rows="2" cols="1"> - <rowsize row="1" relative="2"/> - <rowsize row="2" relative="1"/> - - <cell row="1" col="1"> - <Paragraph style="menutitle" translatable="yes">New Game</Paragraph> - </cell> - - <cell row="2" col="1"> - <Paragraph style="listtitle" translatable="yes"> - Choose Scenario</Paragraph> - </cell> - </TableLayout> - </cell> - - <cell row="2" col="1"> - <TableLayout rows="8" cols="3"> - <colsize col="1" relative="4"/> - <colsize col="2" relative="10"/> - <colsize col="3" relative="15"/> - - <!-- put scenario list in here - <cell row="N" col="2"> - - </cell> - --> - <cell row="2" col="2"> - <CheckButton name="File0"> - <text-caption style="button">Savegame 1234567890</text-caption> - <image src="images/gui/buttons/savebutton.png"/> - <image-hover src="images/gui/buttons/savebutton-hover.png"/> - <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> - <image-checked src="images/gui/buttons/savebutton-checked.png"/> - </CheckButton> - </cell> - <cell row="3" col="2"> - <CheckButton name="File1"> - <text-caption style="button">Savegame 1234567890</text-caption> - <image src="images/gui/buttons/savebutton.png"/> - <image-hover src="images/gui/buttons/savebutton-hover.png"/> - <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> - <image-checked src="images/gui/buttons/savebutton-checked.png"/> - </CheckButton> - </cell> - <cell row="4" col="2"> - <CheckButton name="File2"> - <text-caption style="button">Savegame 1234567890</text-caption> - <image src="images/gui/buttons/savebutton.png"/> - <image-hover src="images/gui/buttons/savebutton-hover.png"/> - <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> - <image-checked src="images/gui/buttons/savebutton-checked.png"/> - </CheckButton> - </cell> - <cell row="5" col="2"> - <CheckButton name="File3"> - <text-caption style="button">Savegame 1234567890</text-caption> - <image src="images/gui/buttons/savebutton.png"/> - <image-hover src="images/gui/buttons/savebutton-hover.png"/> - <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> - <image-checked src="images/gui/buttons/savebutton-checked.png"/> - </CheckButton> - </cell> - <cell row="6" col="2"> - <CheckButton name="File4"> - <text-caption style="button">Savegame 1234567890</text-caption> - <image src="images/gui/buttons/savebutton.png"/> - <image-hover src="images/gui/buttons/savebutton-hover.png"/> - <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> - <image-checked src="images/gui/buttons/savebutton-checked.png"/> - </CheckButton> - </cell> - <cell row="7" col="2"> - <CheckButton name="File5"> - <text-caption style="button">Savegame 1234567890</text-caption> - <image src="images/gui/buttons/savebutton.png"/> - <image-hover src="images/gui/buttons/savebutton-hover.png"/> - <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> - <image-checked src="images/gui/buttons/savebutton-checked.png"/> - </CheckButton> - </cell> - - </TableLayout> - </cell> - <cell row="3" col="1"> - <TableLayout rows="4" cols="2"> - <rowsize row="1" relative="1"/> - <rowsize row="2" relative="3"/> - <rowsize row="3" relative="3"/> - <rowsize row="4" relative="1"/> - <cell row="2" col="1" halign="left"> - <Button name="StartBareButton"> - <text style="button" translatable="yes">Start with empty board.</text> - <text-hover style="button-hover" translatable="yes">Start with empty board.</text-hover> - <text-clicked style="button-clicked" translatable="yes">Start with empty board.</text-clicked> - </Button> - </cell> - <cell row="3" col="1" halign="left"> - <Button name="StartVillageButton"> - <text style="button" translatable="yes">Start with random village.</text> - <text-hover style="button-hover" translatable="yes">Start with random village.</text-hover> - <text-clicked style="button-clicked" translatable="yes">Start with random village.</text-clicked> - </Button> - </cell> - </TableLayout> - </cell> - <cell row="4" col="1"> - <TableLayout rows="2" cols="2"> - <rowsize row="1" relative="1"/> - <rowsize row="2" relative="3"/> - <cell row="2" col="1" halign="left"> - <Button name="BackButton"> - <text-caption style="button" translatable="yes">Back</text-caption> - <image src="images/mainmenu/buttons/back.png"/> - <image-hover src="images/mainmenu/buttons/back-hover.png"/> - <image-clicked src="images/mainmenu/buttons/back-clicked.png"/> - </Button> - </cell> - <cell row="2" col="2" halign="right"> - <Button name="StartButton"> - <text-caption style="button" translatable="yes">Start</text-caption> - <image src="images/mainmenu/buttons/start.png"/> - <image-hover src="images/mainmenu/buttons/start-hover.png"/> - <image-clicked src="images/mainmenu/buttons/start-clicked.png"/> - </Button> - </cell> - </TableLayout> - </cell> - </TableLayout> + <DefineStyle name="random-button" color="blue" font-size="30" margin-left="20" margin-right="20"/> + <Image src="images/mainmenu/newgame_back.png" resizable="yes"/> + <!-- Split window into title/top - contents and bottom/buttons area --> + <TableLayout rows="3" cols="1"> + <rowsize row="1" relative="3"/> + <rowsize row="2" relative="13"/> + <rowsize row="3" relative="2"/> + + <cell row="1" col="1"> + <TableLayout rows="2" cols="1"> + <rowsize row="1" relative="2"/> + <rowsize row="2" relative="1"/> + + <cell row="1" col="1"> + <Paragraph style="menutitle" translatable="yes">New Game</Paragraph> + </cell> + + <cell row="2" col="1"> + <Paragraph style="listtitle" translatable="yes"> + Choose Scenario</Paragraph> + </cell> + </TableLayout> + </cell> + + <cell row="2" col="1"> + <TableLayout rows="12" cols="3"> + <colsize col="1" relative="4"/> + <colsize col="2" relative="10"/> + <colsize col="3" relative="15"/> + <rowsize row="6" relative="0.25"/><!-- gap between random and static scenarios--> + + <!-- put scenario list in here + <cell row="N" col="2"> + + </cell> + --> + <cell row="1" col="2"> +<!-- + <CheckButton name="RandomEmpty"> + <text-caption style="button">Newgame 1234567890</text-caption> + <image src="images/gui/buttons/randombutton.png"/> + <image-hover src="images/gui/buttons/randombutton-hover.png"/> + <image-clicked src="images/gui/buttons/randombutton-clicked.png"/> + <image-checked src="images/gui/buttons/randombutton-checked.png"/> + </CheckButton> + --> + <TableLayout rows="2" cols="2"> + <cell row="1" col="1"> + <Paragraph style="listtitle" translatable="yes">Village</Paragraph> + </cell> + <cell row="1" col="2"> + <CheckButton name="WithVillage"> + <image src="images/gui/checkbox/checkbox.png"/> + <image-checked src="images/gui/checkbox/checkbox_checked.png"/> + </CheckButton> + </cell> + <cell row="2" col="1"> + <Paragraph style="listtitle" translatable="yes">Without trees</Paragraph> + </cell> + <cell row="2" col="2"> + <CheckButton name="WithoutTrees"> + <image src="images/gui/checkbox/checkbox.png"/> + <image-checked src="images/gui/checkbox/checkbox_checked.png"/> + </CheckButton> + </cell> + </TableLayout> + </cell> + <cell row="2" col="2"> + <CheckButton name="RiverDelta"> + <text-caption style="random-button">Newgame 1234567890</text-caption> + <image src="images/gui/buttons/randombutton.png"/> + <image-hover src="images/gui/buttons/randombutton-hover.png"/> + <image-clicked src="images/gui/buttons/randombutton-clicked.png"/> + <image-checked src="images/gui/buttons/randombutton-checked.png"/> + </CheckButton> + </cell> + <cell row="3" col="2"> + <CheckButton name="DesertArea"> + <text-caption style="random-button">Newgame 1234567890</text-caption> + <image src="images/gui/buttons/randombutton.png"/> + <image-hover src="images/gui/buttons/randombutton-hover.png"/> + <image-clicked src="images/gui/buttons/randombutton-clicked.png"/> + <image-checked src="images/gui/buttons/randombutton-checked.png"/> + </CheckButton> + </cell> + <cell row="4" col="2"> + <CheckButton name="TemperateArea"> + <text-caption style="random-button">Newgame 1234567890</text-caption> + <image src="images/gui/buttons/randombutton.png"/> + <image-hover src="images/gui/buttons/randombutton-hover.png"/> + <image-clicked src="images/gui/buttons/randombutton-clicked.png"/> + <image-checked src="images/gui/buttons/randombutton-checked.png"/> + </CheckButton> + </cell> + <cell row="5" col="2"> + <CheckButton name="SwampArea"> + <text-caption style="random-button">Newgame 1234567890</text-caption> + <image src="images/gui/buttons/randombutton.png"/> + <image-hover src="images/gui/buttons/randombutton-hover.png"/> + <image-clicked src="images/gui/buttons/randombutton-clicked.png"/> + <image-checked src="images/gui/buttons/randombutton-checked.png"/> + </CheckButton> + </cell> + + <!-- row 6 is the gap between random and static scenarios--> + + <cell row="7" col="2"> + <CheckButton name="File0"> + <text-caption style="button">Savegame 1234567890</text-caption> + <image src="images/gui/buttons/savebutton.png"/> + <image-hover src="images/gui/buttons/savebutton-hover.png"/> + <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> + <image-checked src="images/gui/buttons/savebutton-checked.png"/> + </CheckButton> + </cell> + <cell row="8" col="2"> + <CheckButton name="File1"> + <text-caption style="button">Savegame 1234567890</text-caption> + <image src="images/gui/buttons/savebutton.png"/> + <image-hover src="images/gui/buttons/savebutton-hover.png"/> + <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> + <image-checked src="images/gui/buttons/savebutton-checked.png"/> + </CheckButton> + </cell> + <cell row="9" col="2"> + <CheckButton name="File2"> + <text-caption style="button">Savegame 1234567890</text-caption> + <image src="images/gui/buttons/savebutton.png"/> + <image-hover src="images/gui/buttons/savebutton-hover.png"/> + <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> + <image-checked src="images/gui/buttons/savebutton-checked.png"/> + </CheckButton> + </cell> + <cell row="10" col="2"> + <CheckButton name="File3"> + <text-caption style="button">Savegame 1234567890</text-caption> + <image src="images/gui/buttons/savebutton.png"/> + <image-hover src="images/gui/buttons/savebutton-hover.png"/> + <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> + <image-checked src="images/gui/buttons/savebutton-checked.png"/> + </CheckButton> + </cell> + <cell row="11" col="2"> + <CheckButton name="File4"> + <text-caption style="button">Savegame 1234567890</text-caption> + <image src="images/gui/buttons/savebutton.png"/> + <image-hover src="images/gui/buttons/savebutton-hover.png"/> + <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> + <image-checked src="images/gui/buttons/savebutton-checked.png"/> + </CheckButton> + </cell> + <cell row="12" col="2"> + <CheckButton name="File5"> + <text-caption style="button">Savegame 1234567890</text-caption> + <image src="images/gui/buttons/savebutton.png"/> + <image-hover src="images/gui/buttons/savebutton-hover.png"/> + <image-clicked src="images/gui/buttons/savebutton-clicked.png"/> + <image-checked src="images/gui/buttons/savebutton-checked.png"/> + </CheckButton> + </cell> + </TableLayout> + </cell> + <cell row="3" col="1"> + <TableLayout rows="2" cols="2"> + <rowsize row="1" relative="1"/> + <rowsize row="2" relative="3"/> + <cell row="2" col="1" halign="left"> + <Button name="BackButton"> + <text-caption style="button" translatable="yes">Back</text-caption> + <image src="images/mainmenu/buttons/back.png"/> + <image-hover src="images/mainmenu/buttons/back-hover.png"/> + <image-clicked src="images/mainmenu/buttons/back-clicked.png"/> + </Button> + </cell> + <cell row="2" col="2" halign="right"> + <Button name="StartButton"> + <text-caption style="button" translatable="yes">Start</text-caption> + <image src="images/mainmenu/buttons/start.png"/> + <image-hover src="images/mainmenu/buttons/start-hover.png"/> + <image-clicked src="images/mainmenu/buttons/start-clicked.png"/> + </Button> + </cell> + </TableLayout> + </cell> + </TableLayout> </gui> diff -Nru lincity-ng-2.0/data/gui/options.xml lincity-ng-2.9~git20150314/data/gui/options.xml --- lincity-ng-2.0/data/gui/options.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/options.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,21 @@ <?xml version="1.0" encoding="UTF-8"?> <gui> - <Image src="images/mainmenu/settings_back.png" resizable="yes"/> - <TableLayout rows="6" cols="3" border="false"> - <colsize col="1" relative="1.3"/> - <colsize col="2" relative="1"/> - <colsize col="3" relative="0.5"/> - <rowsize row="1" relative="2"/> - - <cell row="1" col="1" colspan="3"> - <Paragraph style="menutitle" translatable="yes">Options</Paragraph> - </cell> - - <!-- Adjust Music Volume --> - <cell row="2" col="2" valign="center" halign="left"> - <Paragraph style="listtitle" translatable="yes">Background Music</Paragraph> - </cell> - <cell row="2" col="3"> + <Image src="images/mainmenu/settings_back.png" resizable="yes"/> + <TableLayout rows="11" cols="3" border="false"> + <colsize col="1" relative="1.3"/> + <colsize col="2" relative="1"/> + <colsize col="3" relative="0.5"/> + <rowsize row="1" relative="2"/> + + <cell row="1" col="1" colspan="3"> + <Paragraph style="menutitle" translatable="yes">Options</Paragraph> + </cell> + + <!-- Adjust Music Volume --> + <cell row="2" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Background Music</Paragraph> + </cell> + <cell row="2" col="3"> <TableLayout rows = "1" cols = "3"> <cell row="1" col ="1"> <CheckButton name="MusicVolumeMinus"> @@ -34,13 +34,13 @@ </CheckButton> </cell> </TableLayout> - </cell> + </cell> <!-- Switch Track --> <cell row="3" col="2" valign="center" halign="center" colspan="2"> <TableLayout rows = "1" cols = "3"> - <colsize col="1" relative="1"/> - <colsize col="2" relative="15"/> - <colsize col="3" relative="1"/> + <colsize col="1" relative="1"/> + <colsize col="2" relative="15"/> + <colsize col="3" relative="1"/> <cell row="1" col ="1" halign="right" > <CheckButton name="TrackPrev"> <text style="button">< </text> @@ -56,11 +56,11 @@ </cell> </TableLayout> </cell> - <!-- Adjust FX Volume --> - <cell row="4" col="2" valign="center" halign="left"> - <Paragraph style="listtitle" translatable="yes" >Sound Effects</Paragraph> - </cell> - <cell row="4" col="3"> + <!-- Adjust FX Volume --> + <cell row="4" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes" >Sound Effects</Paragraph> + </cell> + <cell row="4" col="3"> <TableLayout rows = "1" cols = "3"> <cell row="1" col ="1"> <CheckButton name="FXVolumeMinus"> @@ -79,24 +79,122 @@ </CheckButton> </cell> </TableLayout> - </cell> - - <cell row="5" col="2" valign="center" halign="left"> - <Paragraph style="listtitle" translatable="yes">Fullscreen</Paragraph> - </cell> - <cell row="5" col="3"> - <CheckButton name="Fullscreen"> - <image src="images/mainmenu/settings/windowed.png"/> - <image-checked src="images/mainmenu/settings/fullscreen.png"/> - </CheckButton> - </cell> - <cell row="6" col="2" colspan="2" halign="right"> - <Button name="BackButton"> - <text-caption style="button" translatable="yes">Ok</text-caption> - <image src="images/mainmenu/buttons/start.png"/> - <image-hover src="images/mainmenu/buttons/start-hover.png"/> - <image-clicked src="images/mainmenu/buttons/start-clicked.png"/> - </Button> - </cell> - </TableLayout> + </cell> + + <!-- Resolution --> + <cell row="5" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Resolution</Paragraph> + </cell> + <cell row="5" col="3" valign="center" halign="center"> + <TableLayout rows = "1" cols = "3"> + <colsize col="1" relative="2"/> + <colsize col="2" relative="10"/> + <colsize col="3" relative="2"/> + <cell row="1" col ="1" halign="right" > + <CheckButton name="ResolutionPrev"> + <text style="button">< </text> + </CheckButton> + </cell> + <cell row="1" col ="2" halign="center" > + <Paragraph name="resolutionParagraph">1024x768</Paragraph> + </cell> + <cell row="1" col ="3" halign="left" > + <CheckButton name="ResolutionNext"> + <text style="button">> </text> + </CheckButton> + </cell> + </TableLayout> + </cell> + <!-- Size of World --> + <cell row="6" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Map Size</Paragraph> + </cell> + <cell row="6" col="3" valign="center" halign="center"> + <TableLayout rows = "1" cols = "3"> + <colsize col="1" relative="2"/> + <colsize col="2" relative="10"/> + <colsize col="3" relative="2"/> + <cell row="1" col ="1" halign="right" > + <CheckButton name="WorldLenPrev"> + <text style="button">< </text> + </CheckButton> + </cell> + <cell row="1" col ="2" halign="center" > + <Paragraph name="WorldLenParagraph">100</Paragraph> + </cell> + <cell row="1" col ="3" halign="left" > + <CheckButton name="WorldLenNext"> + <text style="button">> </text> + </CheckButton> + </cell> + </TableLayout> + </cell> + <!-- Fullscreen --> + <cell row="7" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Fullscreen</Paragraph> + </cell> + <cell row="7" col="3"> + <CheckButton name="Fullscreen"> + <image src="images/mainmenu/settings/windowed.png"/> + <image-checked src="images/mainmenu/settings/fullscreen.png"/> + </CheckButton> + </cell> + + <!-- Language --> + <cell row="8" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Language</Paragraph> + </cell> + <cell row="8" col="3" valign="center" halign="center"> + <TableLayout rows = "1" cols = "3"> + <colsize col="1" relative="2"/> + <colsize col="2" relative="10"/> + <colsize col="3" relative="2"/> + <cell row="1" col ="1" halign="right" > + <CheckButton name="LanguagePrev"> + <text style="button">< </text> + </CheckButton> + </cell> + <cell row="1" col ="2" halign="center" > + <Paragraph name="languageParagraph">autodetect</Paragraph> + </cell> + <cell row="1" col ="3" halign="left" > + <CheckButton name="LanguageNext"> + <text style="button">> </text> + </CheckButton> + </cell> + </TableLayout> + </cell> + + <!-- Use Binary Saveganes --> + <cell row="9" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Binary Saving</Paragraph> + </cell> + <cell row="9" col="3"> + <CheckButton name="BinaryMode"> + <image src="images/gui/checkbox/checkbox.png"/> + <image-checked src="images/gui/checkbox/checkbox_checked.png"/> + </CheckButton> + </cell> + + <!-- Use Binary Saveganes --> + <cell row="10" col="2" valign="center" halign="left"> + <Paragraph style="listtitle" translatable="yes">Seed Saving</Paragraph> + </cell> + <cell row="10" col="3"> + <CheckButton name="SeedMode"> + <image src="images/gui/checkbox/checkbox.png"/> + <image-checked src="images/gui/checkbox/checkbox_checked.png"/> + </CheckButton> + </cell> + + <!-- BackButton --> + <cell row="11" col="2" colspan="2" halign="right"> + <Button name="BackButton"> + <text-caption style="button" translatable="yes">Ok</text-caption> + <image src="images/mainmenu/buttons/start.png"/> + <image-hover src="images/mainmenu/buttons/start-hover.png"/> + <image-clicked src="images/mainmenu/buttons/start-clicked.png"/> + </Button> + </cell> + </TableLayout> </gui> diff -Nru lincity-ng-2.0/data/gui/pbar2nd.xml lincity-ng-2.9~git20150314/data/gui/pbar2nd.xml --- lincity-ng-2.0/data/gui/pbar2nd.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/pbar2nd.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,149 @@ +<LCPBar name="PBar2nd" > + <Panel width="204" height="204" background="images/gui/pbar_bg.png"> + <TableLayout rows="3" cols ="3"> + <colsize col="1" fixed="8"/> <!-- borders --> + <colsize col="3" fixed="8"/> + <rowsize row="1" fixed="8"/> + <rowsize row="3" fixed="8"/> + + <cell row="2" col="2"> + <DefineStyle name="ptitle" color="black" font-size="12" halign="left"/> + <DefineStyle name="ptext" color="black" font-size="12" halign="right"/> + + <TableLayout rows="9" cols="4"> + <colsize col="1" relative="0.5"/> + <colsize col="2" fixed="16"/> + <colsize col="3" relative="0.25"/> + <colsize col="4" fixed="16"/> + + <cell row="1" col="1" halign="left"> + <Paragraph name="pbar_title1" style="ptitle" translatable="yes"> + Population</Paragraph> + </cell> + <cell row="1" col="2" halign="right"> + <BarView name="pbar_barview1a" width="16" height="16" dir="-1"/> + </cell> + <cell row="1" col="3" halign="right"> + <Paragraph name="pbar_text1" style="ptext">N/A</Paragraph> + </cell> + <cell row="1" col="4" halign="right"> + <BarView name="pbar_barview1b" width="16" height="16" dir="1"/> + </cell> + + <cell row="2" col="1" halign="left"> + <Paragraph name="pbar_title2" style="ptitle" translatable="yes"> + Tech Level</Paragraph> + </cell> + <cell row="2" col="2" halign="right"> + <BarView name="pbar_barview2a" width="16" height="16" dir="-1"/> + </cell> + <cell row="2" col="3" halign="right"> + <Paragraph name="pbar_text2" style="ptext">N/A</Paragraph> + </cell> + <cell row="2" col="4" halign="right"> + <BarView name="pbar_barview2b" width="16" height="16" dir="1"/> + </cell> + + <cell row="3" col="1" halign="left"> + <Paragraph name="pbar_title3" style="ptitle" translatable="yes"> + Money</Paragraph> + </cell> + <cell row="3" col="2" halign="right"> + <BarView name="pbar_barview3a" width="16" height="16" dir="-1"/> + </cell> + <cell row="3" col="3" halign="right"> + <Paragraph name="pbar_text3" style="ptext">N/A</Paragraph> + </cell> + <cell row="3" col="4" halign="right"> + <BarView name="pbar_barview3b" width="16" height="16" dir="1"/> + </cell> + + <cell row="4" col="1" halign="left"> + <Paragraph name="pbar_title4" style="ptitle" translatable="yes"> + Air Pollution</Paragraph> + </cell> + <cell row="4" col="2" halign="right"> + <BarView name="pbar_barview4a" width="16" height="16" dir="-1" bad="1"/> + </cell> + <cell row="4" col="3" halign="right"> + <Paragraph name="pbar_text4" style="ptext">N/A</Paragraph> + </cell> + <cell row="4" col="4" halign="right"> + <BarView name="pbar_barview4b" width="16" height="16" dir="1" bad="1"/> + </cell> + + <cell row="5" col="1" halign="left"> + <Paragraph name="pbar_title5" style="ptitle" translatable="yes"> + kWh</Paragraph> + </cell> + <cell row="5" col="2" halign="right"> + <BarView name="pbar_barview5a" width="16" height="16" dir="-1"/> + </cell> + <cell row="5" col="3" halign="right"> + <Paragraph name="pbar_text5" style="ptext">N/A</Paragraph> + </cell> + <cell row="5" col="4" halign="right"> + <BarView name="pbar_barview5b" width="16" height="16" dir="1"/> + </cell> + + <cell row="6" col="1" halign="left"> + <Paragraph name="pbar_title6" style="ptitle" translatable="yes"> + MWh</Paragraph> + </cell> + <cell row="6" col="2" halign="right"> + <BarView name="pbar_barview6a" width="16" height="16" dir="-1"/> + </cell> + <cell row="6" col="3" halign="right"> + <Paragraph name="pbar_text6" style="ptext">N/A</Paragraph> + </cell> + <cell row="6" col="4" halign="right"> + <BarView name="pbar_barview6b" width="16" height="16" dir="1"/> + </cell> + + <cell row="7" col="1" halign="left"> + <Paragraph name="pbar_title7" style="ptitle" translatable="yes"> + Water</Paragraph> + </cell> + <cell row="7" col="2" halign="right"> + <BarView name="pbar_barview7a" width="16" height="16" dir="-1"/> + </cell> + <cell row="7" col="3" halign="right"> + <Paragraph name="pbar_text7" style="ptext">N/A</Paragraph> + </cell> + <cell row="7" col="4" halign="right"> + <BarView name="pbar_barview7b" width="16" height="16" dir="1"/> + </cell> + + <cell row="8" col="1" halign="left"> + <Paragraph name="pbar_title8" style="ptitle" translatable="yes"> + Waste</Paragraph> + </cell> + <cell row="8" col="2" halign="right"> + <BarView name="pbar_barview8a" width="16" height="16" dir="-1" bad="1"/> + </cell> + <cell row="8" col="3" halign="right"> + <Paragraph name="pbar_text8" style="ptext">N/A</Paragraph> + </cell> + <cell row="8" col="4" halign="right"> + <BarView name="pbar_barview8b" width="16" height="16" dir="1" bad="1"/> + </cell> + + <cell row="9" col="1" halign="left"> + <Paragraph name="pbar_title9" style="ptitle" translatable="yes"> + Tenants</Paragraph> + </cell> + <cell row="9" col="2" halign="right"> + <BarView name="pbar_barview9a" width="16" height="16" dir="-1"/> + </cell> + <cell row="9" col="3" halign="right"> + <Paragraph name="pbar_text9" style="ptext">N/A</Paragraph> + </cell> + <cell row="9" col="4" halign="right"> + <BarView name="pbar_barview9b" width="16" height="16" dir="1"/> + </cell> + + </TableLayout> + </cell> + </TableLayout> + </Panel> +</LCPBar> diff -Nru lincity-ng-2.0/data/gui/pbar.xml lincity-ng-2.9~git20150314/data/gui/pbar.xml --- lincity-ng-2.0/data/gui/pbar.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,147 +2,147 @@ <Panel width="204" height="204" background="images/gui/pbar_bg.png"> <TableLayout rows="3" cols ="3"> <colsize col="1" fixed="8"/> <!-- borders --> - <colsize col="3" fixed="8"/> > - <rowsize row="1" fixed="8"/> - <rowsize row="3" fixed="8"/> - + <colsize col="3" fixed="8"/> + <rowsize row="1" fixed="8"/> + <rowsize row="3" fixed="8"/> + <cell row="2" col="2"> <DefineStyle name="ptitle" color="black" font-size="12" halign="left"/> <DefineStyle name="ptext" color="black" font-size="12" halign="right"/> - + <TableLayout rows="9" cols="4"> - <colsize col="1" relative="0.5"/> - <colsize col="2" fixed="16"/> - <colsize col="3" relative="0.25"/> - <colsize col="4" fixed="16"/> - - <cell row="1" col="1" halign="left"> - <Paragraph name="pbar_title1" style="ptitle" translatable="yes"> - Population</Paragraph> - </cell> - <cell row="1" col="2" halign="right"> - <BarView name="pbar_barview1a" width="16" height="16" dir="-1"/> - </cell> - <cell row="1" col="3" halign="right"> - <Paragraph name="pbar_text1" style="ptext">1</Paragraph> - </cell> - <cell row="1" col="4" halign="right"> - <BarView name="pbar_barview1b" width="16" height="16" dir="1"/> - </cell> - - <cell row="2" col="1" halign="left"> - <Paragraph name="pbar_title2" style="ptitle" translatable="yes"> - Tech Level</Paragraph> - </cell> - <cell row="2" col="2" halign="right"> - <BarView name="pbar_barview2a" width="16" height="16" dir="-1"/> - </cell> - <cell row="2" col="3" halign="right"> - <Paragraph name="pbar_text2" style="ptext">1</Paragraph> - </cell> - <cell row="2" col="4" halign="right"> - <BarView name="pbar_barview2b" width="16" height="16" dir="1"/> - </cell> - - <cell row="3" col="1" halign="left"> - <Paragraph name="pbar_title3" style="ptitle" translatable="yes"> - Food</Paragraph> - </cell> - <cell row="3" col="2" halign="right"> - <BarView name="pbar_barview3a" width="16" height="16" dir="-1"/> - </cell> - <cell row="3" col="3" halign="right"> - <Paragraph name="pbar_text3" style="ptext">1</Paragraph> - </cell> - <cell row="3" col="4" halign="right"> - <BarView name="pbar_barview3b" width="16" height="16" dir="1"/> - </cell> - - <cell row="4" col="1" halign="left"> - <Paragraph name="pbar_title4" style="ptitle" translatable="yes"> - Jobs</Paragraph> - </cell> - <cell row="4" col="2" halign="right"> - <BarView name="pbar_barview4a" width="16" height="16" dir="-1"/> - </cell> - <cell row="4" col="3" halign="right"> - <Paragraph name="pbar_text4" style="ptext">1</Paragraph> - </cell> - <cell row="4" col="4" halign="right"> - <BarView name="pbar_barview4b" width="16" height="16" dir="1"/> - </cell> - - <cell row="5" col="1" halign="left"> - <Paragraph name="pbar_title5" style="ptitle" translatable="yes"> - Money</Paragraph> - </cell> - <cell row="5" col="2" halign="right"> - <BarView name="pbar_barview5a" width="16" height="16" dir="-1"/> - </cell> - <cell row="5" col="3" halign="right"> - <Paragraph name="pbar_text5" style="ptext">1</Paragraph> - </cell> - <cell row="5" col="4" halign="right"> - <BarView name="pbar_barview5b" width="16" height="16" dir="1"/> - </cell> - - <cell row="6" col="1" halign="left"> - <Paragraph name="pbar_title6" style="ptitle" translatable="yes"> - Coal</Paragraph> - </cell> - <cell row="6" col="2" halign="right"> - <BarView name="pbar_barview6a" width="16" height="16" dir="-1"/> - </cell> - <cell row="6" col="3" halign="right"> - <Paragraph name="pbar_text6" style="ptext">1</Paragraph> - </cell> - <cell row="6" col="4" halign="right"> - <BarView name="pbar_barview6b" width="16" height="16" dir="1"/> - </cell> - - <cell row="7" col="1" halign="left"> - <Paragraph name="pbar_title7" style="ptitle" translatable="yes"> - Goods</Paragraph> - </cell> - <cell row="7" col="2" halign="right"> - <BarView name="pbar_barview7a" width="16" height="16" dir="-1"/> - </cell> - <cell row="7" col="3" halign="right"> - <Paragraph name="pbar_text7" style="ptext">1</Paragraph> - </cell> - <cell row="7" col="4" halign="right"> - <BarView name="pbar_barview7b" width="16" height="16" dir="1"/> - </cell> - - <cell row="8" col="1" halign="left"> - <Paragraph name="pbar_title8" style="ptitle" translatable="yes"> - Ore</Paragraph> - </cell> - <cell row="8" col="2" halign="right"> - <BarView name="pbar_barview8a" width="16" height="16" dir="-1"/> - </cell> - <cell row="8" col="3" halign="right"> - <Paragraph name="pbar_text8" style="ptext">1</Paragraph> - </cell> - <cell row="8" col="4" halign="right"> - <BarView name="pbar_barview8b" width="16" height="16" dir="1"/> - </cell> - - <cell row="9" col="1" halign="left"> - <Paragraph name="pbar_title9" style="ptitle" translatable="yes"> - Steel</Paragraph> - </cell> - <cell row="9" col="2" halign="right"> - <BarView name="pbar_barview9a" width="16" height="16" dir="-1"/> - </cell> - <cell row="9" col="3" halign="right"> - <Paragraph name="pbar_text9" style="ptext">1</Paragraph> - </cell> - <cell row="9" col="4" halign="right"> - <BarView name="pbar_barview9b" width="16" height="16" dir="1"/> - </cell> - </TableLayout> + <colsize col="1" relative="0.5"/> + <colsize col="2" fixed="16"/> + <colsize col="3" relative="0.25"/> + <colsize col="4" fixed="16"/> + + <cell row="1" col="1" halign="left"> + <Paragraph name="pbar_title1" style="ptitle" translatable="yes"> + Population</Paragraph> + </cell> + <cell row="1" col="2" halign="right"> + <BarView name="pbar_barview1a" width="16" height="16" dir="-1"/> + </cell> + <cell row="1" col="3" halign="right"> + <Paragraph name="pbar_text1" style="ptext">N/A</Paragraph> + </cell> + <cell row="1" col="4" halign="right"> + <BarView name="pbar_barview1b" width="16" height="16" dir="1"/> + </cell> + + <cell row="2" col="1" halign="left"> + <Paragraph name="pbar_title2" style="ptitle" translatable="yes"> + Tech Level</Paragraph> + </cell> + <cell row="2" col="2" halign="right"> + <BarView name="pbar_barview2a" width="16" height="16" dir="-1"/> + </cell> + <cell row="2" col="3" halign="right"> + <Paragraph name="pbar_text2" style="ptext">N/A</Paragraph> + </cell> + <cell row="2" col="4" halign="right"> + <BarView name="pbar_barview2b" width="16" height="16" dir="1"/> + </cell> + + <cell row="3" col="1" halign="left"> + <Paragraph name="pbar_title3" style="ptitle" translatable="yes"> + Money</Paragraph> + </cell> + <cell row="3" col="2" halign="right"> + <BarView name="pbar_barview3a" width="16" height="16" dir="-1"/> + </cell> + <cell row="3" col="3" halign="right"> + <Paragraph name="pbar_text3" style="ptext">N/A</Paragraph> + </cell> + <cell row="3" col="4" halign="right"> + <BarView name="pbar_barview3b" width="16" height="16" dir="1"/> + </cell> + + <cell row="4" col="1" halign="left"> + <Paragraph name="pbar_title4" style="ptitle" translatable="yes"> + Food</Paragraph> + </cell> + <cell row="4" col="2" halign="right"> + <BarView name="pbar_barview4a" width="16" height="16" dir="-1"/> + </cell> + <cell row="4" col="3" halign="right"> + <Paragraph name="pbar_text4" style="ptext">N/A</Paragraph> + </cell> + <cell row="4" col="4" halign="right"> + <BarView name="pbar_barview4b" width="16" height="16" dir="1"/> + </cell> + + <cell row="5" col="1" halign="left"> + <Paragraph name="pbar_title5" style="ptitle" translatable="yes"> + Jobs</Paragraph> + </cell> + <cell row="5" col="2" halign="right"> + <BarView name="pbar_barview5a" width="16" height="16" dir="-1"/> + </cell> + <cell row="5" col="3" halign="right"> + <Paragraph name="pbar_text5" style="ptext">N/A</Paragraph> + </cell> + <cell row="5" col="4" halign="right"> + <BarView name="pbar_barview5b" width="16" height="16" dir="1"/> + </cell> + + <cell row="6" col="1" halign="left"> + <Paragraph name="pbar_title6" style="ptitle" translatable="yes"> + Goods</Paragraph> + </cell> + <cell row="6" col="2" halign="right"> + <BarView name="pbar_barview6a" width="16" height="16" dir="-1"/> + </cell> + <cell row="6" col="3" halign="right"> + <Paragraph name="pbar_text6" style="ptext">N/A</Paragraph> + </cell> + <cell row="6" col="4" halign="right"> + <BarView name="pbar_barview6b" width="16" height="16" dir="1"/> + </cell> + + <cell row="7" col="1" halign="left"> + <Paragraph name="pbar_title7" style="ptitle" translatable="yes"> + Coal</Paragraph> + </cell> + <cell row="7" col="2" halign="right"> + <BarView name="pbar_barview7a" width="16" height="16" dir="-1"/> + </cell> + <cell row="7" col="3" halign="right"> + <Paragraph name="pbar_text7" style="ptext">N/A</Paragraph> + </cell> + <cell row="7" col="4" halign="right"> + <BarView name="pbar_barview7b" width="16" height="16" dir="1"/> + </cell> + + <cell row="8" col="1" halign="left"> + <Paragraph name="pbar_title8" style="ptitle" translatable="yes"> + Ore</Paragraph> + </cell> + <cell row="8" col="2" halign="right"> + <BarView name="pbar_barview8a" width="16" height="16" dir="-1"/> + </cell> + <cell row="8" col="3" halign="right"> + <Paragraph name="pbar_text8" style="ptext">N/A</Paragraph> + </cell> + <cell row="8" col="4" halign="right"> + <BarView name="pbar_barview8b" width="16" height="16" dir="1"/> + </cell> + + <cell row="9" col="1" halign="left"> + <Paragraph name="pbar_title9" style="ptitle" translatable="yes"> + Steel</Paragraph> + </cell> + <cell row="9" col="2" halign="right"> + <BarView name="pbar_barview9a" width="16" height="16" dir="-1"/> + </cell> + <cell row="9" col="3" halign="right"> + <Paragraph name="pbar_text9" style="ptext">N/A</Paragraph> + </cell> + <cell row="9" col="4" halign="right"> + <BarView name="pbar_barview9b" width="16" height="16" dir="1"/> + </cell> + </TableLayout> </cell> - </TableLayout> + </TableLayout> </Panel> </LCPBar> diff -Nru lincity-ng-2.0/data/gui/savegame.xml lincity-ng-2.9~git20150314/data/gui/savegame.xml --- lincity-ng-2.0/data/gui/savegame.xml 2009-01-25 20:21:19.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/savegame.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="UTF-8"?> <gui> - <Image src="images/mainmenu/newgame_back.png" resizable="yes"/> + <Image src="images/mainmenu/loadsave_back.png" resizable="yes"/> <!-- Split window into title/top - contents and bottom/buttons area --> <TableLayout rows="3" cols="1" > <rowsize row="1" relative="3"/> <rowsize row="2" relative="5"/> <rowsize row="3" relative="2.5"/> - + <cell row="1" col="1"> <Paragraph style="menutitle" translatable="yes">Save Game</Paragraph> </cell> @@ -88,20 +88,18 @@ <cell row="2" col="2" halign="left"> <Button name="BackButton"> - <text style="button" translatable="yes">Back</text> - <text-hover style="button-hover" - translatable="yes">Back</text-hover> - <text-clicked style="button-clicked" - translatable="yes">Back</text-clicked> + <text-caption style="button" translatable="yes">Back</text-caption> + <image src="images/mainmenu/buttons/back.png"/> + <image-hover src="images/mainmenu/buttons/back-hover.png"/> + <image-clicked src="images/mainmenu/buttons/back-clicked.png"/> </Button> </cell> <cell row="2" col="3" halign="right"> <Button name="SaveButton"> - <text style="button" translatable="yes">save to selected slot</text> - <text-hover style="button-hover" - translatable="yes">save to selected slot</text-hover> - <text-clicked style="button-clicked" - translatable="yes">save to selected slot</text-clicked> + <text-caption style="button" translatable="yes">Save</text-caption> + <image src="images/mainmenu/buttons/start.png"/> + <image-hover src="images/mainmenu/buttons/start-hover.png"/> + <image-clicked src="images/mainmenu/buttons/start-clicked.png"/> </Button> </cell> </TableLayout> diff -Nru lincity-ng-2.0/data/gui/tradedialog.xml lincity-ng-2.9~git20150314/data/gui/tradedialog.xml --- lincity-ng-2.0/data/gui/tradedialog.xml 2009-01-25 20:21:18.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/gui/tradedialog.xml 2015-05-05 16:32:49.000000000 +0000 @@ -18,7 +18,7 @@ <TableLayout rows="2" cols="1"> <rowsize row="2" fixed="50"/> <cell row="1" col="1"> - <TableLayout xmlns="" rows="7" cols="3"> + <TableLayout xmlns="" rows="8" cols="3"> <colsize col="1" relative=".3"/> <colsize col="2" relative=".18"/> <colsize col="3" relative=".18"/> @@ -132,6 +132,22 @@ <image src="images/gui/checkbox/checkbox.png"/> <image-checked src="images/gui/checkbox/checkbox_checked.png"/> </CheckButton> + </cell> + <cell row="8" col="1"> + <Paragraph style="message" translatable="yes"> + Waste</Paragraph> + </cell> + <cell row="8" col="2"> + <CheckButton name="BuyWaste"> + <image src="images/gui/checkbox/checkbox.png"/> + <image-checked src="images/gui/checkbox/checkbox_checked.png"/> + </CheckButton> + </cell> + <cell row="8" col="3"> + <CheckButton name="SellWaste"> + <image src="images/gui/checkbox/checkbox.png"/> + <image-checked src="images/gui/checkbox/checkbox_checked.png"/> + </CheckButton> </cell> </TableLayout> </cell> diff -Nru lincity-ng-2.0/data/help/cs/blacksmith.xml lincity-ng-2.9~git20150314/data/help/cs/blacksmith.xml --- lincity-ng-2.0/data/help/cs/blacksmith.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/cs/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Kovárna</p> + <p style="hp">V kovárnÄ› se z železa a uhlí vyrábí zboží. Nejvíce je využijete na zaÄátku hry. SamozÅ™ejmÄ› potÅ™ebují pracovní sílu.</p> + <p style="hp">PÅ™edtím, než budete mít vlastní závody na výrobu železa se budete muset spoléhat na železo z milířů. Je doporuÄeno 5 až 6 milířů na jednu kovárnu.</p> + <p style="hp">Kovárny nemusí být pÅ™ipojeny na žádnou komunikaci. VÅ¡e, co potÅ™ebují si seženou z obchodu (tržiÅ¡tÄ›), v jehož dosahu jsou.</p> + <p style="hp">Jestli je kovárna v provozu zjistíte buÄ obvyklou cestou, poklikáním na ni, nebo se na ni jen podívejte - jestliže je v provozu, vychází z komína dým.</p> + + <p style="hp">Kovárna vypadá takhle</p> + <img src="images/tiles/blacksmith0.png" halign="center"/> + <p style="hp">a toto je její ikona</p> + <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> + + <p style="hsubtitle">Viz také:</p> + <li><a href="market">Obchod</a></li> + <li><a href="ore">Ruda</a></li> + <li><a href="commune">Milíř</a></li> + <li><a href="steel">Železo</a></li> + <li><a href="jobs">Práce</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/cs/economy.xml lincity-ng-2.9~git20150314/data/help/cs/economy.xml --- lincity-ng-2.0/data/help/cs/economy.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/cs/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,29 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Hospodářské grafy</p> + <p style="hp">Jsou zde ÄtyÅ™i barevné grafy. Ukazují nejdůležitÄ›jší hospodářské ukazatele.</p> + <li> + <span color="brown">PoÄet obyvatel</span> (hnÄ›dý) + HnÄ›dá Äára zobrazuj poÄet obyvatel. + </li> + <li> + <span color="blue">Bezdomovci</span> (modrý) + Modrá Äára zobrazuje závislost na bydlení + Výška grafu je úmÄ›rná poÄtu neubytovaných + obyvatel. + </li> + <li> + <span color="yellow">NezamÄ›stnanost</span> (žlutý) + Žluté sloupce ukazují nezamÄ›stananost. + Výška sloupce závisí také na poÄtu + obyvatel. MÄ›l by vás zajímat. + </li> + <li> + <span color="red">Hlad</span> (Äervený) + ÄŒervené sloupce ukazují hladovÄ›ní. + Výška sloupce závisí také na poÄtu + obyvatel. MÄ›l by vás zajímat. Graf + hladu je zobazován pÅ™es graf + nezamÄ›stnanosti. + </li> +</Document> diff -Nru lincity-ng-2.0/data/help/cs/food.xml lincity-ng-2.9~git20150314/data/help/cs/food.xml --- lincity-ng-2.0/data/help/cs/food.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/cs/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Jídlo</p> + <p style="hp">Jídlo se může vyrábÄ›t na statcích nebo může být dováženo pomocí přístavu.</p> + <p style="hp">Lidé musí jíst, aby pÅ™ežili. Jestliže je necháte hladovÄ›t, odejdou jinam a nÄ›kteří možná i umÅ™ou.</p> + <p style="hp">Mlýny také využívají jídlo. They turn, say, cotton into cloths. Pozor! Mohou potÅ™ebovat <i>hodnÄ›</i> jídla.</p> + + <p style="hsubtitle">Viz také:</p> + <li><a href="farm">Statek</a></li> + <li><a href="port">Přístav</a></li> + <li><a href="mill">Mlýn</a></li> + <li><a href="steel">Železo</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/cs/ore.xml lincity-ng-2.9~git20150314/data/help/cs/ore.xml --- lincity-ng-2.0/data/help/cs/ore.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/cs/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ruda</p> + <p style="hp">Ruda je jednou ze základních herních surovin. Produkují ji recyklovací stanice, doly na železnou rudu a milíře.</p> + <p style="hp">Rudu používají hrnÄířské dílny, kovárny, lehký a těžký průmysl.</p> + + <p style="hsubtitle">Viz také:</p> + <li><a href="commune">Milíř</a></li> + <li><a href="oremine">Důl na železnou rudu</a></li> + <li><a href="recycle">RecyklaÄní stanice</a></li> + <li><a href="pottery">HrnÄířská dílna</a></li> + <li><a href="indistryl">Lehký průmysl</a></li> + <li><a href="indistryh">Těžký průmysl</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/cs/pause.xml lincity-ng-2.9~git20150314/data/help/cs/pause.xml --- lincity-ng-2.0/data/help/cs/pause.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/cs/pause.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">TlaÄítko Pozastavit hru</p> + <p style="hp">TlaÄítko Pozastavit hru zastaví/spustí hru.</p> + <p style="hp">I když je hra pozastavena, můžeÅ¡ se mezitím</p> + <p style="hp">dívat na finance, mapu atp.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/cs/substation.xml lincity-ng-2.9~git20150314/data/help/cs/substation.xml --- lincity-ng-2.0/data/help/cs/substation.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/cs/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Rozvodna</p> + <p style="hp">Rozvodny berou elektrickou energii z elektrického vedení a dodávají ji do oblasti kolem nich. Tuto oblast si můžete zobrazit na mapce dole vpravo, když kliknete na ikonku s bleskem pod mapou.</p> + + <p style="hp">Takto vypadá rozvodna</p> + <img src="images/tiles/substation-G.png" halign="center"/> + <p style="hp">a toto je její ikona</p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + + <p style="hsubtitle">Viz také:</p> + <li><a href="powerline">Elektrické vedení</a></li> + <li><a href="powerssolar">Solární elektrárna</a></li> + <li><a href="commune">Milíř</a></li> + <li><a href="steel">Železo</a></li> + <li><a href="jobs">Práce</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/de/blacksmith.xml lincity-ng-2.9~git20150314/data/help/de/blacksmith.xml --- lincity-ng-2.0/data/help/de/blacksmith.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Schmiede</p> - <p style="hp">Schmieden wandeln Stahl und Kohle in Waren. Sie werden gerade am Anfang des Spiels verwendung finden. Sie bieten natürlich auch Arbeitsplätze.</p> - <p style="hp">Bevor sie Stahlwerke haben, müssen Sie sich auf die Köhlereien verlassen. 5 oder 6 Köhlereien pro Schmiede sind empfohlen.</p> - <p style="hp">Schmieden brauchen keinen Anschluss ans Verkehrsnetz. Sie können alles, was sie brauchen von einem Markt beziehen der in ihrer Reichweite ist.</p> - <p style="hp">Indem Sie auf die Schmiede Linksklicken können Sie sehen ob diese arbeitet und ausgelastet ist.</p> + <p style="hp">Schmieden wandeln Stahl und Kohle in Waren um. Sie werden gerade am Anfang des Spiels Verwendung finden. Sie bieten natürlich auch Arbeitsplätze.</p> + <p style="hp">Bevor Sie Stahlwerke haben, müssen Sie sich auf die Köhlereien verlassen. 5 oder 6 Köhlereien pro Schmiede sind empfohlen.</p> + <p style="hp">Schmieden brauchen keinen Anschluss ans Verkehrsnetz. Sie können alles, was sie brauchen von einem Markt beziehen, der in ihrer Reichweite ist.</p> + <p style="hp">Indem Sie auf die Schmiede linksklicken, können Sie sehen, ob diese arbeitet und ausgelastet ist.</p> <p style="hp">Dies ist eine Schmiede</p> <img src="images/tiles/blacksmith0.png" halign="center"/> @@ -13,7 +13,7 @@ <p style="hsubtitle">Siehe auch:</p> <li><a href="market">Markt</a></li> - <li><a href="ore">Ore</a></li> + <li><a href="ore">Erz</a></li> <li><a href="commune">Köhlerei</a></li> <li><a href="steel">Stahl</a></li> <li><a href="jobs">Arbeitsplätze</a></li> diff -Nru lincity-ng-2.0/data/help/de/bulldoze.xml lincity-ng-2.9~git20150314/data/help/de/bulldoze.xml --- lincity-ng-2.0/data/help/de/bulldoze.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/bulldoze.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,13 +3,13 @@ <p style="htitle">Bulldozer</p> <p style="hp">Um ein Gebiet abzureißen klicken Sie auf - das Bulldozer Symbol und anschließend auf das Gebiet das + das Bulldozer Symbol und anschließend auf das Gebiet, das Sie abreißen wollen. Abreißen kostet Geld, wieviel sehen sie beim Bau im unteren Bereich des Bildschirms, neben den Baukosten.</p> <p style="hp">Manche Dinge, wie z.B. Denkmäler, sind sehr - teuer beim abreißen. Dies liegt daran, das dabei nicht + teuer beim Abreißen. Dies liegt daran, dass dabei nicht nur die eigentlichen Kosten für das Abreißen berechnet werden, sondern auch die "politischen Kosten" mit einbezogen werden. Als Beispiel: Beim Abriss eines Denkmals wird es diff -Nru lincity-ng-2.0/data/help/de/button-index.xml lincity-ng-2.9~git20150314/data/help/de/button-index.xml --- lincity-ng-2.0/data/help/de/button-index.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> - <p style="htitle">Symbol Verzeichniss</p> + <p style="htitle">Symbol Verzeichnis</p> <!--<p style="subtitle">Energie</p>--> <img src="images/gui/buttonpanel/power/powerlines.png"/> diff -Nru lincity-ng-2.0/data/help/de/coalmine.xml lincity-ng-2.9~git20150314/data/help/de/coalmine.xml --- lincity-ng-2.0/data/help/de/coalmine.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/coalmine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,16 +1,16 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Kohlegrube</p> - <p style="hp">Kohlegruben bauen unter der Erde Kohle ab. Sie müssen in nähe einer Kohleader gebaut werden, damit Sie produktiv arbeiten. Um zu sehen wo eine Kohleader liegt, müssen Sie auf den Kohle-Button unter der Miniaturansicht klicken.</p> - <p style="hp">Beim ersten mal kostet dies 1 Millionen €, anschließend ist die Ansicht kostenlos. Sie müssen die ansicht nicht verwenden, müssen dann aber nach dem trial und error prinzip vorgehen um auf gut Glück eine Ader zu finden.</p> + <p style="hp">Kohlegruben bauen unter der Erde Kohle ab. Sie müssen in der Nähe einer Kohleader gebaut werden, damit Sie produktiv arbeiten. Um zu sehen wo eine Kohleader liegt, müssen Sie auf den Kohle-Button unter der Miniaturansicht klicken.</p> + <p style="hp">Beim ersten mal kostet dies 1 Million €, anschließend ist die Ansicht kostenlos. Sie müssen die Ansicht nicht verwenden, müssen dann aber nach dem trial und error Prinzip vorgehen um auf gut Glück eine Ader zu finden.</p> <p style="hp">Kohlegruben brauchen Arbeitsplätze, damit Kohle abgebaut werden kann.</p> <p style="hp">Dies ist eine Kohlegrube</p> <img src="images/tiles/coalmine-full.png" halign="center"/> - <p style="hp">und das sein Symbol</p> + <p style="hp">und das ihr Symbol</p> <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> - <p style="hp">Die Grafik zeigt die Anazahl der Kohle, die bereits gegraben, aber noch nicht transportiert wurde, auf dem oberen Bild ist das Lager der Kohlegrube komplett gefüllt.</p> + <p style="hp">Die Grafik zeigt die Anzahl der Kohle, die bereits gegraben, aber noch nicht transportiert wurde, auf dem oberen Bild ist das Lager der Kohlegrube komplett gefüllt.</p> <p style="hp">Ein klick auf die Kohlemine verrät, wieviel Kohle sich im Lager befindet und (noch viel wichtiger!) wieviel Kohle die Ader noch zu bieten hat.</p> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/coal.xml lincity-ng-2.9~git20150314/data/help/de/coal.xml --- lincity-ng-2.0/data/help/de/coal.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Kohle</p> - <p style="hp">Kohle wird von Kohlekraftwerken verwendet um Strom zu produzieren(Energie). Es wird außerdem von Töpfereien, Spinnereien und Schmieden verwendet um Waren her zu stellen. Die Schwerindustrie wird Kohle benutzen, wenn sie kein Strom bekommt</p> - <p style="hp">Kohle wird unter der Erde in Kohlegruben abgebaut. Das Kohle vorkommen unter der Erde ist begrenzt! (Die vorhanden Kohlereserve werden angezeigt, wenn man auf eine Kohlegrube klickt).</p> - <p style="hp">Köhlereien liefern auch ein wenig Kohle. In wirklichkeit handelt es sich dabei um Holzkohle die aus der verbrennung von Bäumen gewonnen wird. Diese haben zwar nur einen kleinen Ausschuss, der jedoch genug ist für ein paar Töpfereien und Schmieden.</p> + <p style="hp">Kohle wird von Kohlekraftwerken verwendet um Strom zu produzieren (Energie). Es wird außerdem von Töpfereien, Spinnereien und Schmieden verwendet um Waren herzustellen. Die Schwerindustrie wird Kohle benutzen, wenn sie keinen Strom bekommt.</p> + <p style="hp">Kohle wird unter der Erde in Kohlegruben abgebaut. Das Kohlevorkommen unter der Erde ist begrenzt! (Die vorhandenen Kohlereserven werden angezeigt, wenn man auf eine Kohlegrube klickt.)</p> + <p style="hp">Köhlereien liefern auch ein wenig Kohle. In Wirklichkeit handelt es sich dabei um Holzkohle die aus der Verbrennung von Bäumen gewonnen wird. Diese haben zwar nur einen kleinen Ausschuss, der jedoch genug ist für ein paar Töpfereien und Schmieden.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="coalmine">Kohlegrube</a></li> diff -Nru lincity-ng-2.0/data/help/de/commune.xml lincity-ng-2.9~git20150314/data/help/de/commune.xml --- lincity-ng-2.0/data/help/de/commune.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Köhlerei</p> - <p style="hp">Köhlereien sind Plätze, auf denen durch das verbrennen von Bäumen Holzkohle(lincity-NG unterscheidet nicht zwischen den einzelnen Arten..) gewonnen wird. Sie produzieren außerdem kleine Mengen an Erz und Stahl.</p> + <p style="hp">Köhlereien sind Plätze, auf denen durch das Verbrennen von Bäumen Holzkohle (lincity-NG unterscheidet nicht zwischen den einzelnen Arten.) gewonnen wird. Sie produzieren außerdem kleine Mengen an Erz und Stahl.</p> <p style="hp">Sie werden wahrscheinlich "ein paar" Köhlereien brauchen um genug Kohle und Stahl für z.B. Töpfereien, Schmieden und Spinnereien zu produzieren.</p> <p style="hp">Falls eine Köhlerei für 10 Jahre nichts mehr Produziert, wird sie geschlossen und sie verwandelt sich in einen Park.</p> <p style="hp">Köhlereien können an jeder Stelle mit dem Verkehr verbunden werden, nicht nur am Tor!</p> diff -Nru lincity-ng-2.0/data/help/de/cricket.xml lincity-ng-2.9~git20150314/data/help/de/cricket.xml --- lincity-ng-2.0/data/help/de/cricket.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Sportplatz</p> - <p style="hp">Sportplätze bieten Sport und Unterhaltung für ihre Einwohner. Sportplätze benötigen Waren und Arbeitsplätze um zu funktionieren. Sie müssen nicht zwingend ans Verkehrsnetz angebunden sein, brauchen dann aber jedoch einen Markt in ihrer Nähe, der sie mir Arbeitsplätzen und Warenn versorgt. Außerdem produziert ihr betrieb laufende Kosten.</p> - <p style="hp">Wenn Sie einen Sportplatz bauen, wird er noch nicht sofort "in betrieb" gehen. Es dauert ungefähr drei Monate bis alle Geräte(z.B: Basketball Körbe) installiert sind.</p> - <p style="hp">Um zu sehen welchen Bereich ihr Sportplatz abdeckt, klicken sie auf das Sportplatz Symbol unterhalb der Miniaturansicht. Gebiete die abgedeckt sind werden normal dargestellt, der nicht abgedeckte Teil wird Dunkelgrün dargestellt. + <p style="hp">Sportplätze bieten Sport und Unterhaltung für Ihre Einwohner. Sportplätze benötigen Waren und Arbeitsplätze um zu funktionieren. Sie müssen nicht zwingend ans Verkehrsnetz angebunden sein, brauchen dann jedoch einen Markt in ihrer Nähe, der sie mit Arbeitsplätzen und Waren versorgt. Außerdem produziert ihr Betrieb laufende Kosten.</p> + <p style="hp">Wenn Sie einen Sportplatz bauen, wird er noch nicht sofort "in Betrieb" gehen. Es dauert ungefähr drei Monate bis alle Geräte (z.B: Basketball Körbe) installiert sind.</p> + <p style="hp">Um zu sehen welchen Bereich Ihr Sportplatz abdeckt, klicken Sie auf das Sportplatz Symbol unterhalb der Miniaturansicht. Gebiete, die abgedeckt sind werden normal dargestellt, der nicht abgedeckte Teil wird dunkelgrün dargestellt. </p> - <p style="hp">Sportplätze steigern die attraktivität der Wohngebiete in ihrem Bereich.</p> + <p style="hp">Sportplätze steigern die Attraktivität der Wohngebiete in ihrem Bereich.</p> <p style="hp">Sportplätze zeigen eine Animationssequenz um zu zeigen das sie arbeiten.</p> <p style="hp">Dies ist ein Sportplatz</p> diff -Nru lincity-ng-2.0/data/help/de/economy.xml lincity-ng-2.9~git20150314/data/help/de/economy.xml --- lincity-ng-2.0/data/help/de/economy.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -15,17 +15,17 @@ </li> <li> <span color="yellow">Arbeitslosigkeit</span> (Gelb) - Die soliden Hintergrund "Balken" zeigen das es + Die soliden Hintergrund "Balken" zeigen, dass es Arbeitslosigkeit gibt. Der Maßstab dieser Balken ändert sich mit der Bevölkerung. Diese Balken sind solide, damit Sie ihre Aufmerksamkeit auf sie richten! </li> <li> <span color="red">Hungernd</span> (Rot) - Die soliden roten "Balken" zeigen das in ihrer - Stadt Menschen an Hunger leidern und/oder verhungern! + Die soliden roten "Balken" zeigen, dass in Ihrer + Stadt Menschen an Hunger leiden und/oder verhungern! Der Maßstab dieser Balken ändert sich mit der Bevölkerung. Diese Balken übermalen die Arbeitslosigkeit - da sie die wichtigste Linie ist! + da sie die wichtigste Linie sind! </li> </Document> diff -Nru lincity-ng-2.0/data/help/de/export.xml lincity-ng-2.9~git20150314/data/help/de/export.xml --- lincity-ng-2.0/data/help/de/export.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/export.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Import und Export Gebiete</p> - <p style="hp">Importieren und exportieren funktion auf die selbe Weise, außer das dich das erste Geld kostet und das zweite dir Geld einbringt. Beides benötigt einen Hafen, aus diesem Grund werden wir nur das exportieren im Detail betrachten:</p> + <p style="hp">Import und Export funktionieren auf die selbe Weise, außer dass das erste Geld kostet und das zweite Geld einbringt. Beides benötigt einen Hafen, aus diesem Grund wird nur der Export im Detail betrachten:</p> <p style="hp">Um zu exportieren, braucht der Hafen einen Anschluss an die Straße.</p> <p style="hp">Sie <b>müssen</b> die ganze rechte Seite lang mit dem Wasser verbunden sein.</p> - <p style="hp">Das "Exportgebiet" wird sich soviel nehmen wie es bekommt. Wenn Sie exportieren wollen, aber die Menge beschränken sollten sie evtl. einen Verkehrsanschluss mit weniger Kapazität verwenden oder einen langen Weg zum Hafen bauen. Oder Sie lassen die Produkte zuerst durch einen Markt gehen.. Sie müssen experimentieren bis sie die richtige export Einstellungen haben.</p> + <p style="hp">Das "Exportgebiet" wird sich soviel nehmen wie es bekommt. Wenn Sie exportieren wollen, aber die Menge beschränken, sollten sie evtl. einen Verkehrsanschluss mit weniger Kapazität verwenden oder einen langen Weg zum Hafen bauen. Oder Sie lassen die Produkte zuerst durch einen Markt gehen. Sie müssen experimentieren bis Sie die richtigen Export Einstellungen haben.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="port">Hafen</a></li> diff -Nru lincity-ng-2.0/data/help/de/farm.xml lincity-ng-2.9~git20150314/data/help/de/farm.xml --- lincity-ng-2.0/data/help/de/farm.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/farm.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,19 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Bauernhof</p> - <p style="hp">Bauernhöfe produzieren Essen für ihre Bevölkerung und Rohstoffe für Spinnereien. Bauern können das Essen an Märkte verkaufen, sie transportieren es mit dem Traktor, weshalb sie nicht ans Verkehrsnetz angeschlossen sein müssen. Sie können den Verkehr aber auch zum verkauf nutzen, natürlich müssen sie dabei sicher gehn das der Markt in Reichweite liegt.</p> + <p style="hp">Bauernhöfe produzieren Essen für ihre Bevölkerung und Rohstoffe für Spinnereien. Bauern können das Essen an Märkte verkaufen, sie transportieren es mit dem Traktor, weshalb sie nicht ans Verkehrsnetz angeschlossen sein müssen. Sie können den Verkehr aber auch zum Verkauf nutzen, natürlich müssen Sie dabei sichergehen, dass der Markt in Reichweite liegt.</p> <p style="hp">Dies ist eine Farm</p> <img src="images/tiles/farm0.png" halign="center"/> <p style="hp">und das ihr Symbol</p> <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> - <p style="hp">Bauernhöfe brauchen Arbeitsplätze um mehr als nur eine minimale Menge an Essen zu produzieren. Die Bauernhöfe mit Energie zu versorgen steigert die Produktion ebenfallsp. Energie beinhaltet auch "altmodische" Windmühlen, die helfen mehr Essen zu Produzieren und dabei keine Verschmutzung verursacht.</p> + <p style="hp">Bauernhöfe brauchen Arbeitsplätze um mehr als nur eine minimale Menge an Essen zu produzieren. Die Bauernhöfe mit Energie zu versorgen steigert die Produktion ebenfalls. Energie beinhaltet auch "altmodische" Windmühlen, die helfen mehr Essen zu produzieren und dabei keine Verschmutzung verursachen.</p> <p style="hp">Die landwirtschaftliche Produktion hängt vom Grundwasser ab, Felder mit Grundwasser sind grün, andere gelbbraun wie die Wüste.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="market">Markt</a></li> - <li><a href="tech-level">Tech-Level</a></li> + <li><a href="tech-level">Technologieniveau</a></li> <li><a href="transport">Verkehr</a></li> <li><a href="windmill">Windmühle</a></li> <li><a href="food">Nahrung</a></li> diff -Nru lincity-ng-2.0/data/help/de/fast.xml lincity-ng-2.9~git20150314/data/help/de/fast.xml --- lincity-ng-2.0/data/help/de/fast.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/fast.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,7 +5,7 @@ <p style="hp">Dies ist der "Schnell"-Knopf. Er lässt das Spiel am schnellsten laufen. Vorsicht auf schnellen Rechnern, Probleme können schnell eskalieren.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">Siehe auch:</p> <li><a href="medium">Normal</a></li> <li><a href="slow">Langsam</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/de/finance.xml lincity-ng-2.9~git20150314/data/help/de/finance.xml --- lincity-ng-2.0/data/help/de/finance.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/finance.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> - <p style="htitle">Finanzenübersicht</p> - <p style="hp">Dies ist das Finanzenübersicht.</p> - <p style="hp">Die Finanzenübersicht wird jeden Januar aktualisiert. Die Zahlen unter "Einkommen" und "Ausgaben" zeigen die Einnahmen und Ausgaben des letzten Jahres.</p> - <p style="hp">Die Zahl neben "Netto" gibt die Totale Bewegung an. Es gibt gewisse Dinge die Sie nicht tun können wenn sie "in den Roten" sind.</p> + <p style="htitle">Finanzübersicht</p> + <p style="hp">Dies ist die Finanzübersicht.</p> + <p style="hp">Die Finanzübersicht wird jeden Januar aktualisiert. Die Zahlen unter "Einkommen" und "Ausgaben" zeigen die Einnahmen und Ausgaben des letzten Jahres.</p> + <p style="hp">Die Zahl neben "Netto" gibt die totale Bewegung an. Es gibt gewisse Dinge, die Sie nicht tun können, wenn sie "in den roten Zahlen" sind.</p> <!-- Im deutschen werden keine Abkürzungen benutzt.. die Einträge sind selbsterklärend... <p style="hp">Die Bedeutung der Abkürzungen sind:</p> <p style="hp">Income:</p> @@ -16,8 +16,8 @@ <li>UC = Unemployment costs.</li> <li>TC = Transport costs.</li> <li>IP = Import costs.</li> - <p style="hp">Left clicking on this window will cycle through windows for finance, other costs and housing.</p> --> + <p style="hp">Durch wiederholtes Klicken auf dieses Fenster schalten Sie durch die Ãœbersichten für Finanzen, andere Kosten und Wohnungskosten.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="housing">Bevölkerungsanzeige</a></li> <li><a href="other-costs">Sonstige Kosten</a></li> diff -Nru lincity-ng-2.0/data/help/de/firestation.xml lincity-ng-2.9~git20150314/data/help/de/firestation.xml --- lincity-ng-2.0/data/help/de/firestation.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/firestation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,16 +2,16 @@ <Document style="helpdocument"> <p style="htitle">Feuerwehr</p> - <p style="hp">Feuerwehren verhindern das ausbrechen - und ausbreiten von Feuern in ihrem Einzugsbereich. Um + <p style="hp">Feuerwehren verhindern das Ausbrechen + und Ausbreiten von Feuern in ihrem Einzugsbereich. Um ihrer Arbeit nachzukommen, brauchen sie Waren und Arbeitsplätze. Sie müssen <b>nicht</b> ans Verkehrsnetz angebunden sein, aber sie müssen in der Reichweite eines - Markts sein, der sie mit Warenn und Arbeitsplätzen - versorgen kann. Außerdem kostet ihr betrieb Geld.</p> + Markts sein, der sie mit Waren und Arbeitsplätzen + versorgen kann. Außerdem kostet ihr Betrieb Geld.</p> <p style="hp">Wenn Sie eine Feuerwehr bauen, wird diese noch - nicht gleich Einsatzbereit sein, es dauert gewöhnlich drei + nicht gleich einsatzbereit sein, es dauert gewöhnlich drei Monate bis sie komplett eingerichtet ist und somit einen wirksamen Schutz gewährleisten kann.</p> @@ -19,13 +19,13 @@ abgedeckt werden, klicken Sie einfach auf das Feuerwehr Symbol unter der <i>Miniaturansicht</i>. Gebiete die vor Feuer geschützt sind, werden normal angezeigt, - ungeschützte Gebiete werden in Dunkelgrün dargestellt.</p> + ungeschützte Gebiete werden dunkelgrün dargestellt.</p> <p style="hp">Feuerwehren steigern die Attraktivität der Wohngebiete in ihrem Bereich.</p> <p style="hp">Feuerwehren haben eine Animationssequenz um zu - zeigen das sie arbeiten.</p> + zeigen, dass sie arbeiten.</p> <p style="hp">Dies ist eine Feuerwehr</p> <img src="images/tiles/firestation1.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/de/food.xml lincity-ng-2.9~git20150314/data/help/de/food.xml --- lincity-ng-2.0/data/help/de/food.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,8 +2,8 @@ <Document style="helpdocument"> <p style="htitle">Nahrung</p> <p style="hp">Nahrung wird auf Bauernhöfen angebaut oder kann über einen Hafen importiert werden.</p> - <p style="hp">Ihre Bewohner brauchen Nahrung um zu überleben. Wenn Sie sie hungern lassen werden sie die Stadt verlassen oder gar zu tode verhungern.</p> - <p style="hp">Spinnereien benötigen ebenfalls Nahrung. Sie wandeln z.B. Schafe in Kleider. Sie können u.U. <i>sehr viel</i> Nahrung verbrauchen - geben sie Acht darauf!</p> + <p style="hp">Ihre Bewohner brauchen Nahrung um zu überleben. Wenn Sie sie hungern lassen werden sie die Stadt verlassen oder gar zu Tode verhungern.</p> + <p style="hp">Spinnereien benötigen ebenfalls Nahrung. Sie wandeln z.B. Schafe in Kleider um. Sie können u.U. <i>sehr viel</i> Nahrung verbrauchen - geben sie Acht darauf!</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="farm">Bauernhof</a></li> diff -Nru lincity-ng-2.0/data/help/de/goods.xml lincity-ng-2.9~git20150314/data/help/de/goods.xml --- lincity-ng-2.0/data/help/de/goods.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/goods.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Waren</p> - <p style="hp">Waren werden für den betrieb der meisten Gebäude benötigt. Außerdem mag die Bevölkerung gerne viel davon und fühlen sich von Plätzen angezogen, wo sie selbige bekommen können.</p> - <p style="hp">Waren werden versteuert, wenn sie viel produzieren helfen Sie damit ihren Finanzen.</p> + <p style="hp">Waren werden für den Betrieb der meisten Gebäude benötigt. Außerdem mag die Bevölkerung gerne viel davon und fühlt sich von Plätzen angezogen, wo sie selbige bekommen kann.</p> + <p style="hp">Waren werden versteuert. Wenn Sie viel produzieren, helfen Sie damit Ihren Finanzen.</p> <p style="hp">Waren werden von Töpfereien, Schmieden, Spinnereien und Leichtindustrie hergestellt.</p> - <p style="hp">Jedoch <b>nicht</b> von der Schwerindustrie, diese stellt lediglich Stahl her</p> + <p style="hp">Jedoch <b>nicht</b> von der Schwerindustrie, diese stellt lediglich Stahl her.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="pottery">Töpferei</a></li> diff -Nru lincity-ng-2.0/data/help/de/health.xml lincity-ng-2.9~git20150314/data/help/de/health.xml --- lincity-ng-2.0/data/help/de/health.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -7,17 +7,17 @@ liegen, sicher.</p> <p style="hp">Ein Krankenhaus macht ein Wohngebiet - attraktiver, weniger Menschen sterben an folgen von - Verschmutzung, außerdem arbeiten Menschen die im - Einzugsgebiet eines Krankenhauses produktiver!(Sie sind - weniger krankgeschrieben).</p> + attraktiver, weniger Menschen sterben an den Folgen von + Verschmutzung, außerdem arbeiten Menschen im + Einzugsgebiet eines Krankenhauses produktiver! (Sie sind + weniger krankgeschrieben.)</p> <p style="hp">Krankenhäuser sind sehr teuer, 60.000€ pro Jahr. Sie reduzieren jedoch die Kosten von "unnatürlichen Todesfällen" und können extra Steuern einbringen (solange es Arbeit für die Leute gibt).</p> - <p style="hp">Nach dem Bau eines Krankenhauses, braucht es + <p style="hp">Nach dem Bau eines Krankenhauses braucht es ungefähr drei Monate bis dieses mit all seinen Geräten einsatzbereit ist. Zum Betrieb benötigt es Waren.</p> @@ -27,7 +27,7 @@ <p style="hp">Um zu sehen welche Gebiete vom Krankenhaus abgedeckt werden, klicken Sie auf das Gesundheits - Symbol unter der Miniaturansicht. Die Bereiche die + Symbol unter der Miniaturansicht. Die Bereiche, die normal dargestellt werden, sind von einem Krankenhaus abgedeckt.</p> diff -Nru lincity-ng-2.0/data/help/de/housing.xml lincity-ng-2.9~git20150314/data/help/de/housing.xml --- lincity-ng-2.0/data/help/de/housing.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/housing.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,13 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> - <p style="htitle">Bevölkerungs Anzeige</p> - <p style="hp">Die Bevölkerungsanzeige wird erreicht indem man mehrmals auf das €-Symbol über der Miniaturansicht klickt</p> + <p style="htitle">Bevölkerungsanzeige</p> + <p style="hp">Die Bevölkerungsanzeige wird erreicht, indem man mehrmals auf das €-Symbol über der Miniaturansicht klickt</p> <p style="hp">Die Anzeige zeigt folgende Statistiken:</p> <li>Gesamt - Zeigt die Gesamtbevölkerung in ihrer Stadt. Dies zählt Einwohner mit und ohne Wohnung.</li> <li>mit Wohnung - Zeigt die Anzahl der Einwohner mit einer Wohnung.</li> <li>Obdachlos - Zeigt die Anzahl der Leute ohne Wohnung.</li> <li>Barackensiedlungen: Zeigt die Anzahl der Barackensiedlungen in der Stadt.</li> - <li>Unn Tdsfl - Zeigt die Anzahl der unnatürlichen Todesfälle, also die Leute die im letzten Monat durch Hunger oder Verschmutzung zu tode gekommen sind.</li> + <li>Unn Tdsfl - Zeigt die Anzahl der unnatürlichen Todesfälle, also die Leute die im letzten Monat durch Hunger oder Verschmutzung zu Tode gekommen sind.</li> <li>Arbeitslosigkeit - Ansprüche zeigt die absolute Zahl, die im letzten Monat Anspruch auf Arbeitslosengeld hatten. Die Rate ist der Prozentsatz der Einwohner, die ohne Arbeit sind. </li> <li>Verhungert - Fälle zeigt die tatsächlichen Todesfälle an, Rate den Prozentsatz der hungernden Bevölkerung.</li> diff -Nru lincity-ng-2.0/data/help/de/index.xml lincity-ng-2.9~git20150314/data/help/de/index.xml --- lincity-ng-2.0/data/help/de/index.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -16,16 +16,16 @@ <li><a href="tutorial-scenario">Szenarien</a></li> <p><b>Verwaltung</b></p> -<li><a href="button-index">Symbol Verzeichniss</a></li> -<li><a href="housing">Bevölkerungs Anzeige</a></li> -<li><a href="dialogs">Informations System</a></li> +<li><a href="button-index">Symbol Verzeichnis</a></li> +<li><a href="housing">Bevölkerungsanzeige</a></li> +<li><a href="dialogs">Informationssystem</a></li> <li><a href="economy">Wirtschaftsübersicht</a></li> <li><a href="export">Import und Export Gebiete</a></li> <li><a href="finance">Finanzübersicht</a></li> <li><a href="help">Lincity Hilfe</a></li> <li><a href="jobs">Arbeitsplätze</a></li> -<li><a href="sustain">Nachhaltigkeits Anzeige</a></li> -<li><a href="tech-level">Tech Level</a></li> +<li><a href="sustain">Nachhaltigkeitsanzeige</a></li> +<li><a href="tech-level">Technologieniveau</a></li> <li><a href="mini-screen">Miniaturansicht</a></li> <li><a href="residential">Wohngebiet</a></li> <li><a href="river">Wasser</a></li> @@ -36,7 +36,7 @@ <p><b>Geschwindigkeiten</b></p> <li><a href="pause">Pause Knopf</a></li> <li><a href="slow">Langsam</a></li> -<li><a href="medium">Normale</a></li> +<li><a href="medium">Normal</a></li> <li><a href="fast">Schnell</a></li> <p style="hsubtitle">Verkehr</p> @@ -56,7 +56,7 @@ <li><a href="farm">Bauernhof</a></li> <li><a href="windmill">Windmühle</a></li> <li><a href="mill">Spinnerei</a></li> -<li><a href="industryh">Schwer Industrie (Stahl)</a></li> +<li><a href="industryh">Schwerindustrie (Stahl)</a></li> <li><a href="industryl">Leichtindustrie Gebiet</a></li> <li><a href="pottery">Töpferei</a></li> <li><a href="oremine">Erzmine</a></li> diff -Nru lincity-ng-2.0/data/help/de/industryh.xml lincity-ng-2.9~git20150314/data/help/de/industryh.xml --- lincity-ng-2.0/data/help/de/industryh.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/industryh.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> - <p style="htitle">Schwer Industrie</p> - <p style="hp">Die Schwerindustrie produziert Stahl aus Erz, Energie und Arbeitsplätzen. Das Erz wird direkt vom Verkehrsnetz bezogen, genauso wird der produzierte Stahl ans Verkehrsnetz übergeben. Arbeitsplätze werden über einen örtlichen Markt bezogen. Mit dem Verkehrverbunden wird die Schwerindustrie an der linken oberen Ecke</p> - <p style="hp">Die Energie kann auf zwei verschiedene Art und weißen zugeführt werden: + <p style="htitle">Schwerindustrie</p> + <p style="hp">Die Schwerindustrie produziert Stahl aus Erz, Energie und Arbeitsplätzen. Das Erz wird direkt vom Verkehrsnetz bezogen, genauso wird der produzierte Stahl ans Verkehrsnetz übergeben. Arbeitsplätze werden über einen örtlichen Markt bezogen. Mit dem Verkehr verbunden wird die Schwerindustrie an der linken oberen Ecke.</p> + <p style="hp">Die Energie kann auf zwei verschiedene Art und Weisen zugeführt werden: 1. Durch Kohle, die direkt aus dem Verkehrsnetz bezogen wird 2. Ãœber das Stromnetz, hierzu muss mind. ein Umspannhäuschen in der Reichweite sein. (Windmühlen können <b>keine</b> Energie an die Schwerindustrie liefern, sie sind zu schwach.)</p> <p style="hp">Die Schwerindustrie verschmutzt die Umwelt</p> <p style="hp">Sie können auf die gewöhnliche Weise sehen ob die Schwerindustrie arbeitet: Indem Sie darauf klicken - außerdem ist sie animiert.</p> - <p style="hp">Diest ist ein Gebäude der Schwerindustrie</p> + <p style="hp">Dies ist ein Gebäude der Schwerindustrie</p> <img src="images/tiles/industryhl1.png" halign="center"/> <p style="hp">und das ihr Symbol</p> <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/de/industryl.xml lincity-ng-2.9~git20150314/data/help/de/industryl.xml --- lincity-ng-2.0/data/help/de/industryl.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/industryl.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,8 +1,8 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> - <p style="htitle">Leichtes Industrie Gebiet</p> + <p style="htitle">Leichte Industrie</p> <p style="hp">Die leichte Industrie wandelt Erz in Waren um. Diese Verarbeitung wird effizienter, wenn Stahl verfügbar ist. Energie erhöht ebenfalls die Produktionsmenge. Windmühlen sind jedoch <b>nicht</b> zur Energieversorgung für diese Gebiete geeignet.</p> - <p style="hp">Als Faustregel kann man das Obere jedoch ignoieren, der hauptsächliche Ausstoß der leichten Industrie hängt vom verfügbaren Rohmaterial ab, das <b>verbraucht werden</b> kann, so wie von den zur Verfügung stehenden Arbeitskräften.</p> + <p style="hp">Als Faustregel kann man das Obere jedoch ignoieren, der hauptsächliche Ausstoß der leichten Industrie hängt vom verfügbaren Rohmaterial ab, das <b>verbraucht werden</b> kann, sowie von den zur Verfügung stehenden Arbeitskräften.</p> <p style="hp">Dieses Gebiet wird direkt an den Verkehr angeschlossen um Erz, Stahl und Waren zu beziehen. Sie brauchen jedoch einen Markt für die Arbeitsplätze.</p> <p style="hp">Diese Gebiete können <b>NUR</b> an der oberen linken Ecke mit dem Verkehr verbunden werden. Es gibt eine Abzweigung im Verkehrsweg, wenn das Gebäude angeschlossen ist.</p> diff -Nru lincity-ng-2.0/data/help/de/jobs.xml lincity-ng-2.9~git20150314/data/help/de/jobs.xml --- lincity-ng-2.0/data/help/de/jobs.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/jobs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Arbeitsplätze</p> - <p style="hp">Menschen die in Wohngebieten wohnen, stellen Arbeitsplätze "zur Verfügung". Arbeitsplätze werden von den meisten Gebäuden benötigt um korrekt zu funktionieren. Einige Gebäude, z.B. Denkmäler benötigen diese Arbeitsplätze nur, wenn sie sich im bau befinden.</p> - <p style="hp">Arbeitsplätze werden über den Markt "verteilt"; Sie müssen einen Markt in einem Gebiet bauen in dem Sie die Arbeitskräfte brauchen (z.b. in der nähe von Industrie). Der Markt "bezieht" seine Arbeitskräfte auf zwei Wegen. 1.: Ãœber das direkte Einzugsgebiet in dem der Markt steht(Wohngebiete), 2.:falls der Markt im Wohngebiet voll ist, werden die Arbeitskräfte über das Verkehrsnetz zu einem anderen Markt fahren, der weniger gut besetzt ist. Falls jedoch alle Märkte voll besetzt sind, werden die Leute arbeitslos</p> - <p style="hp">Ein Krankenhaus im Einzugsgebiet des Wohngebiets, erhöht die Anzahl der zur Verfügung stehenden Arbeitskräfte.</p> + <p style="hp">Menschen, die in Wohngebieten wohnen, stellen Arbeitsplätze "zur Verfügung". Arbeitsplätze werden von den meisten Gebäuden benötigt um korrekt zu funktionieren. Einige Gebäude, z.B. Denkmäler benötigen diese Arbeitsplätze nur, wenn sie sich im Bau befinden.</p> + <p style="hp">Arbeitsplätze werden über den Markt "verteilt"; Sie müssen einen Markt in einem Gebiet bauen in dem Sie die Arbeitskräfte brauchen (z.b. in der Nähe von Industrie). Der Markt "bezieht" seine Arbeitskräfte auf zwei Wegen. 1.: Ãœber das direkte Einzugsgebiet in dem der Markt steht (Wohngebiete), 2.: falls der Markt im Wohngebiet voll ist, werden die Arbeitskräfte über das Verkehrsnetz zu einem anderen Markt fahren, der weniger gut besetzt ist. Falls jedoch alle Märkte voll besetzt sind, werden die Leute arbeitslos</p> + <p style="hp">Ein Krankenhaus im Einzugsgebiet des Wohngebiets erhöht die Anzahl der zur Verfügung stehenden Arbeitskräfte.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="residential">Wohngebiet</a></li> diff -Nru lincity-ng-2.0/data/help/de/keys.xml lincity-ng-2.9~git20150314/data/help/de/keys.xml --- lincity-ng-2.0/data/help/de/keys.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/keys.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,9 +4,9 @@ <p style="htitle">Tastatur</p> <p style="hsubtitle"><b>Tastenkürzel</b></p> <p style="hp"><b>Esc</b>: Aktiviert das Abfragewerkzeug</p> - <p style="hp"><b>b</b>: schaltet zwischen dem aktuellen Cursor und dem Bulldozer um</p> - <p style="hp"><b>h</b>: drücken um hohe Gebäude auszublenden, erneutes drücken blendet sie wieder ein.</p> - <p style="hp"><b>v</b>: drücken um die Minimap-Schemas auf das Spiel zu übertragen. (Transparent-Deckend-Aus)</p> + <p style="hp"><b>b</b>: Schaltet zwischen dem aktuellen Cursor und dem Bulldozer um</p> + <p style="hp"><b>h</b>: Blendet hohe Gebäude aus bzw. wieder ein</p> + <p style="hp"><b>v</b>: Ãœberträgt das Minimap-Schema auf das Spiel (Transparent-Deckend-Aus)</p> <p style="hp"><b>KP_PLUS</b>: Vergrößern</p> <p style="hp"><b>KP_MINUS</b>: Verkleinern</p> <p style="hp"><b>KP_ENTER</b>: 100% Ansicht</p> @@ -20,7 +20,7 @@ <p style="hp"><b>KP4</b>: Fährt in den Südwesten der Ansicht</p> <p style="hp"><b>KP6</b>: fährt in den Nordosten der Ansicht</p> <p style="hp"><b>KP8</b>: Fährt in den Nordwesten der Ansicht</p> - <p style="hp">(Wenn gleichzeitig Shift gedrückt wird geht's schneller)</p> + <p style="hp">(Wenn gleichzeitig Shift gedrückt wird, geht's schneller)</p> <p style="hsubtitle"><b>Laden und Speichern</b></p> <p style="hp"><b>F12</b>: Schnell speichern</p> <p style="hp"><b>F9</b>: Schnell laden</p> @@ -28,14 +28,14 @@ <p style="htitle">Maus</p> <p style="hp"><b>Rechtsklick:</b></p> <p style="hp">(gedrückt): Verschiebt die Ansicht.</p> - <p style="hp">(klick): zentriert das Feld unterm Cursor.</p> + <p style="hp">(klick): zentriert das Feld unter dem Cursor.</p> <p style="hp"><b>Mittlere Maustaste:</b></p> - <p style="hp">(gedrückt): Zeigt Informationen zum Feld unterhalb des Cursors an(keine Gebäude Information!).</p> + <p style="hp">(gedrückt): Zeigt Informationen zum Feld unterhalb des Cursors an (keine Gebäudeinformation!).</p> <p style="hp"><b>Linksklick:</b></p> <p style="hp">Minimap: Springt in der Ansicht zur entsprechenden Stelle.</p> - <p style="hp">Ansicht: Führt eine Aktion, entsprechend dem gewählten Werkzeug aus(z.B.planieren, bauen, Informationen anzeigen..)</p> + <p style="hp">Ansicht: Führt eine Aktion, entsprechend dem gewählten Werkzeug aus (z.B.planieren, bauen, Informationen anzeigen ...)</p> <p style="hsubtitle"><b>Mausrad:</b></p> - <p style="hp"><b>hoch:</b> Vergrößern</p> - <p style="hp"><b>runter:</b> Verkleinern</p> + <p style="hp"><b>hoch:</b> Vergrößern</p> + <p style="hp"><b>runter:</b> Verkleinern</p> </Document> diff -Nru lincity-ng-2.0/data/help/de/market.xml lincity-ng-2.9~git20150314/data/help/de/market.xml --- lincity-ng-2.0/data/help/de/market.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/market.xml 2015-05-05 16:32:49.000000000 +0000 @@ -6,37 +6,37 @@ Sie sind Arbeitsamt, Warenlager und Einkaufszentrum in einem - kurz: Ãœberall findet sich ein "Markt". Sie kaufen und verkaufen Nahrung, Arbeitsplätze, Kohle, Waren, Erz und Stahl an die - Anliegenden Gebiete und ins Verkehrsnetz. Als Beispiel: Die + anliegenden Gebiete und ins Verkehrsnetz. Als Beispiel: Die Wohngebiete versorgen den Markt mit Arbeitskräften und - der Markt versorgt das im bau befindliche Denkmal mit + der Markt versorgt das im Bau befindliche Denkmal mit Arbeitskräften. <b>HINWEIS</b>, die Wohngebiete werden nicht - mehr versorgt wenn sie mehr oder weniger an/auf der Grenze zum + mehr versorgt, wenn sie mehr oder weniger an/auf der Grenze zum Einzugsbereich des Markts liegen.</p> <p style="hp">Im Einzugsbereich eines Marktes können Waren direkt - zwischen dem Markt und anderen Gebäuden ausgetauscht werden, ohne daß + zwischen dem Markt und anderen Gebäuden ausgetauscht werden, ohne dass eine Verkehrsverbindung bestehen muss. Augenommen hiervon sind - Großverbraucher, bei denen wird aber in der Beschreibung extra auf die - erforderlichen Verkehrsverbindung hingewiesen. Im <a href="msb-transport"> + Großverbraucher. Bei diesen wird aber in der Beschreibung extra auf die + erforderliche Verkehrsverbindung hingewiesen. Im <a href="msb-transport"> Verkehrs- und Markt Layer </a> können Sie sehen, ob sich Gebäude im Einzugsbereich eines Marktes befinden.</p> - <li>Bewohner können Nahrung, Waren und Arbeitsplätze über die Märket, in - deren Einzugsbereich sich ihre Wohngebiet befindet, beziehen.</li> - <li>Alle Gebäude, die Arbeitskräfte benötigen erhalten diese von + <li>Bewohner können Nahrung, Waren und Arbeitsplätze über die Märkte, in + deren Einzugsbereich sich ihr Wohngebiet befindet, beziehen.</li> + <li>Alle Gebäude, die Arbeitskräfte benötigen, erhalten diese von den Märkten.</li> <li>Bauernhöfe verkaufen ihre Nahrung direkt an Märkte.</li> <li>Spinnereien, Töpfereien und Schmieden verkaufen ihre Waren direkt an Märkte, von dort beziehen sie auch ihre Rohstoffe.</li> <p style="hp">Falls sie sich nicht im Einzugsbereich eines Marktes befinden, - brauchen diese Gebäude einen <a href="transport"> Verkehrsverbindung</a>.</p> + brauchen diese Gebäude eine <a href="transport">Verkehrsverbindung</a>.</p> - <p style="hp">Die zweite Registerkarte in der Rechten unteren - Spielfeldecke ist eine <a href="pbar">Statusanzeige</a> die eine + <p style="hp">Die zweite Registerkarte in der rechten unteren + Spielfeldecke ist eine <a href="pbar">Statusanzeige</a>, die eine Ãœbersicht über Ihre Märkte bietet.</p> <p style="hsubtitle">Einstellen was der Markt kauft und verkauft</p> - <p style="hp">Sie können festlegen was ein Markt kauft indem sie doppelt auf ihn klicken und das selektieren was Sie den Markt kaufen bzw. verkaufen lassen möchten. In der standart Einstellung wird alles gehandelt.</p> + <p style="hp">Sie können festlegen was ein Markt kauft indem Sie doppelt auf ihn klicken und das selektieren was Sie den Markt kaufen bzw. verkaufen lassen möchten. In der Standardeinstellung wird alles gehandelt.</p> <p style="hp">Dies ist ein Markt</p> <img src="images/tiles/market-empty.png" halign="center"/> <p style="hp">und das sein Symbol</p> diff -Nru lincity-ng-2.0/data/help/de/medium.xml lincity-ng-2.9~git20150314/data/help/de/medium.xml --- lincity-ng-2.0/data/help/de/medium.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/medium.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Normale Geschwindigkeit</p> <img src="images/gui/speed/fast.png"/> - <p style="hp">Dies ist der Knopf für die Normale Geschwindigkeit. Dieser Bewirkt das das Spiel mit mittlerer Geschwindigkeit läuft. Auf langsamen Maschinen hat der Knopf u.U. keinen Effekt.</p> + <p style="hp">Dies ist der Knopf für die Normale Geschwindigkeit. Dieser bewirkt, dass das Spiel mit mittlerer Geschwindigkeit läuft. Auf langsamen Maschinen hat der Knopf u.U. keinen Effekt.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="slow">Langsam</a></li> diff -Nru lincity-ng-2.0/data/help/de/mill.xml lincity-ng-2.9~git20150314/data/help/de/mill.xml --- lincity-ng-2.0/data/help/de/mill.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,8 +2,8 @@ <Document style="helpdocument"> <p style="htitle">Mühle</p> <p style="hp">Mühlen wandeln Nahrung, Kohle und Jobs in Waren um. Nahrung?... nun ja, Wolle und Stoff werden in diesem Spiel als Nahrung gezählt.</p> - <p style="hp">Mühlen verbrauchen eine ganze Menge Nahrung, so kann es leicht passieren das es zu Engpässen kommt, wenn Sie nicht vorsichtig sind! (Es ist weniger ein Problem, wenn Sie Windmühlen haben, da diese die Bauernhöfe mit Energie versorgen können, welche diese effizienter macht)</p> - <p style="hp">Mühlen müssen nicht ans Verkehrsnetz angeschlossen sein, aber in Reichweite eines Markts stehen, der sie mit Kohle, Arbeitskräften und Nahrung versorgt. An den Rauchwolken über dem Gebäude können Sie sehen ob es arbeitet oder nicht.</p> + <p style="hp">Mühlen verbrauchen eine ganze Menge Nahrung, so kann es leicht passieren, dass es zu Engpässen kommt, wenn Sie nicht vorsichtig sind! (Das ist weniger ein Problem, wenn Sie Windmühlen haben, da diese die Bauernhöfe mit Energie versorgen können, welche diese effizienter macht.)</p> + <p style="hp">Mühlen müssen nicht ans Verkehrsnetz angeschlossen sein, aber in Reichweite eines Markts stehen, der sie mit Kohle, Arbeitskräften und Nahrung versorgt. An den Rauchwolken über dem Gebäude können Sie sehen, ob es arbeitet oder nicht.</p> <p style="hp">Dies ist eine arbeitende Mühle</p> <img src="images/tiles/mill1.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/de/mini-screen.xml lincity-ng-2.9~git20150314/data/help/de/mini-screen.xml --- lincity-ng-2.0/data/help/de/mini-screen.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/mini-screen.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Miniaturansicht</p> - <p style="hp">Die Miniaturansicht zeigt, in verkleinerter Fassung das komplette Spielgebiet. Die Buttons darunter geben ihnen wichtige Informationen über die Situation in ihrer Stadt, z.B. Verschmutzung, gesundheitliche Versorgung, etc.</p> + <p style="hp">Die Miniaturansicht zeigt in verkleinerter Fassung das komplette Spielgebiet. Die Buttons darunter geben Ihnen wichtige Informationen über die Situation in Ihrer Stadt, z.B. Verschmutzung, gesundheitliche Versorgung, etc.</p> <p style="hp">Klicken Sie auf den <i>Hilfe Knopf</i> und anschließend auf die Layer-Symbole unterhalb der Miniaturansicht um weitere Informationen über sie zu erhalten.</p> - <p style="hp">Das weiße Quadrat zeigt den Aktuellen Bildschirmausschnitt.</p> + <p style="hp">Das weiße Quadrat zeigt den aktuellen Bildschirmausschnitt.</p> <p style="hp">Mit 'v' oder dem großen Kopf am linken unteren Eck der Minikarte können Sie die Minikarte über die Hauptkarte legen.</p> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/monument.xml lincity-ng-2.9~git20150314/data/help/de/monument.xml --- lincity-ng-2.0/data/help/de/monument.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/monument.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,10 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Denkmal</p> - <p style="hp">Denkmäler sind ein wichtiger Platz für die Inspiration und die Studien von Erfindern. Jedes Denkmal wird die Rate, mit der die Technologie wächst steigern, jedoch wird sie ab 40% Tech-Level auf 0 fallen. Ab diesem Punkt können nur noch Schulen und Universitäten das Tech-Level steigern.</p> + <p style="hp">Denkmäler sind ein wichtiger Platz für die Inspiration und die Studien von Erfindern. Jedes Denkmal wird die Rate, mit der die Technologie wächst, steigern, jedoch wird sie ab 40% Technologieniveau auf 0 fallen. Ab diesem Punkt können nur noch Schulen und Universitäten das Technologieniveau steigern.</p> <p style="hp">Um ein Denkmal zu bauen braucht es <b>sehr viele</b> Arbeitskräfte. Deshalb ist ein Denkmal ganz nützlich um die Arbeitslosigkeit zu kontrollieren. Dies ist jedoch nur eine sehr kurze Lösung, da nach der Fertigstellung keine Jobs mehr benötigt werden.</p> - <p style="hp">Sie können sehen wie weit der bau vorrangeschritten ist, indem sie auf das Denkmal klicken und im Statusfenster nachsehen, bis das Denkmal bei 100% ist, gibt es insgesamt 6 Grafiken</p> - <p style="hp"><b>Tipp</b>: Um zu verhindern das der bau eines Denkmals zuviele Arbeitskräfte in einer Region kosten, können Sie die Denkmäler auch weiter entfernt bauen, wo nicht so viele Arbeitskräfte benötigt werden.</p> + <p style="hp">Sie können sehen, wie weit der Bau vorangeschritten ist, indem Sie auf das Denkmal klicken und im Statusfenster nachsehen. Bis das Denkmal bei 100% ist, gibt es insgesamt 6 Grafiken.</p> + <p style="hp"><b>Tipp</b>: Um zu verhindern, dass der Bau eines Denkmals zuviele Arbeitskräfte in einer Region kostet, können Sie die Denkmäler auch weiter entfernt bauen, wo nicht so viele Arbeitskräfte benötigt werden.</p> <p style="hp">Dies ist ein Denkmal</p> <img src="images/tiles/monument5.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/de/msb-coal.xml lincity-ng-2.9~git20150314/data/help/de/msb-coal.xml --- lincity-ng-2.0/data/help/de/msb-coal.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -8,15 +8,15 @@ angezeigt. Sie müssen eine Kohlegrube in die Nähe einer Ader bauen um effektiv Kohle abbauen zu können.</p> - <p style="hp">Das erste mal, wenn Sie diesen - Layer aktivieren, werden ihnen eine Millionen € - abgezogen, um die untererdischen Untersuchungen zu + <p style="hp">Das erste Mal, wenn Sie diesen + Layer aktivieren, wird Ihnen eine Million € + abgezogen, um die unterirdischen Untersuchungen zu finanzieren. Anschließend ist die Betrachtung des Layers kostenlos.</p> <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu - springen. Linksklick auf ein andere Symbol aktiviert einen + springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> diff -Nru lincity-ng-2.0/data/help/de/msb-cricket.xml lincity-ng-2.9~git20150314/data/help/de/msb-cricket.xml --- lincity-ng-2.0/data/help/de/msb-cricket.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,10 +2,10 @@ <Document style="helpdocument"> <p style="htitle">Sport Layer</p> <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> - <p style="hp">Gebiete die einen Sportplatz in ihrem Einzugsbereich haben werden Dunkelgrün dargestellt.</p> - <p style="hp">Gebiete die nicht im Einzugsbereich liegen werden normal angezeigt.</p> - <p style="hp">Beachte, Sportplätze brauchen 3 Monate, bis sie ihren betrieb aufnehmen.</p> - <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein andere Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> + <p style="hp">Gebiete, die einen Sportplatz in ihrem Einzugsbereich haben, werden dunkelgrün dargestellt.</p> + <p style="hp">Gebiete, die nicht im Einzugsbereich liegen, werden normal angezeigt.</p> + <p style="hp">Beachten Sie, dass Sportplätze drei Monate brauchen, bis sie ihren Betrieb aufnehmen.</p> + <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="mini-screen">Miniaturansicht</a></li> diff -Nru lincity-ng-2.0/data/help/de/msb-fire.xml lincity-ng-2.9~git20150314/data/help/de/msb-fire.xml --- lincity-ng-2.0/data/help/de/msb-fire.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,10 +2,10 @@ <Document style="helpdocument"> <p style="htitle">Feuer Layer</p> <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> - <p style="hp">Gebiete im Einzugsbereich einer Feuerwehr liegen werden als Dunkelgrün dargestellt.</p> - <p style="hp">Gebiete die nicht im Einzugsbereich liegen werden normal dargestellt.</p> - <p style="hp">Beachte, Feuerwehren brauchen drei Monate bis sie voll funktionsfähig sind.</p> - <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein andere Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> + <p style="hp">Gebiete, die im Einzugsbereich einer Feuerwehr liegen, werden dunkelgrün dargestellt.</p> + <p style="hp">Gebiete, die nicht im Einzugsbereich liegen, werden normal dargestellt.</p> + <p style="hp">Beachten Sie, dass Feuerwehren drei Monate brauchen, bis sie voll funktionsfähig sind.</p> + <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="mini-screen">Miniaturansicht</a></li> diff -Nru lincity-ng-2.0/data/help/de/msb-health.xml lincity-ng-2.9~git20150314/data/help/de/msb-health.xml --- lincity-ng-2.0/data/help/de/msb-health.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,10 +2,10 @@ <Document style="helpdocument"> <p style="htitle">Gesundheits Layer</p> <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> - <p style="hp">Gebiete im Einzugsbereich eines Krankenhauses liegen werden als Dunkelgrün dargestellt.</p> - <p style="hp">Gebiete die nicht im Einzugsbereich liegen werden normal dargestellt.</p> - <p style="hp">Beachte, Krankenhäuser brauchen drei Monate bis Sie ihren betrieb aufnehmen.</p> - <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein andere Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> + <p style="hp">Gebiete, die im Einzugsbereich eines Krankenhauses liegen, werden dunkelgrün dargestellt.</p> + <p style="hp">Gebiete, die nicht im Einzugsbereich liegen, werden normal dargestellt.</p> + <p style="hp">Beachten Sie, dass Krankenhäuser drei Monate brauchen, bis sie ihren Betrieb aufnehmen.</p> + <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="mini-screen">Miniaturansicht</a></li> diff -Nru lincity-ng-2.0/data/help/de/msb-normal.xml lincity-ng-2.9~git20150314/data/help/de/msb-normal.xml --- lincity-ng-2.0/data/help/de/msb-normal.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-normal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -6,7 +6,7 @@ <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu - springen. Linksklick auf ein andere Symbol aktiviert einen + springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> diff -Nru lincity-ng-2.0/data/help/de/msb-pol.xml lincity-ng-2.9~git20150314/data/help/de/msb-pol.xml --- lincity-ng-2.0/data/help/de/msb-pol.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-pol.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,10 +2,10 @@ <Document style="helpdocument"> <p style="htitle">Verschmutzungs Layer</p> <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> - <p style="hp">Der verschmutzungs Layer zeigt, den Grad der Verschmutzung in der Stadt an.</p> - <p style="hp">Die Verschmutzung wird mit folgenden Farben stärker: Hell-Grün -> Dunkel Grün -> Dunkleres Grün -> Dunkel Rot -> Helleres Rot -> Hell Rot.</p> - <p style="hp">In den Wohngebieten, die als Rot dargestellt werden leiden die Leute unter Krankheiten und senkt die Attraktivität der Region.</p> - <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein andere Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> + <p style="hp">Der Verschmutzungs Layer zeigt den Grad der Verschmutzung in der Stadt an.</p> + <p style="hp">Die Verschmutzung wird mit folgenden Farben stärker: Hellgrün -> Dunkelgrün -> Dunkleres Grün -> Dunkelrot -> Helleres Rot -> Hellrot.</p> + <p style="hp">In den Wohngebieten, die als Rot dargestellt werden, leiden die Leute unter Krankheiten und es sinkt die Attraktivität der Region.</p> + <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="mini-screen">Miniaturansicht</a></li> diff -Nru lincity-ng-2.0/data/help/de/msb-power.xml lincity-ng-2.9~git20150314/data/help/de/msb-power.xml --- lincity-ng-2.0/data/help/de/msb-power.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,16 +3,16 @@ <p style="htitle">Energie Layer</p> <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> - <p style="hp">Gebäuder, die mechanische Energie von altmodischen Windmühlen - benutzen werden Dunkelgrün dargestellt.</p> + <p style="hp">Gebäude, die mechanische Energie von altmodischen Windmühlen + benutzen, werden dunkelgrün dargestellt.</p> - <p style="hp">Die Gebäude, die am Stromnetz hängen werden als Hellgrün dargestellt.</p> + <p style="hp">Die Gebäude, die am Stromnetz hängen werden hellgrün dargestellt.</p> - <p style="hp">Die unversorgten Gebäude werden Rot dargestellt.</p> + <p style="hp">Die unversorgten Gebäude werden rot dargestellt.</p> <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu - springen. Linksklick auf ein andere Symbol aktiviert einen + springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> diff -Nru lincity-ng-2.0/data/help/de/msb-starve.xml lincity-ng-2.9~git20150314/data/help/de/msb-starve.xml --- lincity-ng-2.0/data/help/de/msb-starve.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-starve.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,15 +4,15 @@ <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> <p style="hp">In der Ernährungsübersicht werden nur Wohngebiete berücksichtigt.</p> - <p style="hp">Hellgrün bedeutet, daß genügend Nahrung von den Märkten und + <p style="hp">Hellgrün bedeutet, dass genügend Nahrung von den Märkten und Wasser von erreichbaren Brunnen für alle Bewohner - vorhanden ist. Dunkelgrün und Hellrot zeigen zunehmende Unterversorgung + vorhanden ist. Dunkelgrün und hellrot zeigen zunehmende Unterversorgung an.</p> <p style="hp">Der Einzugsbereich von Brunnen wird dunkelblau angezeigt.</p> - <p style="hp">Linksklick auf die Minikarte beweg die Hauptansicht zur + <p style="hp">Linksklick auf die Minikarte bewegt die Hauptansicht zur gewählten Stelle. Um die Minikarte über die Hauptansicht zu legen - drücken sie 'v' oder den Overlay-Knopf links von der Minikarte.</p> + drücken Sie 'v' oder den Overlay-Knopf links von der Minikarte.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="mini-screen">Minikarte</a></li> diff -Nru lincity-ng-2.0/data/help/de/msb-transport.xml lincity-ng-2.9~git20150314/data/help/de/msb-transport.xml --- lincity-ng-2.0/data/help/de/msb-transport.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Transportübersicht</p> <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> - <p style="hp">Die Transportminikarte zeigt die Menge von Warenn, + <p style="hp">Die Transportminikarte zeigt die Menge von Waren, die sich auf den <a href="track">Wegen</a>, <a href="road">Straßen </a> und <a href="rail">Eisenbahnen </a> der Stadt befinden.</p> <p style="hp">Die bläulichen Farben sind Gebäude, die sich in der @@ -10,7 +10,7 @@ <p style="hp">Linksklick auf die Miniaturansicht um zur entsprechenden Stelle auf der Hauptansicht zu - springen. Linksklick auf ein andere Symbol aktiviert einen + springen. Linksklick auf ein anderes Symbol aktiviert einen anderen Layer. Mit 'v' können Sie den aktiven Layer auf die Hauptansicht legen.</p> diff -Nru lincity-ng-2.0/data/help/de/msb-ub40.xml lincity-ng-2.9~git20150314/data/help/de/msb-ub40.xml --- lincity-ng-2.0/data/help/de/msb-ub40.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/msb-ub40.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,12 +3,12 @@ <p style="htitle">Arbeitslosenübersicht</p> <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> <p style="hp">Die Arbeitslosenübersicht erfasst nur Wohngebiete.</p> - <p style="hp">Hellgrün bedeutet keine Arbeitslosigkeit, Dunkelgrün bis - Hellrot zeigt zunehmende Anzahl von Arbeitslosen an.</p> + <p style="hp">Hellgrün bedeutet keine Arbeitslosigkeit, dunkelgrün bis + hellrot zeigt zunehmende Anzahl von Arbeitslosen an.</p> - <p style="hp">Linksklick auf die Minikarte beweg die Hauptansicht zur + <p style="hp">Linksklick auf die Minikarte bewegt die Hauptansicht zur gewählten Stelle. Um die Minikarte über die Hauptansicht zu legen - drücken sie 'v' oder den Overlay-Knopf links von der Minikarte.</p> + drücken Sie 'v' oder den Overlay-Knopf links von der Minikarte.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="mini-screen">Minikarte</a></li> diff -Nru lincity-ng-2.0/data/help/de/oremine.xml lincity-ng-2.9~git20150314/data/help/de/oremine.xml --- lincity-ng-2.0/data/help/de/oremine.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/oremine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,7 +5,7 @@ Stahl zur Verfügung. Sie können Erzgruben überall errichten. Das Erz im Boden wird langsam abgebaut werden; die Grube abreißen und eine neue an die gleiche Stelle stellen bringt nicht mehr Erz.</p> - <p style="hp">Sobald eine Grube erschöpft ist wird ihr Gebiet zu einem See. + <p style="hp">Sobald eine Grube erschöpft ist, wird ihr Gebiet zu einem See. Um das Land neu erschließen zu können müssen sie 16 Wasserfelder zuschütten!</p> <p style="hp">Transportwege verbinden sich mit der Nordwestecke der @@ -13,11 +13,11 @@ <p style="hp">Das ist eine Erzgrube</p> <img src="images/tiles/oremine1.png" halign="center"/> - <p style="hp">und das das Icon</p> + <p style="hp">und das das Symbol</p> <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> - <li><a href="ore">Ore</a></li> + <li><a href="ore">Erz</a></li> <li><a href="goods">Waren</a></li> <li><a href="steel">Stahl</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/de/other-costs.xml lincity-ng-2.9~git20150314/data/help/de/other-costs.xml --- lincity-ng-2.0/data/help/de/other-costs.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/other-costs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,7 +3,7 @@ <p style="htitle">Sonstige Kosten</p> <p style="hp">Dieser Teil der Finanzansicht zeigt sonstige Ausgaben.</p> <p style="hp">Es wird eine genauere Aufschlüsselung der Ausgaben, die - Auf der Gewinn- und Verlustrechnung als 'Sonstige Ausgaben' auftauchen.</p> + auf der Gewinn- und Verlustrechnung als 'Sonstige Ausgaben' auftauchen, dargestellt.</p> <p style="hp">Durch Klick auf den Reiter können Sie zwischen den verschiedenen Finanzansichten wechseln.</p> </Document> diff -Nru lincity-ng-2.0/data/help/de/park.xml lincity-ng-2.9~git20150314/data/help/de/park.xml --- lincity-ng-2.0/data/help/de/park.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/park.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,21 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Parks</p> - <p style="hp">Parks funktionieren ganz einfach: sie säubern Verschmutzung.</p> - <p style="hp">Eine ganze Menge Gebiete erzeuge Verschmutzung. Da sind + <p style="hp">Parks funktionieren ganz einfach: sie reduzieren Verschmutzung.</p> + <p style="hp">Eine ganze Menge Gebiete erzeugen Verschmutzung. Beispielsweise Straßen, Eisenbahnen, Kohlebergwerke, Industriegebiete, Schwerindustrie - und Kohlekraftwerke. Manche erzeugen mehr Dreck als andere.</p> + und Kohlekraftwerke. Manche erzeugen mehr Verschmutzung als andere.</p> <p style="hp">Sie können Parks verwenden um Ihre Wohngebiete - abzuschirmen, oder um zu verhindern, daß sich die Verschmutzung + abzuschirmen, oder um zu verhindern, dass sich die Verschmutzung über ihr Entstehungsgebiet hinaus ausbreitet. </p> - <p style="hp">Der Wind kommt <b>von</b> Südwest, also bauen sie die Parks - entsprechend.</p> + <p style="hp">Der Wind kommt <b>von</b> Südwest, also sollten Sie die Parks + entsprechend bauen.</p> <p style="hp">Parks benötigen Grundwasser, sie können also nur auf "grünen" Feldern gebaut werden.</p> - <p style="hp">Das ist ein Parkk</p> + <p style="hp">Das ist ein Park</p> <img src="images/tiles/parkland-plane.png" halign="center"/> - <p style="hp">und sein Icon</p> + <p style="hp">und sein Symbol</p> <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/pbar.xml lincity-ng-2.9~git20150314/data/help/de/pbar.xml --- lincity-ng-2.0/data/help/de/pbar.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,8 +3,8 @@ <p style="htitle">Statusanzeige</p> <p style="hp">Diese Anzeige liegt auf der "Stat." Registerkarte. Sie zeigt die Änderungen an Ressourcen und den Lagerbestand in Märkten.</p> - <p style="hp">Ein roter Balken links bedeute Abnahme, ein grüner Balken - rechts bedeutet Zunahmen. Die Länge des Balkens gibt den Betrag + <p style="hp">Ein roter Balken links bedeutet Abnahme, ein grüner Balken + rechts bedeutet Zunahme. Die Länge des Balkens gibt den Betrag der Änderung an.</p> <p style="hp">Die Zahl in der Mitte ist die Gesamtmenge.</p> </Document> diff -Nru lincity-ng-2.0/data/help/de/pollution.xml lincity-ng-2.9~git20150314/data/help/de/pollution.xml --- lincity-ng-2.0/data/help/de/pollution.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/pollution.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,20 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Verschmutzung</p> - <p style="hp">Viele Gebiete verursachen Verschmutzung. Ganz besonders viel + <p style="hp">Viele Gebiete verursachen Verschmutzung. Besonders viel wird durch die folgenden Gebäude erzeugt:</p> - <li>Schwerindustrie.</li> - <li>Industriebetriebe.</li> - <li>Kohlekraftwerke.</li> - <li>Kohlekraftwerke.</li> + <li>Schwerindustrie</li> + <li>Industriebetriebe</li> + <li>Kohlekraftwerke</li> <li>Märkte, deren Müllager voll ist.</li> <li>Straßen und Eisenbahnen, besonders wenn sie voll Müll sind.</li> <p style="hp">Leute wohnen nicht gerne in verschmutzten Gegenden. - Enzweder ziehen sie aus, oder sie werden sogar krank und sterben.</p> + Entweder ziehen sie aus, oder sie werden sogar krank und sterben.</p> <p style="hp">Der Wind kommt hauptsächlich aus dem Südwesten, also zieht die Verschmutzung eher nach Nordosten.</p> - <p style="hp">Normalerweise sollten sie so bauen, daß ihre Leute + <p style="hp">Normalerweise sollten Sie so bauen, dass Ihre Leute keiner Verschmutzung ausgesetzt werden. Das ist aber nicht immer möglich. - In diesem Fall können sie Parks als Barrieren verwenden, je mehr Parks, + In diesem Fall können Sie Parks als Barrieren verwenden, je mehr Parks, desto mehr Schutz.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="industryh">Schwerindustrie</a></li> @@ -26,5 +25,5 @@ <li><a href="rail">Eisenbahnen</a></li> <li><a href="road">Straßen</a></li> <li><a href="park">Parks</a></li> - <li><a href="msb-pol">Verschmutzungskartenanzeige</a></li> + <li><a href="msb-pol">Verschmutzungskarte</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/de/port.xml lincity-ng-2.9~git20150314/data/help/de/port.xml --- lincity-ng-2.0/data/help/de/port.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/port.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,26 +1,26 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Häfen</p> - <p style="hp">Mit einem Hafen können sie Waren, Stahl, Erz, Kohle und - Nahrung Im- und Exportieren. Import kostet Geld, mit Exporten verdienen + <p style="hp">Mit einem Hafen können Sie Waren, Stahl, Erz, Kohle und + Nahrung im- und exportieren. Import kostet Geld, mit Exporten verdienen Sie welches.</p> - <p style="hp">Damit ein Hafen was bringt muss er mit einem Transportweg - verbunden sein. Stellen sie ein, was sie kaufen und verkaufen möchten, - indem sie den Hafen doppelklicken. Das öffnet ein Menü, in dem Sie + <p style="hp">Damit ein Hafen funktioniert, muss er mit einem Transportweg + verbunden sein. Stellen Sie ein, was Sie kaufen und verkaufen möchten, + indem Sie auf den Hafen doppelklicken. Das öffnet ein Menü, in dem Sie eine Auswahl treffen können.</p> <p style="hp">Häfen <b>müssen</b> an schiffbaren Gewässern liegen. Das - heißt die ganze Ostseite des Hafens muss am Wasser liegen.</p> - <p style="hp">Solange sie es nicht im Menü eingestellt haben + heißt, die ganze Ostseite des Hafens muss am Wasser liegen.</p> + <p style="hp">Solange Sie es nicht im Menü eingestellt haben, wird nichts ge- oder verkauft.</p> - <p style="hp">Es wird so viel wie Möglich verkauft, wenn sie die Menge - beschränken wollen sollten sie nur einen Transportweg mit geringer + <p style="hp">Es wird so viel wie möglich verkauft. Wenn Sie die Menge + beschränken wollen, sollten Sie nur einen Transportweg mit geringer Kapazität zum Hafen bauen.</p> - <p style="hp">Ãœber einen aktiven Hafen erhält man ein bischen Technologie. - Achtung: Wenn viel exportiert wird sinkt der Verkaufspreis.</p> + <p style="hp">Ãœber einen aktiven Hafen erhält man ein bisschen Technologie. + Achtung: Wenn viel exportiert wird, sinkt der Verkaufspreis.</p> <p style="hp">Das ist ein Hafen.</p> <img src="images/tiles/ex_port.png" halign="center"/> - <p style="hp">und das das Icon</p> + <p style="hp">und das das Symbol</p> <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/pottery.xml lincity-ng-2.9~git20150314/data/help/de/pottery.xml --- lincity-ng-2.0/data/help/de/pottery.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,15 +3,15 @@ <p style="htitle">Töpferei</p> <p style="hp">Töpfereien erzeugen aus Erz und Kohle mit der Hilfe von Arbeitern Waren. Sie müssen nicht mit einem Transportweg verbunden sein, - aber dann müssen sie sich natürlich in Reichweite eines Marktes befinden, + aber dann müssen sie sich in Reichweite eines Marktes befinden, von dem sie Erz, Kohle und Arbeiter beziehen und auf dem sie ihre Waren abgeben können.</p> - <p style="hp">Sie sehen, ob eine Töpferei in Betrieb ist anhand des Rauches, + <p style="hp">Sie sehen, ob eine Töpferei in Betrieb ist, anhand des Rauches, der dann von den Brennöfen aufsteigt.</p> <p style="hp">So sieht eine Töpferei aus</p> <img src="images/tiles/pottery0.png" halign="center"/> - <p style="hp">und so das Icon</p> + <p style="hp">und so das Symbol</p> <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/powerline.xml lincity-ng-2.9~git20150314/data/help/de/powerline.xml --- lincity-ng-2.0/data/help/de/powerline.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/powerline.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,21 +2,21 @@ <Document style="helpdocument"> <p style="htitle">Stromleitungen</p> <p style="hp">Stromleitungen leiten den Strom von Kohle- und - Solarkraftwerken zu den Umspannhäuschen. Stromleitungen Werden + Solarkraftwerken zu den Umspannhäuschen. Stromleitungen werden an der Nordwestecke dieser Gebäude angeschlossen. Auch die moderne Form der Windmühle erzeugt Strom.</p> <p style="hp">Stromleitungen <b>unterqueren</b> Wege, Straßen Eisenbahnschienen und Wasser jeweils mit der Breite von einem Feld. Wenn eine Stromleitung also auf beide Seiten einer Straße gestellt wird zählen sie als verbunden. Meistens müssen sie trotzdem einen Teil des - Flusses zuschütten um Ihn mit einer Stromleitung zu queren was recht teuer + Flusses zuschütten um Ihn mit einer Stromleitung zu queren, was recht teuer ist. Stromleitungen gelten nur in in gerader Linie als verbunden.</p> <p style="hp">Eine Stromleitung</p> <img src="images/tiles/powerlvd.png" halign="center"/> - <p style="hp">und das Icon</p> + <p style="hp">und das Symbol</p> <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> - <p style="hp">Das ist das Icon für die Stromversorgungskarte</p> + <p style="hp">Das ist das Symbol für die Stromversorgungskarte</p> <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/powerscoal.xml lincity-ng-2.9~git20150314/data/help/de/powerscoal.xml --- lincity-ng-2.0/data/help/de/powerscoal.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/powerscoal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,9 +4,9 @@ <p style="hp">Kohlekraftwerke erzeugen elektrischen Strom, den sie ins angeschlossene Netz einspeisen. </p> - <p style="hp">Das ist ein Kohlekraftwerke</p> + <p style="hp">Das ist ein Kohlekraftwerk</p> <img src="images/tiles/powerscoal-empty.png" halign="center"/> - <p style="hp">und das sein Icon</p> + <p style="hp">und das sein Symbol</p> <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> <p style="hp">Stromleitungen werden an der Nordwestecke des Kraftwerks @@ -15,20 +15,20 @@ <img src="images/help/powerscoal-example.png" halign="center"/> <p style="hp">Obiges Beispiel zeigt ein Kohlekraftwerk, bei dem - alle Anschlußstellen verwendet werden. Links ist eine Straße, + alle Anschlussstellen verwendet werden. Links ist eine Straße, darüber zwei Stromleitungen. Rechts davon ist eine Eisenbahnlinie - mit dem anderen Transportwegeanschluß verbunden. Im Spiel können - hohe Gebäude durch drücken von <b>h </b> ein- und ausgeblendet werden.</p> + mit dem anderen Transportwegeanschluss verbunden. Im Spiel können + hohe Gebäude durch Drücken von <b>h</b> ein- und ausgeblendet werden.</p> <p style="hp">Der Wirkungsgrad der Kraftwerke steigt mit dem Technologieniveau. Das Kraftwerk behält immer den Technologiestand - <b>zum Bauzeitpunkt</b>. Es kann sinnvoll sein, alte Kraftwerke abzureisen + <b>zum Bauzeitpunkt</b>. Es kann sinnvoll sein, alte Kraftwerke abzureißen und sie durch modernere zu ersetzen, falls Ihr Technologieniveau deutlich angestiegen ist.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="transport">Transport</a></li> - <li><a href="tech-level">Tech level</a></li> + <li><a href="tech-level">Technologieniveau</a></li> <li><a href="powerline">Stromleitungen</a></li> <li><a href="msb-power">Stromversorgungskarte</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/de/powerssolar.xml lincity-ng-2.9~git20150314/data/help/de/powerssolar.xml --- lincity-ng-2.0/data/help/de/powerssolar.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/powerssolar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,18 +5,18 @@ ein. Die Menge des erzeugten Stromes hängt vom Technologieniveau zum <b>Bauzeitpunkt</b> ab.</p> <p style="hp">Solarkraftwerke benötigen zudem Arbeitskräfte für - Wartungsarbeiten. Ganz ohne Arbeiter wird es keinen Strom erzeugen.</p> + Wartungsarbeiten. Ganz ohne Arbeiter werden sie keinen Strom erzeugen.</p> <p style="hp">Das ist ein Solarkraftwerk</p> <img src="images/tiles/powerssolar.png" halign="center"/> - <p style="hp">und das das Icon</p> + <p style="hp">und das das Symbol</p> <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> <li><a href="substation">Umspannhäuschen</a></li> <li><a href="powerline">Stromleitungen</a></li> <li><a href="residential">Wohngebiete</a></li> - <li><a href="tech-level">Tech-level</a></li> + <li><a href="tech-level">Technologieniveau</a></li> <li><a href="msb-power">Stromversorgungskarte</a></li> <li><a href="windmill">Windmühlen</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/de/query.xml lincity-ng-2.9~git20150314/data/help/de/query.xml --- lincity-ng-2.0/data/help/de/query.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/query.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,7 +3,7 @@ <p style="htitle">Abfragewerkzeug</p> <p style="hp">Um Informationen über ein Gebäude zu erhalten klicken Sie es mit diesem Werkzeug an.</p> - <p style="hp">Die Informationen werden rechts unten, anstelle der Minikarte + <p style="hp">Die Informationen werden rechts unten anstelle der Minikarte angezeigt.</p> <p style="hp">Die Anwendung dieses Werkzeugs ist kostenlos.</p> <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/de/rail.xml lincity-ng-2.9~git20150314/data/help/de/rail.xml --- lincity-ng-2.0/data/help/de/rail.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/rail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,11 +4,11 @@ <p style="hp">Eisenbahnen haben eine noch größere Kapazität als Straßen. Sie erzeugen etwas weniger Verschmutzung als Straßen, sind aber ziemlich teuer, sowohl in der Anschaffung als auch im Unterhalt. Aber sie sind es - wert, wenn sie viel über eine weite Strecke transportieren müssen.</p> + wert, wenn Sie viel über eine weite Strecke transportieren müssen.</p> <p style="hp">Das ist eine Schiene</p> <img src="images/tiles/railud.png" halign="center"/> - <p style="hp">und das das Icon</p> + <p style="hp">und das das Symbol</p> <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/recycle.xml lincity-ng-2.9~git20150314/data/help/de/recycle.xml --- lincity-ng-2.0/data/help/de/recycle.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,14 +5,14 @@ <p style="hp">Auf Recyclinghöfen werden gebrauchte Waren zu Erz verarbeitet. Sie werden an der Nordwestecke mit Transportwegen verbunden. Es werden Arbeiter und Geld benötigt um Abfall einzusammeln und ihn in Erz - umzuwandeln.</p> + umzuwandeln.</p> <p style="hp">Auch wenn Ihre Recyclinghöfe keinen Wirkungsgrad von 100% - haben können Sie eine nachhaltige Wirtschaft zu betreiben, indem sie + haben, können Sie eine nachhaltige Wirtschaft betreiben, indem Sie mittels Spinnereien die 'verlorenen' Waren ersetzen. </p> <p style="hp">Das ist ein Recyclinghof</p> <img src="images/tiles/recycle-centre.png" halign="center"/> - <p style="hp">und das das Icon</p> + <p style="hp">und das das Symbol</p> <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/residential.xml lincity-ng-2.9~git20150314/data/help/de/residential.xml --- lincity-ng-2.0/data/help/de/residential.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/residential.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,36 +2,36 @@ <Document style="helpdocument"> <p style="htitle">Wohngebiete</p> <p style="hp">Hier wohnt die Bevölkerung. Um die Leute dazu - zu bringen, sich in dieser Gegend niederzulassen müssen + zu bringen, sich in dieser Gegend niederzulassen, müssen sie mit Nahrung und Wasser versorgt werden. Es hilft auch, ihnen Arbeitsplätze und Waren zur Verfügung zu stellen. Wohngebiete müssen dazu im Bereich eines Marktes liegen, oder mit einem Transportweg verbunden sein. Auch müssen sie im Bereich eines Brunnens liegen. Es gibt drei verschiedene Arten von Wohngebieten: welche mit geringer, mittlerer und - hoher Siedlungsdichte. Jede Art hat eine Unterschiedliche - Geburten- und Sterberate. Dadurch können sie das Wachstum Ihrer + hoher Siedlungsdichte. Jede Art hat eine unterschiedliche + Geburten- und Sterberate. Dadurch können Sie das Wachstum Ihrer Bevölkerung beeinflussen.</p> - <p style="hp">Später im Spiel, sobald sie das erforderliche Technologieniveau - erreicht haben, können Sie auch moderner Gebäude bauen, bis hin zu Hochhäusern.</p> + <p style="hp">Später im Spiel, sobald Sie das erforderliche Technologieniveau + erreicht haben, können Sie auch modernere Gebäude bauen, bis hin zu Hochhäusern.</p> <p style="hp">Das Gebäude mit der geringen Siedlungsdichte hat eine geringe Geburten- und eine hohe Sterberate, das mit der mittleren Dichte eine hohe Geburten- und eine niedrige Sterberate und das Gebäude mit der hohen Dichte hat sowohl eine hohe Geburten- als auch Sterberate. Die modernen Häuser - verhalten sich genau so, nur finden in ihnen jeweils mehr Leute Platz als + verhalten sich genauso, nur finden in ihnen jeweils mehr Leute Platz als im entsprechenden altmodischen Haus.</p> - <p style="hp">Dies ist die hightech version des Gebäudes mit geringer Siedlungsdichte</p> + <p style="hp">Dies ist die hightech Version des Gebäudes mit geringer Siedlungsdichte</p> <img src="images/tiles/reslowhi.png" halign="center"/> - <p style="hp">und das zugehörige Icon</p> + <p style="hp">und das zugehörige Symbol</p> <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> <p style="hp">mittlere Siedlungsdichte (hightech)</p> <img src="images/tiles/resmedhi.png" halign="center"/> - <p style="hp">und das zugehörige Icon</p> + <p style="hp">und das zugehörige Symbol</p> <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> <p style="hp">hohe Siedlungsdichte (hightech)</p> <img src="images/tiles/reshihi.png" halign="center"/> - <p style="hp">und das zugehörige Icon</p> + <p style="hp">und das zugehörige Symbol</p> <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/river.xml lincity-ng-2.9~git20150314/data/help/de/river.xml --- lincity-ng-2.0/data/help/de/river.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/river.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,23 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> - <p style="htitle">Flüsse/Wasser</p> + <p style="htitle">Flüsse / Wasser</p> <p style="hp">Flüsse sind meistens im Weg. Es ist sehr teuer sie zuzuschütten. Sie werden gebraucht, da Häfen am Fluss liegen müssen.</p> - <p style="hp">Es gibt zwei arten von Gewässern. Seen sind alle + <p style="hp">Es gibt zwei Arten von Gewässern. Seen sind alle Wasserflächen, die <b>nicht</b> mit den Flüssen verbunden sind. Der Fluss ist zunächst alles Wasser, das zu Spielbeginn da war. - Beispiel: sobald eine Erzgrube leer ist läuft sie mit Wasser voll, - falls es mit dem Fluss verbunden ist ist die neue Wasserfläche - teil des Flusses, ansonsten ein See.</p> + Beispiel: Sobald eine Erzgrube leer ist läuft sie mit Wasser voll. + Falls sie mit dem Fluss verbunden ist, ist die neue Wasserfläche + Teil des Flusses, ansonsten ein See.</p> <p style="hp">Wenn ein Stück des Flusses zugeschüttet wird bleiben beide Wasserteile immer noch Teil des Flusses. </p> <p style="hp">Um eine Brücke zu errichten bauen Sie den Transportweg auf das Wasser.</p> - <p style="hp">Sobald eine Wasserfläche einmal Teil des Flusses ist - kann sie <b>nicht</b> wider in einen See verwandelt werden. Wasser, + <p style="hp">Sobald eine Wasserfläche einmal Teil des Flusses ist, + kann sie <b>nicht</b> wieder in einen See verwandelt werden. Wasser, das Teil des Flusses ist, wird im <a href="query">Abfragewerkzeug</a> - als <b>schiffbar</b> angezeigt.</p> + als <b>schiffbar</b> angezeigt.</p> <p style="hp">Stromleitungen können Strom über <b>ein</b> Wasserfeld hinweg übertragen, genau wie über einen Transportweg.</p> </Document> diff -Nru lincity-ng-2.0/data/help/de/road.xml lincity-ng-2.9~git20150314/data/help/de/road.xml --- lincity-ng-2.0/data/help/de/road.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,11 +4,11 @@ <p style="hp">Auf Straßen passt mehr als auf Wege, aber weniger als auf Eisenbahnen. Auch erzeugen sie mehr Verschmutzung als Eisenbahnen. Allerdings sind sie in der Anschaffung und im Unterhalt günstiger, - so daß sie durchaus ihre Existenzberechtigung haben.</p> + so dass sie durchaus ihre Existenzberechtigung haben.</p> <p style="hp">Das ist eine Straße</p> <img src="images/tiles/roadud.png" halign="center"/> - <p style="hp">und so sieht das Icon aus</p> + <p style="hp">und so sieht das Symbol aus</p> <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/rocket.xml lincity-ng-2.9~git20150314/data/help/de/rocket.xml --- lincity-ng-2.0/data/help/de/rocket.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Raketenbasis</p> - <p style="hp">Raketenbasen erlauben es ihnen ihre Bevölkerung auf einen anderen Planeten zu evakuieren und dadurch das Spiel zu gewinnen.</p> + <p style="hp">Raketenbasen erlauben es Ihnen Ihre Bevölkerung auf einen anderen Planeten zu evakuieren und dadurch das Spiel zu gewinnen.</p> <p style="hp">Sie müssen fünf erfolgreiche unbemannte Raketenstarts haben, bevor Sie mit der Evakuierung beginnen können. Jede erfolgreich gestartete Evakuierungsrakete kann 1000 Menschen transportieren.</p> - <p style="hp">Falls ein Start fehl schlägt, müssen Sie weitere 5 unbemannte Raketen abschicken, bevor sie weiter evakuieren können.</p> - <p style="hp">Das Technik-Level ist ausschlaggebend für den Erfolg eines Raketenstarts. Ein 80%iges Tech-Level bedeutet, das nur 4 von 5 Raketen erfolgreich starten. Ein 100%iges Tech-Level dagegen bedeutet, das jeder Rakete in den Himmel kommt (Beachte: Bei den <i>ersten 5</i> Starts kann es trotzdem zu abstürzen kommen!).</p> - <p style="hp">Raketenbasen müssen nicht ans Verkehrsnetz angeschlossen werden, sie können alles über lokale Märkte beziehen. Sie benötigen viel Stahl, Waren, Arbeitskräfte und Geld für den Bau. Wenn die Rakete fertig ist, werden Sie gefgragt ob Sie die Rakete jetzt oder später starten wollen. Wenn Sie später auswählen können sie durch klicken auf die Rakete diesen Dialog erneut anzeigen.</p> - <p style="hp">Wenn die Rakete fertig gebaut ist, aber noch nicht abgeschossen wurde benötigt sie zwar keine Stahl, Waren oder Arbeitskräfte mehr, kostet trotzdem aber sehr viel Geld..</p> + <p style="hp">Falls ein Start fehlschlägt, müssen Sie weitere 5 unbemannte Raketen abschicken, bevor Sie weiter evakuieren können.</p> + <p style="hp">Das Technologieniveau ist ausschlaggebend für den Erfolg eines Raketenstarts. Ein 80%iges Technologieniveau bedeutet, das nur 4 von 5 Raketen erfolgreich starten. Ein 100%iges Technologieniveau dagegen bedeutet, dass jede Rakete in den Himmel kommt (Beachte: Bei den <i>ersten 5</i> Starts kann es trotzdem zu Abstürzen kommen!).</p> + <p style="hp">Raketenbasen müssen nicht ans Verkehrsnetz angeschlossen werden, sie können alles über lokale Märkte beziehen. Sie benötigen viel Stahl, Waren, Arbeitskräfte und Geld für den Bau. Wenn die Rakete fertig ist, werden Sie gefgragt, ob Sie die Rakete jetzt oder später starten wollen. Wenn Sie später auswählen, können Sie durch Klicken auf die Rakete diesen Dialog erneut anzeigen.</p> + <p style="hp">Wenn die Rakete fertig gebaut ist, aber noch nicht abgeschossen wurde, benötigt sie zwar keinen Stahl, keine Waren und Arbeitskräfte mehr, kostet aber trotzdem sehr viel Geld.</p> <p style="hp">Dies ist eine Raketenbasis</p> <img src="images/tiles/rocket5.png" halign="center"/> <p style="hp">und das ihr Symbol</p> diff -Nru lincity-ng-2.0/data/help/de/school.xml lincity-ng-2.9~git20150314/data/help/de/school.xml --- lincity-ng-2.0/data/help/de/school.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/school.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Schulen</p> <p style="hp">Schulen benötigen ähnlich wie Universitäten Arbeiter und - Waren um Technologie zu erzeugen. Sie brauchen viel weniger + Waren um Technologie zu erzeugen. Sie brauchen viel weniger Arbeiter und Waren als die Unis, erzeugen aber auch viel weniger Technologie. Wenn Sie die Wahl zwischen vier oder fünf Schulen oder einer einzigen Uni in der gleichen Gegend haben sind Sie @@ -13,11 +13,11 @@ auszustatten.</p> <p style="hp">Schulen zu betreiben kostet Geld. Sie können die Gesamtkosten des <b>letzten</b> Jahres dem Jahresabschluss entnehmen.</p> - <p style="hp">Ob eine Schule in Betrieb ist können sie wie üblich durch - Anklicken der Schule erkenne.</p> + <p style="hp">Ob eine Schule in Betrieb ist können Sie wie üblich durch + Anklicken der Schule erkennen.</p> <p style="hp">Das ist eine Schule</p> <img src="images/tiles/school0.png" halign="center"/> - <p style="hp">und das ihr Icon</p> + <p style="hp">und das ihr Symbol</p> <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/slow.xml lincity-ng-2.9~git20150314/data/help/de/slow.xml --- lincity-ng-2.0/data/help/de/slow.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/slow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Langsame Geschwindigkeit</p> <img src="images/gui/speed/normal.png"/> - <p style="hp">Dies ist der "Langsam"-Knopf. Er lässt das Spiel am langsamsten laufen. </p> + <p style="hp">Dies ist der "Langsam"-Knopf. Er lässt das Spiel am langsamsten laufen.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="medium">Normal</a></li> <li><a href="fast">Schnell</a></li> diff -Nru lincity-ng-2.0/data/help/de/steel.xml lincity-ng-2.9~git20150314/data/help/de/steel.xml --- lincity-ng-2.0/data/help/de/steel.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,12 +3,12 @@ <p style="htitle">Stahl</p> <p style="hp">Stahl wird von der Schwerindustrie, den Stahlwerken hergestellt. Sie benötigen ein ausreichend hohes Technologieniveau um welche zu bauen. Davor - sind die Köhlereien ihre einzige Stahlquelle. Köhlereien erzeugen auch eine klein - Menge Stahl aus Erz. Normalerweise benötigen sie einige Köhlereien um ihren + sind die Köhlereien Ihre einzige Stahlquelle. Köhlereien erzeugen auch eine kleine + Menge Stahl aus Erz. Normalerweise benötigen Sie einige Köhlereien um ihren Stahlbedarf zu decken.</p> <p style="hp">Stahl wird von den Schmieden zu Waren verarbeitet. Auch die Industriebetriebe benötigen Stahl um Werkzeuge und Produkte (Waren) herzustellen. - Industriebetriebe können auch ohne stahl produzieren, dann allerdings weniger.</p> + Industriebetriebe können auch ohne Stahl produzieren, dann allerdings weniger.</p> <p style="hp">Der Bau von Raketen erfordert eine Menge Stahl, hauptsächlich für die Abschussbasis.</p> <p style="hp">Auch der Erhalt von Eisenbahngleisen verbraucht Stahl.</p> diff -Nru lincity-ng-2.0/data/help/de/substation.xml lincity-ng-2.9~git20150314/data/help/de/substation.xml --- lincity-ng-2.0/data/help/de/substation.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,10 +4,10 @@ <p style="hp">Umspannhäuschen verteilen den Strom aus den Leitungen auf die Gebäude in der Umgebung. Um festzustellen, ob beispielsweise ein Wohngebiet mit Strom versorgt wird, klicken Sie es an und achten - sie auf die Statusanzeige.</p> + Sie auf die Statusanzeige.</p> <p style="hp">So sieht ein Umspannhäuschen aus</p> <img src="images/tiles/substation-G.png" halign="center"/> - <p style="hp">und so sein Icon</p> + <p style="hp">und so sein Symbol</p> <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/sustain.xml lincity-ng-2.9~git20150314/data/help/de/sustain.xml --- lincity-ng-2.0/data/help/de/sustain.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -9,12 +9,12 @@ Kohle ab und verbringen auch keinen Müll auf Deponien. </li> <li> - <span color="gray">Handle</span>(grau) Weder importieren noch exportieren - sie irgendetwas. + <span color="gray">Handel</span> (grau) Weder importieren noch exportieren + Sie irgendetwas. </li> <li> <span color="green">Geld</span> (grün) Ihr Vermögen bleibt gleich oder - wächst. Das bedeutet, sic können nichts außer den günstigsten + wächst. Das bedeutet, Sie können nichts außer den günstigsten Gebäuden bauen. </li> <li> @@ -28,7 +28,7 @@ <li> <span color="yellow">Tech</span> (gelb) Das Technologieniveau ist ansteigend oder es fällt nur unwesentlich. Wenn es um mehr als 1% - fällt wird der Zähler zurückgesetzt. Außerdem brauchen Sie + fällt, wird der Zähler zurückgesetzt. Außerdem brauchen Sie mindestens ein Technologieniveau von 50%. </li> <li> diff -Nru lincity-ng-2.0/data/help/de/tech-level.xml lincity-ng-2.9~git20150314/data/help/de/tech-level.xml --- lincity-ng-2.0/data/help/de/tech-level.xml 2009-01-25 20:21:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tech-level.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,21 +2,21 @@ <Document style="helpdocument"> <p style="htitle">Technologieniveau</p> <p style="hp">Das Technologieniveau Ihrer Stadt beeinflusst unter anderem, - welche Gebäude zur Verfügung sie bauen können und den Wirkungsgrad verschiedener + welche Gebäude Sie bauen können und den Wirkungsgrad verschiedener Vorgänge.</p> - <p style="hp">Um an mehr Technologie zu gelangen müssen sie Monumente, + <p style="hp">Um an mehr Technologie zu gelangen müssen Sie Monumente, Schulen und Universitäten bauen und versorgen.</p> - <p style="hp">Auf niedrigem Technologieniveau können sie nur Monumente bauen. - Nachdem Sie davon ein Paar eine Zeit lang haben werden Sie Schulen <i>erfinden</i>. + <p style="hp">Auf niedrigem Technologieniveau können Sie nur Monumente bauen. + Nachdem Sie davon ein paar eine Zeit lang haben, werden Sie Schulen <i>erfinden</i>. Schulen erzeugen mehr Technologie als Monumente.</p> - <p style="hp">Nachdem sie einen noch höheres Technologieniveau erreicht haben, - werden sie Universitäten <i>erfinden</i>. Die erzeugen noch mehr Technologie + <p style="hp">Nachdem Sie ein noch höheres Technologieniveau erreicht haben, + werden Sie Universitäten <i>erfinden</i>. Diese erzeugen noch mehr Technologie als Schulen, sind aber auch <b>sehr</b> ressourcenhungrig.</p> <p style="hp">Um so höher Ihr Technologieniveau ist, desto schneller geht - Wissen <i>verloren</i>. Das bedeutet Sie brauchen um so mehr Schulen und + Wissen <i>verloren</i>. Das bedeutet, Sie brauchen um so mehr Schulen und Universitäten, je höher das angestrebte Technologieniveau ist. </p> - <p style="hp">Beachten sie auch, daß wenn sie beispielsweise eine oder zwei - Unis abreiße (oder sie nicht mehr genügend Ressourcen für deren Betrieb habe) + <p style="hp">Beachten Sie auch, dass wenn Sie beispielsweise eine oder zwei + Unis abreissen (oder Sie nicht mehr genügend Ressourcen für deren Betrieb haben) Ihr Technologieniveau vermutlich <b>fallen</b> wird.</p> <p style="hp">Die Wahrscheinlichkeit für den erfolgreichen Start einer Rakete entspricht dem Technologieniveau.</p> diff -Nru lincity-ng-2.0/data/help/de/tip.xml lincity-ng-2.9~git20150314/data/help/de/tip.xml --- lincity-ng-2.0/data/help/de/tip.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,17 +2,17 @@ <Document style="helpdocument"> <p style="htitle">Müllkippe</p> <p style="hp">Müllkippen sind Plätze, an denen Abfall deponiert werden kann. - Wenn sich zu viel Abfall in den Märkten sammelt sind die gezwungen, einen Teil - davon zu verbrennen. Das Erzeugt recht viel Verschmutzung, weshalb sie das vermeiden sollten.</p> - <p style="hp">Während sich die Müllkippen füllt wird sie langsam zu einem Hügel. + Wenn sich zu viel Abfall in den Märkten sammelt, sind diese gezwungen, einen Teil + davon zu verbrennen. Das erzeugt recht viel Verschmutzung, weshalb Sie das vermeiden sollten.</p> + <p style="hp">Während sich die Müllkippe füllt, wird sie langsam zu einem Hügel. Wenn die Deponie voll ist wird der Hügel begrünt.</p> <p style="hp">Verkehrsanbindung wie üblich über die Nordwestecke.</p> - <p style="hp">Sie können erkennen ob die Müllkippe in Betrieb ist, indem + <p style="hp">Sie können erkennen, ob die Müllkippe in Betrieb ist, indem Sie sie anklicken.</p> <p style="hp">So sieht eine Müllkippe aus</p> <img src="images/tiles/tip0.png" halign="center"/> - <p style="hp">und so das Icon</p> + <p style="hp">und so das Symbol</p> <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/track.xml lincity-ng-2.9~git20150314/data/help/de/track.xml --- lincity-ng-2.0/data/help/de/track.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/track.xml 2015-05-05 16:32:49.000000000 +0000 @@ -6,7 +6,7 @@ <p style="hp">Das ist ein Weg</p> <img src="images/tiles/trackud.png" halign="center"/> - <p style="hp">und das ist das Icon dazu</p> + <p style="hp">und das ist das Symbol dazu</p> <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/transport.xml lincity-ng-2.9~git20150314/data/help/de/transport.xml --- lincity-ng-2.0/data/help/de/transport.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,20 +2,20 @@ <Document style="helpdocument"> <p style="htitle">Transport</p> <p style="hp">Es gibt drei verschiedene Verkehrswege in Lincity: Wege, - Straßen und Eisenbahnen. Es gibt einer vierte Möglichkeit, Dinge zu transportieren, + Straßen und Eisenbahnen. Es gibt eine vierte Möglichkeit, Dinge zu transportieren, indem sie einfach über die Wiese getragen werden. Dieser Handel über kurze Distanzen gehört nicht zu den Verkehrswegen, ist aber trotzdem wichtig.</p> <p style="hp">Leute können sich Nahrung, Waren und Arbeitsplätze in Märkten besorgen, die in Laufreichweite ihrer Wohngebiete liegen.</p> <p style="hp">Alle Gebäude, die Arbeiter benötigen, können diese über Märkte beziehen. Stahlwerke beispielsweise können ihre Arbeiter - über einem nahe gelegene Märkte einstellen. Sie können sie über einen + über nahe gelegene Märkte einstellen. Sie können sie über einen Verkehrsweg erhalten.</p> <p style="hp">Bauernhöfe verkaufen ihre Nahrung direkt an Märkte, sie benötigen überhaupt keine Verkehrsanbindung.</p> - <p style="hp">Spinnereien, Töpfereien und Schmieden verkaufen Wahren direkt + <p style="hp">Spinnereien, Töpfereien und Schmieden verkaufen Waren direkt auf dem Markt in der Nähe, von dem sie auch ihre Rohstoffe beziehen.</p> - <p style="hp">Die folgende Gebäude handeln sowohl über Verkehrswege als auch + <p style="hp">Die folgenden Gebäude handeln sowohl über Verkehrswege als auch über Märkte. Es bleibt Ihnen überlassen, was Sie verwenden möchten. Märkte haben eine größere <i>Lagerkapazität</i> als Transportwege.</p> <p style="hp">Industriegebiete, Erzgruben, Müllkippen, Kohleminen, @@ -24,15 +24,15 @@ Hauptansicht oben liegende Ecke.</p> <p style="hp">Das Kohlekraftwerk ist eine Ausnahme. Hier ist der Stromanschluss an der Nordwestecke, die Anbindung an Transportwege erfolgt über die Felder - eins weiter südlich und das eins weiter östlich.</p> + eins weiter südlich und eins weiter östlich.</p> <p style="hp">Wege, Straßen und Eisenbahnen werden benötigt um Nahrung, Arbeiter, Waren, Kohle, Erz und Stahl sowie Abfall zwischen den verschiedenen Bereichen zu transportieren. Wichtig: die verschiedenen Transportwege sind untereinander nicht verbunden, nur mit Hilfe von Märkten können Dinge von einem Transportweg auf einen anderen kommen.</p> - <p style="hp">Um einen Fluss mit einem Transportweg zu überqueren bauen sie ihm eifach darüber. + <p style="hp">Um einen Fluss mit einem Transportweg zu überqueren bauen Sie ihn einfach darüber. Es wird eine Brücke gebaut. Brücken sind deutlich teurer als normale Transportwege.</p> <p style="hp">Straßen und Eisenbahnen verursachen jährliche Kosten für - Wartung und verschmutzen die Umwelt. Wenn Sie viel Müll transportieren + Wartung und verschmutzen die Umwelt. Wenn Sie viel Müll transportieren, ist die Verschmutzung noch stärker.</p> <p style="hsubtitle">Siehe auch:</p> <li><a href="residential">Wohngebiet</a></li> diff -Nru lincity-ng-2.0/data/help/de/tutorial-advanced.xml lincity-ng-2.9~git20150314/data/help/de/tutorial-advanced.xml --- lincity-ng-2.0/data/help/de/tutorial-advanced.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tutorial-advanced.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,15 +3,15 @@ <p style="htitle">Fortgeschrittene</p> <p style="hsubtitle">Märkte und Transportwege</p> <p style="hp">Doppelklick auf einen Markt im Hauptfenster öffnet ein Fenster. -In diesem kann der Warenaustausch der Markes mit festgelegt werden.</p> -<li>Waren, die gekauft werden werden von Transportwegen und Produzenten in +In diesem kann der Warenaustausch des Marktes festgelegt werden.</p> +<li>Waren, die gekauft werden, werden von Transportwegen und Produzenten in den Markt geholt, der Lagerbestand im Markt steigt</li> -<li>Waren die verkauft werden gibt der Markt an Transportwege und Verbraucher +<li>Waren, die verkauft werden, gibt der Markt an Transportwege und Verbraucher ab, der Lagerbestand im Markt sinkt.</li> <p style="hp">Normalerweise behält man die Grundeinstellung "alles -kaufen und verkaufen" bei. Nur wenn sie gezielt etwas verhindern -wollen kann es Sinnvoll sein, die Einstellung einzelner Märkte +kaufen und verkaufen" bei. Nur wenn Sie gezielt etwas verhindern +wollen kann es sinnvoll sein, die Einstellung einzelner Märkte anzupassen.</p> <p style="hsubtitle">Nachhaltige Wirtschftsweise</p> @@ -19,15 +19,15 @@ der rechten unteren Ecke enthält die <a href="sustain">Nachhaltigkeitsfortschrittsanzeige</a>. Es wird dringend empfohlen, den Spielstand abzuspeichern bevor Sie das Spiel -längere Zeit unbeaufsichtigt laufen lassen, um zu sehen ob ihre +längere Zeit unbeaufsichtigt laufen lassen, um zu sehen ob Ihre Wirtschaft nachhaltig ist. Wenn etwas schief geht (z.B. weil es zu -einer Hungesnot kommt) können Sie das Spiel nochmal laden.</p> +einer Hungersnot kommt), können Sie das Spiel nochmal laden.</p> <p style="hp">Behalten Sie die Gesammtlagerbestände in der <a href="pbar"> -Statusanzeige</a> im Auge. Das sollte sie vor Ärger schützen. </p> +Statusanzeige</a> im Auge. Das sollte Sie vor Ärger schützen. </p> <li>Hinweis: Lassen Sie es nicht zu Barackensiedlungen kommen und lagern -sie nicht zu viel Müll in den Märkten.</li> +Sie nicht zu viel Müll in den Märkten.</li> <p style="hp"></p> <p style="hp"><a href="tutorial">Tutorium</a></p> diff -Nru lincity-ng-2.0/data/help/de/tutorial-aim.xml lincity-ng-2.9~git20150314/data/help/de/tutorial-aim.xml --- lincity-ng-2.0/data/help/de/tutorial-aim.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tutorial-aim.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,19 +3,19 @@ <p style="htitle">Spielziel </p> <p style="hp">Es gibt zwei Möglichkeiten zu gewinnen: Entweder betreiben Sie eine <a href="sustain">nachhaltige Wirtschaft </a>, -wenn Sie das erreicht haben können Sie trotzdem weiterspielen. Oder Sie -evakuieren die gesammte Bevölkerung mit <a href="rocket">Raumschiffen </a> +wenn Sie das erreicht haben, können Sie trotzdem weiterspielen. Oder Sie +evakuieren die gesammte Bevölkerung mit <a href="rocket">Raumschiffen</a> auf einen anderen Planeten. Dann ist das Spiel zu Ende. Ist ja keiner mehr -da, mit dem Sie spielen können. </p> +da, mit dem Sie spielen können.</p> <p style="hp">Zur Zeit kann man nur auf eine Weise verlieren: Wenn alle Leute tot sind. Also sehen Sie zu, daß ihre Bevölkerung -nicht verhungert oder Aufgrund zu hoher Umweltbelastung vergiftet +nicht verhungert oder aufgrund zu hoher Umweltbelastung vergiftet wird.</p> <p style="hp"></p> <p style="hp">Um mehr Baumöglichkeiten zu erhalten müssen Sie das Technologieniveau Ihrer Stadt erhöhen. Sie müssen das Bevölkerungswachstum -managen sich um die unterschiedlichen Anforderungen kümmern und die +managen, sich um die unterschiedlichen Anforderungen kümmern und die Wirtschaft im Auge behalten.</p> <p style="hp"></p> diff -Nru lincity-ng-2.0/data/help/de/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/de/tutorial-basics.xml --- lincity-ng-2.0/data/help/de/tutorial-basics.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -14,77 +14,77 @@ Hauptbildschirm zeigt im Infofenster unten rechts Detailangaben zu diesem Gebäude an.</p> -<p style="hsubtitle">Märkte </p> +<p style="hsubtitle">Märkte</p> <p style="hp">Der Markt ist ein zentrales Gebäude im Spiel. Er ist für fast allen lokalen Warenaustausch zwingend erforderlich. -Lesen sie unbedingt die Hilfsseite um <a href="market">Markt </a>. -<i>Wenn ein Markt leer ist kann er natürlich keine Waren mehr abgeben. Wenn -das Lager voll ist wird er keine Waren der jeweiligen Typs mehr ankaufen. Das -ist oft der Grund dafür, daß manchmal ein Gebäude nicht arbeitet. Entweder +Lesen Sie unbedingt die Hilfsseite um <a href="market">Markt</a>. +<i>Wenn ein Markt leer ist, kann er natürlich keine Waren mehr abgeben. Wenn +das Lager voll ist, wird er keine Waren des jeweiligen Typs mehr ankaufen. Das +ist oft der Grund dafür, dass manchmal ein Gebäude nicht arbeitet. Entweder erhält es nicht alle notwendigen Rohstoffe, oder es wird die Produktion -nicht los. </i> </p> +nicht los.</i> </p> -<p style="hsubtitle">Transportwege </p> -<p style="hp"><a href="transport">Transport </a> wird für den +<p style="hsubtitle">Transportwege</p> +<p style="hp"><a href="transport">Transport</a> wird für den Warenaustausch über größere Entfernungen benötigt. Auch manche Großverbraucher benötigen zwingend eine Verkehrsanbindung. Das wird dann aber auf der eintsprechende Hilfeseite erwähnt. Genau wie Märkte haben Verkehrswege eine begrenzte Kapazität. -Köhlereien beispielsweie benötigen immer eine Verkehrsanbindung. </p> +Köhlereien beispielsweie benötigen immer eine Verkehrsanbindung.</p> <p style="hp">Wenn sich ein 'gewöhnliches' Gebäude nicht im Einzugsbereich eines Marktes befindet braucht es eine Verkehrsanbindung. Aber bedenken Sie, -daß Straßen und Eisenbahnen laufende kosten verursachen. Wenn sie also -nicht gerade ein isolierte Einzelgebäude (z.B. ein Denkmal) bauen ist es -normalerweise besser und billiger, Märkte zu verwenden. </p> +daß Straßen und Eisenbahnen laufende Kosten verursachen. Wenn Sie also +nicht gerade ein isolierte Einzelgebäude (z.B. ein Denkmal) bauen, ist es +normalerweise besser und billiger, Märkte zu verwenden.</p> <p style="hp">Im Startdorf werden die Wege nur für die Produktion der Köhlereien benötigt. Alle anderne Aktivitäten erfordern nur einen Markt.</p> <p style="hsubtitle">Geld</p> -<p style="hp">Produktion wird besteuert und brint so Geld in die Stadtkasse. +<p style="hp">Produktion wird besteuert und bringt so Geld in die Stadtkasse. Auf der dritten Registerkarte im Infobereich rechts unten ist die -<a href="finance"> Finanzenübersicht </a>. -Investieren sie nicht zu schnell viel Geld: sobald Ihr Kontostand +<a href="finance">Finanzenübersicht</a>. +Investieren Sie nicht zu schnell viel Geld: sobald Ihr Kontostand negativ ist müssen sie Kreditzinsen bezahlen. Auch lassen sich nicht alle Gebäude auf Pump errichten. Zu welchen Problemen das führen kann sehen Sie -im (see <a href="tutorial-scenario">"bad_times" Szenario </a>. </p> +im (see <a href="tutorial-scenario">"bad_times" Szenario</a>.</p> <p style="hsubtitle">Stadtentwicklung </p> -<p style="hp">Nicht vergessen, daß die Leute ohne Nahrung -verhungern und ohne Wasser Verdursten. Um das Bevölkerungswachstum zu regulieren müssen -sie ein Gleichgewicht aus den verschiedenen Arten von <a +<p style="hp">Nicht vergessen, dass die Leute ohne Nahrung +verhungern und ohne Wasser verdursten. Um das Bevölkerungswachstum zu regulieren müssen +Sie ein Gleichgewicht aus den verschiedenen Arten von <a href="residential"> Wohngebieten </a> bauen. Diese haben -verschiedene Geburten- und Sterberaten. Neu Bürger stellen mehr -Arbeitskräfte, wollen aber auch mehr Nahrung, mehr Wahren, mehr -Arbeitspätze, ... </p> - -<p style="hp">Sie werden ihre Produnktion verbessern müssen. Errichten -sie weitere Töpfereien und Schmieden. Gleichzeitig müssen sie deren Vorsorgung -sicherstellen. Also brauchen sie eine entsprechend Anzahl an Köhlereien. </p> +verschiedene Geburten- und Sterberaten. Neue Bürger stellen mehr +Arbeitskräfte, wollen aber auch mehr Nahrung, mehr Waren, mehr +Arbeitsplätze, ...</p> + +<p style="hp">Sie werden Ihre Produnktion verbessern müssen. Errichten +Sie weitere Töpfereien und Schmieden. Gleichzeitig müssen Sie deren Vorsorgung +sicherstellen. Also brauchen Sie eine entsprechende Anzahl an Köhlereien.</p> <p style="hp">Um neue, modernere Gebäude bauen zu können, müssen Sie das -<a href="tech-level"> Technologieniveau </a> der Stadt erhöhen.</p> -<p style="hp"> Irgendwann werden sie sich über Ihr Ziel klar werden müssen. -Streben sie eine <a href="sustain">nachhaltige Wirtschaft </a> an, oder -Evakuierung sie vor dem Zusammenbruch alle mit <a href="rocket"> Raumschiffen </a>?</p> +<a href="tech-level">Technologieniveau</a> der Stadt erhöhen.</p> +<p style="hp"> Irgendwann werden Sie sich über Ihr Ziel klar werden müssen. +Streben sie eine <a href="sustain">nachhaltige Wirtschaft</a> an, oder +Evakuierung Sie vor dem Zusammenbruch alle mit <a href="rocket">Raumschiffen</a>?</p> -<p style="hp">Behalten sie die <a href="pbar"> Statusanzeige </a> im Auge. +<p style="hp">Behalten Sie die <a href="pbar">Statusanzeige</a> im Auge. Auch die Minikarte gibt Ihnen wertvolle Hinweise zur Wirtschaftslage. Für -Detailauskünfte klicken sie die Gebäude auf dem Hauptbildschirm an. +Detailauskünfte klicken Sie die Gebäude auf dem Hauptbildschirm an. Naturlich <b>nicht</b> mit dem Bulldozer.</p> -<li>Hinweis: Machen sie ein oder zwei Änderungen und warten sie ein bischen -ab, wie sich die Sache entwickelt. Lesen sie so lange die Hilfetexte oder -schalten sie auf hohe Spielgeschwindigkeit um und beobachten sie, wie sich die +<li>Hinweis: Machen Sie ein oder zwei Änderungen und warten Sie ein bisschen +ab, wie sich die Sache entwickelt. Lesen Sie so lange die Hilfetexte oder +schalten Sie auf hohe Spielgeschwindigkeit um und beobachten Sie, wie sich die Wirtschaftsindikatoren verändern.</li> <p style="hp"></p> <p style="hp">Viel Spaß.</p> <p style="hp"></p> <p style="hp">Siehe auch:</p> -<li><a href="msb-starve">Nahrungsversorgunsübersicht</a></li> +<li><a href="msb-starve">Nahrungsversorgungsübersicht</a></li> <li><a href="msb-ub40">Arbeitslosenübersicht</a></li> <p style="hp"><a href="tutorial">Tutorium</a></p> diff -Nru lincity-ng-2.0/data/help/de/tutorial-overview.xml lincity-ng-2.9~git20150314/data/help/de/tutorial-overview.xml --- lincity-ng-2.0/data/help/de/tutorial-overview.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tutorial-overview.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,19 +2,19 @@ <Document style="helpdocument"> <p style="htitle">Bildschirmelemente</p> -<p style="hp"><b>Links oben </b> sind die Icons für die verschiedenen -Werkzeuge zum erbauen, überprüfen und abreißen von Gebäuden. Ein Linksklick +<p style="hp"><b>Links oben</b> sind die Symbole für die verschiedenen +Werkzeuge zum Erbauen, Ãœberprüfen und Abreißen von Gebäuden. Ein Linksklick öffnet das Untermenü jeder Gebäudegruppe, ein Rechtsklick wählt das vordere Werkzeug aus. Im Untermenü öffnet ein Rechtsklick die Hilfeseite -zum jeweiligen Werkzeug. Lassen sie den Mauszeiger kurz über einem +zum jeweiligen Werkzeug. Lassen Sie den Mauszeiger kurz über einem Schalter Stehen, um den Tooltip anzeigen zu lassen.</p> -<p style="hp"><b>Links unten </b> ist die Einstellung für die +<p style="hp"><b>Links unten</b> ist die Einstellung für die Spielgeschwindigkeit </p> -<p style="hp"><b>Rechts unten </b> sind alle +<p style="hp"><b>Rechts unten</b> sind alle "Informationswerkzeuge": Die Minikarte mit vier Registerkarten, darunter kleine -icons, mit denen verschiedene Informationen auf der Minikarte angezeigt werden. +Symbole, mit denen verschiedene Informationen auf der Minikarte angezeigt werden. </p> <p style="hp">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/de/tutorial-scenario.xml --- lincity-ng-2.0/data/help/de/tutorial-scenario.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -6,7 +6,7 @@ <p style="hsubtitle">Einfach</p> <li>"Strand": Eine große Strandfläche ganz ohne störende Flüsse zum bebauen. Häfen lassen sich später immer noch direkt am Meer bauen. Wenn man die Leute -nicht gleich am Anfang verhungern lässt ist die Zukunft offen.</li> +nicht gleich am Anfang verhungern lässt, ist die Zukunft offen.</li> <li>"Gute Zeiten": Eine teilweise ausgebaute, relativ moderne Stadt, viel Geld und genügend Platz, um eigene Ideen zu verwirklichen.</li> @@ -17,12 +17,12 @@ Stadt, sowie drastische Sparmaßnahmen sind erforderlich, um den Bankrott abzuwenden. Schwer aber lösbar. Selbst Nachhaltigkeit ist möglich.</li> -<li>"Trockengebiet": die Landschaft ist sehr wasserarm, der Standort von +<li>"Trockengebiet": Die Landschaft ist sehr wasserarm, der Standort von Bauernhöfe und Köhlereien muss sorgfältig gewählt werden, um eine effiziente - Produnktion zu gewährleisten</li> + Produnktion zu gewährleisten.</li> -<li>"Feuchtgebiet": auf dieser an vielen Stellen überfluteten Landschaft ist - es sehr schwierig,teine Stadt zu bauen.</li> +<li>"Feuchtgebiet": Auf dieser an vielen Stellen überfluteten Landschaft ist + es sehr schwierig, eine Stadt zu bauen.</li> <p style="hp"></p> diff -Nru lincity-ng-2.0/data/help/de/university.xml lincity-ng-2.9~git20150314/data/help/de/university.xml --- lincity-ng-2.0/data/help/de/university.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -8,7 +8,7 @@ sollten also über genügend Industrie und Kapital verfügen um die Uni zu versorgen.</p> <p style="hp">Sie werden einige Universitäten benötigen, um ein Technologieniveau im Bereich von 100% zu erreichen.</p> - <p style="hp">Universitäten müssen nicht an das Verkehrsnetz angeschlossen sein, sei + <p style="hp">Universitäten müssen nicht an das Verkehrsnetz angeschlossen sein, sie können sich alles von Märkten holen, solange welche in Reichweite sind, die genügend Waren und Arbeitskräfte haben.</p> @@ -18,7 +18,7 @@ <p style="hp">Das ist eine Universität</p> <img src="images/tiles/university.png" halign="center"/> - <p style="hp">und das das zugehörige Icon</p> + <p style="hp">und das das zugehörige Symbol</p> <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> <p style="hsubtitle">Siehe auch:</p> diff -Nru lincity-ng-2.0/data/help/de/waterwell.xml lincity-ng-2.9~git20150314/data/help/de/waterwell.xml --- lincity-ng-2.0/data/help/de/waterwell.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/waterwell.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,10 +3,10 @@ <p style="htitle">Brunnen</p> <p style="hp">Versorgen die Häuser im Einzugsbereich mit Wasser. Wassermangel hat die gleichen Folgen wie Nahrungsmangel. Informationen - zur Versorgung gibt es in der Nahrungsversorgunsübersicht der + zur Versorgung gibt es in der Nahrungsversorgungsübersicht der Miniaturkarte.</p> <p style="hp">Siehe auch:</p> <li><a href="food">Nahrung</a></li> - <li><a href="msb-starve">Nahrungsversorgunsübersicht</a></li> + <li><a href="msb-starve">Nahrungsversorgungsübersicht</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/de/windmill.xml lincity-ng-2.9~git20150314/data/help/de/windmill.xml --- lincity-ng-2.0/data/help/de/windmill.xml 2009-01-25 20:21:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/de/windmill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Windmühle</p> - <p style="hp">Windmühlen erzeugen Energie Wohngebiete und + <p style="hp">Windmühlen erzeugen Energie für Wohngebiete und Bauernhöfe. Sie ermöglichen es den Bauern, mehr Nahrung herzustellen und machen Wohngebiete attraktiver.</p> @@ -18,14 +18,14 @@ Wertstoffhöfe direkt versorgen.</p> <p style="hp">Windmühlen benötigen Arbeitskräfte um Energie - zu erzeugen. Sind nicht genügend Arbeiter da wird weniger + zu erzeugen. Sind nicht genügend Arbeiter da, wird weniger Energie erzeugt, ohne Arbeiter überhaupt keine.</p> - <p style="hp">Es gibt zwei Arten Windmühlen.</p> + <p style="hp">Es gibt zwei Arten von Windmühlen.</p> <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> <p style="hp">Die Erste ist eine altmodische Holzwindmühle.</p> <img src="images/tiles/windmill1w.png" halign="center"/> - <p style="hp">Die Zweite ist eine modernes Windkraftwerk.</p> + <p style="hp">Die Zweite ist ein modernes Windkraftwerk.</p> <img src="images/tiles/windmill1g.png" halign="center"/> <p style="hp">Die Art der Windmühle hängt vom Techniveau zur Bauzeit ab.</p> <p style="hp">Die moderne Windmühle kann Strom ins Leitungsnetz einspeisen.</p> @@ -33,7 +33,7 @@ <li><a href="substation">Umspannhäuschen</a></li> <li><a href="powerline">Stromleitungen</a></li> <li><a href="residential">Wohngebiete</a></li> - <li><a href="tech-level">Tech-level</a></li> + <li><a href="tech-level">Technologieniveau</a></li> <li><a href="msb-power">Stromversorgungskarte</a></li> <li><a href="powersolar">Solarkraftwerke</a></li> </Document> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/help/el/blacksmith.xml and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/help/el/blacksmith.xml differ diff -Nru lincity-ng-2.0/data/help/el/bulldoze.xml lincity-ng-2.9~git20150314/data/help/el/bulldoze.xml --- lincity-ng-2.0/data/help/el/bulldoze.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/bulldoze.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κατεδάφιση/ΔιαμόÏφωση</p> + <p style="hp">Για την κατεδάφιση/διαμόÏφωση, επιλέξτε το πλήκτÏο 'Κατεδάφιση' και κατόπιν κάντε κλικ εκεί που θέλετε να καταδαφίσετε/διαμοÏφώσετε. Η διαμόÏφωση κοστίζει χÏήματα. Με την επιλογή μιας ενέÏγειας, το κόστος κατασκευής και κατεδάφισης εμφανίζεται στην κάτω αÏιστεÏή γωνία της οθόνης.</p> + <p style="hp">Η κατεδάφιση μεÏικών κατασκευών, όπως τα μνημεία, είναι Ï€Î¿Î»Ï Î±ÎºÏιβή. Στο κόστος κατεδάφισης υπολογίζονται όχι μόνο οι δαπάνες για τη μεταφοÏά των μπάζων, αλλά και το πολιτικό κόστος. Για παÏάδειγμα, η κατεδάφιση ενός μνημείου, Ï€Ïοκαλεί διαδηλώσεις και δικαστικοÏÏ‚ αγώνες που ασφαλώς έχουν κόστος.</p> + <p style="hp">ΠÏος το παÏόν, η διαμόÏφωση των ποταμών είναι ο μόνος Ï„Ïόπος για να δημιουÏγήσουμε δίκτυα μεταφοÏών. Σκεφτείτε την διαμοÏφωμένη πεÏιοχή και το δίκτυο μεταφοÏάς που πεÏνά από αυτήν ως μια γέφυÏα.</p> + <p style="hp">Αυτό είναι το εικονίδιο της μπουλντόζας</p> + <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="river">Ποτάμια/ÎεÏά</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/button-index.xml lincity-ng-2.9~git20150314/data/help/el/button-index.xml --- lincity-ng-2.0/data/help/el/button-index.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,120 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΕυÏετήÏιο επιλογής πλήκτÏων</p> + + <!--<p style="subtitle">ΕνέÏγεια</p>--> + <img src="images/gui/buttonpanel/power/powerlines.png"/> + <p><a href="powerline">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</a></p> + <img src="images/gui/buttonpanel/power/solarpower.png"/> + <p><a href="powerssolar">Σταθμοί ηλιακής ενέÏγειας</a></p> + <img src="images/gui/buttonpanel/power/substation.png"/> + <p><a href="substation">Υποσταθμοί</a></p> + + <!--<p style="subtitle">Κατοικίες</p>--> + <img src="images/gui/buttonpanel/residence/residence.png"/> + <p><a href="residential">Κατοικημένες πεÏιοχές</a></p> + + <!--<p style="subtitle">ΠάÏκα</p>--> + <img src="images/gui/buttonpanel/parks/farm.png"/> + <p><a href="farm">ΑγÏοκτήματα</a></p> + + <!--<p style="subtitle">Βιομηχανία</p>--> + <img src="images/gui/buttonpanel/industry/market.png"/> + <p><a href="market">ΑγοÏές</a></p> + + <!--<p style="subtitle">Βάση</p>--> + <img src="images/gui/buttonpanel/base/bulldozer.png"/> + <p><a href="bulldoze">Κατεδάφιση/ΔιαμόÏφωση</a></p> + + <!--<p style="subtitle">ΜεταφοÏές</p>--> + <img src="images/gui/buttonpanel/transport/tracks.png"/> + <p><a href="track">Απλοί δÏόμοι</a></p> + + <!--<p style="subtitle">ΟÏυχεία</p>--> + <img src="images/gui/buttonpanel/mining/coalmine.png"/> + <p><a href="coalmine">ΑνθÏακωÏυχεία</a></p> + + <!--<p style="subtitle">ΜεταφοÏές</p>--> + <img src="images/gui/buttonpanel/transport/rails2.png"/> + <p><a href="rail">ΣιδηÏόδÏομοι</a></p> + + <!--<p style="subtitle">ΕνέÏγεια</p>--> + <img src="images/gui/buttonpanel/power/coalpower.png"/> + <p><a href="powerscoal">ΑτμοηλεκτÏικοί σταθμοί</a></p> + + <!--<p style="subtitle">ΜεταφοÏές</p>--> + <img src="images/gui/buttonpanel/transport/road.png"/> + <p><a href="road">ΔÏόμοι</a></p> + + <!--<p style="subtitle">Βιομηχανία</p>--> + <img src="images/gui/buttonpanel/industry/lightindustry.png"/> + <p><a href="industryl">ΕλαφÏά βιομηχανία</a></p> + + <!--<p style="subtitle">ΔιάφοÏα</p>--> + <img src="images/gui/buttonpanel/misc/university.png"/> + <p><a href="university">Πανεπιστήμια</a></p> + + <!--<p style="subtitle">ΟÏυχεία</p>--> + <img src="images/gui/buttonpanel/mining/commune.png"/> + <p><a href="commune">Κοινότητες</a></p> + <img src="images/gui/buttonpanel/mining/oremine.png"/> + <p><a href="oremine">ΜεταλλωÏυχεία</a></p> + + <!--<p style="subtitle">ΕμπόÏιο</p>--> + <img src="images/gui/buttonpanel/transport/port.png"/> + <p><a href="export">Εισαγωγές και εξαγωγές</a></p> + + <!--<p style="subtitle">Βιομηχανία</p>--> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png"/> + <p><a href="industryh">ΒαÏιά βιομηχανία (χαλυβουÏγεία)</a></p> + + <!--<p style="subtitle">ΠάÏκα</p>--> + <img src="images/gui/buttonpanel/parks/tree.png"/> + <p><a href="park">ΠάÏκα</a></p> + + <!--<p style="subtitle">ΟÏυχεία</p>--> + <img src="images/gui/buttonpanel/mining/recycling.png"/> + <p><a href="recycle">ΚέντÏα ανακÏκλωσης</a></p> + + <!--<p style="subtitle">ΠάÏκα</p>--> + <img src="images/gui/buttonpanel/parks/water.png"/> + <p><a href="river">Ποτάμια/ÎεÏÏŒ</a></p> + + <!--<p style="subtitle">ΔιάφοÏα</p>--> + <img src="images/gui/buttonpanel/misc/health.png"/> + <p><a href="health">ΚέντÏα υγείας</a></p> + + <!--<p style="subtitle">ΜεταφοÏές</p>--> + <img src="images/gui/buttonpanel/transport/rocket.png"/> + <p><a href="rocket">ΕξέδÏες εκτόξευσης διαστημόπλοιων</a></p> + + <!--<p style="subtitle">ΕνέÏγεια</p>--> + <img src="images/gui/buttonpanel/power/windmills.png"/> + <p><a href="windmill">Ανεμόμυλοι</a></p> + + <!--<p style="subtitle">ΔιάφοÏα</p>--> + <img src="images/gui/buttonpanel/parks/monument.png"/> + <p><a href="monument">Μνημεία</a></p> + + <!--<p style="subtitle">ΔιάφοÏα</p>--> + <img src="images/gui/buttonpanel/misc/book.png"/> + <p><a href="school">Σχολεία</a></p> + + <!--<p style="subtitle">ΠάÏκα</p>--> + <img src="images/gui/buttonpanel/parks/mills.png"/> + <p><a href="mill">ÎœÏλοι</a></p> + + <!--<p style="subtitle">Βιομηχανία</p>--> + <img src="images/gui/buttonpanel/industry/pottery.png"/> + <p><a href="pottery">ΕÏγαστήÏια αγγειοπλαστικής</a></p> + + <!--<p style="subtitle">ΔιάφοÏα</p>--> + <img src="images/gui/buttonpanel/misc/fire.png"/> + <p><a href="firestation">Σταθμοί πυÏοσβεστικής</a></p> + <img src="images/gui/buttonpanel/misc/sports.png"/> + <p><a href="cricket">Γήπεδα μπάσκετ</a></p> + + <!--<p style="subtitle">ΜεταφοÏές</p>--> + <img src="images/gui/buttonpanel/transport/port.png"/> + <p><a href="port">Λιμάνια</a></p> +</Document> diff -Nru lincity-ng-2.0/data/help/el/coalmine.xml lincity-ng-2.9~git20150314/data/help/el/coalmine.xml --- lincity-ng-2.0/data/help/el/coalmine.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/coalmine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΑνθÏακωÏυχεία</p> + <p style="hp">Τα ανθÏακωÏυχεία εξοÏÏσσουν τον άνθÏακα κάτω από το έδαφος. ΠÏέπει να υπάÏχει ένα κοίτασμα άνθÏακα κοντά στο ανθÏακωÏυχείο. Για να δείτε Ï€Î¿Ï Ï…Ï€Î¬Ïχουν κοιτάσματα, μποÏείτε να κάνετε κλικ στον πλήκτÏο του άνθÏακα ακÏιβώς κάτω από τη μικÏή οθόνη.</p> + <p style="hp">Την Ï€Ïώτη φοÏά που θα χÏησιμοποιήσετε αυτό το πλήκτÏο, θα σας κοστίσει 1 εκατομμÏÏιο. Μετά από αυτό είναι δωÏεάν. Δεν χÏειάζεται να χÏησιμοποιήσετε αυτό το πλήκτÏο, αλλά Ï€Ïέπει να βÏείτε τον άνθÏακα βλέποντας και κάνοντας.</p> + <p style="hp">Τα ανθÏακωÏυχεία χÏειάζονται εÏγασία για την εξόÏυξη του άνθÏακα.</p> + + <p style="hp">Αυτό είναι ένα ανθÏακωÏυχείο</p> + <img src="images/tiles/coalmine-full.png" halign="center"/> + <p style="hp">και αυτό είναι το εικονίδιό του</p> + <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + + <p style="hp">Τα γÏαφικά δείχνουν την ποσότητα του άνθÏακα που έχει εξοÏυχθεί, αλλά δεν έχει ακόμη μεταφεÏθεί. Το παÏαπάνω ανθÏακωÏυχείο έχει το μέγιστο απόθεμα.</p> + <p style="hp">Κάνοντας κλικ σε ένα ανθÏακωÏυχείο θα δείτε, στο παÏάθυÏο του χάÏτη με τα στατιστικά, το απόθεμα του άνθÏακα και, το πιο σημαντικό, το διαθέσιμο απόθεμα άνθÏακα που μποÏεί να εξοÏυχθεί.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="powerscoal">ΑτμοηλεκτÏικός σταθμός</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="jobs">ΕÏγασία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/coal.xml lincity-ng-2.9~git20150314/data/help/el/coal.xml --- lincity-ng-2.0/data/help/el/coal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΆνθÏακας</p> + <p style="hp">Ο άνθÏακας χÏησιμοποιείται στους ατμοηλεκτÏικοÏÏ‚ σταθμοÏÏ‚ για την παÏαγωγή ηλεκτÏικής ενέÏγειας. ΧÏησιμοποιείται επίσης στην αγγειοπλαστική, στους μÏλους και στα σιδηÏουÏγεία για την παÏαγωγή αγαθών. Η βαÏιά βιομηχανία (χαλυβουÏγεία) χÏησιμοποιεί τον άνθÏακα όταν δεν έχει ηλεκτÏική ενέÏγεια.</p> + <p style="hp">Ο άνθÏακας εξοÏÏσσεται στα ανθÏακωÏυχεία μέσα από το έδαφος. ΥπάÏχει ένα πεÏιοÏισμένο απόθεμα άνθÏακα που μποÏείτε να δείτε με τη χÏήση του ανάλογου πλήκτÏου (δείτε 'ανθÏακωÏυχεία').</p> + <p style="hp">Οι κοινότητες παÏέχουν λίγο 'άνθÏακα' επίσης. Στην Ï€Ïαγματικότητα είναι ξυλοκάÏβουνο φτιαγμένο από δέντÏα. ΠαÏέχουν μόνο μικÏές ποσότητες, αÏκετές όμως για μεÏικά εÏγαστήÏια αγγειοπλαστικής και σιδηÏουÏγεία.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="coalmine">ΑνθÏακωÏυχεία</a></li> + <li><a href="powerscoal">ΑτμοηλεκτÏικός σταθμός</a></li> + <li><a href="commune">Κοινότητες</a></li> + <li><a href="pottery">ΕÏγαστήÏια αγγειοπλαστικής</a></li> + <li><a href="blacksmith">ΣιδηÏουÏγεία</a></li> + <li><a href="msb-coal">Επικάλυψη άνθÏακα</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/commune.xml lincity-ng-2.9~git20150314/data/help/el/commune.xml --- lincity-ng-2.0/data/help/el/commune.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κοινότητες</p> + <p style="hp">Οι κοινότητες είναι πεÏιοχές όπου οι εÏγάτες απανθÏακώνουν δασική ξυλεία για να παÏάγουν ξυλοκάÏβουνο(το ίδιο όπως ο άνθÏακας εδώ). ΠαÏάγουν, επίσης, μικÏές ποσότητες μεταλλεÏματος και ατσαλιοÏ.</p> + <p style="hp">Πιθανόν να χÏειάζεστε λίγες κοινότητες που θα παÏέχουν άνθÏακα και ατσάλι σε πεÏιοχές με εÏγαστήÏια αγγειοπλαστικής, σιδηÏουÏγεία και μÏλους.</p> + <p style="hp">Εάν μια κοινότητα δεν παÏάγει τίποτα για 10 χÏόνια, θα κλείσει και η πεÏιοχή θα μετατÏαπεί σε πάÏκα.</p> + <p style="hp">Οι κοινότητες μποÏοÏν να συνδεθοÏν με δίκτυα μεταφοÏών σε κάθε σημείο γÏÏω από αυτές, όχι μόνο από την είσοδό τους.</p> + + <p style="hp">Αυτή είναι μια κοινότητα</p> + <img src="images/tiles/commune1.png" halign="center"/> + <p style="hp">και αυτό είναι το εικονίδιό της</p> + <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="pottery">ΕÏγαστήÏια αγγειοπλαστικής</a></li> + <li><a href="blacksmith">ΣιδηÏουÏγεία</a></li> + <li><a href="mill">ÎœÏλοι</a></li> + <li><a href="oremine">ΜεταλλωÏυχεία</a></li> + <li><a href="steel">ΧαλυβουÏγεία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/cricket.xml lincity-ng-2.9~git20150314/data/help/el/cricket.xml --- lincity-ng-2.0/data/help/el/cricket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Γήπεδο μπάσκετ</p> + <p style="hp">Τα γήπεδα μπάσκετ Ï€ÏοσφέÏουν ευκαιÏίες άθλησης και διασκέδασης στους κατοίκους της πόλης σας. Για να λειτουÏγήσουν χÏειάζονται αγαθά και εÏγασία. Δεν χÏειάζεται να συνδεθοÏν με δίκτυα μεταφοÏών, ωστόσο, Ï€Ïέπεινα βÏίσκονται κοντά σε μια αγοÏά, η οποία θα Ï€ÏομηθεÏει αγαθά και εÏγασία. Επίσης, απαιτεί χÏήματα για να λειτουÏγήσει.</p> + <p style="hp">Όταν κατασκευάζετε ένα γήπεδο μπάσκετ, αυτό δεν λειτουÏγεί αμέσως. Συνήθως, χÏειάζεται ένα διάστημα Ï„Ïιών μηνών για να εγκατασταθοÏν τα καλάθια.</p> + <p style="hp">Για να δείτε την πεÏιοχή που καλÏπτει ένα γήπεδο μπάσκετ, κάντε κλικ στο πλήκτÏο της άθλησης κάτω από το παÏάθυÏο του χάÏτη με τα στατιστικά. Οι πεÏιοχές που καλÏπτονται, εμφανίζονται φυσιολογικά, ενώ αυτές που δεν καλÏπτονται εμφανίζονται με γκÏίζο χÏώμα.</p> + <p style="hp">Τα γήπεδα μπάσκετ αυξάνουν την επιθυμία των ανθÏώπων να κατοικοÏν στην γÏÏω πεÏιοχή.</p> + <p style="hp">Για να δείτε ότι τα γήπεδα μπάσκετ λειτουÏγοÏν, Ï€Ïέπει να πεÏάσουν μια αλληλουχία κινοÏμενων απεικονίσεων κάθε μήνα.</p> + + <p style="hp">Αυτό είναι ένα γήπεδο μπάσκετ</p> + <img src="images/tiles/cricket1.png" halign="center"/> + <p style="hp">αυτό είναι το εικονίδιό του</p> + <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> + <p style="hp">και αυτό είναι το εικονίδιο της πεÏιοχής κάλυψης.</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="market">ΑγοÏά</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> +</Document> + + diff -Nru lincity-ng-2.0/data/help/el/dialogs.xml lincity-ng-2.9~git20150314/data/help/el/dialogs.xml --- lincity-ng-2.0/data/help/el/dialogs.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/dialogs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Βοήθεια για τις καÏτέλες πληÏοφοÏιών</p> + <p>Map-Tab</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <p>Markets-Tab</p> + <li><a href="pbar">ΚαÏτέλα αποθεμάτων</a></li> + <p>$-Tab</p> + <li><a href="finance">Οικονομικά</a></li> + <li><a href="other-costs">Άλλες δαπάνες</a></li> + <li><a href="housing">Πληθυσμός</a></li> + <p>Eco-Tab</p> + <li><a href="economy">ΓÏάφημα οικονομικών</a></li> + <li><a href="sustain">ΠαÏάθυÏο εξέλιξης αειφόÏου ανάπτυξης</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/economy.xml lincity-ng-2.9~git20150314/data/help/el/economy.xml --- lincity-ng-2.0/data/help/el/economy.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,32 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΓÏάφημα οικονομίας</p> + <p style="hp">Αυτό το γÏάφημα πεÏιέχει τέσσεÏις χÏωματιστές γÏαμμές, που εμφανίζουν τους πιο σημαντικοÏÏ‚ οικονομικοÏÏ‚ δείκτες.</p> + <li> + <span color="brown">Πληθυσμός</span> (brown) + Η καφέ γÏαμμή απεικονίζει τον πληθυσμό σας. + Εμφανίζεται ως ημεÏολόγιο κλίμακας. + </li> + <li> + <span color="blue">Άστεγοι</span> (blue) + Η μπλε γÏαμμή απεικονίζει τις απαιτήσεις για + εÏÏεση κατοικίας. Το Ïψος του γÏαφήματος είναι + ανάλογο της τετÏαγωνικής Ïίζας του + 'άστεγου' πληθυσμοÏ. + </li> + <li> + <span color="yellow">ΑνεÏγία</span> (yellow) + Οι συμπαγείς κίτÏινες 'μπάÏες' δείχνουν ότι υπάÏχει + ανεÏγία. Η κλίμακα Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… γÏαφήματος + αλλάζει ανάλογα με τον πληθυσμό σας. Αυτό το γÏάφημα + είναι ένα ισχυÏÏŒ στοιχείο που ελκÏει την Ï€Ïοσοχή σας. + </li> + <li> + <span color="red">Πείνα</span> (red) + Οι συμπαγείς κόκκινες 'μπάÏες' δείχνουν ότι υπάÏχει + πείνα. Η κλίμακα Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… γÏαφήματος + αλλάζει ανάλογα με τον πληθυσμό σας. Αυτό το γÏάφημα + είναι ένα ισχυÏÏŒ στοιχείο που ελκÏει την Ï€Ïοσοχή σας. + Αυτή η μπάÏα σχεδιάζεται πάνω από την μπάÏα της ανεÏγίας. + </li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/export.xml lincity-ng-2.9~git20150314/data/help/el/export.xml --- lincity-ng-2.0/data/help/el/export.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/export.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΠεÏιοχές εισαγωγών και εξαγωγών</p> + <p style="hp">Οι εισαγωγές και οι εξαγωγές λειτουÏγοÏν με τον ίδιο Ï„Ïόπο, εκτός από το ότι για τις Ï€Ïώτες ξοδεÏετε χÏήματα, ενώ από τις δεÏτεÏες κεÏδίζετε χÏήματα. Και οι δυο απαιτοÏν την ÏπαÏξη ενός λιμανιοÏ. Γι' αυτό το λόγι, μόνο οι εξαγωγές θα αντιμετωπίζονται με.</p> + <p style="hp">Για να Ï€Ïαγματοποιήσετε εξαγωγές, θα Ï€Ïέπει το λιμάνι να είναι συνδεδεμένο με έναν δÏόμο.</p> + <p style="hp">Θα<b>Ï€Ïέπει</b> να τοποθετοÏνται στην αÏιστεÏή όχθη ποταμών που έχουν αÏκετό πλάτος.</p> + <p style="hp">Η πεÏιοχή των εξαγωγών θα πάÏει τόσα όσα έχουν δοθεί. Εάν έχετε ανάγκη να εξάγετε, αλλά θέλετε να πεÏιοÏίσετε τις ποσότητες, μποÏείτε να χÏησιμοποιήσετε μέσο μεταφοÏάς με πεÏιοÏισμένη χωÏητικότητα, ένα μεγάλο κομμάτι ή πεÏάστε το Ï€Ïοϊόν μέσα από μια αγοÏά. ΠÏέπει να πειÏαματιστείτε ώστε να Ïυθμίσετε σωστά τις μεταφοÏές.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="port">Λιμάνι</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="ore">Μετάλλευμα</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="steel">ΆνθÏακας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/farm.xml lincity-ng-2.9~git20150314/data/help/el/farm.xml --- lincity-ng-2.0/data/help/el/farm.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/farm.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΑγÏοκτήματα</p> + <p style="hp">Στα αγÏοκτήματα καλλιεÏγοÏνται και παÏάγονται Ï„Ïοφές για τους κατοίκους και παÏάγονται Ï€Ïώτες Ïλες για τους μÏλους. Οι αγÏότες μποÏοÏν να πωλοÏν Ï„Ïοφές στα καταστήματα. Η διανομή γίνεται με Ï„ÏακτέÏ, συνεπώς δεν χÏειάζονται δίκτυα μεταφοÏών. Αν όμως το επιθυμείτε μποÏεί να γίνει. ΠÏέπει όμως να επιβεβαιώσετε ότι η αγοÏά βÏίσκεται στην πεÏιοχή του αγÏοκτήματος.</p> + + <p style="hp">Αυτό είναι το αγÏόκτημα</p> + <img src="images/tiles/farm0.png" halign="center"/> + <p style="hp">κι αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> + + + <p style="hp">Τα αγÏοκτήματα απαιτοÏν εÏγασία για να παÏάγουν πεÏισσότεÏο από μια ελάχιστη ποσότητα Ï„Ïοφής. Η παÏοχή ενέÏγειας στα αγÏοκτήματα αυξάνει την ποσότητα της παÏαγόμενης Ï„Ïοφής. Η ενέÏγεια πεÏιλαμβάνει παλιοÏÏ‚ μÏλους που βοηθοÏν στην παÏαγωγή της Ï„Ïοφής, συμβάλλοντας ταυτόχÏονα στη μείωση των αποβλήτων.</p> + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏά</a></li> + <li><a href="tech-level">Τεχνολογικό επίπεδο</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="windmill">Ανεμόμυλοι</a></li> + <li><a href="food">ΤÏοφή</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/fast.xml lincity-ng-2.9~git20150314/data/help/el/fast.xml --- lincity-ng-2.0/data/help/el/fast.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/fast.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΓÏήγοÏη ταχÏτητα</p> + <img src="images/gui/speed/fast.png"/> + <p style="hp">Αυτό είναι το πλήκτÏο της γÏήγοÏης ταχÏτητας. ΠÏοκαλεί γÏήγοÏη αναπαÏαγωγή του παιχνιδιοÏ. Θα Ï€Ïέπει να λαμβάνεται μέÏιμνα όταν γίνεται χÏήση της γÏήγοÏης ταχÏτητας για τις γÏήγοÏες μηχανές: οι 'καταστάσεις' μποÏεί να αναπτυχθοÏν Ï€Î¿Î»Ï Î³ÏήγοÏα!</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="medium">Μέση</a></li> + <li><a href="slow">ΑÏγή</a></li> +</Document> + + diff -Nru lincity-ng-2.0/data/help/el/finance.xml lincity-ng-2.9~git20150314/data/help/el/finance.xml --- lincity-ng-2.0/data/help/el/finance.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/finance.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΠαÏάθυÏο οικονομικών</p> + <p style="hp">Με αÏιστεÏÏŒ κλικ σε αυτό το παÏάθυÏο θα γίνει μια πεÏιήγηση σε άλλα παÏάθυÏα για την 'παγκόσμια χÏηματοπιστωτική ισοÏÏοπία', λεπτομέÏειες που λέγονται 'άλλα έξοδα' και 'έξοδα πληθυσμοÏ'.</p> + <p style="hp">Το παÏάθυÏο της οικονομίας ενημεÏώνεται κάθε Ï€Ïώτη του έτους. Τα αÏιθμητικά στοιχεία αντιστοιχοÏν σε έσοδα ή δαπάνες του Ï€ÏοηγοÏμενου έτους.</p> + <p style="hp">Ο αÏιθμός 'ΣÏνολο" είναι η ποσότητα των χÏημάτων του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.ΥπάÏχουν Ï€Ïάγματα που δεν Ï€Ïέπει να κάνετε όταν βÏίσκεστε σε 'κόκκινο'.</p> + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="housing">ΠαÏάθυÏο πληθυσμοÏ</a></li> + <li><a href="other-costs">Άλλες δαπάνες</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/el/firestation.xml lincity-ng-2.9~git20150314/data/help/el/firestation.xml --- lincity-ng-2.0/data/help/el/firestation.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/firestation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Σταθμοί πυÏοσβεστικής</p> + <p style="hp">Οι σταθμοί πυÏοσβεστικής αποτÏέπουν την έναÏξη και επέκταση των πυÏκαγιών μέσα στην πεÏιοχή την οποία καλÏπτουν. ΑπαιτοÏν αγαθά και εÏγασία για να λειτουÏγήσουν. <b> Δεν </b> είναι απαÏαίτητο να συνδέονται με δίκτυα μεταφοÏών, αλλά Ï€Ïέπει να βÏίσκονται μέσα σε μια πεÏιοχή που διαθέτει καταστήματα, ώστε να Ï€ÏομηθεÏονται εÏγασία και αγαθά. Επίσης, απαιτοÏν χÏήματα για να λειτουÏγήσουν.</p> + <p style="hp">Όταν κατασκευάζετε έναν σταθμό πυÏοσβεστικής, δεν αÏχίζει η λειτουÏγία του. Συνήθως, απαιτείται ένα διάστημα Ï„Ïιών μηνών μέχÏι να παÏέχει πυÏοσβεστική κάλυψη.</p> + <p style="hp">Για να δείτε την πεÏιοχή που καλÏπτουν οι σταθμοί, κάντε κλικ στο πλήκτÏο κάλυψης των πυÏοσβεστικών σταθμών κάτω από τη <i>μικÏογÏαφία του χάÏτη</i>. Οι πεÏιοχές που διαθέτουν πυÏοσβεστική κάλυψη εμφανίζονται κανονικά, ενώ αυτές που δεν διαθέτουν εμφανίζονται με σκοÏÏο Ï€Ïάσινο.</p> + <p style="hp">Οι σταθμοί πυÏοσβεστικής αυξάνουν την επιθυμία των ανθÏώπων να κατοικοÏν σε πεÏιοχές που καλÏπτονται από αυτοÏÏ‚.</p> + <p style="hp">Οι σταθμοί πυÏοσβεστικής, μέσα από μια ακολουθία κινοÏμενων απεικονίσεων που γίνεται κάθε μήνα, δείχνουν ότι βÏίσκονται σε λειτουÏγία.</p> + + <p style="hp">Αυτός είναι ένας σταθμός πυÏοσβεστικής</p> + <img src="images/tiles/firestation1.png" halign="center"/> + <p style="hp">αυτό είναι το εικονίδιό του</p> + <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιο κάλυψης κάτω από τη μικÏογÏαφία του χάÏτη</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/food.xml lincity-ng-2.9~git20150314/data/help/el/food.xml --- lincity-ng-2.0/data/help/el/food.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΤÏοφή</p> + <p style="hp">Η Ï„Ïοφή παÏάγεται στα αγÏοκτήματα ή μποÏεί να εισαχθεί μέσω των λιμανιών.</p> + <p style="hp">Οι κάτοικοι του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ χÏειάζονται Ï„Ïοφή για να επιβιώσουν. Εάν τους στεÏήσετε την Ï„Ïοφή, θα φÏγουν από την πεÏιοχή και μεÏικοί μποÏεί να πεθάνουν από την πείνα.</p> + <p style="hp">Οι μÏλοι επίσης απαιτοÏν Ï„Ïοφή. ΜετατÏέπουν το βαμβάκι σε Ïουχισμό. ΜποÏεί να απαιτοÏν <i>πολλή</i> Ï„Ïοφή - Ï€Ïοσέξτε.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="farm">ΑγÏόκτημα</a></li> + <li><a href="port">Λιμάνι</a></li> + <li><a href="mill">ÎœÏλος</a></li> + <li><a href="steel">Ατσάλι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/goods.xml lincity-ng-2.9~git20150314/data/help/el/goods.xml --- lincity-ng-2.0/data/help/el/goods.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/goods.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Αγαθά</p> + <p style="hp">Τα αγαθά είναι απαÏαίτητα για τη λειτουÏγία των πεÏισσότεÏων πεÏιοχών. Οι άνθÏωποι Ï€ÏοσελκÏονται σε πεÏιοχές όπου μποÏοÏν να βÏουν αγαθά.</p> + <p style="hp">Τα αγαθά φοÏολογοÏνται, έτσι αν παÏάγονται αÏκετά από αυτά θα βελτιώσετε τα οικονομικά σας.</p> + <p style="hp">Τα αγαθά παÏάγονται από τα εÏγαστήÏια αγγειοπλαστικής, τα σιδηÏουÏγεία, τους μÏλους και την ελαφÏά βιομηχανία.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="pottery">ΕÏγαστήÏια αγγειοπλαστικής</a></li> + <li><a href="blacksmith">ΣιδηÏουÏγεία</a></li> + <li><a href="mills">ÎœÏλοι</a></li> + <li><a href="industryl">ΕλαφÏά βιομηχανία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/health.xml lincity-ng-2.9~git20150314/data/help/el/health.xml --- lincity-ng-2.0/data/help/el/health.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΚέντÏα υγείας</p> + <p style="hp">Τα κέντÏα υγείας Ï€ÏοσφέÏουν ιατÏοφαÏμακευτική κάλυψη στους κατοίκους. ΚαλÏπτουν μια πεÏιοχή τεσσέÏων τετÏαγώνων σε κάθε κατεÏθυνση.</p> + <p style="hp">Η ιατÏοφαÏμακευτική κάλυψη κάνει πεÏισσότεÏο ελκυστική μια πεÏιοχή για κατοίκηση, λιγότεÏοι άνθÏωποι πεθαίνουν από ασθένειες που σχετίζονται με τη μόλυνση και οι κάτοικοι που ζουν σε τέτοιες πεÏιοχές είναι πεÏισσότεÏο αποτελεσματικοί, ώστε να Ï€ÏοσφέÏουν εÏγασία στις γÏÏω πεÏιοχές (είναι λιγότεÏο χÏόνο άÏÏωστοι).</p> + <p style="hp">Τα κέντÏα υγείας είναι Ï€Î¿Î»Ï Î±ÎºÏιβά, κοστίζουν 60.000 τον χÏόνο. Ωστόσο, μειώνουν το κόστος από τους 'μη φυσιολογικοÏÏ‚ θανάτους' και δίνουν Ï€Ïόσθετα εισοδήματα μέσω της φοÏολογίας (εφόσον Ï€ÏοσφέÏουν θέσεις εÏγασίας).</p> + <p style="hp">Από τη στιγμή που θα κατασκευάσετε ένα κέντÏο υγείας, θα πεÏάσουν Ï„Ïεις μήνες για να αÏχίσει να λειτουÏγεί. ΑπαιτοÏν αγαθά, όχι όμως και τόση πολλή εÏγασία. Αυτά λαμβάνονται υπόψη κατά τον υπολογισμό των Ï€Ïόσθετων θέσεων εÏγασίας που δημιουÏγοÏνται από τη μείωση των ασθενειών στις γÏÏω από αυτά πεÏιοχές.</p> + <p style="hp">Τα κέντÏα υγείας δεν είναι απαÏαίτητο να συνδέονται με δίκτυα μεταφοÏών. Εάν δεν συνδέονται, είναι απαÏαίτητο να βÏίσκονται σε πεÏιοχές με καταστήματα.</p> + <p style="hp">Για να δείτε τα ÏŒÏια της ιατÏοφαÏμακευτικής κάλυψης, κάντε κλικ στο εικονίδιο με τον κόκκινο σταυÏÏŒ κάτω από τη μικÏογÏαφία του χάÏτη. Οι πεÏιοχές που εμφανίζονται κανονικά δείχνουν ότι καλÏπτονται από κέντÏα υγείας.</p> + + <p style="hp">Αυτό είναι ένα κέντÏο υγείας</p> + <img src="images/tiles/health.png" halign="center"/> + <p style="hp">αυτό είναι το εικονίδιό του</p> + <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> + <p style="hp">και αυτό είναι το εικονίδιο κάλυψης κάτω από τη μικÏογÏαφία του χάÏτη</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="residential">Κατοικίες</a></li> + <li><a href="pollution">Μόλυνση</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/help.xml lincity-ng-2.9~git20150314/data/help/el/help.xml --- lincity-ng-2.0/data/help/el/help.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/help.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Βοήθεια του LinCity</p> + <p style="hp">Αυτό είναι το σÏστημα βοήθειας του LinCity. Επιλέξτε ένα από τα θέματα που βÏίσκονται παÏακάτω κάνοντας κλικ στις μπλε λέξεις. Κάθε μπλε λέξη είναι ένας σÏνδεσμος Ï€Ïος ένα άλλο αÏχείο κειμένου. Με το βελάκι της επάνω αÏιστεÏής γωνίας μποÏείτε να επιστÏέψετε σε Ï€ÏοηγοÏμενα κείμενα βοήθειας.</p> + <p style="hp">Καθώς παίζεται, μποÏείτε να λάβετε βοήθεια για πολλά Ï€Ïάγματα χÏησιμοποιώντας το πλήκτÏο της βοήθειας, ή κάνοντας δεξί κλικ σε κάθε εικονίδιο της μπάÏας επάνω αÏιστεÏά.</p> + + <li><a href="tutorial">Διδακτικό βοήθημα</a></li> + <li><a href="keys">Εντολές πληκτÏολογίου</a></li> + <li><a href="button-index">ΕυÏετήÏιο επιλογής πλήκτÏων</a></li> + <li><a href="mini-screen">Βοήθεια για τη μικÏογÏαφία του χάÏτη</a></li> + <li><a href="dialogs">Βοήθεια για τις καÏτέλες πληÏοφοÏιών</a></li> + <li><a href="index">ΕυÏετήÏιο</a></li> + + <p style="htitle">Πώς θα κεÏδίσω;</p> + <p style="hp">ΜποÏείτε να κεÏδίσετε στο Lincity, είτε δημιουÏγώντας μια <a href="sustain">αειφόÏο ανάπτυξη </a> ή μετεγκαθιστώντας όλους τους κατοίκους του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ σε κάποιον άλλο κόσμο με <a href="rocket">διαστημόπλοια</a>.</p> +</Document> + + diff -Nru lincity-ng-2.0/data/help/el/housing.xml lincity-ng-2.9~git20150314/data/help/el/housing.xml --- lincity-ng-2.0/data/help/el/housing.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/housing.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Πληθυσμός</p> + <p style="hp">Αυτό είναι το παÏάθυÏο του πληθυσμοÏ.</p> + <p style="hp">Εμφανίζει 7 στατιστικά στοιχεία:</p> + <li>Πληθ - εμφανίζει τον πληθυσμό των κατοικημένων πεÏιοχών. Δεν συμπεÏιλαμβάνονται οι άστεγοι.</li> + <li>Στεγασμένοι - εμφανίζει τον συνολικό αÏιθμό των ανθÏώπων του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ που διαμένουν σε κατοικίες.</li> + <li>Στεγασμένοι % - εμφανίζει το ποσοστό των ανθÏώπουν που διαμένουν σε κατοικίες.</li> + <li>ΠαÏαγκουπόλεις - εμφανίζει τον αÏιθμό των παÏαγκουπόλεων του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.</li> + <li>Μη φυσ. θάν. - εμφανίζει τον αÏιθμό των ανθÏώπων που πέθαναν από πείνα ή από μόλυνση των τελευταίο μήνα.</li> + <li>ΑνεÏγ. % - εμφανίζει το ποσόστό των ανέÏγων του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.</li> + <li>Πείνα % - εμφανίζει το ποσοστό του Ï€Î»Î·Î¸Ï…ÏƒÎ¼Î¿Ï Ï€Î¿Ï… υποφέÏει από πείνα.</li> + <p style="hp">Με αÏιστεÏÏŒ κλικ στο παÏάθυÏο θα εμφανιστοÏν διαδοχικές πληÏοφοÏίες για την οικονομία, τις άλλες δαπάνες και την κατοίκηση.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="finance">ΠαÏάθυÏο οικονομίας</a></li> + <li><a href="other-costs">Άλλες δαπάνες</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/el/index.xml lincity-ng-2.9~git20150314/data/help/el/index.xml --- lincity-ng-2.0/data/help/el/index.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,78 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> +<p style="htitle">ΕυÏετήÏιο</p> +<li><a href="blacksmith">ΣιδηÏουÏγεία</a></li> +<li><a href="bulldoze">Κατεδάφιση/ΔιαμόÏφωση</a></li> +<li><a href="button-index">Επιλογή πλήκτÏου ευÏετηÏίου</a></li> +<li><a href="coal">ΆνθÏακας</a></li> +<li><a href="coalmine">ΑνθÏακωÏυχείο</a></li> +<li><a href="commune">Κοινότητες</a></li> +<li><a href="cricket">Γήπεδα μπάσκετ</a></li> +<li><a href="dialogs">Βοήθεια για τις καÏτέλες πληÏοφοÏιών</a></li> +<li><a href="economy">ΓÏάφημα οικονομίας</a></li> +<li><a href="export">ΠεÏιοχές εισαγωγών και εξαγωγών</a></li> +<li><a href="farm">ΑγÏοκτήματα</a></li> +<li><a href="fast">ΓÏήγοÏη ταχÏτητα</a></li> +<li><a href="finance">ΠαÏάθυÏο οικονομίας</a></li> +<li><a href="firestation">ΠυÏοσβεστικοί σταθμοί</a></li> +<li><a href="food">ΤÏοφή</a></li> +<li><a href="goods">Αγαθά</a></li> +<li><a href="health">ΚέντÏα υγείας</a></li> +<li><a href="help">Βοήθεια του Lincity</a></li> +<li><a href="housing">Πληθυσμός</a></li> +<li><a href="industryh">ΒαÏιά βιομηχανία (χαλυβουÏγεία)</a></li> +<li><a href="industryl">ΕλαφÏά βιομηχανία</a></li> +<li><a href="jobs">ΕÏγασία</a></li> +<li><a href="keys">Εντολές πληκτÏολογίου και ποντικιοÏ</a></li> +<li><a href="market">ΑγοÏές</a></li> +<li><a href="medium">Μέση ταχÏτητα</a></li> +<li><a href="mill">ÎœÏλοι</a></li> +<li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> +<li><a href="monument">Μνημεία</a></li> +<li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> +<li><a href="msb-cricket">Αθλητική κάλυψη</a></li> +<li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> +<li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> +<li><a href="msb-normal">Κάλυψη χÏήσης γης</a></li> +<li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> +<li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> +<li><a href="msb-starve">Κάλυψη πείνας</a></li> +<li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> +<li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +<li><a href="ore">ΜεταλλεÏματα</a></li> +<li><a href="oremine">ΜεταλλωÏυχεία</a></li> +<li><a href="other-costs">Άλλες δαπάνες</a></li> +<li><a href="park">ΠάÏκα</a></li> +<li><a href="pause">ΠλήκτÏο παÏσης</a></li> +<li><a href="pbar">ΚαÏτέλα αποθεμάτων</a></li> +<li><a href="pollution">Μόλυνση</a></li> +<li><a href="port">Λιμάνια</a></li> +<li><a href="pottery">ΕÏγαστήÏια αγγειοπλαστικής</a></li> +<li><a href="powerline">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</a></li> +<li><a href="powerscoal">ΑτμοηλεκτÏικοί σταθμοί</a></li> +<li><a href="powerssolar">Σταθμοί ηλιακής ενέÏγειας</a></li> +<li><a href="query">ΕÏγαλείο πληÏοφοÏιών</a></li> +<li><a href="rail">ΣιδηÏόδÏομοι</a></li> +<li><a href="recycle">ΚέντÏα ανακÏκλωσης</a></li> +<li><a href="residential">Κατοικημένες πεÏιοχές</a></li> +<li><a href="river">Ποτάμια/ÎεÏÏŒ</a></li> +<li><a href="road">ΔÏόμοι</a></li> +<li><a href="rocket">Βάση εκτόξευσης διαστημόπλοιων</a></li> +<li><a href="school">Σχολεία</a></li> +<li><a href="slow">ΑÏγή ταχÏτητα</a></li> +<li><a href="steel">Ατσάλι</a></li> +<li><a href="substation">Υποσταθμοί</a></li> +<li><a href="sustain">ΠαÏάθυÏο αειφόÏου ανάπτυξης</a></li> +<li><a href="tech-level">Τεχνολογικό επίπεδο</a></li> +<li><a href="tip">ΧωματεÏές</a></li> +<li><a href="track">Απλοί δÏόμοι</a></li> +<li><a href="transport">ΜεταφοÏές</a></li> +<li><a href="tutorial">Διδακτικό βοήθημα</a></li> +<li><a href="tutorial-aim">Σκοπός</a></li> +<li><a href="tutorial-overview">Επισκόπηση οθόνης</a></li> +<li><a href="tutorial-basics">ΠÏώτα βήματα</a></li> +<li><a href="tutorial-advanced">ΠÏοχωÏημένες λειτουÏγίες</a></li> +<li><a href="tutorial-scenario">ΠÏοκαθοÏισμένο σενάÏιο</a></li> +<li><a href="university">Πανεπιστήμια</a></li> +<li><a href="windmill">Ανεμόμυλοι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/industryh.xml lincity-ng-2.9~git20150314/data/help/el/industryh.xml --- lincity-ng-2.0/data/help/el/industryh.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/industryh.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΒαÏιά βιομηχανία (ΧαλυβουÏγεία)</p> + <p style="hp">Τα χαλυβουÏγεία παÏάγουν ατσάλι και απαιτοÏν μεταλλεÏματα, ενέÏγεια και εÏγασία. Η Ï€Ïομήθεια του μεταλλεÏματος γίνεται από τα συνδεδεμένα δίκτυα μεταφοÏών, με τα οποία διοχετεÏεται και το παÏαγόμενο ατσάλι. Η τοπική αγοÏά εξασφαλίζει την εÏγασία που απαιτείται. Οι μεταφοÏές συνδέονται στην επάνω αÏιστεÏή γωνία.</p> + <p style="hp">Τα χαλυβουÏγεία Ï€ÏομηθεÏονται ενέÏγεια με δÏο Ï„Ïόπους: α) από τον άνθÏακα που παίÏνουν από τα δίκτυα μεταφοÏών με τα οποία είναι συνδεδεμένα και β) από τους υποσταθμοÏÏ‚ ηλεκτÏικής ενέÏγειας, συνεπώς θα Ï€Ïέπει να υπάÏχουν ένας ή πεÏισσότεÏοι στην πεÏιοχή των χαλυβουÏγείων. (Οι ανεμόμυλοι <b>δεν</b> παÏέχουν ενέÏγεια στα χαλυβουÏγεία.)</p> + <p style="hp">Τα χαλυβουÏγεία είναι υπεÏθυνα για τη μόλυνση</p> + <p style="hp">ΜποÏείτε να δείτε πότε η βαÏιά βιομηχανία λειτουÏγεί με τον συνηθισμένο Ï„Ïόπο, κάνοντας κλικ σε ένα χαλυβουÏγείο και κατά διαστήματα θα βλέπετε τη λειτουÏγία του.</p> + + <p style="hp">Αυτό είναι ένα χαλυβουÏγείο</p> + <img src="images/tiles/industryhl1.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="pollution">Μόλυνση</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="power">ΕνέÏγεια</a></li> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="ore">Μετάλλευμα</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/industryl.xml lincity-ng-2.9~git20150314/data/help/el/industryl.xml --- lincity-ng-2.0/data/help/el/industryl.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/industryl.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΕλαφÏά βιομηχανία</p> + <p style="hp">Η ελαφÏά βιομηχανία μετατÏέπει τα μεταλλεÏματα σε αγαθά. Η μετατÏοπή είνα πιο αποτελεσματική εάν υπάÏχει διαθέσιμο ατσάλι. Η ενέÏγεια βοηθάει στην αÏξηση της παÏαγωγής ατσαλιοÏ. Οι ανεμόμυλοι <b> δεν </b> παÏέχουν ενέÏγεια σε τέτοιες πεÏιοχές.</p> + <p style="hp">Κατά κανόνα, εκτός από τα παÏαπάνω, η παÏαγωγή της ελαφÏάς βιομηχανίας εξαÏτάται κυÏίως από την ποσότητα των Ï€Ïώτων υλών, συμπεÏιλαμβανομένης της εÏγασίας και της ποσότητας των αγαθών.</p> + <p style="hp">Αυτές οι πεÏιοχές συνδέονται απευθείας στα δίκτυα μεταφοÏών για την ανταλλαγή μεταλλευμάτων, Î±Ï„ÏƒÎ±Î»Î¹Î¿Ï ÎºÎ±Î¹ αγαθών. ΧÏειάζονται κοντινές αγοÏές για να Ï€ÏομηθευτοÏν.</p> + <p style="hp">Συνδέονται με δίκτυα μεταφοÏάς <b>μόνο</b> στην επάνω αÏιστεÏή γωνία, όπως φαίνεται. Το δίκτυο θα καμπυλωθεί μετά τη σÏνδεση.</p> + + <p style="hp">Αυτή είναι η ελαφÏά βιομηχανία</p> + <img src="images/tiles/industryll1.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της</p> + <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="road">ΔÏόμοι</a></li> + <li><a href="rail">ΣιδηÏόδÏομοι</a></li> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="jobs">ΕÏγασία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/jobs.xml lincity-ng-2.9~git20150314/data/help/el/jobs.xml --- lincity-ng-2.0/data/help/el/jobs.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/jobs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΕÏγασία</p> + <p style="hp">Οι άνθÏωποι που ζοÏνε σε κατοικημένες πεÏιοχές παÏέχουν εÏγασία. Αυτό το εÏγατικό δυναμικό είναι απαÏαίτητο στις πεÏισσότεÏες πεÏιοχές, Ï€Ïοκειμένου αυτές να λειτουÏγήσουν. ΜεÏικές πεÏιοχές απαιτοÏν εÏγασία μόνον όταν βÏίσκονται υπό κατασκευή, για παÏάδειγμα τα μνημεία.</p> + <p style="hp">Η Ï€Ïομήθεια της εÏγασίας γίνεται μέσω της αγοÏάς; Ï€Ïέπει να έχετε μια αγοÏά μέσα στην πεÏιοχή την οποία θέλετε να Ï€ÏομηθεÏσετε με εÏγασία. Η αγοÏά, με τη σειÏά της, Ï€Ïέπει να Ï€Ïομηθευτεί εÏγατικό δυναμικό από κάπου. Αυτό γίνεται με δÏο Ï„Ïόπους: α) εάν υπάÏχει κατοικημένη πεÏιοχή μέσα στα ÏŒÏιά της, θα Ï€Ïομηθευτεί εÏγατικό δυναμικό ανάλογα με τον πληθυσμό και σε πόσες αγοÏές Ï€Ïέπει να διαμοιÏαστεί αυτό το δυναμικό και β) μέσω των δικτÏων μεταφοÏών. Αν μια αγοÏά, σε κάποια απόσταση, έχει πλεόνασμα εÏÎ³Î±Ï„Î¹ÎºÎ¿Ï Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï Î¸Î± το διοχετεÏσει μέσω των δικτÏων μεταφοÏών και η αγοÏά που έχει έλλειμμα, και είναι συνδεδεμένη με δίκτυα μεταφοÏών, θα πάÏει τους εÏγάτες που κυκλοφοÏοÏν κατά μήκος των απλών δÏόμων, των δÏόμων και των σιδηÏοδÏόμων.</p> + <p style="hp">Εάν μια αγοÏά καταστεί 'πλήÏης' εÏÎ³Î±Ï„Î¹ÎºÎ¿Ï Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï, θα σταματήσει να δέχεται εÏγάτες από τις κατοικημένες πεÏιοχές. Όταν συμβαίνει αυτό και δεν υπάÏχουν άλλες αγοÏές με έλλειψη εÏÎ³Î±Ï„Î¹ÎºÎ¿Ï Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï, οι άνθÏωποι παÏαμένουν άνεÏγοι.</p> + <p style="hp">Ένα κέντÏο υγείας που βÏίσκεται μέσα στα ÏŒÏια μιας κατοικημένης πεÏιοχής, θα αυξήσει την Ï€ÏοσφεÏόμενη εÏγασία που Ï€ÏοοÏίζεται για τις τοπικές αγοÏές.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="residential">Κατοικίες</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="market">ΑγοÏές</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/keys.xml lincity-ng-2.9~git20150314/data/help/el/keys.xml --- lincity-ng-2.0/data/help/el/keys.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/keys.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,38 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + + <p style="htitle">Εντολές πληκτÏολογίου και ποντικιοÏ</p> + <p style="hp">ESCAPE: αλλαγή σε εÏγαλείο πληÏοφοÏιών</p> + <p style="hp">b εναλλαγή Î¼ÎµÏ„Î±Î¾Ï Ï„Ïέχοντος εÏγαλείου και λειτουÏγίας κατεδάφισης/διαμόÏφωσης</p> + <p style="hp">h απόκÏυψη ψηλών κτιÏίων, πατήστε πάλι το h για να τα εμφανίσετε.</p> + <p style="hp">v διαδοχική εμφάνιση λειτουÏγιών κάλυψης στη μικÏογÏαφία του χάÏτη</p> + <p style="hp">KP_PLUS: μεγέθυνση</p> + <p style="hp">KP_MINUS σμίκÏυνση</p> + <p style="hp">KP_ENTER εστίαση 100%</p> + <p style="hp">KP5 τοποθέτηση της μεσαίας πεÏιοχής του χάÏτη στο κέντÏο της κÏÏιας οθόνης</p> + <p style="hp">KP9 κÏλιση κÏÏιας οθόνης βόÏεια</p> + <p style="hp">KP1 κÏλιση κÏÏιας οθόνης νότια</p> + <p style="hp">KP7 κÏλιση κÏÏιας οθόνης δυτικά</p> + <p style="hp">KP3 κÏλιση κÏÏιας οθόνης ανατολικά</p> + <p style="hp">KP2 κÏλιση κÏÏιας οθόνης νοτιοανατολικά</p> + <p style="hp">KP4 κÏλιση κÏÏιας οθόνης νοτιοδυτικά</p> + <p style="hp">KP6 κÏλιση κÏÏιας οθόνης βοÏειοανατολικά</p> + <p style="hp">KP8 κÏλιση κÏÏιας οθόνης βοÏειοδυτικά</p> + <p style="hp">ίδιο με τον κέÏσοÏα</p> + <p style="hp">χÏησιμοποιήστε το shift και τα βελάκια κατεÏθυνσης για πιο γÏήγοÏη κÏλιση</p> + <p style="hp">F12 γÏήγοÏη αποθήκευση</p> + <p style="hp">F9 γÏήγοÏη φόÏτωση</p> + + <p style="htitle">Ποντίκι</p> + <p style="hp">δεξί πλήκτÏο:</p> + <p style="hp">ΣÏÏετε την κÏÏια οθόνη με το δεξί πλήκτÏο του ποντικιοÏ.</p> + <p style="hp">δεξί κλικ στην κÏÏια οθόνη, κεντÏάÏει το τετÏαγωνίδιο που βÏίσκεται κάτω από τον κέÏσοÏα.</p> + <p style="hp">μεσαίο πλήκτÏο (Ïοδάκι):</p> + <p style="hp">μεσαίο κλικ στην κÏÏια οθόνη για να εμφανιστοÏν πληÏοφοÏίες σχετικά με την πεÏιοχή που βÏίσκεται κάτω από τον κέÏσοÏα.</p> + <p style="hp">αÏιστεÏÏŒ πλήκτÏο:</p> + <p style="hp">Κλικ στη μικÏογÏαφία του χάÏτη εμφανίζει την επιλεγμένη πεÏιοχή στην κÏÏια οθόνη.</p> + <p style="hp">Η εκτέλεση της ενέÏγειας εξαÏτάται από το επιλεγμένο εÏγαλείο. Κατεδάφιση/ΔιαμόÏφωση, εμφάνιση πληÏοφοÏιών, κατασκευή κτιÏίου.</p> + <p style="hp">Ïοδάκι ποντικιοÏ:</p> + <p style="hp">επάνω: μεγέθυνση</p> + <p style="hp">κάτω: σμίκÏυνση</p> +</Document> diff -Nru lincity-ng-2.0/data/help/el/market.xml lincity-ng-2.9~git20150314/data/help/el/market.xml --- lincity-ng-2.0/data/help/el/market.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/market.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,36 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΑγοÏές</p> + <p style="hp">Η αγοÏά είναι μια κατασκευή – κλειδί για το Lincity.</p> + <p style="hp">Ο ÏŒÏος 'αγοÏά' δεν είναι ο καταλληλότεÏος για τέτοιες πεÏιοχές. Είναι πεÏισσότεÏο κέντÏα εÏγασίας, με καταστήματα, αποθήκες εμποÏευμάτων και παζάÏια. Σε αυτά γίνονται αγοÏαπωλησίες Ï„Ïοφίμων, εÏγασίας, άνθÏακα, αγαθών, μεταλλευμάτων και Î±Ï„ÏƒÎ±Î»Î¹Î¿Ï Î³Î¹Î± τις γÏÏω πεÏιοχές και τα δίκτυα μεταφοÏών.</p> + + <p style="hp"><b>Μέσα στην πεÏιοχή </b>μιας αγοÏάς όλες οι συναλλαγές γίνονται <b>χωÏίς την ανάγκη μεταφοÏάς</b>, εκτός κι αν οÏίζεται Ïητά ότι Ï€Ïόκειται για τη διευκόλυνση κάποιου κτιÏίου. ΧÏησιμοποιήστε <a href="msb-transport">την Ï€Ïοβολή των πεÏιοχών που καλÏπτουν οι μεταφοÏές και οι αγοÏές </a> για να ελέγξετε εάν ένα κτίÏιο βÏίσκεται μέσα στην πεÏιοχή κάλυψης μιας αγοÏάς.</p> + <li>Οι κάτοικοι μποÏοÏν να Ï€ÏομηθεÏονται Ï„Ïόφιμα, αγαθά και εÏγασία από τις αγοÏές που βÏίσκονται σε κοντινές, με την πεÏιοχή που κατοικοÏν, αποστάσεις.</li> + <li>Όλες οι πεÏιοχές που απαιτοÏν εÏγατικό δυναμικό, το Ï€ÏομηθεÏονται από τις αγοÏές.</li> + <li>Τα αγÏοκτήματα μποÏοÏν να πωλοÏν τα Ï„Ïόφιμα που παÏάγουν απευθείας στις αγοÏές.</li> + <li>Οι μÏλοι, τα εÏγαστήÏια αγγειοπλαστικής και τα σιδηÏουÏγεία πωλοÏν αγαθά κατευθείαν στις κοντινές αγοÏές, ενώ από τις ίδιες αυτές αγοÏές Ï€ÏομηθεÏονται τις Ï€Ïώτες Ïλες που τους είναι απαÏαίτητες.</li> + <p style="hp">Εάν δεν υπάÏχει διαθέσιμη αγοÏά σε μια πεÏιοχή, θα Ï€Ïέπει να γίνει σÏνδεση με τα <a href="transport"> δίκτυα μεταφοÏών</a>.</p> + <p style="hp">Η δεÏτεÏη καÏτέλα της μικÏής οθόνης κάτω δεξιά εμφανίζει τα <b>συνολικά αποθέματα των αγοÏών</b> και πώς αυτά εξελίσσονται με τη μπάÏα Ï€Ïοόδου. Σε συνδυασμό με το τα μίνι εικονίδια κάτω από τη μικÏή οθόνη, θα σας βοηθήσει να έχετε μια καλή εικόνα για τους συγκεκÏιμένους πόÏους (Ï„Ïόφιμα, εÏγασία ...). </p> + + <p style="hsubtitle">Ελέγχοντας τι αγοÏάζουν και τι πωλοÏν οι αγοÏές</p> + <p style="hp">ΜποÏείτε να ελέγξετε τη λειτουÏγία μιας αγοÏάς, επιλέγοντας τι επιτÏέπεται να αγοÏάζουν και να πωλοÏν μέσω των δικτÏων μεταφοÏάς. Κάντε διπλό κλικ σε μια αγοÏά που είναι ήδη τοποθετημένη στο πεδίο και στο παÏάθυÏο που θα εμφανιστεί μποÏείτε να επιλέξετε ποια εμποÏεÏματα θα διακινεί η συγκεκÏιμένη αγοÏά. Ως Ï€Ïοεπιλογή, η αγοÏά εμποÏεÏεται τα πάντα.</p> + + <p style="hp">Αυτή είναι η αγοÏά</p> + <img src="images/tiles/market-empty.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της.</p> + <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> + <p style="hp">Αυτό σημαίνει ότι το εμπόÏιο επιτÏέπεται.</p> + <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> + <p style="hp">Αυτό σημαίνει ότι το εμπόÏιο <b>δεν </b> επιτÏέπεται.</p> + <img src="images/gui/checkbox/checkbox.png" halign="center"/> + <p style="hp">Οι αÏιθμοί Î¼ÎµÏ„Î±Î¾Ï Ï„Ï‰Î½ λέξεων Πώληση και ΑγοÏά είναι η αναφοÏά του χάÏτη γι' αυτή την αγοÏά.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="food">ΤÏόφιμα</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="steel">Ατσάλι</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/medium.xml lincity-ng-2.9~git20150314/data/help/el/medium.xml --- lincity-ng-2.0/data/help/el/medium.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/medium.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Μέση ταχÏτητα</p> + <img src="images/gui/speed/normal.png"/> + <p style="hp">Αυτό είναι το πλήκτÏο της μέσης ταχÏτητας. Σε αÏγοÏÏ‚ υπολογιστές τα πλήκτÏα ταχÏτητας ενδέχεται να μην έχουν καμία επίδÏαση.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="slow">ΑÏγή</a></li> + <li><a href="fast">ΓÏήγοÏη</a></li> +</Document> + + diff -Nru lincity-ng-2.0/data/help/el/mill.xml lincity-ng-2.9~git20150314/data/help/el/mill.xml --- lincity-ng-2.0/data/help/el/mill.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ÎœÏλοι</p> + <p style="hp">Οι μÏλοι μετατÏέπουν Ï„Ïοφή, άνθÏακα και εÏγασία σε αγαθά. ΤÏοφή?... ωÏαία, το βαμβάκι και το μαλλί σε αυτό το παιχνίδι ας τα θεωÏοÏμε 'Ï„Ïοφή'.</p> + <p style="hp">Οι μÏλοι χÏειάζονται πολλή Ï„Ïοφή, γι' αυτό Ï€Î¿Î»Ï ÎµÏκολα μποÏεί να δημιουÏγηθεί έλλειψη Ï„Ïοφίμων εάν δεν το λάβετε υπόψη. (Το Ï€Ïόβλημα είναι μικÏότεÏο όταν έχετε ανεμόμυλους, Î±Ï†Î¿Ï Î¼Ï€Î¿ÏοÏν να ενδυναμώσουν τα αγÏοκτήματα και να τα κάνουν πιο αποτελεσματικά.)</p> + <p style="hp">Οι μÏλοι δεν είναι απαÏαίτητο να συνδέονται σε δίκτυα μεταφοÏών. Εάν δεν είναι συνδεδεμένα, θα Ï€Ïέπει να βÏίσκονται στην πεÏιοχή μιας αγοÏάς με άνθÏακα, εÏγασία και Ï„Ïοφή. ΜποÏείτε να διαλέξετε πότε οι μÏλοι θα δουλεÏουν με καπνό και ατμό από το ίδιο το κτίÏιο.</p> + + <p style="hp">Αυτός είναι ένας ενεÏγός μÏλος,</p> + <img src="images/tiles/mill1.png" halign="center"/> + <p style="hp">αυτός είναι ένας ανενεÏγός μÏλος</p> + <img src="images/tiles/mill0.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="goods">Αγαθά</a></li> + <li><a href="food">ΤÏοφή</a></li> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="windmill">Ανεμόμυλοι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/mini-screen.xml lincity-ng-2.9~git20150314/data/help/el/mini-screen.xml --- lincity-ng-2.0/data/help/el/mini-screen.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/mini-screen.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΜικÏογÏαφία χάÏτη</p> + <p style="hp">Η μικÏογÏαφία του χάÏτη εμφανίζει, σε μικÏότεÏη κλίμακα, το σÏνολο της επιφάνειας του παιχνιδιοÏ. Όταν κάνετε κλικ στα μικÏά πλήκτÏα από κάτω, εμφανίζουν πληÏοφοÏίες όπως τα επίπεδα μόλυνσης σε όλη την επιφάνεια του παιχνιδιοÏ.</p> + <p style="hp">Με δεξί κλικ σε κάθε πλήκτÏο ενεÏγοποιοÏνται οι σελίδες βοήθειας για καθένα από αυτά.</p> + <p style="hp">Το τετÏάγωνο με το λευκό λεπτό πεÏίγÏαμμα εμφανίζει την πεÏιοχή που καλÏπτεται από την κÏÏια οθόνη.</p> + <p style="hp">Το μεγάλο πλήκτÏο με τους κόκκινους και μπλε κÏκλους, εμφανίζει διαδοχικές Ï€Ïοβολές των λειτουÏγιών κάλυψης της μικÏογÏαφίας του χάÏτη στην κÏÏια οθόνη.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> + + diff -Nru lincity-ng-2.0/data/help/el/monument.xml lincity-ng-2.9~git20150314/data/help/el/monument.xml --- lincity-ng-2.0/data/help/el/monument.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/monument.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Μνημεία</p> + <p style="hp">Τα μνημεία αποτελοÏν εστίες ενδιαφέÏοντος για τη διδασκαλία και την έμπνευση των εφευÏετών. Κάθε μνημείο που κατασκευάζετε, αυξάνει τον Ïυθμό ανάπτυξης της τεχνολογίας, αλλά η αποτελεσματικότητά τους μηδενίζεται, όταν το τεχνολογικό επίπεδο του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ πλησιάζει το 40%.</p> + <p style="hp">Για να κατασκευάσετε ένα μνημείο Ï€Ïέπει να παÏέχετε εÏγασία. <b>Î Î¿Î»Ï </b> εÏγασία! Για το λόγο αυτό Ï€Ïέπει να ελέγχετε την ανεÏγία. Αυτή είναι μια Ï€ÏοσωÏινή λÏση για την αντιμετώπιση της ανεÏγίας, γιατί από τη στιγμή που τα μνημεία έχουν κατασκευαστεί, δεν χÏειάζονται πλέον εÏγατικό δυναμικό.</p> + <p style="hp">ΜποÏείτε να δείτε το Ïυθμό ολοκλήÏωσης του έÏγου κάνοντας κλικ στο μνημείο και κοιτάζοντας στο παÏάθυÏο των στατιστικών. Επίσης, το γÏαφικό αλλάζει καθώς το μνημείο κατασκευάζεται. ΥπάÏχουν 6 γÏαφικά που δείχνουν τα στάδια κατασκευής από 0% μέχÏι 100%</p> + <p style="hp"><b>Συμβουλή</b>: Πώς θα σταματήσουμε την 'αφαίμαξη' του εÏÎ³Î±Ï„Î¹ÎºÎ¿Ï Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï Î±Ï€ÏŒ μια πεÏιοχή που απαιτεί η κατασκευή ενός μνημείου και την παÏάλληλη 'αφαίμαξη' από άλλες πεÏιοχές; Κατασκευάζοντας το μνημείο μακÏιά από άλλες πεÏιοχές!</p> + + <p style="hp">Αυτό είναι ένα μνημείο</p> + <img src="images/tiles/monument5.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏά</a></li> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="commune">Κοινότητα</a></li> + <li><a href="steel">Ατσάλι</a></li> + <li><a href="jobs">ΕÏγασία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-coal.xml lincity-ng-2.9~git20150314/data/help/el/msb-coal.xml --- lincity-ng-2.0/data/help/el/msb-coal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κάλυψη άνθÏακα</p> + <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> + <p style="hp">Η μικÏογÏαφία οθόνης για τον άνθÏακα εμφανίζει τα αποθέματα άνθÏακα που υπάÏχουν στο υπέδαφος γÏÏω από τον οικισμό σας. Τα κοιτάσματα άνθÏακα επισημαίνονται με λευκό χÏώμα σε μαÏÏο φόντο. ΠÏέπει να κατασκευάσετε ένα ανθÏακωÏυχείο κοντά σε ένα κοίτασμα για να κάνετε εξόÏυξη άνθÏακα.</p> + <p style="hp">Την Ï€Ïώτη φοÏά που θα ζητήσετε αυτή την πληÏοφοÏία, θα Ï€Ïέπει να αποδεχτείτε το κόστος για τις έÏευνες που θα σας κοστίσουν 1 εκατομμÏÏιο €. Μετά από αυτό, κάθε νέα πληÏοφοÏία παÏέχεται δωÏεάν.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/msb-cricket.xml lincity-ng-2.9~git20150314/data/help/el/msb-cricket.xml --- lincity-ng-2.0/data/help/el/msb-cricket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Αθλητική κάλυψη</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <p style="hp">Οι πεÏιοχές που διαθέτουν χώÏους άθλησης μέσα στα ÏŒÏιά τους, εμφανίζονται με σκοÏÏο Ï€Ïάσινο.</p> + <p style="hp">ΠεÏιοχές που βÏίσκονται έξω από τα ÏŒÏια ενός γηπέδου μπάσκετ εμφανίζονται φυσιολογικά.</p> + <p style="hp">Îα θυμάστε ότι ένα γήπεδο μπάσκετ αÏχίζει να λειτουÏγεί Ï„Ïεις μήνες μετά την κατασκευή του.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-fire.xml lincity-ng-2.9~git20150314/data/help/el/msb-fire.xml --- lincity-ng-2.0/data/help/el/msb-fire.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΠυÏοσβεστική κάλυψη</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + <p style="hp">Οι πεÏιοχές που βÏίσκονται μέσα στα ÏŒÏια ενός πυÏÎ¿ÏƒÎ²ÎµÏƒÏ„Î¹ÎºÎ¿Ï ÏƒÏ„Î±Î¸Î¼Î¿Ï, εμφανίζονται με σκοÏÏο Ï€Ïάσινο.</p> + <p style="hp">Οι πεÏιοχές που βÏίσκονται εκτός οÏίων ενός πυÏÎ¿ÏƒÎ²ÎµÏƒÏ„Î¹ÎºÎ¿Ï ÏƒÏ„Î±Î¸Î¼Î¿Ï ÎµÎ¼Ï†Î±Î½Î¯Î¶Î¿Î½Ï„Î±Î¹ φυσιολογικά.</p> + <p style="hp">Îα θυμάστε ότι ένας πυÏοσβεστικός σταθμός αÏχίζει να λειτουÏγεί Ï„Ïεις μήνες μετά την κατασκευή του.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-health.xml lincity-ng-2.9~git20150314/data/help/el/msb-health.xml --- lincity-ng-2.0/data/help/el/msb-health.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,33 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΙατÏοφαÏμακευτική κάλυψη</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + <p style="hp">Οι πεÏιοχές που βÏίσκονται μέσα στα ÏŒÏια ενός κέντÏου υγείας, εμφανίζονται με σκοÏÏο Ï€Ïάσινο χÏώμα.</p> + <p style="hp">Οι πεÏιοχές που βÏίσκονται εκτός οÏιών ενός κέντÏου υγείας, εμφανίζονται φυσιολογικά.</p> + <p style="hp">Îα θυμάστε ότι τα κέντÏα υγείας αÏχίζουν τη λειτουÏγία τους Ï„Ïεις μήνες μετά την κατασκευή τους.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> + + + +<!-- + +text -1 270 Left click on the mini screen +text -1 280 to reposition the main window. +text -1 300 Left click on the mini screen title +text -1 310 to choose a different mini screen view. +text -1 330 Toggle overlay mode by pressing 'v' +text -1 340 or middle click on the mini screen title (X only) +--> diff -Nru lincity-ng-2.0/data/help/el/msb-normal.xml lincity-ng-2.9~git20150314/data/help/el/msb-normal.xml --- lincity-ng-2.0/data/help/el/msb-normal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-normal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κάλυψη χÏήσης γης</p> + <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> + <p style="hp">Η μικÏογÏαφία για τη χÏήση της γης εμφανίζει κτίÏια, δÏόμους, νεÏÏŒ και Ï€Ïάσινες εκτάσεις μέσα στον οικισμό σας.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-pol.xml lincity-ng-2.9~git20150314/data/help/el/msb-pol.xml --- lincity-ng-2.0/data/help/el/msb-pol.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-pol.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κάλυψη μόλυνσης</p> + <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> + <p style="hp">Η μικÏογÏαφία της μόλυνσης εμφανίζει τα επίπεδα της μόλυνσης σε ολόκληÏο τον οικισμό σας.</p> + <p style="hp">Η μόλυνση γίνεται εντονότεÏη καθώς μεταβαίνετε: Ανοιχτό Ï€Ïάσινο -> ΣκοÏÏο Ï€Ïάσινο -> Πιο σκοÏÏο Ï€Ïάσινο -> ΣκοÏÏο κόκκινο -> Ανοιχτό κόκκινο -> Φωτεινό κόκκινο.</p> + <p style="hp">Οι κατοικημένες πεÏιοχές που εμφανίζονται με κόκκινο χÏώμα πλήττονται από αÏÏώστιες και είναι λιγότεÏο επιθυμητές από τους ανθÏώπους για να ζήσουν εκεί.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-power.xml lincity-ng-2.9~git20150314/data/help/el/msb-power.xml --- lincity-ng-2.0/data/help/el/msb-power.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΕνεÏγειακή κάλυψη</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + <p style="hp">ΠεÏιοχές που διαθέτουν ενέÏγεια από ανεμόμυλους εμφανίζονται με σκοÏÏο Ï€Ïάσινο.</p> + <p style="hp">Οι πεÏιοχές που βÏίσκονται μέσα στο πλέγμα της κÏÏιας ενέÏγειας εμφανίζονται με ανοιχτό Ï€Ïάσινο.</p> + <p style="hp">Οι πεÏιοχές που δεν έχουν ενέÏγεια εμφανίζονται φυσιολογικά.</p> + <p style="hp">Αυτό το πλήκτÏο χÏησιμοποιεί ενέÏγεια, γι' αυτό Ï€Ïοσπαθήστε να μην το αφήνετε ανοιχτό Ï€Î¿Î»Ï ÏŽÏα.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-starve.xml lincity-ng-2.9~git20150314/data/help/el/msb-starve.xml --- lincity-ng-2.0/data/help/el/msb-starve.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-starve.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κάλυψη πείνας</p> + <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> + <p style="hp">Η μικÏογÏαφία οθόνης για την πείνα εμφανίζει μόνο τις κατοικημένες πεÏιοχές.</p> + <p style="hp">Ανοιχτό Ï€Ïάσινο σημαίνει ότι υπάÏχει αÏκετή Ï„Ïοφή στην κατοικημένη πεÏιοχή. Πιο σκοÏÏο Ï€Ïάσινο και ανοιχτό κόκκινο δείχνουν δÏιμεία αÏξηση της πείνας σε κάθε πεÏιοχή που έχει αυτά τα χÏώματα.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-transport.xml lincity-ng-2.9~git20150314/data/help/el/msb-transport.xml --- lincity-ng-2.0/data/help/el/msb-transport.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κάλυψη μεταφοÏών</p> + <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> + <p style="hp">Η μικÏογÏαφία των μεταφοÏών εμφανίζει την ποσότητα των αγαθών στους <a href="track">απλοÏÏ‚ δÏόμους</a>, στους <a href="road">δÏόμους </a> και στους <a href="rail">σιδηÏόδÏομους</a> της πόλης.</p> + <p style="hp">Οι πεÏιοχές με αποχÏώσεις του μπλε δείχνουν τα κτίÏια που βÏίσκονται μέσα στα ÏŒÏια μιας <a href="market">αγοÏάς</a>.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> + <li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/msb-ub40.xml lincity-ng-2.9~git20150314/data/help/el/msb-ub40.xml --- lincity-ng-2.0/data/help/el/msb-ub40.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/msb-ub40.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κάλυψη ανεÏγίας</p> + <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> + <p style="hp">Η μικÏογÏαφία της ανεÏγίας εμφανίζει μόνον κατοικημένες πεÏιοχές.</p> + <p style="hp">Το ανοιχτό Ï€Ïάσινο σημαίνει ότι δεν υπάÏχει ανεÏγία σε αυτές τις πεÏιοχές. ΣκοÏÏο Ï€Ïάσινο και ανοιχτό κόκκινο δείχνουν δÏιμεία αÏξηση της ανεÏγίας σε κάθε πεÏιοχή που έχει αυτά τα χÏώματα.</p> + <p style="hp">Κάντε αÏιστεÏÏŒ κλικ στη μικÏογÏαφία του χάÏτη για να επανατοποθετήσετε την κÏÏια οθόνη. Με αÏιστεÏÏŒ κλικ στον τίτλο της μικÏογÏαφίας του χάÏτη επιλέγετε μια διαφοÏετική Ï€Ïοβολή. ΜποÏείτε να δείτε τις διαδοχικές οθόνες κάλυψης κÏατώντας πατημένο το πλήκτÏο 'v'.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="mini-screen">ΜικÏογÏαφία χάÏτη</a></li> + <li><a href="msb-coal">Κάλυψη άνθÏακα</a></li> + <li><a href="msb-cricket">Αθλητική κάλυψη</a></li> + <li><a href="msb-fire">ΠυÏοσβεστική κάλυψη</a></li> + <li><a href="msb-health">ΙατÏοφαÏμακευτική κάλυψη</a></li> + <li><a href="msb-normal">Φυσιολογική κάλυψη</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="msb-starve">Κάλυψη πείνας</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/oremine.xml lincity-ng-2.9~git20150314/data/help/el/oremine.xml --- lincity-ng-2.0/data/help/el/oremine.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/oremine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΜεταλλωÏυχεία</p> + <p style="hp">Τα μεταλλωÏυχεία Ï€ÏομηθεÏουν μεταλλεÏματα για την παÏαγωγή αγαθών και ατσαλιοÏ. ΜποÏείτε να κατασκευάσετε ένα μεταλλωÏυχείο οπουδήποτε. Το μετάλλευμα που βÏίσκεται στο υπέδαφος μιας πεÏιοχής καταναλώνεται με αÏγοÏÏ‚ ÏυθμοÏÏ‚. Δεν μποÏείτε να κατεδαφίσετε ένα μεταλλωÏυχείο και να κατασκευάσετε ένα καινοÏÏιο, ελπίζοντας ότι θα Ï€Ïομηθευτείτε πεÏισσότεÏο μετάλλευμα.</p> + <p style="hp">Όταν ένα μεταλλωÏυχείο εξαντλήσει τα αποθέματά του, μετατÏέπεται σε λιμνη. Εάν θελήσετε να αποκαταστήσετε αυτή την πεÏιοχή θα Ï€Ïέπει να διαμοÏφώσετε 16 πεÏιοχές με νεÏÏŒ!</p> + <p style="hp">Τα γÏαφικά εμφανίζουν μεταλλωÏυχεία που λειτουÏγοÏν στο μέγιστο βαθμό και Ï€Ïόκειται να εξαντλήσουν τα αποθέματα που υπάÏχουν στο υπέδαφος της πεÏιοχής.</p> + <p style="hp">Τα δίκτυα μεταφοÏών συνδέονται με τα μεταλλωÏυχεία στην κοÏυφή του τετÏαγωνιδίου που βÏίσκεται το μεταλλωÏυχείο.</p> + + <p style="hp">Αυτό είναι ένα μεταλλωÏυχείο</p> + <img src="images/tiles/oremine1.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="steel">Ατσάλι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/ore.xml lincity-ng-2.9~git20150314/data/help/el/ore.xml --- lincity-ng-2.0/data/help/el/ore.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΜεταλλεÏματα</p> + <p style="hp">Τα μεταλλεÏματα είναι μια από τις βασικές Ï€Ïώτες Ïλες του παιχνιδιοÏ. Τα μεταλλωÏυχεία και τα κέντÏα ανακÏλωσης παÏάγουν μεταλλεÏματα.</p> + <p style="hp">Τα εÏγαστήÏια αγγειοπλαστικής, η ελαφÏά και η βαÏιά βιομηχανία χÏησιμοποιοÏν μεταλλεÏματα ως Ï€Ïώτη Ïλη.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="commune">Κοινότητα</a></li> + <li><a href="oremine">ΜεταλλωÏυχείο</a></li> + <li><a href="recycle">ΚέντÏα ανακÏκλωσης</a></li> + <li><a href="pottery">ΕÏγαστήÏια αγγειοπλαστικής</a></li> + <li><a href="indistryl">ΕλαφÏά βιομηχανία</a></li> + <li><a href="indistryh">ΒαÏιά βιομηχανία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/other-costs.xml lincity-ng-2.9~git20150314/data/help/el/other-costs.xml --- lincity-ng-2.0/data/help/el/other-costs.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/other-costs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Άλλες δαπάνες</p> + <p style="hp">Αυτό είναι το παÏάθυÏο των άλλων δαπανών.</p> + <p style="hp">Εδώ βλέπετε την αποτυχία των 'άλλων δαπανών' που εμφανίζονται στο παÏάθυÏο των οικονομικών.</p> + <p style="hp">Δαπάνες για τόκους</p> + <p style="hp">Δαπάνες για σχολεία</p> + <p style="hp">Δαπάνες για μη φυσιολογικοÏÏ‚ θανάτους</p> + <p style="hp">Δαπάνες για ανεμόμυλους</p> + <p style="hp">Δαπάνες για ιατÏοφαÏμακευτική πεÏίθαλψη</p> + <p style="hp">Δαπάνες για διαστημόπλοια</p> + <p style="hp">Δαπάνες για πυÏοσβεστικοÏÏ‚ σταθμοÏÏ‚</p> + <p style="hp">Δαπάνες για χώÏους άθλησης</p> + <p style="hp">Δαπάνες για ανακÏκλωση</p> + <p style="hp">Με διαδοχικά κλικ στον τίτλο Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… παÏαθÏÏου εμφανίζονται πληÏοφοÏίες για τα οικονομικά, τις άλλες δαπάνες και την κατάσταση του Ï€Î»Î·Î¸Ï…ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/el/park.xml lincity-ng-2.9~git20150314/data/help/el/park.xml --- lincity-ng-2.0/data/help/el/park.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/park.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΠάÏκα</p> + <p style="hp">Τα πάÏκα έχουν μια Ï€Î¿Î»Ï Î±Ï€Î»Î® και εξαιÏετικά χÏήσιμη λειτουÏγία: αποÏÏοφοÏν τη μόλυνση.</p> + <p style="hp">ΑÏκετές πεÏιοχές συμβάλλουν στη μόλυνση του πεÏιβάλλοντος, όπως οι δÏόμοι, οι σιδηÏόδÏομοι, τα ανθÏακωÏυχεία, η ελαφÏά και η βαÏιά βιομηχανία. ΜεÏικές συμβάλλουν στην αÏξηση της μόλυνσης πεÏισσότεÏο από άλλες.</p> + <p style="hp">Με την κατασκευή των πάÏκων μποÏείτε να Ï€ÏοστατεÏσετε τις κατοικημένες πεÏιοχές ή να σταματήσετε τη εξάπλωση της μόλυνσης από την πεÏιοχή που παÏάγεται.</p> + <p style="hp">Ο άνεμος είναι <b>νοτιοδυτικός</b>, συνεπώς θα Ï€Ïέπει να κατασκευάσετε τα πάÏκα σας ανάλογα.</p> + + <p style="hp">Αυτό είναι ένα πάÏκο</p> + <img src="images/tiles/parkland-plane.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="pollution">Μόλυνση</a></li> + <li><a href="road">ΔÏόμοι</a></li> + <li><a href="rail">ΣιδηÏόδÏομοι</a></li> + <li><a href="coalmine">ΑνθÏακωÏυχεία</a></li> + <li><a href="industryh">ΒαÏιά βιομηχανία</a></li> + <li><a href="industryl">ΕλαφÏά βιομηχανία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/pause.xml lincity-ng-2.9~git20150314/data/help/el/pause.xml --- lincity-ng-2.0/data/help/el/pause.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/pause.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΠλήκτÏο παÏσης</p> + <p style="hp">Με αυτό το πλήκτÏο μποÏείτε να σταματήσετε Ï€ÏοσωÏινά τη λειτουÏγία του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.</p> + <p style="hp">Πατώντας ξανά αυτό το πλήκτÏο, η Ï€Ïοσομοίωση λειτουÏγίας του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ ξεκινά και πάλι.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/el/pbar.xml lincity-ng-2.9~git20150314/data/help/el/pbar.xml --- lincity-ng-2.0/data/help/el/pbar.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΚαÏτέλα αποθεμάτων</p> + <p style="hp">Αυτή είναι η δεÏτεÏη καÏτέλα της μικÏογÏαφίας του χάÏτη.</p> + <p style="hp">Εμφανίζει τα συνολικά αποθέματα που είναι αποθηκευμένα σε όλες τις αγοÏές και πώς αυτά αλλάζουν.</p> + <p style="hp">Οι αÏιθμοί εμφανίζουν τις συνολικές ποσότητες κάθε πόÏου.</p> + <p style="hp">Η Ï€Ïάσινη μπάÏα στα δεξιά δείχνει αÏξηση, ενώ η κόκκινη μπάÏα στ' αÏιστεÏά δείχνει μείωση των πόÏων. Το μέγεθος της κάθε μπάÏας δείχνει το μέγεθος της αλλαγής.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/el/pollution.xml lincity-ng-2.9~git20150314/data/help/el/pollution.xml --- lincity-ng-2.0/data/help/el/pollution.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/pollution.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Μόλυνση</p> + <p style="hp">Πολλές πεÏιοχές παÏάγουν μόλυνση. Οι παÏακάτω είναι αυτές που συμβάλλουν πεÏισσότεÏο στη μόλυνση του πεÏιβάλλοντος:</p> + <li>ΒαÏιά βιομηχανία</li> + <li>ΕλαφÏά βιομηχανία</li> + <li>ΑτμοηλεκτÏικοί σταθμοί</li> + <li>ΑνθÏακωÏυχεία</li> + <li>ΑγοÏές γεμάτες από σκουπίδια και απόβλητα</li> + <li>ΔÏόμοι και σιδηÏόδÏομοι, ειδικά όταν είναι γεμάτοι από σκουπίδια και άχÏηστα υλικά.</li> + <p style="hp">Οι άνθÏωποι δεν θέλουν να κατοικοÏν σε μολυσμένες πεÏιοχές. Είτε θα μετακινηθοÏν Î±Î»Î»Î¿Ï ÎµÎ¯Ï„Îµ θα αÏÏωστήσουν και θα πεθάνουν.</p> + <p style="hp">Οι άνεμοι που επικÏατοÏν στον οικισμό σας είναι νοτιοδυτικοί, συνεπώς η μόλυνση τείνει να μετακινείται βοÏειοανατολικά.</p> + <p style="hp">Θα Ï€Ïέπει λοιπόν να δημιουÏγήσετε τον οικισμό σας με τέτοιον Ï„Ïόπο, ώστε οι κάτοικοι να μην εκτίθενται στη μόλυνση. Αν και αυτό δεν είναι πάντα εφικτό, μποÏείτε να αναχαιτίσετε τη μόλυνση κατασκευάζοντας πάÏκα: όσο πιο πολλά πάÏκα, τόσο μεγαλÏτεÏη Ï€Ïοστασία.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="industryh">ΒαÏιά βιομηχανία</a></li> + <li><a href="industryl">ΕλαφÏά βιομηχανία</a></li> + <li><a href="powerscoal">ΑτμοηλεκτÏικοί σταθμοί</a></li> + <li><a href="coalmine">ΑνθÏακωÏυχεία</a></li> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="rail">ΣιδηÏόδÏομοι</a></li> + <li><a href="road">ΔÏόμοι</a></li> + <li><a href="park">ΠάÏκα</a></li> + <li><a href="msb-pol">Κάλυψη μόλυνσης</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/port.xml lincity-ng-2.9~git20150314/data/help/el/port.xml --- lincity-ng-2.0/data/help/el/port.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/port.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Λιμάνια</p> + <p style="hp">Τα λιμάνια επιτÏέπουν την εισαγωή και εξαγωγή αγαθών, ατσαλιοÏ, μεταλλευμάτων, άνθÏακα και Ï„Ïοφίμων. Εισαγωγές Ï€Ïοϊόντων σημαίνει ότι ξοδεÏετε χÏήματα, ενώ με τις εξαγωγές κεÏδίζετε χÏήματα.</p> + <p style="hp">Η χÏήση ενός Î»Î¹Î¼Î±Î½Î¹Î¿Ï Ï€Ïοϋποθέτει τη σÏνδεσή του με τα δίκτυα μεταφοÏάς. Με διπλό κλικ στο λιμάνι, εμφανίζεται ένα παÏάθυÏο στο οποίο μποÏείτε να επιλέξετε τι θα εισάγετε και τι θα εξάγετε.</p> + <p style="hp">Για να μποÏέσετε να κατασκευάσετε ένα λιμάνι θα <b>Ï€Ïέπει </b> να το τοποθετήσετε σε μια αÏιστεÏή ευθÏγÏαμμη όχθη ποταμοÏ.</p> + <p style="hp">Τίποτε δεν εισάγεται και δεν εξάγεται αν δεν τσεκάÏετε Ï€Ïοϊόντα στο παÏάθυÏο που εμφανίζεται με διπλό κλικ στο λιμάνι.</p> + <p style="hp">Οι ποσότητες των εξαγόμενων Ï€Ïοϊόντων μποÏοÏν να ÏυθμιστοÏν. Για παÏάδειγμα, αν θέλετε να κάνετε εξαγωγές πεÏιοÏισμένων ποσοτήτων, μποÏείτε να διαλέξετε ένα δίκτυο μεταφοÏάς με πεÏιοÏισμένες δυνατότητες ή να πεÏάσετε τα Ï€Ïοϊόντα μέσω μιας αγοÏάς. Είναι απαÏαίτητο να πειÏαματιστείτε για να καταφέÏετε να έχετε τα δίκτυα μεταφοÏών που ταιÏιάζουν στις Ï€Ïοθέσεις σας.</p> + <p style="hp">Σημείωση: Οι έμποÏοι που κάνουν μεγάλες εξαγωγές, κάνουν και εκπτώσεις.</p> + + <p style="hp">Αυτό είναι ένα λιμάνι</p> + <img src="images/tiles/ex_port.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="export">Εισαγωγές και Εξαγωγές</a></li> + <li><a href="rivers">Ποτάμια</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="steel">Ατσάλι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/pottery.xml lincity-ng-2.9~git20150314/data/help/el/pottery.xml --- lincity-ng-2.0/data/help/el/pottery.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΕÏγαστήÏια αγγειοπλαστικής</p> + <p style="hp">Τα εÏγαστήÏια αγγειοπλαστικής χÏησιμοποιοÏν μεταλλεÏματα, άνθÏακα και εÏγασία για να παÏάγουν Ï€Ïοϊόντα. Δεν είναι απαÏαίτητη η σÏνδεσή τους με δίκτυα μεταφοÏάς, αλλά, ωστόσο, θα Ï€Ïέπει να βÏίσκονται μέσα στα ÏŒÏια μιας αγοÏάς με μεταλλεÏματα, άνθÏακα και εÏγατικό δυναμικό για να μποÏοÏν να Ï€ÏομηθεÏονται τα αναγκαία.</p> + <p style="hp">Η λειτουÏγία τους γίνεται φανεÏή όταν βγαίνουν καπνοί από τα καμίνια. Εάν το καμίνι στ' αÏιστεÏά δεν βγάζει καπνό αυτό σημαίνει ότι η παÏαγωγή είναι μικÏότεÏη από το 100% των δυνατοτήτων του εÏγαστηÏίου.</p> + + <p style="hp">Αυτό είναι ένα εÏγαστήÏιο αγγειοπλαστικής</p> + <img src="images/tiles/pottery0.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="coal">ΆνθÏακας</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="market">ΑγοÏές</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/powerline.xml lincity-ng-2.9~git20150314/data/help/el/powerline.xml --- lincity-ng-2.0/data/help/el/powerline.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/powerline.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</p> + <p style="hp">Οι γÏαμμές αυτές μεταφέÏουν ενέÏγεια από ηλιακοÏÏ‚ και ατμοηλεκτÏικοÏÏ‚ σταθμοÏÏ‚ σε υποσταθμοÏÏ‚. Συνδέονται με τους σταθμοÏÏ‚ και τους υποσταθμοÏÏ‚ στην επάνω αÏιστεÏή γωνία των εικονιδίων τους.</p> + <p style="hp">Οι γÏαμμές διασχίζουν τους δÏόμους, τους σιδηÏόδÏμους και τα ποτάμια από <b>κάτω</b>. Εάν μια γÏαμμή τοποθετηθεί, είτε στην πλευÏά ενός δικτÏου μεταφοÏών είτε στην όχθη ενός ποταμοÏ, συμπεÏιφέÏεται σαν να είναι συνδεδεμένη. Συχνά θα χÏειαστεί να διαμοÏφώσετε ένα τμήμα Ï€Î¿Ï„Î±Î¼Î¿Ï Î³Î¹Î± να το διασχίσει η γÏαμμή – η διαμόÏφωση είναι Ï€Î¿Î»Ï Î±ÎºÏιβή! Η σÏνδεση των γÏαμμών απαιτεί αυτές να βÏίσκονται σε ευθεία γÏαμμή.</p> + + <p style="hp">Αυτή είναι μια γÏαμμή μεταφοÏάς ηλεκτÏικής ενέÏγειας,</p> + <img src="images/tiles/powerlvd.png" halign="center"/> + <p style="hp">αυτό είναι το εικονίδιό της</p> + <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιο κάλυψης κάτω από τη μικÏογÏαφία του χάÏτη.</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="substation">Υποσταθμός</a></li> + <li><a href="powerssolar">Σταθμός ηλιακής ενέÏγειας</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/powerscoal.xml lincity-ng-2.9~git20150314/data/help/el/powerscoal.xml --- lincity-ng-2.0/data/help/el/powerscoal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/powerscoal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΑτμοηλεκτÏικοί σταθμοί</p> + <p style="hp">Οι ατμοηλεκτÏικοί σταθμοί παÏάγουν ηλεκτÏική ενέÏγεια, την οποία διοχετεÏουν στις γÏαμμές μεταφοÏάς που είναι συνδεδεμένες μαζί τους.</p> + <p style="hp">Οι γÏαμμές συνδέονται στην επάνω αÏιστεÏή γωνία του ÏƒÏ„Î±Î¸Î¼Î¿Ï ÎºÎ±Î¹ τα δίκτυα μεταφοÏών στις επόμενες θέσεις. Δείτε ένα παÏάδειγμα:</p> + <img src="images/help/powerscoal-example.png" halign="center"/> + + <p style="hp">Το παÏαπάνω παÏάδειγμα δείχνει έναν ατμοηλεκτÏικό σταθμό με όλα τα σημεία σÏνδεσής του σε χÏήση. Στ' αÏιστεÏά υπάÏχει ένας δÏόμος και πάνω από αυτόν δÏο γÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας. Στα δεξιά του, σε άλλο σημείο σÏνδεσης μεταφοÏών, είναι συνδεδεμένος ένας σιδηÏόδÏομος. Για να κάνετε εναλλαγές οÏατότητας των ψηλών κτιÏίων, πατήστε <b>h </b>.</p> + + <p style="hp">Η αποτελεσματικότητα της μετατÏοπής της καÏσης του άνθÏακα σε ηλεκτÏική ενέÏγεια αυξάνεται σε κάθε τεχνολογικό επίπεδο – όταν ο σταθμός έχει <b>ήδη κατασκευαστεί</b>. ΜποÏείτε να κατεδαφίσετε έναν παλιό σταθμό και να τον αντικαταστήσετε με έναν καινοÏÏιο, πεÏισσότεÏο αποτελεσματικό, όταν το τεχνολογικό σας επίπεδο έχει αυξηθεί σε σημαντικό βαθμό.</p> + + <p style="hp">Αυτός είναι ένας ατμοηλεκτÏικός σταθμός</p> + <img src="images/tiles/powerscoal-empty.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="tech-level">Τεχνολογικό επίπεδο</a></li> + <li><a href="powerline">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + </Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/el/powerssolar.xml lincity-ng-2.9~git20150314/data/help/el/powerssolar.xml --- lincity-ng-2.0/data/help/el/powerssolar.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/powerssolar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Σταθμοί ηλιακής ενέÏγειας</p> + <p style="hp">Οι σταθμοί ηλιακής ενέÏγειας διοχετεÏουν την ενέÏγεια που παÏάγουν στις γÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας. Η ποσότητα της ενέÏγειας που μποÏοÏν να παÏάγουν αυξάνεται με το τεχνολογικό επίπεδο – όταν είναι <b>ήδη κατασκευασμένοι.</b>.</p> + <p style="hp">Οι ηλιακοί σταθμοί χÏειάζονται ανθÏώπινο δυναμικό για να παÏάγουν ενέÏγεια. Εάν ένας τέτοιος σταθμός δεν διαθέτει την απαÏαίτητη εÏγατική δÏναμη, θα παÏάγει λιγότεÏη ενέÏγεια και αν δεν έχει καθόλου εÏγάτες δεν θα παÏάγει ενέÏγεια.</p> + + <p style="hp">Αυτός είναι ένας σταθμός ηλιακής ενέÏγειας</p> + <img src="images/tiles/powerssolar.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="substation">Υποσταθμός</a></li> + <li><a href="powerline">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</a></li> + <li><a href="residential">Κατοικημένη πεÏιοχή</a></li> + <li><a href="tech-level">Τεχνολογικό επίπεδο</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="windmill">Ανεμόμυλοι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/query.xml lincity-ng-2.9~git20150314/data/help/el/query.xml --- lincity-ng-2.0/data/help/el/query.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/query.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΕÏγαλείο πληÏοφοÏιών</p> + <p style="hp">Για να εμφανίσετε πληÏοφοφίες για μια κατασκευή επιλέξτε αυτό το εÏγαλείο και κάντε κλικ στην κατασκευή που σας ενδιαφέÏει.</p> + <p style="hp">Οι πληÏοφοÏίες εμφανίζονται μέσα στη μικÏή οθόνη, κάτω δεξιά.</p> + <p style="hp">ΧÏησιμοποιήστε αυτό το εÏγαλείο άφοβα, Î±Ï†Î¿Ï Î´ÎµÎ½ σας κοστίζει τίποτα!</p> + <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="keys">Εντολές πληκτÏολογίου</a></li> + <li><a href="index">ΕυÏετήÏιο</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/rail.xml lincity-ng-2.9~git20150314/data/help/el/rail.xml --- lincity-ng-2.0/data/help/el/rail.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/rail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΣιδηÏόδÏομοι</p> + <p style="hp">Με τους σιδηÏόδÏομους μποÏείτε να μεταφέÏετε Ï€Î¿Î»Ï Ï€ÎµÏισσότεÏα απ' ότι με τους δÏόμους. Συμβάλλουν Ï€Î¿Î»Ï Î»Î¹Î³ÏŒÏ„ÎµÏο στη μόλυνση του πεÏιβάλλοντος απ' ότι οι δÏόμοι. Ωστόσο, η κατασκευή και η διαχείÏισή τους είναι αÏκετά ακÏιβή. Αξίζουν τα χÏήματα που δαπανήθηκαν για την κατασκευή τους, όταν έχετε να μεταφέÏετε πολλά εμποÏεÏματα σε μακÏινές αποστάσεις.</p> + + <p style="hp">Αυτός είναι ο σιδηÏόδÏομος</p> + <img src="images/tiles/railud.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="commune">Κοινότητα</a></li> + <li><a href="pollution">Μόλυνση</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/recycle.xml lincity-ng-2.9~git20150314/data/help/el/recycle.xml --- lincity-ng-2.0/data/help/el/recycle.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΚέντÏα ανακÏκλωσης</p> + <p style="hp">Το πέταγμα των χÏησιμοποιημένων αγαθών είναι σπατάλη!</p> + <p style="hp">Στα κέντÏα ανακÏκλωσης τα χÏησιμοποιημένα αγαθά, αυτά που όλοι τα θεωÏοÏμε σκουπίδια, μετατÏέπονται σε χÏήσιμα μεταλλεÏματα. Κάθε κέντÏο ανακÏκλωσης Ï€Ïέπει να είναι συνδεδεμένο σε ένα δίκτυο μεταφοÏάς στην επάνω αÏιστεÏή γωνία του εικονιδίου του. Για τη συλλογή, επεξεÏγασία των αποÏÏιμάτων και παÏαγωγή μεταλλευμάτων, τα κέντÏα ανακÏκλωσης απαιτοÏν εÏγατικό δυναμικό και χÏήματα.</p> + <p style="hp">Είναι δυνατόν να δημιουÏγήσετε μια αειφόÏο οικονομία (Ï€.χ. που δεν θα εξοÏÏσσει πλέον μεταλλεÏματα) με κέντÏα ανακÏκλωσης που αποδίδουν κάτω από το 100% της αποτελεσματικότητάς τους, εάν ταυτόχÏονα έχετε μεÏικοÏÏ‚ μÏλους για να 'αποζημιώνεστε' για τα σκουπίδια που δεν ανακυκλώνονται.</p> + + <p style="hp">Αυτό είναι ένα κέντÏο ανακÏκλωσης</p> + <img src="images/tiles/recycle-centre.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="goods">Αγαθά</a></li> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/residential.xml lincity-ng-2.9~git20150314/data/help/el/residential.xml --- lincity-ng-2.0/data/help/el/residential.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/residential.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Κατοικημένες πεÏιοχές</p> + <p style="hp">Εδώ κατοικοÏν οι άνθÏωποι του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚. Για να ενθαÏÏÏνονται οι άνθÏωποι να κατοικοÏν σε αυτές, θα Ï€Ïέπει να έχουν εξασφαλισμένη σίτιση, να τους παÏέχουν εÏγασία και αγοÏές για να Ï€ÏομηθεÏονται τα αναγκαία. Θα Ï€Ïέπει να βÏίσκονται μέσα στα ÏŒÏια μιας αγοÏάς ή να είναι συνδεδεμένες με δίκτυα μεταφοÏών. ΥπάÏχουν Ï„Ïεις διαφοÏετικοί Ï„Ïποι κατοικημένων πεÏιοχών: με χαμηλή, μεσαία και υψηλή πυκνότητα κατοίκησης. Κάθε τέτοια κατοικημένη πεÏιοχή έχει διαφοÏετικά ποσοστά γεννήσεων και θανάτων. Αυτή η ιδιότητά τους, σας δίνει τη δυνατότητα να ελέγχετε τον πληθυσμό του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.</p> + <p style="hp">ΑÏγότεÏα σε αυτό το παιχνίδι, εάν έχετε επαÏκή τεχνολογία, θα μποÏείτε να κατασκευάσετε πιο μοντέÏνες κατοικίες, ακόμη και πεÏιοχές με ψηλά κτίÏια.</p> + + <p style="hp">Αυτή είναι μια πεÏιοχή με κατοίκηση χαμηλής πυκνότητας (υψηλή τεχνολογία)</p> + <img src="images/tiles/reslowhi.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της.</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> + <p style="hp">Αυτή είναι μια πεÏιοχή με κατοίκηση μεσαίας πυκνότητας (υψηλή τεχνολογία)</p> + <img src="images/tiles/resmedhi.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της.</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> + <p style="hp">Αυτή είναι μια πεÏιοχή με κατοίκηση υψηλής πυκνότητας (υψηλή τεχνολογία)</p> + <img src="images/tiles/reshihi.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της.</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏές</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/river.xml lincity-ng-2.9~git20150314/data/help/el/river.xml --- lincity-ng-2.0/data/help/el/river.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/river.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ποτάμια/ÎεÏÏŒ</p> + <p style="hp">Τα ποτάμια είναι εδώ κυÏίως για να βÏίσκονται στο δÏόμο σας. Η κατασκευή γεφυÏιών, το σκάψιμο και η διαμόÏφωσή τους απαιτοÏν πολλά χÏήματα. Το μόνο που μποÏοÏμε να κάνουμε με τα ποτάμια είναι να συνδέσουμε τα λιμάνια στις όχθες του για να διευκολÏνουμε το εμπόÏιο του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï Î¼Î±Ï‚.</p> + <p style="hp">ΥπάÏχουν δÏο είδη επίγειων υδάτων: α) λίμνες, δηλαδή πεÏιοχές με νεÏÏŒ που <b>δεν </b> συνδέονται με ποτάμια και β) ποτάμια, που <b>μποÏοÏν </b> να συνδεθοÏν στο ευÏÏτεÏο δίκτυο των ποταμών. Ως ποτάμια οÏίζονται όλα τα επίγεια νεÏά που εμφανίζονται όταν ξεκινά το παιχνίδι. Για παÏάδειγμα, όταν ένα μεταλλωÏυχείο έχει εξαντλήσει τα αποθέματά του και μετατÏέπεται σε πεÏιοχή με νεÏÏŒ, γίνεται ένα τμήμα Ï€Î¿Ï„Î±Î¼Î¿Ï ÎµÎ¬Î½ συνδεθεί με το δίκτυο των ποταμών. ΔιαφοÏετικά θα γίνει λίμνη.</p> + <p style="hp">Όταν διαμοÏφώνετε ένα τμήμα Ï€Î¿Ï„Î±Î¼Î¿Ï Î³Î¹Î± να πεÏάσετε, για παÏάδειγμα, έναν δÏόμο, στην Ï€Ïαγματικότητα κατασκευάζετε μια γέφυÏα. Και οι δÏο πλευÏές του ÎºÎµÎ½Î¿Ï Ï€Î¿Ï… δημιουÏγείτε είναι ακόμη τμήμα του δικτÏου ποταμών. Αυτός είναι ένας λόγος που η διαμόÏφωση των επίγειων υδάτων είναι τόσο ακÏιβή.</p> + <p style="hp">Από τη στιγμή που ένα τμήμα εδάφους πεÏιέχει νεÏÏŒ που είναι τμήμα ενός δικτÏου ποταμών, <b>δεν </b> μποÏεί να μετατÏαπεί σε λίμνη. ÎεÏÏŒ που αποτελεί τμήμα δικτÏου ποταμών δηλώνεται ως <b>πλωτό</b>, αν εμφανίσουμε τις απαÏαίτητες πληÏοφοÏίες με το <a href="query">ΕÏγαλείο πληÏοφοÏιών</a>.</p> + <p style="hp">Οι γÏαμμές μεταφοÏάς ενέÏγειας, μποÏοÏν να μεταφέÏουν το φοÏτίο τους κάτω από <b>ένα</b> τμήμα του ποταμοÏ, με τον ίδιο Ï„Ïόπο που πεÏνοÏν κάτω από έναν δÏόμο ή σιδηÏόδÏομο.</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/el/road.xml lincity-ng-2.9~git20150314/data/help/el/road.xml --- lincity-ng-2.0/data/help/el/road.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΔÏόμοι</p> + <p style="hp">Με τους δÏόμους μποÏοÏμε να μεταφέÏουμε πεÏισσότεÏα Ï€Ïάγματα, απ' ότι με τους απλοÏÏ‚ δÏόμους, αλλά όχι τόσα πολλά όσα με τους σιδηÏόδÏομους. Συμβάλλουν πεÏισσότεÏο στη μόλυνση του πεÏιβάλλοντος απ' ότι οι σιδηÏόδÏομοι. Η κατασκευή και η διαχείÏισή τους είναι φθηνότεÏη από τους σιδηÏόδÏομους – είναι κι αυτός ένας λόγος για να τους Ï€Ïοτιμήσετε!</p> + + <p style="hp">Αυτός είναι ένας δÏόμος</p> + <img src="images/tiles/roadud.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="commune">Κοινότητες</a></li> + <li><a href="pollution">Μόλυνση</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/rocket.xml lincity-ng-2.9~git20150314/data/help/el/rocket.xml --- lincity-ng-2.0/data/help/el/rocket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Βάση εκτόξευσης διαστημόπλοιων</p> + <p style="hp">Τα διαστημόπλοια σας δίνουν τη δυνατότητα να μετεγκαταστήσετε τον πληθυσμό του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ σε έναν άλλο κόσμο και κάπως έτσι τελειώνει το παιχνίδι!</p> + <p style="hp">Για να ξεκινήσετε μια μετεγκατάσταση, θα Ï€Ïέπει Ï€Ïοηγουμένως να έχετε πέντε επιτυχημένες μη επανδÏωμένες εκτοξεÏσεις. Με κάθε επιτυχημένη εκτόξευση μετεγκαθίστανται 1000 άτομα.</p> + <p style="hp">Εάν κάποια εκτόξευση αποτÏχει, θα Ï€Ïέπει να κάνετε 5 μη επανδÏωμένες επιτυχημένες εκτοξεÏσεις, Ï€Ïιν να μετεγκαταστήσετε πεÏισσότεÏους ανθÏώπους.</p> + <p style="hp">Ο κυÏιότεÏος παÏάγοντας για μια επιτυχημένη εκτόξευση είναι το τεχνολογικό επίπεδο του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ κατά τον χÏόνο εκτόξευσης. Αυτό σημαίνει ότι αν το τεχνολογικό σας επίπεδο είναι, λόγου χάÏη, 80%, τότε έχετε πιθανότητες 4 στις 5 να κάνετε επιτυχημένη εκτόξευση. Αν το τεχνολογικό επίπεδο είναι 100% ή πεÏισσότεÏο, αυτό σημαίνει ότι οι εκτοξεÏσεις σας θα είναι πάντα επιτυχημένες. (Κάποια από τις <i>Ï€Ïώτες 5</i> μποÏεί ακόμα να αποτÏχουν.) ΠÏέπει να κατασκευάζετε μια νέα βάση εκτόξευσης για κάθε νέο διαστημόπλοιο..</p> + <p style="hp">Μια βάση εκτόξευσης δεν είναι απαÏαίτητο να συνδέεται με δίκτυο μεταφοÏών, γιατί έχουν τη δυνατότητα να Ï€ÏομηθεÏονται ÏŒ,τι χÏειάζονται από τις τοπικές αγοÏές. ΑπαιτοÏν μεγάλες ποσότητες ατσαλιοÏ, εÏÎ³Î±Ï„Î¹ÎºÎ¿Ï Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï ÎºÎ±Î¹ χÏημάτων για να κατασκευαστοÏν. Μόλις ένα διαστημόπλοιο είναι έτοιμο, θα εμφανιστεί μια εÏώτηση για το αν θέλετε να το εκτοξεÏσετε Ï„ÏŽÏα ή αÏγότεÏα. Αν επιλέξετε να το εκτοξεÏσετε αÏγότεÏα, αυτό μποÏεί να γίνει όποτε το θελήσετε κάνοντας κλικ στην βάση εκτόξευσης. ΜποÏείτε να έχετε όσα διαστημόπλοια θέλετε έτοιμα για εκτόξευση.</p> + <p style="hp">Όταν ένα διαστημόπλοιο έχει κατασκευαστεί, αλλά πεÏιμένει την εκτόξευση, δεν χÏησιμοποιεί πλέον ατσάλι, αγαθά και εÏγασία, αλλά συνεχίζει ακόμη να κοστίζει αÏκετά χÏήματα.</p> + <p style="hp">Αυτή είναι μια βάση εκτόξευσης διαστημόπλοιων</p> + <img src="images/tiles/rocket5.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της.</p> + <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="ore">ΜεταλλεÏματα</a></li> + <li><a href="commune">Κοινότητες</a></li> + <li><a href="steel">Ατσάλι</a></li> + <li><a href="jobs">ΕÏγασία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/school.xml lincity-ng-2.9~git20150314/data/help/el/school.xml --- lincity-ng-2.0/data/help/el/school.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/school.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Σχολεία</p> + <p style="hp">Τα σχολεία παÏέχουν τεχνολογία, όπως και τα πανεπιστήμια, αλλά απαιτοÏν Ï€Î¿Î»Ï Î»Î¹Î³ÏŒÏ„ÎµÏη εÏγασία και αγαθά από αυτά. ΠαÏέχουν όμως και λιγότεÏη τεχνολογία. Όταν σκέφτεστε να κατασκευάσετε 4 ή 5 σχολεία σε μια πεÏιοχή ή ένα μόνο πανεπιστήμιο, συχνά – αλλά όχι πάντα – είναι Ï€ÏοτιμότεÏο να κατασκευάσετε ένα πανεπιστήμιο.</p> + <p style="hp">Τα σχολεία <b>δεν </b> είναι απαÏαίτητο να συνδέονται με δίκτυα μεταφοÏών, αλλά <b>Ï€Ïέπει </b> να βÏίσκονται στην πεÏιοχή μιας αγοÏάς που θα μποÏεί να τα Ï€ÏομηθεÏει με εÏγατικό δυναμικό και αγαθά, ώστε να παÏέχουν καλÏτεÏη εκπαίδευση..</p> + <p style="hp">Η λειτουÏγία των σχολείων κοστίζει. ΜποÏείτε να δείτε το κόστος λειτουÏγίας του <b>τελευταίου </b> έτους κάνοντας κλικ στην καÏτέλα των οικονομικών στη μικÏογÏαφία του πίνακα. Η τιμή 'Σχολεία' δείχνει το κόστος λειτουÏγίας τους.</p> + <p style="hp">ΜποÏείτε να δείτε την καθημεÏινή λειτουÏγία ενός σχολείου, κάνοντας κλικ σε αυτό και ανά διαστήματα αυτό θα λειτουÏγεί.</p> + + <p style="hp">Αυτό είναι ένα σχολείο</p> + <img src="images/tiles/school0.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="university">Πανεπιστήμια</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="jobs">ΕÏγασία</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/slow.xml lincity-ng-2.9~git20150314/data/help/el/slow.xml --- lincity-ng-2.0/data/help/el/slow.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/slow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΑÏγή ταχÏτητα</p> + <img src="images/gui/speed/normal.png"/> + <p style="hp">Αυτό είναι το πλήκτÏο της αÏγής ταχÏτητας. ΕπιτÏέπει την εκτέλεση του Ï€Î±Î¹Ï‡Î½Î¹Î´Î¹Î¿Ï ÏƒÏ„Î·Î½ πιο αÏγή ταχÏτητα. Σε παλιοÏÏ‚ και αÏγοÏÏ‚ υπολογιστές, αυτό το πλήκτÏο μποÏεί να μην έχει κανένα αποτελέσμα.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="medium">Μέση ταχÏτητα</a></li> + <li><a href="fast">ΓÏήγοÏη ταχÏτητα</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/steel.xml lincity-ng-2.9~git20150314/data/help/el/steel.xml --- lincity-ng-2.0/data/help/el/steel.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ατσάλι</p> + <p style="hp">Το ατσάλι παÏάγεται στα χαλυβουÏγεία (βαÏιά βιομηχανία). Θα Ï€Ïέπει να έχετε κατακτήσει ένα επαÏκές τεχνολογικό επίπεδο για να κατασκευάσετε χαλυβουÏγεία. ΠÏιν από αυτό, οι κοινότητες είναι οι μόνοι Ï€Ïομηθευτές ατσαλιοÏ, οι οποίες όμως παÏάγουν μικÏές ποσότητες από μεταλλεÏματα, γι' αυτό χÏειέζεστε συνήθως έναν αÏιθμό κοινοτήτων, ώστε να Ï€ÏομηθεÏεστε ατσάλι για τις ανάγκες του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚.</p> + <p style="hp">Το ατσάλι χÏησιμοποιείται στα σιδηÏουÏγεία και την παÏαγωγή αγαθών και στην ελαφÏά βιομηχανία για την κατασκευή εÏγαλείων και άλλων Ï€Ïοϊόντων. Όταν η ελαφÏά βιομηχανία λειτουÏγεί χωÏίς ατσάλι, τότε η παÏαγωγή της είναι Ï€Î¿Î»Ï Ï€ÎµÏιοÏισμένη.</p> + <p style="hp">Για την κατασκευή βάσεων εκτόξευσης διαστημόπλοιων απαιτείται Ï€Î¿Î»Ï Î±Ï„ÏƒÎ¬Î»Î¹.</p> + <p style="hp">Οι σιδηÏόδÏομοι επίσης χÏησιμοποιοÏν Ï€Î¿Î»Ï Î±Ï„ÏƒÎ¬Î»Î¹ στη συντήÏησή τους.</p> + <p style="hp">Η παÏαγωγή Î±Ï„ÏƒÎ±Î»Î¹Î¿Ï Ï†Î¿Ïολογείται.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="commune">Κοινότητες</a></li> + <li><a href="blacksmith">ΣιδηÏουÏγεία</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="industryh">ΒαÏιά βιομηχανία</a></li> + <li><a href="industryl">ΕλαφÏά βιομηχανία</a></li> + <li><a href="rail">ΣιδηÏόδÏομοι</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/substation.xml lincity-ng-2.9~git20150314/data/help/el/substation.xml --- lincity-ng-2.0/data/help/el/substation.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Υποσταθμοί</p> + <p style="hp">Οι υποσταθμοί παίÏνουν ηλεκτÏική ενέÏγεια από τις γÏαμμές μεταφοÏάς και τη διανέμουν στην πεÏιοχή που τους πεÏιβάλλει. ΜποÏείτε να δείτε, για παÏάδειγμα, εάν μια κατοικημένη πεÏιοχή ηλεκτÏοδοτείται κάνοντας κλικ στην πεÏιοχή και κοιτάζοντας στους χάÏτες κάλυψης ενέÏγειας της οθόνης κάτω δεξιά.</p> + + <p style="hp">Αυτός είναι ένας υποσταθμός</p> + <img src="images/tiles/substation-G.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="powerline">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</a></li> + <li><a href="powerssolar">Σταθμοί ηλιακής ενέÏγειας</a></li> + <li><a href="commune">Κοινότητες</a></li> + <li><a href="steel">Ατσάλι</a></li> + <li><a href="jobs">ΕÏγασία</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/sustain.xml lincity-ng-2.9~git20150314/data/help/el/sustain.xml --- lincity-ng-2.0/data/help/el/sustain.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΑειφόÏος ανάπτυξη</p> + <p style="hp">Το παÏάθυÏο αυτό πεÏιέχει έξι χÏωματιστές γÏαμμές. Όταν όλες αγγίζουν τη δεξιά πλευÏά του παÏαθÏÏου, αυτό σημαίνει ότι έχετε πετÏχει αειφόÏο ανάπτυξη.</p> + <li> + <span color="orange">MIN</span> (ποÏτοκαλί) δεν εξοÏÏσσετε άλλο μετάλλευμα ή άνθÏακα και δεν πετάτε άλλο σκουπίδια στις χωματεές. + </li> + <li> + <span color="gray">PRT</span> (γκÏι) δεν κάνετε εισαγωγές και εξαγωγές. + </li> + <li> + <span color="green">MNY</span> (Ï€Ïάσινο) η ποσότητα των χÏημάτων που έχετε είναι σταθεÏή ή αυξάνεται, αυτό σημαίνει ότι δεν μποÏείτε να χτίσετε τίποτε στις φθηνές πεÏιοχές. + </li> + <li> + <span color="blue">POP</span> (μπλε) ο πληθυσμός παÏαμένει σταθεÏός στο 2% της τιμής από τότε που άÏχισαν οι μετÏήσεις Ï€Ïιν 180 χÏόνια. Εάν ο πληθυσμός σας ξεπεÏάσει αυτή τη λωÏίδα, ο νέος πληθυσμός θα είναι η νέα τιμή και το έτος μέτÏησης θα οÏιστεί στο μηδέν. Επίσης, ο πληθυσμός θα Ï€Ïέπει να είναι το λιγότεÏο 5000. + </li> + <li> + <span color="yellow">TEC</span> (κίτÏινο) το τεχνολογικό επίπεδο αυξάνεται ή μειώνεται με μικÏÏŒ Ïυθμό. Αν μειωθεί πεÏισσότεÏο από 1%, ο χÏόνος θα μηδενιστεί. Επίσης, το τεχνολογικό επίπεδο θα Ï€Ïέπει να είναι τουλάχιστον 50%. + </li> + <li> + <span color="red">FIR</span> (κόκκινο) όλες οι πεÏιοχές που μποÏοÏν να πιάσουν φωτιά διαθέτουν πυÏοσβεστική κάλυψη. Οι ακόλουθες πεÏιοχές *δεν* διαθέτουν πυÏοσβεστική κάλυψη: μνημεία, μεταλλωÏυχεία, γÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας και βάσεις εκτόξευσης διαστημόπλοιων. + </li> + <p style="hp">ΧÏόνια που απαιτοÏνται για τη δημιουÏγία αειÏόφου ανάπτυξης: MIN=180 PRT=180 MNY=60 POP=60 TEC=120 FIR=60</p> +</Document> diff -Nru lincity-ng-2.0/data/help/el/tech-level.xml lincity-ng-2.9~git20150314/data/help/el/tech-level.xml --- lincity-ng-2.0/data/help/el/tech-level.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tech-level.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Τεχνολογικό επίπεδο</p> + <p style="hp"> Το τεχνολογικό επίπεδο του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ Ï€ÏοσδιοÏίζει έναν αÏιθμό Ï€Ïαγμάτων, όπως το τι μποÏείτε να κατασκευάσετε, καθώς και την αποδοτικότητα συγκεκÏιμένων διαδικασιών.</p> + <p style="hp">Για να αυξήσετε την τεχνολογία σας, θα Ï€Ïέπει να κατασκευάσετε (και να Ï€ÏομηθεÏσετε με τα αναγκαία) μνημεία, σχολεία και πανεπιστήμια.</p> + <p style="hp">Όταν το τεχνολογικό σας επίπεδο είναι χαμηλό μποÏείτε να κατασκευάσετε μόνο μνημεία, τα οποία Î±Ï†Î¿Ï Ï…Ï€Î¬Ïξουν για λίγο, μετά μποÏείτε να κατασκευάσετε σχολεία, τα οποία παÏάγουν πεÏισσότεÏη τεχνολογία από τα μνημεία.</p> + <p style="hp">Όταν το τεχνολογικό σας επίπεδο αυξηθεί πολÏ, θα μποÏείτε ακόμη να κατασκευάσετε πανεπιστήμια, τα οποία παÏάγουν ακόμα πεÏισσότεÏη τεχνολογία, αλλά απαιτοÏν <b>πολλοÏÏ‚ </b> πόÏους.</p> + <p style="hp">Όσο πεÏισσότεÏη τεχνολογία έχετε, τόσο πιο πολλοÏÏ‚ πόÏους απαιτεί. Αυτό σημαίνει ότι όσο πιο υψηλό τεχνολογικό επίπεδο θέλετε να έχετε, τόσο πεÏισσότεÏα σχολεία και πανεπιστήμια χÏειάζεστε.</p> + <p style="hp">Επίσης, Ï€Ïέπει να γνωÏίζετε ότι εάν για κάποιο λόγο χÏειάζεται να αφαιÏέσετε ένα ή δÏο πανεπιστήμια (ή ξαφνικά αυτά έχουν έλλειψη πόÏων) το τεχνολογικό σας επίπεδο θα αÏχίσει να <b>μειώνεται</b>.</p> + <p style="hp">Το ποσοστό μιας επιτυχημένης εκτόξευσης είναι ίσο με το τεχνολογικό σας επίπεδο.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="monument">Μνημεία</a></li> + <li><a href="school">Σχολεία</a></li> + <li><a href="university">Πανεπιστήμια</a></li> + <li><a href="rocket">Βάση εκτόξευσης διαστημόπλοιων</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/tip.xml lincity-ng-2.9~git20150314/data/help/el/tip.xml --- lincity-ng-2.0/data/help/el/tip.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΧωματεÏές</p> + <p style="hp">Οι χωματεÏές Ï€ÏοσφέÏουν χώÏο απόθεσης των αποÏÏιμάτων. Εάν έχετε συγκεντÏώσει πολλά σκουπίδια στις αγοÏές, αυτές θα αναγκαστοÏν να κάψουν μεÏικά από αυτά. Αυτό δημιουÏγεί αÏκετή μόλυνση, γι' αυτό Ï€Ïέπει να είστε αÏκετά επιφυλακτικός με τη συσσώÏευση των σκουπιδιών.</p> + <p style="hp">Όταν μια χωματεÏή γεμίσει, μετατÏέπεται σε λόφο ο οποίος καλÏπτεται με Ï€Ïάσινο.</p> + <p style="hp">Τα δίκτυα μεταφοÏών συνδέονται στην επάνω αÏιστεÏή γωνία της χωματεÏής, όπως συνήθως.</p> + <p style="hp">ΜποÏείτε να δείτε την καθημεÏινή λειτουÏγία μιας χωματεÏής, κάνοντας κλικ σε αυτήν και κάθε τόσο θα βλέπετε να λειτουÏγεί.</p> + + <p style="hp">Αυτή είναι μια χωματεÏή</p> + <img src="images/tiles/tip0.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό της.</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏές</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/track.xml lincity-ng-2.9~git20150314/data/help/el/track.xml --- lincity-ng-2.0/data/help/el/track.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/track.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Απλοί δÏόμοι</p> + <p style="hp">Οι απλοί δÏόμοι είναι η απλοÏστεÏη και οικονομικότεÏη μοÏφή δικτÏου μεταφοÏών. Ωστόσο, έχουν πεÏιοÏισμένες δυνατότητες. Από την άλλη μεÏιά όμως, δεν παÏάγουν καθόλου μόλυνση.</p> + + <p style="hp">Αυτός είναι ένας απλός δÏόμος</p> + <img src="images/tiles/trackud.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="commune">Κοινότητες</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/transport.xml lincity-ng-2.9~git20150314/data/help/el/transport.xml --- lincity-ng-2.0/data/help/el/transport.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,36 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΜεταφοÏές</p> + <p style="hp">ΥπάÏχουν Ï„Ïεις μοÏφές μεταφοÏών στο LinCity: απλοί δÏόμοι, δÏόμοι και σιδηÏόδÏομοι.</p> + <p style="hp">ΥπάÏχει και ένας τέταÏτος Ï„Ïόπος: χοÏοπηδώντας για να φτάσουμε στην κοντινότεÏη αγοÏά. Αυτή είναι μια μοÏφή μεταφοÏάς για Ï€Î¿Î»Ï Î¼Î¹ÎºÏές αποστάσεις και δεν θα αναφεÏθεί ξανά στις μεταφοÏές. Ωστόσο, είναι Ï€Î¿Î»Ï ÏƒÎ·Î¼Î±Î½Ï„Î¹ÎºÏŒ, γι' αυτό ξαναδιαβάστε τη βοήθεια για τις <a href="market"> ΑγοÏές</a>.</p> + + <p style="hp">Οι απλοί δÏόμοι, οι δÏόμοι και οι σιδηÏόδÏομοι χÏησιμοποιοÏνται για τη μεταφοÏά Ï„Ïοφίμων, εÏÎ³Î±Ï„Î¹ÎºÎ¿Ï Î´Ï…Î½Î±Î¼Î¹ÎºÎ¿Ï, αγαθών, άνθÏακα, μεταλλευμάτων, Î±Ï„ÏƒÎ±Î»Î¹Î¿Ï ÎºÎ±Î¹ σκουπιδιών Î¼ÎµÏ„Î±Î¾Ï Ï„Ï‰Î½ πεÏιοχών. Οι μεταφοÏές Î¼ÎµÏ„Î±Î¾Ï Î±Î³Î¿Ïών, οι μεταφοÏές σε κτίÏια που βÏίσκονται έξω από την εμβέλεια μιας αγοÏάς (αυτό είναι γενικώς μια κακή ιδέα) και οι μεταφοÏές σε κτίÏια που Ïητά τις χÏειάζονται:</p> + <li>Οι κοινότητες Ï€Ïέπει απαÏαίτητα να βÏίσκονται δίπλα σε δίκτυο μεταφοÏών</li> + <li>ΕλαφÏές βιομηχανίες, μεταλλωÏυχεία, χωματεÏές, λιμάνια, ανθÏακωÏυχεία, βαÏιές βιομηχανίες και κέντÏα ανακÏκλωσης <b> είναι απαÏαίτητο </b>να συνδέονται με δίκτυα μεταφοÏών στην επάνω αÏιστεÏή γωνία. Όταν δείτε το δίκτυο μεταφοÏάς να στÏίβει, αυτό σημαίνει ότι έχει επιτευχθεί η σÏνδεση.</li> + <li>ΕξαίÏεση σε αυτόν τον κανόνα είναι οι ατμοηλεκτÏιοί σταθμό, οι οποίοι στην επάνω αÏιστεÏή γωνία συνδέονται με τις γÏαμμές μεταφοÏάς ενέÏγειας, συνεπώς τα δίκτυα μεταφοÏών σε αυτοÏÏ‚ συνδέονται σε ακÏιβώς δίπλα.</li> + + <p style="hp">Η σÏνδεση Î¼ÎµÏ„Î±Î¾Ï Î¼Î¹Î±Ï‚ βαÏιάς βιομηχανίας και ενός ανθÏακωÏυχείου γίνεται με έναν δÏόμο, ενώ η σÏνδεσή της μεταλλωÏυχεία και αγοÏές γίνεται μέσω σιδηÏοδÏόμων.</p> + + <p style="hp">Για να διασχίσετε ένα ποτάμι, απλά διαμοÏφώστε το τμήμα του Ï€Î¿Ï„Î±Î¼Î¿Ï Ï€Î¿Ï… θέλετε και κατασκευάστε έναν δÏόμο, έναν απλό δÏόμο ή έναν σιδηÏόδÏομο διαμέσου του ÎºÎµÎ½Î¿Ï Ï€Î¿Ï… δημιουÏγείται. Σκεφτείτε αυτή την ενέÏγεια σαν την κατασκευή μιας γέφυÏας. Η διαμόÏφωση της κοίτης των ποταμών κοστίζει αÏκετά χÏήματα.</p> + + <p style="hp">Οι δÏόμοι και οι σιδηÏόδÏομοι κοστίζουν αÏκετά κάθε χÏόνο για τη συντήÏησή τους και συμβάλλουν στη μόλυνση του πεÏιβάλλοντος, ιδιαίτεÏα όταν μεταφέÏονται μεγάλες ποσότητες σκουπιδιών.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="track">Απλοί δÏόμοι</a></li> + <li><a href="road">ΔÏόμοι</a></li> + <li><a href="rail">ΣιδηÏόδÏομοι</a></li> + + <li><a href="commune">Κοινότητες</a></li> + <li><a href="coalmine">ΑνθÏακωÏυχεία</a></li> + <li><a href="powercoal">ΑτμοηλεκτÏικοί σταθμοί</a></li> + <li><a href="tip">ΧωματεÏές</a></li> + <li><a href="recycle">ΚέντÏα ανακÏκλωσης</a></li> + <li><a href="oremine">ΜεταλλωÏυχεία</a></li> + <li><a href="industryl">ΕλαφÏά βιομηχανία</a></li> + <li><a href="industryh">ΒαÏιά βιομηχανία</a></li> + <li><a href="port">Λιμάνια</a></li> + + <li><a href="finance">ΠαÏάθυÏο οικονομικών</a></li> + <li><a href="msb-transport">Κάλυψη μεταφοÏών και αγοÏών</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/el/tutorial-advanced.xml lincity-ng-2.9~git20150314/data/help/el/tutorial-advanced.xml --- lincity-ng-2.0/data/help/el/tutorial-advanced.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tutorial-advanced.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">ΠÏοχωÏημένες λειτουÏγίες </p> + <p style="hsubtitle">ΑγοÏές και ΜεταφοÏές </p> + <p style="hp">Με διπλό κλικ σε μια αγοÏά στην κÏÏια οθόνη ανοίγει ένα παÏάθυÏο, που σας δίνει τη δυνατότητα να ελέγχετε τις <b> ανταλλαγές Î¼ÎµÏ„Î±Î¾Ï Î±Î³Î¿Ïών και δικτÏων μεταφοÏών:</b>. </p> + <li>αγοÏά είναι ότι Ï€ÏομηθεÏονται οι αγοÏές από τα δίκτυα μεταφοÏών (έτσι αυξάνονται τα αποθέματά τους) </li> + <li>πώληση είναι το αντίθετο. </li> + + <p style="hp">Αυτή η λειτουÏγία χÏησιμοποιείται σπάνια, εκτός και αν επιθυμείτε να αποτÏέψετε κάποιο συμβάν. </p> + + <p style="hsubtitle">ΑειφόÏος ανάπτυξη</p> + <p style="hp">Η τέταÏτη καÏτέλα της μικÏογÏαφίας του χάÏτη εμφανίζει τις μπάÏες Ï€Ïοόδου της αειφόÏου ανάπτυξης. </p> + <p style="hp">ΠÏοτείνεται να αποθηκεÏσετε τοπαιχνίδι Ï€Ïιν εκτελέσετε την τέταÏτη καÏτέλα για αÏκετό διάστημα και παÏατηÏήστε εάν έχετε Ï€Ïοσεγγίσει το επίπεδο αειÏόφου ανάπτυξης. Εάν κάτι δεν πάει καθόλου καλά (για παÏάδειγμα η Ï„Ïοφοδοσία με Ï„Ïόφιμα) μποÏείτε να ξεκινήσετε πάλι το παιχνίδι που αποθηκεÏσατε:-) </p> + <p style="hp">Η παÏατήÏηση των συνολικών αποθεμάτων που διαθέτουν οι αγοÏές (η δεÏτεÏη καÏτέλα της μικÏογÏαφίας του χάÏτη με τις μπάÏες Ï€Ïοόδου) μποÏεί να Ï€Ïολάβει μεγάλα Ï€Ïοβλήματα. Ο πεÏιοδικός έλεγχος της αειφόÏου ανάπτυξης στην καÏτέλα ECO είναι αÏκετός. </p> + + <li>Συμβουλή: ΠÏοσέξτε τις παÏάγκες και τα σκουπίδια στις αγοÏές... </li> + <p style="hp"></p> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/tutorial-aim.xml lincity-ng-2.9~git20150314/data/help/el/tutorial-aim.xml --- lincity-ng-2.0/data/help/el/tutorial-aim.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tutorial-aim.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Πώς θα κεÏδίσω;</p> +<p style="hp">ΥπάÏχουν δÏο Ï„Ïόποι για να 'κεÏδίσετε' το παιχνίδι:</p> +<li>Η επιτυχία <a href="sustain">αειφόÏου ανάπτυξης </a> (μποÏείτε ακόμα να συνεχίζετε το παιχνίδι) </li> +<li>Μετεγκατάσταση όλου του Ï€Î»Î·Î¸Ï…ÏƒÎ¼Î¿Ï Î¼Îµ <a href="rocket">διαστημόπλοια </a> σε έναν άλλο πλανήτη. Μετά το παιχνίδι σταματάει. </li> +<p style="hp"></p> + +<p style="hp">Στην έκδοση 1.1.0 υπάÏχει ένας μόνο Ï„Ïόπος να χάσεις:</p> +<li>Τα μεγάλα ποσοστά θνησιμότητας που οφείλονται είτε στην πείνα είτε στην μόλυνση. (ΞέÏετε ότι χÏειάζεστε το λιγότεÏο 2 ανθÏώπους για να δημιουÏγήσετε πληθυσμό;-) </li> +<p style="hp"></p> + +<p style="hp">Θα Ï€Ïέπει να αυξήσετε το τεχνολογικό σας επίπεδο για να κατασκευάσετε νέα κτίÏια και βιομηχανίες. ΔιαχειÏιστείτε με σÏνεση την αÏξηση του Ï€Î»Î·Î¸Ï…ÏƒÎ¼Î¿Ï ÎºÎ±Î¹ Ï€Ïοσέξτε τα πολλά είδη αναγκών και την οικονομική ισοÏÏοπία. </p> +<p style="hp"></p> + +<p style="hp">Δείτε επίσης:</p> +<li><a href="tutorial-basics">ΠÏώτα βήματα</a></li> +<li><a href="tutorial-advanced">ΠÏοχωÏημένες λειτουÏγίες</a></li> +<li><a href="tutorial-scenario">ΠÏοκαθοÏισμένο σενάÏιο</a></li> + +</Document> + diff -Nru lincity-ng-2.0/data/help/el/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/el/tutorial-basics.xml --- lincity-ng-2.0/data/help/el/tutorial-basics.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">ΠÏώτα βήματα </p> +<p style="hp">Îα θυμάστε ότι το παιχνίδι <b>δεν </b> διαθέτει δυνατότητες αναίÏεσης μιας ενέÏγειας. Αν θέλετε να απαλλαγείτε από μια κατασκευή, θα Ï€Ïέπει να την κατεδαφίσετε, Ï€Ïάγμα που κοστίζει χÏήματα. Γι' αυτό σκεφτείτε Ï€Ïιν κάνετε το επόμενο βήμα. </p> +<p style="hp">Επιλέξτε 'Îέο παιχνίδι' > 'τυχαίος οικισμός'. Οι άλλες διαθέσιμες επιλογές είναι για πεÏισσότεÏο ή λιγότεÏο έμπειÏους παίχτες. </p> +<p style="hp">Σημειώστε ότι ο τυχαίος οικισμός πεÏιέχει βασικοÏÏ‚ πόÏους: </p> +<li>αγÏοκτήματα για την Ï„Ïοφοδοσία των αγοÏών με Ï„Ïόφιμα </li> +<li>κοινότητες που παÏάγουν ξυλοκάÏβουνο και μικÏές ποσότητες μεταλλεÏματος και Î±Ï„ÏƒÎ±Î»Î¹Î¿Ï </li> +<li>κατοικημένες πεÏιοχές</li> +<li>εÏγαστήÏια αγγειοπλαστικής</li> +<li>απλοÏÏ‚ δÏόμους</li> + +<p style="hp">Κάνοντας κλικ σε μια κατασκευή (στην κÏÏια οθόνη) εμφανίζονται σχετικές με αυτήν πληÏοφοÏίες στο παÏάθυÏο πληÏοφοÏιών κάτω δεξιά.</p> + +<p style="hsubtitle">ΑγοÏές </p> +<p style="hp">Οι αγοÏές είναι κατασκευές με κεντÏικό Ïόλο στο LinCity. Η κατασκευή τους είναι υποχÏεωτική σχεδόν για το σÏνολο των τοπικών εμποÏικών συναλλαγών. <b> ΠÏέπει </b> να διαβάσετε τη σχετική βοήθεια για τις <a href="market">ΑγοÏές </a>. <i>Βέβαια, όταν μια αγοÏά είναι άδεια δεν μποÏεί να πουλήσει και όταν είναι πλήÏης δεν μποÏεί να αγοÏάσει άλλες Ï€Ïομήθειες. Αυτό ίσως σας βοηθήσει να καταλάβετε γιατί κάποια κτίÏια δεν λειτουÏγοÏν (πιθανόν γιατί δεν μποÏοÏν να βÏουν αυτά που χÏειάζονται, ή δεν μποÏοÏν να πουλήσουν την παÏαγωγή τους).</i> </p> + +<p style="hsubtitle">ΜεταφοÏές </p> +<p style="hp"><a href="transport">Οι μεταφοÏές </a> είναι απαÏαίτητες για τις ανταλλαγές μακÏινών αποστάσεων και για κάποιες συγκεκÏιμένες δÏαστηÏιότητες (θα τις βÏείτε στα αντίστοιχα μηνÏματα βοήθειας, για παÏάδειγμα των κοινοτήτων). Όπως και οι αγοÏές, έχουν πεÏιοÏισμένες ικανότητες και είναι δυνατόν να κοÏεστοÏν.</p> + +<p style="hp">Εάν ένα 'κανονικό' κτίÏιο δεν βÏίσκεται μέσα στα ÏŒÏια μιας αγοÏάς, τότε Ï€Ïέπει να συνδεθεί με δίκτυο μεταφοÏών. Θυμηθείτε όμως ότι οι δÏόμοι και οι σιδηÏόδÏομοι έχουν ετήσιο κόστος συντήÏησης, οπότε αν δεν θέλετε Ï€Ïαγματικά να απομονώσετε ένα κτίÏιο (Ï€.χ. ένα μνημείο) είναι, σε γενικές γÏαμμές, καλÏτεÏο (και φθηνότεÏο) να χÏησιμοποιείτε αγοÏές όταν χÏειάζεαι. </p> + +<p style="hp">Στον αÏχικό οικισμό χÏειάζονται απλοί δÏόμοι μόνο για την παÏαγωγή των κοινοτήτων. Άλλες δÏαστηÏιότητες απαιτοÏν αποκλειστικά την ÏπαÏξη αγοÏών. </p> + +<p style="hsubtitle">ΧÏήματα </p> +<p style="hp">Η παÏαγωγή φοÏολογείται, συνεπώς κεÏδίζετε χÏήματα. Στην μικÏή οθόνη κάτω δεξιά, η Ï„Ïίτη καÏτέλα είναι το <a href="finance"> ΠαÏάθυÏο οικονομικών</a>. ΠÏοσέξτε να μην ελέγχετε πολλά Ï€Ïάγματα μαζί σε ελάχιστο χÏόνο: όταν το ισοζÏγιό σας είναι αÏνητικό, δεν μποÏείτε να κατασκευάσετε κάποια Ï€Ïάγματα και έχετε ετήσιο κόστος λόγω του χÏέους. Αυτή η κατάσταση μποÏεί να οδηγήσει σε πτώχευση. Δείτε πεÏισσότεÏα στο <a href="tutorial-scenario"> ΠÏοκαθοÏισμένο σενάÏιο</a>. </p> + +<p style="hsubtitle">Ανάπτυξη του οικισμοÏ</p> +<p style="hp">Θυμηθείτε ότι οι άνθÏωποι Ï„Ïέφονται ή πεθαίνουν. Για να ελέγξετε την αÏξηση του πληθυσμοÏ, θα Ï€Ïέπει να πετÏχετε μια ισοÏÏοπία για το είδος των <a href="residential"> Κατοικημένων πεÏιοχών </a> που κατασκευάσατε (καθεμιά έχει διαφοÏετικοÏÏ‚ ÏυθμοÏÏ‚ γεννήσεων και θανάτων). Ο νέος πληθυσμός ασφαλώς παÏέχει πεÏισσότεÏο εÏγατικό δυναμικό, χÏειάζεται όμως πεÏισσότεÏη Ï„Ïοφή, αγαθά και εÏγασία... </p> +<p style="hp">Θα Ï€Ïέπει να αυξήσετε την παÏαγωγή σας, Ï€Ïοσθέτοντας, για παÏάδειγμα, εÏγαστήÏια αγγειοπλαστικής και σιδηÏουÏγεία και ταυτόχÏονα Ï€Ïοσέξτε αν έχουν ικανοποιητικό Ïυθμό ÎµÏ†Î¿Î´Î¹Î±ÏƒÎ¼Î¿Ï Î¼Îµ Ï€Ïομήθειες. Επίσης, υπάÏχει ανάγκη Ï€Ïοσθήκης ανάλογων κοινοτήτων. </p> +<p style="hp">Για να κατασκευάσετε νέα κτίÏια, θα Ï€Ïέπει να αυξήσετε το <a href="tech-level"> Τεχνολογικό επίπεδο </a>.</p> +<p style="hp"> Σε κάποιο σημείο θα Ï€Ïέπει να επιλέξετε μεταξÏ: <a href="sustain"> ΑειφόÏου ανάπτυξης </a> ή μετεγκατάστασης του Ï€Î»Î·Î¸Ï…ÏƒÎ¼Î¿Ï Î¼Îµ <a href="rocket"> Διαστημόπλοια </a>.</p> + +<p style="hp">Î Î¿Î»Ï ÏƒÏ…Ï‡Î½Î¬ θα Ï€Ïέπει να ελέγχετε τα <a href="pbar"> Συνολικά αποθέματα των αγοÏών</a>. Επίσης, οι καÏτέλες πληÏοφοÏιών σας δίνουν μια καλÏτεÏη εικόνα των οικονομικών σας και για μια πιο ακÏιβή έÏευνα θυμηθείτε ότι κάνοντας κλικ σε μια κατασκευή στην κÏÏια οθόνη, εμφανίζονται πληÏοφοÏίες γι' αυτήν στο παÏάθυÏο κάτω δεξιά. </p> + +<li>Συμβουλή: Όταν κάνετε μία ή πεÏισσότεÏες αλλαγές πεÏιμένετε για λίγο (διαβάστε τα αÏχεία βοήθειας ;-) ή Ï„Ïέξτε το παιχνίδι με μεγαλÏτεÏη ταχÏτητα και παÏατηÏήστε πώς αλλάζουν οι οικονομικοί σας δείκτες. </li> +<p style="hp"></p> +<p style="hp"><b>ΑπολαÏστε παιχνίδι!</b></p> +<p style="hp"></p> + +<p style="hp">Δείτε επίσης:</p> +<li><a href="tutorial-advanced">ΠÏοχωÏημένες λειτουÏγίες</a></li> +<li><a href="tutorial-scenario">ΠÏοκαθοÏισμένο σενάÏιο</a></li> +<li><a href="msb-starve">Κάλυψη πείνας</a></li> +<li><a href="msb-ub40">Κάλυψη ανεÏγίας</a></li> + + +</Document> + diff -Nru lincity-ng-2.0/data/help/el/tutorial-overview.xml lincity-ng-2.9~git20150314/data/help/el/tutorial-overview.xml --- lincity-ng-2.0/data/help/el/tutorial-overview.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tutorial-overview.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Επισκόπηση οθόνης </p> + +<p style="hp"><b>Πάνω αÏιστεÏά </b> υπάÏχει η μπάÏα με τα εÏγαλεία (εÏγαλείο πληÏοφοÏιών και κατεδάφισης/διαμόÏφωσης), καθώς και όλα τα είδη των κτιÏίων και των κατασκευών που θα χÏειαστείτε κατά τη διάÏκεια του παιχνιδιοÏ. </p> +<li>Με αÏιστεÏÏŒ κλικ ανοίγει το 'συÏτάÏι' για να δείτε πεÏισσότεÏες κατασκευές. </li> +<li>Με δεξί κλικ σε ένα εικονίδιο βλέπετε το αÏχείο βοήθειας που σχετίζεται με αυτό. </li> +<li>Αφήστε για λίγο τον δείκτη του Ï€Î¿Î½Ï„Î¹ÎºÎ¹Î¿Ï Ï€Î¬Î½Ï‰ σε ένα εικονίδιο για να δείτε ένα αναδυόμενο παÏάθυÏο με ένα σÏντομο βοηθητικό μήνυμα. </li> +<p style="hp"></p> + +<p style="hp"><b>Κάτω αÏιστεÏά </b> είναι τα πλήκτÏα για την αναπαÏαγωγή και τον έλεγχο της ταχÏτητας του παιχνιδιοÏ, καθώς και για την επιστÏοφή στην αÏχική οθόνη. </p> +<p style="hp"></p> + +<p style="hp"><b>Κάτω δεξιά </b> βÏίσκονται όλα τα εÏγαλεία πληÏοφοÏιών: μικÏογÏαφία της οθόνης με 4 καÏτέλες και στο κάτω μέÏος της μικÏής οθόνης τα εικονίδια που σας δίνουν μια ποικιλία πληÏοφοÏιών. Κάντε κλικ για να δείτε τι συμβαίνει. </p> +<p style="hp"></p> + +<p style="hp">Δοκιμάστε το πληκτÏολόγιο και το ποντίκι (αÏιστεÏÏŒ, μεσαίο, δεξί κλικ και κÏλιση της Ïόδας του ποντικιοÏ...), πατήστε F1 για Βοήθεια. </p> + +<p style="hp">Δείτε επίσης:</p> +<li><a href="tutorial-basics">ΠÏώτα βήματα</a></li> +<li><a href="tutorial-advanced">ΠÏοχωÏημένες λειτουÏγίες</a></li> +<li><a href="tutorial-scenario">ΠÏοκαθοÏισμένο σενάÏιο</a></li> + +</Document> + diff -Nru lincity-ng-2.0/data/help/el/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/el/tutorial-scenario.xml --- lincity-ng-2.0/data/help/el/tutorial-scenario.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">ΠÏοκαθοÏισμένο σενάÏιο </p> +<p style="hp">Επιλογή 'Îέο παιχνίδι' </p> + +<p style="hsubtitle"> ΕÏκολο</p> +<li>Καλή εποχή </li> + +<li>ΠαÏαλία (θυμηθείτε ότι οι άνθÏωποι χÏειάζονται φαγητό, αλλιώς... πεθαίνουν) </li> + +<p style="hsubtitle">ΔÏσκολο </p> +<li>Άσχημη εποχή: Ï€Ïοσπαθήστε να αποφÏγετε την πτώχευση. Απαιτείται Ï€Ïοσεκτική ανάλυση των αναγκών του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÎºÎ±Î¹ δÏαστικά μέτÏα για την πεÏικοπή των δαπανών και την εξασφάλιση εισοδημάτων. Είναι δÏσκολο -κι όμως εφικτό- να ανατÏέψετε την άσχημη κατάσταση και να δημιουÏγήσετε αειφόÏο ανάπτυξη, κεÏδίζοντας έτσι το παιχνίδι. </li> +<p style="hp"></p> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/tutorial.xml lincity-ng-2.9~git20150314/data/help/el/tutorial.xml --- lincity-ng-2.0/data/help/el/tutorial.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/tutorial.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> + <p style="htitle">Διδακτικό βοήθημα</p> + + <li><a href="tutorial-aim">Σκοπός του παιχνιδιοÏ</a></li> + <li><a href="tutorial-overview">Επισκόπηση οθόνης</a></li> + <li><a href="tutorial-basics">ΠÏώτα βήματα</a></li> + <li><a href="tutorial-advanced">ΠÏοχωÏημένες λειτουÏγίες</a></li> + <li><a href="tutorial-scenario">ΠÏοκαθοÏισμένο σενάÏιο</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/el/university.xml lincity-ng-2.9~git20150314/data/help/el/university.xml --- lincity-ng-2.0/data/help/el/university.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Πανεπιστήμια</p> + <p style="hp">Τα πανεπιστήμια συμβάλλουν στην αÏξηση του Ï„ÎµÏ‡Î½Î¿Î»Î¿Î³Î¹ÎºÎ¿Ï ÎµÏ€Î¹Ï€Î­Î´Î¿Ï…. Κατά τη λειτουÏγία τους απαιτοÏν αγαθά και εÏγατικό δυναμικό. Με δοσμένη ποσότητα Ï€Ïομηθειών, παÏάγουν πεÏισσότεÏο από τα σχολεία. Ωστόσο, καταναλώνουν μεγάλες ποσότητες αγαθών και εÏγασίας και, επίσης, η λειτουÏγία τους κοστίζει πολλά χÏήματα, γι' αυτό θα Ï€Ïέπει να διαθέτετε τις απαÏαίτητες οικονομικές και βιομηχανικές δομές για να εξασφαλίζετε τους πόÏους που απαιτοÏνται.</p> + <p style="hp">θα χÏειαστείτε έναν αÏιθμό πανεπιστημίων για να πετÏχετε ένα τεχνολογικό επίπεδο κοντά στο 100%</p> + <p style="hp">Τα πανεπιστήμια δεν είναι απαÏαίτητο να συνδέονται στα δίκτυα μεταφοÏών, γιατί Ï€ÏομηθεÏονται όλα όσα χÏειάζονται από τις αγοÏές που βÏίσκονται κοντά τους, από τα αγαθά και το εÏγατικό δυναμικό που αυτές έχουν διαθέσιμο.</p> + + <p style="hsubtitle">ΣΗΜΕΙΩΣΗ</p> + <p style="hp">Για κάθε πανεπιστήμιο θα <b>Ï€Ïέπει </b> να έχετε 5 σχολεία για να τα Ï€ÏομηθεÏετε με φοιτητές.</p> + + <p style="hp">Αυτό είναι ένα πανεπιστήμιο</p> + <img src="images/tiles/university.png" halign="center"/> + <p style="hp">και αυτό το εικονίδιό του.</p> + <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="market">ΑγοÏές</a></li> + <li><a href="transport">ΜεταφοÏές</a></li> + <li><a href="goods">Αγαθά</a></li> + <li><a href="jobs">ΕÏγασία</a></li> + <li><a href="schools">Σχολεία</a></li> + <li><a href="tech-level">Τεχνολογικό επίπεδο</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/el/windmill.xml lincity-ng-2.9~git20150314/data/help/el/windmill.xml --- lincity-ng-2.0/data/help/el/windmill.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/el/windmill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,27 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ανεμόμυλοι</p> + <p style="hp">Οι ανεμόμυλοι παÏέχουν ενέÏγεια σε κατοικίες και αγÏοκτήματα. ΕπιτÏέπουν στους αγÏότες να παÏάγουν Ï„Ïοφή πιο αποτελεσματικά και κάνουν τις κατοικίες πιο επιθυμητές από τους ανθÏώπους.</p> + <p style="hp">ΠαÏέχοντας ενέÏγεια στις κατοικίες, κάνουν τους κατοίκους τους να καταναλώνουν πεÏισσότεÏα αγαθά.</p> + <p style="hp">Οι ανεμόμυλοι χαμηλής τεχνολογίας <b>δεν</b> παÏέχουν ενέÏγεια στις βιομηχανίες. (Η βαÏιά βιομηχανία Ï€ÏομηθεÏεται ενέÏγεια από τον άνθÏακα, η ελαφÏά βιομηχανία χÏειάζεται <i>αληθινή </i> ηλεκτÏική ενέÏγεια, ενώ δουλεÏουν και χωÏίς ενέÏγεια παÏάγοντας όμως μικÏότεÏο αποτέλεσμα.) Οι ανεμόμυλοι δεν παÏέχουν απευθείας ενέÏγεια στις βιομηχανίες και τα κέντÏα ανακÏκλωσης.</p> + <p style="hp">Οι ανεμόμυλοι επίσης απαιτοÏν ανθÏώπινο δυναμικό για να παÏάγουν ενέÏγεια. Εάν ένας ανεμόμυλος δεν έχει τα απαÏαίτητα εÏγατικά χέÏια, θα παÏάγει λιγότεÏη ενέÏγεια, ενώ δεν θα παÏάγει καθόλου ενέÏγεια σε πεÏίπτωση που δεν διαθέτει καθόλου εÏγάτες.</p> + + <p style="hp">ΥπάÏχουν δÏο μοÏφές ανεμόμυλων.</p> + <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> + <p style="hp">Ο Ï€Ïώτος, χαμηλής τεχνολογίας 'ξÏλινος' ανεμόμυλος.</p> + <img src="images/tiles/windmill1w.png" halign="center"/> + <p style="hp">Ο δεÏτεÏος, 'μοντέÏνος' ανεμόμυλος των αιολικών πάÏκων.</p> + <img src="images/tiles/windmill1g.png" halign="center"/> + <p style="hp">Η μοÏφή του ανεμόμυλου που θα κατασκευάσετε εξαÏτάται από το τεχνολογικό επίπεδο που διαθέτετε κατά τον χÏόνο της κατασκευής του.</p> + <p style="hp">Οι ανεμόμυλοι υψηλής τεχνολογίας μποÏοÏν να Ï„Ïοφοδοτήσουν τις γÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας.</p> + + <p style="hsubtitle">Δείτε επίσης:</p> + <li><a href="substation">Υποσταθμοί</a></li> + <li><a href="powerline">ΓÏαμμές μεταφοÏάς ηλεκτÏικής ενέÏγειας</a></li> + <li><a href="residential">Κατοικημένες πεÏιοχές</a></li> + <li><a href="tech-level">Τεχνολογικό επίπεδο</a></li> + <li><a href="msb-power">ΕνεÏγειακή κάλυψη</a></li> + <li><a href="powerssolar">Σταθμοί ηλιακής ενέÏγειας</a></li> + + +</Document> diff -Nru lincity-ng-2.0/data/help/en/blacksmith.xml lincity-ng-2.9~git20150314/data/help/en/blacksmith.xml --- lincity-ng-2.0/data/help/en/blacksmith.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,4 +1,5 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Blacksmiths</p> <p style="hp">Blacksmiths turn steel and coal into goods. You will use them mostly early on in the game. They also use jobs, of course.</p> @@ -6,15 +7,16 @@ <p style="hp">Blacksmiths do not have to be connected to transport. They can get all they need from markets that are within range.</p> <p style="hp">You can see when a blacksmith is working in the usual way, by clicking on it, and every so often the animation will come to life.</p> - <p style="hp">This is a blacksmith</p> - <img src="images/tiles/blacksmith0.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">This is a blacksmith</p> + <img src="images/tiles/blacksmith0.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="market">Market</a></li> <li><a href="ore">Ore</a></li> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Forests</a></li> <li><a href="steel">Steel</a></li> <li><a href="jobs">Jobs</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/bulldoze.xml lincity-ng-2.9~git20150314/data/help/en/bulldoze.xml --- lincity-ng-2.0/data/help/en/bulldoze.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/bulldoze.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Bulldoze</p> <p style="hp">To demolish an area you select the bulldoze button then click on the area you wish to get rid of. Demolition costs money. When you build an area, the cost to build it and demolish it are shown at the botton left of the screen.</p> <p style="hp">Some things, such as monuments, are very expensive to demolish. The cost of demolition takes acount not only of the physical cost of disposal, but also the political cost. For example, to demolish a monument, you will have protesters and court costs as well.</p> - <p style="hp">This is the bulldozer icon</p> - <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> - <p style="hsubtitle">See also:</p> - <li><a href="transport">Transport</a></li> - <li><a href="river">Rivers</a></li> -</Document> + <p style="hp">If you hold down the ctrl-key while bulldozing you can bulldoze a larger area.</p> + + <p style="hp">This is the bulldozer icon</p> + <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> + <p style="hsubtitle">See also:</p> + <li><a href="evacuate">Evacuate</a></li> + <li><a href="transport">Transport</a></li> + <li><a href="river">Rivers/Water</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/button-index.xml lincity-ng-2.9~git20150314/data/help/en/button-index.xml --- lincity-ng-2.0/data/help/en/button-index.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,124 +1,71 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Select button index</p> - - <!--<p style="subtitle">Power</p>--> - <img src="images/gui/buttonpanel/power/powerlines.png"/> - <p><a href="powerline">Power lines</a></p> - <img src="images/gui/buttonpanel/power/solarpower.png"/> - <p><a href="powerssolar">Solar Power station</a></p> - <img src="images/gui/buttonpanel/power/substation.png"/> - <p><a href="substation">Substation</a></p> - - <!--<p style="subtitle">Residences</p>--> - <img src="images/gui/buttonpanel/residence/residence.png"/> - <p><a href="residential">Residential area</a></p> - - <!--<p style="subtitle">Water well</p>--> - <img src="images/gui/buttonpanel/waterwell.png"/> - <p><a href="waterwell">Water well</a></p> - - <!--<p style="subtitle">Parks</p>--> - <img src="images/gui/buttonpanel/parks/farm.png"/> - <p><a href="farm">Farm</a></p> - - <!--<p style="subtitle">Industry</p>--> - <img src="images/gui/buttonpanel/industry/market.png"/> - <p><a href="market">Market</a></p> - - <!--<p style="subtitle">Base</p>--> - <img src="images/gui/buttonpanel/base/bulldozer.png"/> - <p><a href="bulldoze">Bulldoze</a></p> - - <!--<p style="subtitle">Transport</p>--> - <img src="images/gui/buttonpanel/transport/tracks.png"/> - <p><a href="track">Track</a></p> - - <!--<p style="subtitle">Mining</p>--> - <img src="images/gui/buttonpanel/mining/coalmine.png"/> - <p><a href="coalmine">Coalmine</a></p> - - <!--<p style="subtitle">Transport</p>--> - <img src="images/gui/buttonpanel/transport/rails2.png"/> - <p><a href="rail">Railway</a></p> - - <!--<p style="subtitle">Power</p>--> - <img src="images/gui/buttonpanel/power/coalpower.png"/> - <p><a href="powerscoal">Coal fired power station</a></p> - - <!--<p style="subtitle">Transport</p>--> - <img src="images/gui/buttonpanel/transport/road.png"/> - <p><a href="road">Road</a></p> - - <!--<p style="subtitle">Industry</p>--> - <img src="images/gui/buttonpanel/industry/lightindustry.png"/> - <p><a href="industryl">Light industrial areas</a></p> - - <!--<p style="subtitle">Misc</p>--> - <img src="images/gui/buttonpanel/misc/university.png"/> - <p><a href="university">University</a></p> - - <!--<p style="subtitle">Mining</p>--> - <img src="images/gui/buttonpanel/mining/commune.png"/> - <p><a href="commune">Commune</a></p> - <img src="images/gui/buttonpanel/mining/oremine.png"/> - <p><a href="oremine">Ore mine</a></p> - - <!--<p style="subtitle">Trading</p>--> - <img src="images/gui/buttonpanel/transport/port.png"/> - <p><a href="export">Import and Export</a></p> - - <!--<p style="subtitle">Industry</p>--> - <img src="images/gui/buttonpanel/industry/heavyindustry2.png"/> - <p><a href="industryh">Heavy industry (steel works)</a></p> - - <!--<p style="subtitle">Parks</p>--> - <img src="images/gui/buttonpanel/parks/tree.png"/> - <p><a href="park">Parkland</a></p> - - <!--<p style="subtitle">Mining</p>--> - <img src="images/gui/buttonpanel/mining/recycling.png"/> - <p><a href="recycle">Recycle centre</a></p> - - <!--<p style="subtitle">Parks</p>--> - <img src="images/gui/buttonpanel/parks/water.png"/> - <p><a href="river">Water/Rivers</a></p> - - <!--<p style="subtitle">Misc</p>--> - <img src="images/gui/buttonpanel/misc/health.png"/> - <p><a href="health">Health Centre</a></p> - - <!--<p style="subtitle">Transport</p>--> - <img src="images/gui/buttonpanel/transport/rocket.png"/> - <p><a href="rocket">Rocket Launch Pad</a></p> - - <!--<p style="subtitle">Power</p>--> - <img src="images/gui/buttonpanel/power/windmills.png"/> - <p><a href="windmill">Windmill</a></p> - - <!--<p style="subtitle">Misc</p>--> - <img src="images/gui/buttonpanel/parks/monument.png"/> - <p><a href="monument">Monument</a></p> - - <!--<p style="subtitle">Misc</p>--> - <img src="images/gui/buttonpanel/misc/book.png"/> - <p><a href="school">School</a></p> - - <!--<p style="subtitle">Parks</p>--> - <img src="images/gui/buttonpanel/parks/mills.png"/> - <p><a href="mill">Mill</a></p> - - <!--<p style="subtitle">Industry</p>--> - <img src="images/gui/buttonpanel/industry/pottery.png"/> - <p><a href="pottery">Pottery</a></p> - - <!--<p style="subtitle">Misc</p>--> - <img src="images/gui/buttonpanel/misc/fire.png"/> - <p><a href="firestation">Fire station</a></p> - <img src="images/gui/buttonpanel/misc/sports.png"/> - <p><a href="cricket">Basketball grounds</a></p> - - <!--<p style="subtitle">Transport</p>--> - <img src="images/gui/buttonpanel/transport/port.png"/> - <p><a href="port">Port</a></p> -</Document> + <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> + <p style="hp"><a href="powerline">Power lines</a></p> + <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> + <p style="hp"><a href="powerssolar">Solar Power station</a></p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + <p style="hp"><a href="substation">Substation</a></p> + <img src="images/gui/buttonpanel/residence/residence.png" halign="center"/> + <p style="hp"><a href="residential">Residential area</a></p> + <img src="images/gui/buttonpanel/waterwell.png" halign="center"/> + <p style="hp"><a href="waterwell">Water well</a></p> + <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> + <p style="hp"><a href="farm">Farm</a></p> + <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> + <p style="hp"><a href="market">Market</a></p> + <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> + <p style="hp"><a href="bulldoze">Bulldoze</a></p> + <img src="images/gui/buttonpanel/base/broom.png" halign="center"/> + <p style="hp"><a href="evacuate">Evacuate</a></p> + <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> + <p style="hp"><a href="track">Track</a></p> + <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + <p style="hp"><a href="coalmine">Coalmine</a></p> + <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> + <p style="hp"><a href="rail">Railway</a></p> + <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> + <p style="hp"><a href="powerscoal">Coal fired power station</a></p> + <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> + <p style="hp"><a href="road">Road</a></p> + <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> + <p style="hp"><a href="industryl">Light industrial areas</a></p> + <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + <p style="hp"><a href="university">University</a></p> + <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> + <p style="hp"><a href="commune">Commune</a></p> + <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> + <p style="hp"><a href="oremine">Ore mine</a></p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + <p style="hp"><a href="export">Import and Export</a></p> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> + <p style="hp"><a href="industryh">Heavy industry (steel works)</a></p> + <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> + <p style="hp"><a href="park">Parkland</a></p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + <p style="hp"><a href="recycle">Recycle centre</a></p> + <img src="images/gui/buttonpanel/parks/water.png" halign="center"/> + <p style="hp"><a href="river">Water/Rivers</a></p> + <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> + <p style="hp"><a href="health">Health Centre</a></p> + <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> + <p style="hp"><a href="rocket">Rocket Launch Pad</a></p> + <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> + <p style="hp"><a href="windmill">Windmill</a></p> + <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> + <p style="hp"><a href="monument">Monument</a></p> + <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> + <p style="hp"><a href="school">School</a></p> + <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> + <p style="hp"><a href="mill">Mill</a></p> + <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> + <p style="hp"><a href="pottery">Pottery</a></p> + <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> + <p style="hp"><a href="firestation">Fire station</a></p> + <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> + <p style="hp"><a href="cricket">Basketball grounds</a></p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + <p style="hp"><a href="port">Port</a></p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/coalmine.xml lincity-ng-2.9~git20150314/data/help/en/coalmine.xml --- lincity-ng-2.0/data/help/en/coalmine.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/coalmine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,25 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Coal mine</p> - <p style="hp">Coal mines dig coal from under the ground. There must be a coal seam close to the mine. To see where the seams are you can click on the coal button just above the mini screen.</p> + <p style="hp">Coal mines dig coal from under the ground. There must be a coal seam close to the mine. To see where the seams are you can click on the coal button below the mini map.</p> <p style="hp">The first time you use this button, it will cost you 1 million. After that it is free. You don't need to use this button, but you will have to find the coal by trial and error.</p> <p style="hp">Coal mines need jobs to mine coal.</p> - - <p style="hp">This is a coalmine</p> - <img src="images/tiles/coalmine-full.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + <p style="hp">If your economy provides coal in excess your coal mines can put the coal in new underground seams</p> + <p style="hp">This is a coalmine</p> + <img src="images/tiles/coalmine-full.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> <p style="hp">The graphics show the amount of coal already dug but not put onto transport. The above coal mine has maximum stock.</p> <p style="hp">Clicking on a coal mine will show you, in the mappoint stats window, the coal stock at the pit, and, more importantly, the coal reserve available to be dug.</p> + <p style="hp">Coal mines produce <a href="pollution">pollution</a>.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="coal">Coal</a></li> - <li><a href="powerscoal">Coal power station</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> <li><a href="transport">Transport</a></li> <li><a href="jobs">Jobs</a></li> -</Document> + <li><a href="pollution">Pollution</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/coal.xml lincity-ng-2.9~git20150314/data/help/en/coal.xml --- lincity-ng-2.0/data/help/en/coal.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,17 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Coal</p> <p style="hp">Coal is used by coal fired power stations to make electricity (power). It is also used by potteries, mills and blacksmiths in the process of making goods. Heavy industry (steel works) use coal when they cannot get electricity.</p> <p style="hp">Coal is dug from under the ground by coal mines. There is a finite coal reserve which you can see with use of the coal reserve button (see coal mines).</p> <p style="hp">Communes provide a little 'coal' as well. Really this is charcoal from coppiced woods. They only provide small amounts, enough for a few potteries and blacksmiths.</p> - <p style="hsubtitle">See also:</p> - <li><a href="coalmine">Coal mines</a></li> - <li><a href="powerscoal">Coal power station</a></li> - <li><a href="commune">Communes</a></li> + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="coalmine">Coal mine</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> + <li><a href="commune">Forests</a></li> <li><a href="pottery">Potteries</a></li> <li><a href="blacksmith">Blacksmiths</a></li> <li><a href="msb-coal">Coal overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/commodities.xml lincity-ng-2.9~git20150314/data/help/en/commodities.xml --- lincity-ng-2.0/data/help/en/commodities.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/commodities.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">Commodities</p> + <p style="hp">Commodities are the stuff that can be produced, transfered, stored, processed and consumed in your city. The status display of every building or transport tile always lists the relevant commodities. The arrows at the start of the lines indicate raw materials, products and transferables</p> + <p style="hp">In most cases, at least 5% of rawmaterial must be present in order to turn them into 5% of products.</p> + <p style="hp">The second tab of the minimap shows city wide statistics, and their recent changes with progress bars. In conjunction with the tranportation overlay these can tell you a lot about your economic development.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="pbar">Stats</a></li> + <li><a href="msb-transport">Transportation overlay</a></li> + <li><a href="food">Food</a></li> + <li><a href="jobs">Jobs</a></li> + <li><a href="goods">Goods</a></li> + <li><a href="waste">Waste</a></li> + <li><a href="ore">Ore</a></li> + <li><a href="steel">Steel</a></li> + <li><a href="coal">Coal</a></li> + <li><a href="water">Water</a></li> + <li><a href="power">Power</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/commune.xml lincity-ng-2.9~git20150314/data/help/en/commune.xml --- lincity-ng-2.0/data/help/en/commune.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Commune</p> - <p style="hp">Communes (for want of a better name) are areas where charcoal burners coppice woods to make charcoal (the same as coal here). They also produce small amounts of ore and steel.</p> + <p style="htitle">Forests</p> + <p style="hp">Forests (aka Communes) are areas where charcoal burners coppice woods to make charcoal (the same as coal here). They also produce small amounts of ore and steel.</p> <p style="hp">You will probably need a 'few' communes to provide enough coal and steel for areas such as potteries, blacksmiths and mills.</p> <p style="hp">If a commune is not producing anything for 10 years it is closed and the area turns in parks.</p> <p style="hp">Communes can connect to transport at any point around it, not only to the gate.</p> - <p style="hp">Communes' coal production depends on underground water. (tiles with water are green, others are yellow-brown like desert)</p> - - <p style="hp">This is a commune</p> - <img src="images/tiles/commune1.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">Communes' coal production depends on underground water unless they receive fresh water via transport. (tiles with water are green, others are yellow-brown like desert)</p> + + <p style="hp">This is a commune</p> + <img src="images/tiles/commune1.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="pottery">Potteries</a></li> <li><a href="blacksmith">Blacksmiths</a></li> <li><a href="mill">Mills</a></li> - <li><a href="oremine">Ore mines</a></li> + <li><a href="oremine">Ore mine</a></li> <li><a href="steel">Steel</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/cricket.xml lincity-ng-2.9~git20150314/data/help/en/cricket.xml --- lincity-ng-2.0/data/help/en/cricket.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,4 +1,5 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Basketball courts</p> <p style="hp">Basketball courts provide sport and entertainment for your residents. They need goods and jobs to work. They do not have to be connected to transport, though if not, they do have to be within range of a market that can supply the jobs and goods. They also cost money to run.</p> @@ -7,19 +8,19 @@ <p style="hp">Basketball courts increase the desirability of residential areas within their range.</p> <p style="hp">Basketball courts go through an animation sequence every three month to show that they are working.</p> - <p style="hp">This is a basketball court</p> - <img src="images/tiles/cricket1.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> - <p style="hp">and this its mapview overlay icon</p> - <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <p style="hp">This is a basketball court</p> + <img src="images/tiles/cricket1.png" halign="center"/> - <p style="hsubtitle">See also:</p> - <li><a href="mini-screen">Mini-Screen</a></li> + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> + + <p style="hp">and this its mapview overlay icon</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="mini-screen">Minimap</a></li> <li><a href="goods">Goods</a></li> <li><a href="market">Market</a></li> <li><a href="jobs">Jobs</a></li> <li><a href="msb-cricket">Sports overlay</a></li> -</Document> - - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/dialogs.xml lincity-ng-2.9~git20150314/data/help/en/dialogs.xml --- lincity-ng-2.0/data/help/en/dialogs.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/dialogs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,16 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Information Tabs Help</p> - <p>Map-Tab</p> - <li><a href="mini-screen">Minimap</a></li> - <p>Markets-Tab</p> + <p style="hp">Map-Tab</p> + <li><a href="mini-screen">Minimap</a></li> + <p style="hp">Markets-Tab</p> <li><a href="pbar">Ressources Status Bar</a></li> - <p>$-Tab</p> + <p style="hp">$-Tab</p> <li><a href="finance">Finance</a></li> <li><a href="other-costs">Other costs</a></li> <li><a href="housing">Population</a></li> - <p>Eco-Tab</p> + <p style="hp">Eco-Tab</p> <li><a href="economy">Economy Graph</a></li> <li><a href="sustain">Sustainability progress window</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/economy.xml lincity-ng-2.9~git20150314/data/help/en/economy.xml --- lincity-ng-2.0/data/help/en/economy.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,32 +1,10 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Economy Graph</p> <p style="hp">This graphs contains four coloured lines. They show the most important economic factors.</p> - <li> - <span color="brown">Population</span> (brown) - The brown line represents your population. - It is shown as a log scale. - </li> - <li> - <span color="blue">Unhoused</span> (blue) - The blue line represents the demand for - housing. The height of the graph is - proportional to the square root of the - 'unhoused' population. - </li> - <li> - <span color="yellow">Unemployment</span> (yellow) - The solid yellow 'bars' show that there is - unemployment. The scale of this graph - changes with your population. This graph - is solid to draw your attention to it. - </li> - <li> - <span color="red">Starvation</span> (red) - The solid red 'bars' show that there is - starvation. The scale of this graph - changes with your population. This graph - is solid to draw your attention to it. - This bar is drawn over the unemployment bar. - </li> -</Document> + <li><span color="brown">Population</span> (brown) The brown line represents your population. It is shown as a log scale.</li> + <li><span color="blue">Unhoused</span> (blue) The blue line represents the demand for housing. The height of the graph is proportional to the square root of the 'unhoused' population.</li> + <li><span color="yellow">Unemployment</span> (yellow) The solid yellow 'bars' show that there is unemployment. The scale of this graph changes with your population. This graph is solid to draw your attention to it.</li> + <li><span color="red">Starvation</span> (red) The solid red 'bars' show that there is starvation. The scale of this graph changes with your population. This graph is solid to draw your attention to it. This bar is drawn over the unemployment bar.</li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/evacuate.xml lincity-ng-2.9~git20150314/data/help/en/evacuate.xml --- lincity-ng-2.0/data/help/en/evacuate.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/evacuate.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">Evacuate</p> + <p style="hp">To evacuate an building you select the evacuate button then use the broom to evacuate all the precious commodities. Evacuation is for free und pushs out all the stored stuff to adjoining transport tiles and markets in the neighborhood.</p> + <p style="hp">The consequences range from the halt of production and or pollution to starvation of the local residence</p> + <p style="hp">Some buildings, like tracks, roads, rails, land fills, and others cannot be evacuated.</p> + <p style="hp">Depleted oremines and coalmines are automatically evacuated before they collapse</p> + + <p style="hp">This is the evacuation icon</p> + <img src="images/gui/buttonpanel/base/broom.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="bulldoze">Bulldoze</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/export.xml lincity-ng-2.9~git20150314/data/help/en/export.xml --- lincity-ng-2.0/data/help/en/export.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/export.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Import and export areas</p> <p style="hp">Importing and exporting work in the same way except that the first costs you money and the second makes you money. Both requires a Port. For this reason, only exporting will be dealt with in detail.</p> <p style="hp">To export, the port must be connected with a road.</p> <p style="hp">They <b>must</b> be connected to rivers all along the right hand side.</p> <p style="hp">The export area will take as much as it is given. If you need to export, but want to restrict the amount, you may want to use a type of transport with less capacity, use a long piece or pass the product through a market. You will need to experiment to get the right transport configuration.</p> - - <p style="hsubtitle">See also:</p> - <li><a href="port">Port</a></li> + + <p style="hsubtitle">See also:</p> + <li><a href="port">Ports</a></li> <li><a href="transport">Transport</a></li> - <li><a href="market">Markets</a></li> + <li><a href="market">Market</a></li> <li><a href="coal">Coal</a></li> <li><a href="ore">Ore</a></li> <li><a href="goods">Goods</a></li> <li><a href="steel">Steel</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/farm.xml lincity-ng-2.9~git20150314/data/help/en/farm.xml --- lincity-ng-2.0/data/help/en/farm.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/farm.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Farms</p> - <p style="hp">Farms grow food for people to eat, and to supply the raw materials for mills. Farmers can sell food to markets. They deliver it by tractor so they do not need transport. However they can sell to transport if you wish. Of course you need to ensure that the market is in range of the farm.</p> - <p style="hp">Production of farm depends on underground water. Tiles with water are green, others are yellow-brown (like desert or bare ground).</p> - - <p style="hp">This is a farm</p> - <img src="images/tiles/farm0.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> - - <p style="hp">Farms need jobs to produce more than a minimal amount of food. Giving the farm power also increases the amount of food produced. Power also includes 'old' style windmills that help the food to be processed, thus cutting down on waste.</p> - <p style="hsubtitle">See also:</p> + <p style="hp">Farms grow food for people to eat, and to supply the raw materials for mills. Farmers can sell food to markets. They deliver it by tractor so they do not need transport. However they can sell to transport if you wish. Of course you need to ensure that the market is in range of the farm.</p> + <p style="hp">Production of farm depends on underground water. Tiles with water are green, others are yellow-brown (like desert or bare ground).</p> + + <p style="hp">This is a farm</p> + <img src="images/tiles/farm0.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> + <p style="hp">Farms need jobs to produce more than a minimal amount of food. Providing elecricity (kWH) boosts the output. Powered farms can irregate dry soil and also consume wastes. Beware of agricultural water consumption.</p> + + <p style="hsubtitle">See also:</p> <li><a href="market">Market</a></li> - <li><a href="tech-level">Tech-level</a></li> + <li><a href="tech-level">Tech Level</a></li> <li><a href="transport">Transport</a></li> - <li><a href="windmill">Windmill</a></li> - <li><a href="food">Food</a></li> -</Document> + <li><a href="commodities">Commodities</a></li> + <li><a href="power">Power</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/fast.xml lincity-ng-2.9~git20150314/data/help/en/fast.xml --- lincity-ng-2.0/data/help/en/fast.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/fast.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,13 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Fast speed</p> - <img src="images/gui/speed/faster.png"/> + <img src="images/gui/speed/faster.png" halign="center"/> <p style="hp">This is the fast speed button. It causes the game to run as fast as possible. Care should be taken when using fast mode on fast machines; 'situations' can develop very quickly!</p> - <p style="hp">The command line option "-q 1" or "--quick 1" will give the fastest possible speed (less than 10s par year), but can heat your hardware. Default is -q 9 (near 25s per year). This option has no effect on other game speed.</p> + <p style="hp">The command line option "-q 1" or "--quick 1" will give the fastest possible speed (less than 10s par year), but can heat your hardware. Default is -q 9 (near 25s per year). This option has no effect on other game speed.</p> - <p style="hsubtitle">See also:</p> - <li><a href="medium">Medium</a></li> - <li><a href="slow">Slow</a></li> -</Document> + <p style="hsubtitle">See also:</p> + <li><a href="pause">Pause Button</a></li> + <li><a href="medium">Medium speed</a></li> + <li><a href="slow">Slow speed</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/finance.xml lincity-ng-2.9~git20150314/data/help/en/finance.xml --- lincity-ng-2.0/data/help/en/finance.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/finance.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Finance window</p> - <p style="hp">Left clicking on this window will cycle through windows for 'global finance balance', detail what is called 'other costs' in the previous one, and 'population cost'.</p> + <p style="hp">Left clicking on this window will open windows for 'global finance balance', detail what is called 'other costs' in the previous one, and 'population cost' Use the scroll up and down buttons to switch between those.</p> <p style="hp">The finance window is updated every January 1st. The figures correspond to income or expenditure for the previous year.</p> <p style="hp">The 'Total' figure is the amount of money in your account. There are certain things you cannot do when you are 'in the red'.</p> - <p style="hsubtitle">See also:</p> - <li><a href="housing">People window</a></li> - <li><a href="other-costs">Other costs</a></li> - -</Document> + <p style="hsubtitle">See also:</p> + <li><a href="housing">Population window</a></li> + <li><a href="other-costs">Other costs</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/firestation.xml lincity-ng-2.9~git20150314/data/help/en/firestation.xml --- lincity-ng-2.0/data/help/en/firestation.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/firestation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,26 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Fire stations</p> - <p style="hp">Fire stations prevent the start and spread of fire within the range that they cover. They need to be supplied with goods and jobs to work. They do <b>not</b> have to be connected to transport, they do though have to be within range of a market that can supply the jobs and goods. They also cost money to run.</p> + <p style="hp">Fire stations prevent the start and spread of fire within the range that they cover. They need to be supplied with goods and jobs to work. They do not have to be connected to transport, they do though have to be within range of a market that can supply the jobs and goods. They also cost money to run.</p> <p style="hp">When you build a fire station, it does not start straight away. There is usually a three month wait before fire cover is provided.</p> - <p style="hp">To see the area that your fire stations cover, click on the fire station button under the <i>mini screen</i>. Areas that have fire cover are displayed as normal, areas not covered are just dark green.</p> + <p style="hp">To see the area that your fire stations cover, click on the fire station button under the mini screen. Areas that have fire cover are displayed as normal, areas not covered are just dark green.</p> <p style="hp">Fire stations increase the desirability of residential areas within their range.</p> <p style="hp">Fire stations go through an animation sequence every three month to show that they are working.</p> - <p style="hp">This is a fire station</p> - <img src="images/tiles/firestation1.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> - <p style="hp">and this its mapview overlay icon</p> - <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + <p style="hp">This is a fire station</p> + <img src="images/tiles/firestation1.png" halign="center"/> - <p style="hsubtitle">See also:</p> - <li><a href="mini-screen">Mini-Screen</a></li> + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> + + <p style="hp">and this its mapview overlay icon</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="mini-screen">Minimap</a></li> <li><a href="goods">Goods</a></li> - <li><a href="market">Markets</a></li> + <li><a href="market">Market</a></li> <li><a href="jobs">Jobs</a></li> <li><a href="msb-fire">Fire overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/food.xml lincity-ng-2.9~git20150314/data/help/en/food.xml --- lincity-ng-2.0/data/help/en/food.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Food</p> <p style="hp">Food is grown in farms or can be imported through a port.</p> <p style="hp">Your people need food in order to survive. If you starve them, they will move away from that area and some may starve to death.</p> - <p style="hp">Mills also use food. They turn, say, cotton into cloths. They can use <i>a lot</i> of food - beware.</p> - - <p style="hsubtitle">See also:</p> - <li><a href="farm">Farm</a></li> - <li><a href="port">Port</a></li> - <li><a href="mill">Mill</a></li> - <li><a href="steel">Steel</a></li> -</Document> + <p style="hp">Mills also use food. They turn, say, cotton into cloths. They can use a lot of food - beware.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="farm">Farms</a></li> + <li><a href="residential">Residential area</a></li> + <li><a href="mill">Mills</a></li> + <li><a href="port">Ports</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/goods.xml lincity-ng-2.9~git20150314/data/help/en/goods.xml --- lincity-ng-2.0/data/help/en/goods.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/goods.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Goods</p> <p style="hp">Goods are needed for most areas to work. People also like lots of them and are attracted to areas where you can get them.</p> <p style="hp">Goods are taxed, so making lots will help your finances.</p> <p style="hp">Goods are produced by Potteries, Blacksmiths, Mills and Light industry.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> <li><a href="pottery">Potteries</a></li> <li><a href="blacksmith">Blacksmiths</a></li> - <li><a href="mills">Mills</a></li> - <li><a href="industryl">Light industry</a></li> -</Document> + <li><a href="mill">Mills</a></li> + <li><a href="industryl">Light industrial areas</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/health.xml lincity-ng-2.9~git20150314/data/help/en/health.xml --- lincity-ng-2.0/data/help/en/health.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,34 +1,28 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Health Centre</p> <p style="hp">Health centres provide health cover for residences.</p> - <p style="hp">Health cover makes the residence a more desirable place to - live, less people die from pollution related illness and the people - living there are more efficient at providing jobs to the surrounding - areas (they spend less time off sick).</p> - <p style="hp">Running health centres is expensive. However, they reduce - the cost of 'unnatural deaths' and can provide extra income tax - (as long as there are places for the people to work).</p> - <p style="hp">After you put a health centre in, it takes three months for - it to become active. They use goods.</p> - <p style="hp">Health centres need to be connected to transport or within - range of a market.</p> - <p style="hp">To see the range of health cover, click on the health icon - above the 'mini screen' (bottom right of centre on the display). - The areas that show up as normal have health cover.</p> + <p style="hp">Health cover makes the residence a more desirable place to live, less people die from pollution related illness and the people living there are more efficient at providing jobs to the surrounding areas (they spend less time off sick).</p> + <p style="hp">Running health centres is expensive. However, they reduce the cost of 'unnatural deaths' and can provide extra income tax (as long as there are places for the people to work).</p> + <p style="hp">After you put a health centre in, it takes three months for it to become active. They use goods.</p> + <p style="hp">Health centres need to be connected to transport or within range of a market.</p> + <p style="hp">To see the range of health cover, click on the health icon above the 'mini screen' (bottom right of centre on the display). The areas that show up as normal have health cover.</p> - <p style="hp">This is a Health Centre</p> - <img src="images/tiles/health.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> - <p style="hp">and this its mapview overlay icon</p> - <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + <p style="hp">This is a Health Centre</p> + <img src="images/tiles/health.png" halign="center"/> - <p style="hsubtitle">See also:</p> - <li><a href="residential">Residences</a></li> + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> + + <p style="hp">and this its mapview overlay icon</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="residential">Residential area</a></li> <li><a href="pollution">Pollution</a></li> <li><a href="jobs">Jobs</a></li> <li><a href="goods">Goods</a></li> <li><a href="transport">Transport</a></li> <li><a href="msb-health">Health overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/help.xml lincity-ng-2.9~git20150314/data/help/en/help.xml --- lincity-ng-2.0/data/help/en/help.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/help.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,19 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Lincity Help</p> <p style="hp">This is the Lincity help system. Please choose a topic by clicking on one of the blue words below. Blue words generally indicate a link to another document. Use arrow on top left to go back to previous help.</p> <p style="hp">While playing the game, you can get help with most things using the help button, or right-click on a specific building icon in the top-left dock.</p> + <p style="hsubtitle">See also:</p> <li><a href="tutorial">Tutorial</a></li> - <li><a href="keys">Keyboard commands</a></li> - <li><a href="button-index">List of all buildable entries</a></li> - <li><a href="mini-screen">Help on the minimap</a></li> - <li><a href="dialogs">Help on information tabs</a></li> + <li><a href="keys">Keyboard</a></li> + <li><a href="button-index">Select button index</a></li> + <li><a href="commodities">Commodities</a></li> + <li><a href="mini-screen">Minimap</a></li> + <li><a href="dialogs">Information Tabs Help</a></li> <li><a href="index">Index</a></li> - <p style="htitle">Objective</p> - <p style="hp">You can win Lincity either by building a <a href="sustain">sustainable economy </a> or - by evacuating all citizens with <a href="rocket">spaceships</a>.</p> -</Document> + <p style="hsubtitle">Objective</p> + <p style="hp">You can win Lincity either by building a <a href="sustain">sustainable economy </a> or by evacuating all citizens with <a href="rocket">spaceships</a>.</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/housing.xml lincity-ng-2.9~git20150314/data/help/en/housing.xml --- lincity-ng-2.0/data/help/en/housing.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/housing.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Population window</p> - <p style="hp">This is the population window.</p> + <p style="hp">This is the population window.</p> <p style="hp">The window shows 9 statistics:</p> <li>Total - this shows the population of your city.</li> <li>Housed - this shows the total number of people in your city that live in residences.</li> <li>Homeless - this shows the number of people that are homeless or live in a shanty.</li> <li>Shanties - this shows the number of shanty towns in your city.</li> <li>Unn Dths - this shows the number of people that died through starvation or from pollution in the last month.</li> - <li>Unemployment Claims - this shows the number of people that were unemployed in the last month.</li> + <li>Unemployment Claims - this shows the number of people that were unemployed in the last month.</li> <li>Rate - this shows the percentage of your population that is unemployed.</li> - <li>Starvation Cases - this shows the number of people that were starving in the last month.</li> + <li>Starvation Cases - this shows the number of people that were starving in the last month.</li> <li>Rate - this shows the percentage of your population that is starving.</li> <p style="hp">Left clicking on this window's title will cycle through windows for finance, other costs and housing.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="finance">Finance window</a></li> <li><a href="other-costs">Other costs</a></li> - -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/index.xml lincity-ng-2.9~git20150314/data/help/en/index.xml --- lincity-ng-2.0/data/help/en/index.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,80 +1,83 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Index</p> -<li><a href="blacksmith">Blacksmiths</a></li> -<li><a href="bulldoze">Bulldoze</a></li> -<li><a href="button-index">Select button index</a></li> -<li><a href="coal">Coal</a></li> -<li><a href="coalmine">Coal mine</a></li> -<li><a href="commune">Commune</a></li> -<li><a href="cricket">Basketball courts</a></li> -<li><a href="dialogs">Information Tabs Help</a></li> -<li><a href="economy">Economy Graph</a></li> -<li><a href="export">Import and export areas</a></li> -<li><a href="farm">Farms</a></li> -<li><a href="fast">Fast speed</a></li> -<li><a href="finance">Finance window</a></li> -<li><a href="firestation">Fire stations</a></li> -<li><a href="food">Food</a></li> -<li><a href="goods">Goods</a></li> -<li><a href="health">Health Centre</a></li> -<li><a href="help">Lincity Help</a></li> -<li><a href="housing">Population window</a></li> -<li><a href="industryh">Heavy industry (Steel Works)</a></li> -<li><a href="industryl">Light industrial areas</a></li> -<li><a href="jobs">Jobs</a></li> -<li><a href="keys">Keyboard</a></li> -<li><a href="keys">Mouse</a></li> -<li><a href="market">Market</a></li> -<li><a href="medium">Medium speed</a></li> -<li><a href="mill">Mills</a></li> -<li><a href="mini-screen">Minimap</a></li> -<li><a href="monument">Monuments</a></li> -<li><a href="msb-coal">Coal overlay</a></li> -<li><a href="msb-cricket">Sports overlay</a></li> -<li><a href="msb-fire">Fire overlay</a></li> -<li><a href="msb-health">Health overlay</a></li> -<li><a href="msb-normal">Land use overlay</a></li> -<li><a href="msb-pol">Pollution overlay</a></li> -<li><a href="msb-power">Power overlay</a></li> -<li><a href="msb-starve">Starvation overlay</a></li> -<li><a href="msb-transport">Transportation and market overlay</a></li> -<li><a href="msb-ub40">Unemployment overlay</a></li> -<li><a href="ore">Ore</a></li> -<li><a href="oremine">Ore mine</a></li> -<li><a href="other-costs">Other costs</a></li> -<li><a href="park">Parks</a></li> -<li><a href="pause">Pause Button</a></li> -<li><a href="pbar">Stats</a></li> -<li><a href="pollution">Pollution</a></li> -<li><a href="port">Ports</a></li> -<li><a href="pottery">Potteries</a></li> -<li><a href="powerline">Power lines</a></li> -<li><a href="powerscoal">Coal fired power station</a></li> -<li><a href="powerssolar">Solar power station</a></li> -<li><a href="query">Query</a></li> -<li><a href="rail">Railways</a></li> -<li><a href="recycle">Recycle centres</a></li> -<li><a href="residential">Residential area</a></li> -<li><a href="river">Rivers/Water</a></li> -<li><a href="road">Roads</a></li> -<li><a href="rocket">Rocket Launch Pad</a></li> -<li><a href="school">Schools</a></li> -<li><a href="slow">Slow speed</a></li> -<li><a href="steel">Steel</a></li> -<li><a href="substation">Substations</a></li> -<li><a href="sustain">Sustainability progress window</a></li> -<li><a href="tech-level">Tech Level</a></li> -<li><a href="tip">Tips (rubbish dumps)</a></li> -<li><a href="track">Tracks</a></li> -<li><a href="transport">Transport</a></li> -<li><a href="tutorial">Tutorial</a></li> -<li><a href="tutorial-aim">Aim</a></li> -<li><a href="tutorial-overview">Overview of screen</a></li> -<li><a href="tutorial-basics">First steps</a></li> -<li><a href="tutorial-advanced">Advanced</a></li> -<li><a href="tutorial-scenario">Scenario</a></li> -<li><a href="university">University</a></li> -<li><a href="waterwell">Water well</a></li> -<li><a href="windmill">Windmills</a></li> -</Document> + <p style="htitle">Index</p> + <li><a href="blacksmith">Blacksmiths</a></li> + <li><a href="bulldoze">Bulldoze</a></li> + <li><a href="button-index">Select button index</a></li> + <li><a href="coal">Coal</a></li> + <li><a href="coalmine">Coal mine</a></li> + <li><a href="commodities">Commodities</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="cricket">Basketball courts</a></li> + <li><a href="dialogs">Information Tabs Help</a></li> + <li><a href="economy">Economy Graph</a></li> + <li><a href="evacuate">Evacuate</a></li> + <li><a href="export">Import and export areas</a></li> + <li><a href="farm">Farms</a></li> + <li><a href="fast">Fast speed</a></li> + <li><a href="finance">Finance window</a></li> + <li><a href="firestation">Fire stations</a></li> + <li><a href="food">Food</a></li> + <li><a href="goods">Goods</a></li> + <li><a href="health">Health Centre</a></li> + <li><a href="help">Lincity Help</a></li> + <li><a href="housing">Population window</a></li> + <li><a href="industryh">Heavy industry (Steel Works)</a></li> + <li><a href="industryl">Light industrial areas</a></li> + <li><a href="jobs">Jobs</a></li> + <li><a href="keys">Keyboard</a></li> + <li><a href="market">Market</a></li> + <li><a href="medium">Medium speed</a></li> + <li><a href="mill">Mills</a></li> + <li><a href="mini-screen">Minimap</a></li> + <li><a href="monument">Monuments</a></li> + <li><a href="msb-coal">Coal overlay</a></li> + <li><a href="msb-cricket">Sports overlay</a></li> + <li><a href="msb-fire">Fire overlay</a></li> + <li><a href="msb-health">Health overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> + <li><a href="msb-pol">Pollution overlay</a></li> + <li><a href="msb-power">Power overlay</a></li> + <li><a href="msb-starve">Starvation overlay</a></li> + <li><a href="msb-transport">Transportation overlay</a></li> + <li><a href="msb-ub40">Unemployment overlay</a></li> + <li><a href="ore">Ore</a></li> + <li><a href="oremine">Ore mine</a></li> + <li><a href="other-costs">Other costs</a></li> + <li><a href="park">Parks</a></li> + <li><a href="pause">Pause Button</a></li> + <li><a href="pbar">Stats</a></li> + <li><a href="pollution">Pollution</a></li> + <li><a href="port">Ports</a></li> + <li><a href="pottery">Potteries</a></li> + <li><a href="power">Power</a></li> + <li><a href="powerline">Power lines</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> + <li><a href="powerssolar">Solar power station</a></li> + <li><a href="query">Query</a></li> + <li><a href="rail">Railways</a></li> + <li><a href="recycle">Recycle centres</a></li> + <li><a href="residential">Residential area</a></li> + <li><a href="river">Rivers/Water</a></li> + <li><a href="road">Roads</a></li> + <li><a href="rocket">Rocket Launch Pad</a></li> + <li><a href="school">Schools</a></li> + <li><a href="slow">Slow speed</a></li> + <li><a href="steel">Steel</a></li> + <li><a href="substation">Substations</a></li> + <li><a href="sustain">Sustainability progress window</a></li> + <li><a href="tech-level">Tech Level</a></li> + <li><a href="tip">Tips (rubbish dumps)</a></li> + <li><a href="track">Tracks</a></li> + <li><a href="transport">Transport</a></li> + <li><a href="tutorial">Tutorial</a></li> + <li><a href="tutorial-aim">Aim of the game</a></li> + <li><a href="tutorial-overview">Overview of the screen</a></li> + <li><a href="tutorial-basics">First steps</a></li> + <li><a href="tutorial-advanced">Advanced features</a></li> + <li><a href="tutorial-scenario">Pre-defined scenarii</a></li> + <li><a href="university">University</a></li> + <li><a href="waterwell">Water well</a></li> + <li><a href="windmill">Windmills</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/industryh.xml lincity-ng-2.9~git20150314/data/help/en/industryh.xml --- lincity-ng-2.0/data/help/en/industryh.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/industryh.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Heavy industry (Steel Works)</p> - <p style="hp">Steel works produce steel from ore, power and jobs. Ore is obtained directly from the connected transport.The steel is placed onto the transport as well. Jobs are obtained from a local market. Transport connects to the top left corner.</p> - <p style="hp">Power can be provided to the steel works in two ways. The first is from coal, which is obtained directly from connected transport. The second is from electricity: you must have one or more active substations within range of the steel works. (Windmills do <b>not</b> supply power to steel works.)</p> - <p style="hp">Steel works produce pollution</p> - <p style="hp">You can see when Heavy Industry is working in the usual way, by clicking on it, and every so often the animation will come to life.</p> - - <p style="hp">This is a Steel Works</p> - <img src="images/tiles/industryhl1.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">Steel works produce steel from ore, power and jobs. Ore and jobs is obtained from the connected transport or markets.</p> + <p style="hp">Power can be provided to the steel works in two ways. The first is burning coal. The second is from electricity, either inefficient kWh from connected transport or MWh directly from powerlines. Burning coal on site is more laborious. Windmills will barely provide enough power.</p> + <p style="hp">Steel works cause heavy pollution. You can see when Heavy Industry is working in the usual way, by clicking on it, and every so often the animation will come to life.</p> + + <p style="hp">This is a Steel Works</p> + <img src="images/tiles/industryhl1.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="pollution">Pollution</a></li> <li><a href="transport">Transport</a></li> <li><a href="power">Power</a></li> <li><a href="coal">Coal</a></li> <li><a href="ore">Ore</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/industryl.xml lincity-ng-2.9~git20150314/data/help/en/industryl.xml --- lincity-ng-2.0/data/help/en/industryl.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/industryl.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Light industrial areas</p> - <p style="hp">Light industry converts ore into goods. The conversion becomes more efficient if steel is also available. Power increases the output further still. Windmills do <b>not</b> provide power for these areas.</p> - <p style="hp">As a rule of thumb, ignoring the above, the output of a light industrial area is mainly dependent on the amount of raw materials, including jobs, that it can receive, and also the amount of goods that can be <b>taken away</b>.</p> - <p style="hp">These areas connect directly to transport to exchange ore, steel and goods. They may need a market to supply jobs.</p> - <p style="hp">These areas connect to transport <b>only</b> to the top left hand corner, as shown. Transport will curve in when it is connected.</p> - - <p style="hp">This is Light Industry</p> - <img src="images/tiles/industryll1.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">Light industry converts ore into goods. The conversion becomes more efficient if steel is also available. Power increases the output further still. Inefficient kWh may be delivered by transport. MWh can be directly supplied by powerlines. Windmills will barely provide enough kWH</p> + <p style="hp">As a rule of thumb, the output of a light industrial area is mainly dependent on the amount of raw materials, including jobs, that it can receive, and also the amount of goods that can be taken away.</p> + <p style="hp">These areas connect directly to transport to exchange jobs, ore, steel, kWh and goods. They may need a market to run at full capacity.</p> + <p style="hp">Light industries produce heavy pollution.</p> + + <p style="hp">This is Light Industry</p> + <img src="images/tiles/industryll1.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="transport">Transport</a></li> - <li><a href="road">Roads</a></li> - <li><a href="rail">Railways</a></li> - <li><a href="market">Markets</a></li> - <li><a href="jobs">Jobs</a></li> -</Document> + <li><a href="market">Market</a></li> + <li><a href="commodities">Commodities</a></li> + <li><a href="pollution">Pollution</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/jobs.xml lincity-ng-2.9~git20150314/data/help/en/jobs.xml --- lincity-ng-2.0/data/help/en/jobs.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/jobs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,4 +1,5 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Jobs</p> <p style="hp">People living in residential areas provide jobs. Jobs are used by most areas for them to function. Some areas only need jobs when they are under construction, for example monuments.</p> @@ -6,8 +7,9 @@ <p style="hp">If a market becomes 'full' of jobs, it will stop accepting them from residential areas. When this happens, if there are no other non-full markets within range, the people will become unemployed.</p> <p style="hp">A health centre within range of a residential area, will increase the number of jobs provided to any local markets.</p> - <p style="hsubtitle">See also:</p> - <li><a href="residential">Residences</a></li> + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="residential">Residential area</a></li> <li><a href="transport">Transport</a></li> - <li><a href="market">Markets</a></li> -</Document> + <li><a href="market">Market</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/keys.xml lincity-ng-2.9~git20150314/data/help/en/keys.xml --- lincity-ng-2.0/data/help/en/keys.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/keys.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,40 +1,40 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - - <p style="htitle">Keyboard</p> - <p style="hp">ESCAPE: switch to query tool</p> - <p style="hp">b toggles between current tool and bulldoze mode</p> - <p style="hp">h to hide high buildings. Press h again to show them.</p> - <p style="hp">v to cycle through MiniMap-overlay modes</p> - <p style="hp">KP_PLUS: zoom in</p> - <p style="hp">KP_MINUS zoom out</p> - <p style="hp">KP_ENTER zoom 100%</p> - <p style="hp">KP5 put middle of the map in the center of the main screen</p> - <p style="hp">KP9 scroll main screen north</p> - <p style="hp">KP1 scroll main screen south</p> - <p style="hp">KP7 scroll main screen west</p> - <p style="hp">KP3 scroll main screen east</p> - <p style="hp">KP2 scroll main screen se</p> - <p style="hp">KP4 scroll main screen sw</p> - <p style="hp">KP6 scroll main screen ne</p> - <p style="hp">KP8 scroll main screen nw</p> - <p style="hp">same with cursor</p> - <p style="hp">use shift + direction to scroll faster</p> - <p style="hp">F12 quick save</p> - <p style="hp">F9 quick load</p> - - <p style="htitle">Mouse</p> - <p style="hp">right:</p> - <p style="hp">Drag mainscreen with right mousebutton.</p> - <p style="hp">right click on mainscreen centers to tile under cursor.</p> - <p style="hp">middle:</p> - <p style="hp">middle click on mainscreen to show information about area under cursor.</p> - <p style="hp">left:</p> - <p style="hp">Click on Minimap shows the selected Area on mainscreen.</p> - <p style="hp">Perform action depending on selected tool. Bulldoze, show Information, - construct building.</p> - <p style="hp">wheel:</p> - <p style="hp"> up: zoom in</p> - <p style="hp">down: zoom out </p> -</Document> + <p style="htitle">Keyboard</p> + <p style="hp">ESCAPE: switch to query tool</p> + <p style="hp">b toggles between current tool and bulldoze mode</p> + <p style="hp">h to hide high buildings. Press h again to show them.</p> + <p style="hp">v to cycle through MiniMap-overlay modes</p> + <p style="hp">m,n to cycle through Transportation-overlay modes</p> + <p style="hp">g to show information about under ground.</p> + <p style="hp">KP_PLUS: zoom in</p> + <p style="hp">KP_MINUS zoom out</p> + <p style="hp">KP_ENTER zoom 100%</p> + <p style="hp">KP5 put middle of the map in the center of the main screen</p> + <p style="hp">KP9 scroll main screen north</p> + <p style="hp">KP1 scroll main screen south</p> + <p style="hp">KP7 scroll main screen west</p> + <p style="hp">KP3 scroll main screen east</p> + <p style="hp">KP2 scroll main screen se</p> + <p style="hp">KP4 scroll main screen sw</p> + <p style="hp">KP6 scroll main screen ne</p> + <p style="hp">KP8 scroll main screen nw</p> + <p style="hp">same with cursor</p> + <p style="hp">use shift + direction to scroll faster</p> + <p style="hp">F12 quick save</p> + <p style="hp">F9 quick load</p> + <p style="hsubtitle">Mouse</p> + <p style="hp">right:</p> + <p style="hp">Drag mainscreen with right mousebutton.</p> + <p style="hp">right click on mainscreen centers to tile under cursor.</p> + <p style="hp">middle:</p> + <p style="hp">middle click on mainscreen to show information about area under cursor.</p> + <p style="hp">left:</p> + <p style="hp">Click on Minimap shows the selected Area on mainscreen.</p> + <p style="hp">Perform action depending on selected tool. Bulldoze, show Information, construct building.</p> + <p style="hp">wheel:</p> + <p style="hp">up: zoom in</p> + <p style="hp">down: zoom out</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/market.xml lincity-ng-2.9~git20150314/data/help/en/market.xml --- lincity-ng-2.0/data/help/en/market.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/market.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,36 +1,30 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Market</p> - <p style="hp">Market is a key building in Lincity.</p> - <p style="hp">Market is probably a bad name for these areas. They are more like job centres, shops, warehouses and markets all rolled into one. They buy and sell food, jobs, coal, goods, ore and steel to surrounding areas, and to transports such as roads.</p> - - <p style="hp"><b>Within the range </b>of a market all exchanges are done <b>without need of transport</b>, except when it is explicitely specified in the building help. Use the <a href="msb-transport">Transportation and market overlay </a> to check if a building is within the range of a market.</p> - <li>People can obtain food, goods and employment from markets that are within walking distance of their residential area.</li> - <li>All areas that require jobs (employees) get them from markets.</li> - <li>Farms can sell their food directly to markets.</li> - <li>Mills, Potteries and blacksmiths sell goods directly to nearby markets, they also get their raw materials from the same markets.</li> - <p style="hp">If no market is available, these buildings need connection to <a href="transport"> transport</a>.</p> - <p style="hp">The second tab of miniwindow shows the <b>total markets stocks</b>, and how this evolve with progress bar. In conjunction with minimaps (miniicons just below) it should help you a lot to have a good insight on specific resources (food, employment ...). </p> + <p style="hp">Markets are key buildings in Lincity.</p> + <p style="hp">Market is probably a bad name for these areas. They are more like job centres, shops, warehouses and markets all rolled into one. They buy and sell food, jobs, coal, goods, ore and steel to surrounding areas, and to adjacent transports such as roads.</p> + <p style="hp">Within the range of a market all exchanges are done remotely. Use the Transportation overlay to check if a building is within the range of a market. People can obtain food, goods and employment from markets that are within walking distance of their residential area. All areas that require jobs (employees) get them from markets. Farms can sell their food directly to markets. Mills, Potteries and blacksmiths sell goods directly to nearby markets, they also get their raw materials from the same markets.</p> + <p style="hp">If no market is available, these buildings need connection to transport.</p> <p style="hsubtitle">Controlling what markets can buy and sell</p> <p style="hp">You can control the function of a market by selecting what may be bought and sold from transport. Click twice on a market (not the select button) and towards the top left hand side a window will appear allowing you to select what is traded. The default is to trade in everything.</p> - <p style="hp">This is a market</p> - <img src="images/tiles/market-empty.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> - <p style="hp">This means the trade is allowed.</p> - <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> - <p style="hp">This means the trade is <b>not</b> allowed.</p> - <img src="images/gui/checkbox/checkbox.png" halign="center"/> + <p style="hp">This is a market</p> + <img src="images/tiles/market-empty.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> + + <p style="hp">This means the trade is allowed.</p> + <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> + + <p style="hp">This means the trade is <b>not</b> allowed.</p> + <img src="images/gui/checkbox/checkbox.png" halign="center"/> <p style="hp">The numbers between the words Buy and Sell are the map reference for that market.</p> - <p style="hsubtitle">See also:</p> - <li><a href="food">Food</a></li> - <li><a href="jobs">Jobs</a></li> - <li><a href="coal">Coal</a></li> - <li><a href="goods">Goods</a></li> - <li><a href="ore">Ore</a></li> - <li><a href="steel">Steel</a></li> + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> <li><a href="transport">Transport</a></li> -</Document> + <li><a href="msb-transport">Transportation overlay</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/medium.xml lincity-ng-2.9~git20150314/data/help/en/medium.xml --- lincity-ng-2.0/data/help/en/medium.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/medium.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Medium speed</p> - <img src="images/gui/speed/fast.png"/> + <img src="images/gui/speed/fast.png" halign="center"/> <p style="hp">This is the medium speed button. It causes the game to run at medium speed. On slow machines the speed buttons may have no effect.</p> - - <p style="hsubtitle">See also:</p> - <li><a href="slow">Slow</a></li> - <li><a href="fast">Fast</a></li> -</Document> - + <p style="hsubtitle">See also:</p> + <li><a href="pause">Pause Button</a></li> + <li><a href="slow">Slow speed</a></li> + <li><a href="fast">Fast speed</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/mill.xml lincity-ng-2.9~git20150314/data/help/en/mill.xml --- lincity-ng-2.0/data/help/en/mill.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,22 +1,25 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Mills</p> <p style="hp">Mills convert food, coal and jobs into goods. Food?... well, cotton and wool are counted as food in this game.</p> <p style="hp">Mills use quite a lot of food, so you can easily get into food shortages if you don't take this into account. (It is less of a problem when you have windmills, as they can power farms which makes them more efficient)</p> <p style="hp">Mills do not have to be connected to transport. If not, they do have to be in range of a market with coal, jobs and food. You can tell when mills are working by the smoke and steam coming from the building.</p> - - <p style="hp">This is a mill</p> - <img src="images/tiles/mill1.png" halign="center"/> - <p style="hp">This is a nonworking mill</p> - <img src="images/tiles/mill0.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + + <p style="hp">This is a mill</p> + <img src="images/tiles/mill1.png" halign="center"/> + + <p style="hp">This is a nonworking mill</p> + <img src="images/tiles/mill0.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="goods">Goods</a></li> <li><a href="food">Food</a></li> <li><a href="coal">Coal</a></li> <li><a href="jobs">Jobs</a></li> <li><a href="transport">Transport</a></li> <li><a href="windmill">Windmills</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/mini-screen.xml lincity-ng-2.9~git20150314/data/help/en/mini-screen.xml --- lincity-ng-2.0/data/help/en/mini-screen.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/mini-screen.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Minimap</p> <p style="hp">The minimap shows, in reduced scale, the whole of your playing area. The mini-buttons below, when you click on them, show information such as pollution levels over the whole of your playing area.</p> <p style="hp">Right-click on each of the buttons below the minimap to activate their help pages.</p> <p style="hp">The white bordered square shows the area covered by the main screen.</p> <p style="hp">The big overlay button does overlay the minimap content on the main screen</p> - - <p style="hsubtitle">See also:</p> + + <p style="hsubtitle">See also:</p> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> - - - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/monument.xml lincity-ng-2.9~git20150314/data/help/en/monument.xml --- lincity-ng-2.0/data/help/en/monument.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/monument.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Monuments</p> <p style="hp">Monuments provide a focal point for the teaching and inspiration of inventers. Every monument you build will increase the rate of technology growth, but their effectiveness drops to zero as you get toward 40% tech level.</p> - <p style="hp">To build a monument you need to provide jobs. A <b>lot</b> of jobs. For this reason they are useful for controlling unemployment. This is only a short term solution to an unemployment problem as monuments don't use any jobs after they are fully built.</p> + <p style="hp">To build a monument you need to provide jobs. A lot of jobs. For this reason they are useful for controlling unemployment. This is only a short term solution to an unemployment problem as monuments don't use any jobs after they are fully built.</p> <p style="hp">You can tell how far building has progressed by clicking on the monument and looking at the stats window (top left of centre). Also the graphic changes as it is built. There are 6 graphics that show the stages of construction from 0% to 100%</p> - <p style="hp"><b>Hint</b>: How to stop monument building sucking too many jobs out of an area and therefore starving other areas of jobs: build a monument farm away from other areas.</p> + <p style="hp">Hint: How to stop monument building sucking too many jobs out of an area and therefore starving other areas of jobs: either build a monument far away from other areas or use the evacuate tool in emergencies.</p> - <p style="hp">This is a monument</p> - <img src="images/tiles/monument5.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> - - <p style="hsubtitle">See also:</p> - <li><a href="market">Market</a></li> - <li><a href="ore">Ore</a></li> - <li><a href="commune">Commune</a></li> - <li><a href="steel">Steel</a></li> + <p style="hp">This is a monument</p> + <img src="images/tiles/monument5.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="jobs">Jobs</a></li> -</Document> + <li><a href="evacuate">Evacuate</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-coal.xml lincity-ng-2.9~git20150314/data/help/en/msb-coal.xml --- lincity-ng-2.0/data/help/en/msb-coal.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Coal overlay</p> - <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> - <p style="hp">The coal mini screen shows the coal reserves beneath your city. The coal seams are shown as red and green on a grey background. You will have to build a coal mine close to one of these seams to extract its coal.</p> + <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> + <p style="hp">The coal mini screen shows the coal reserves beneath your city. The coal seams are shown as red and green on a grey background. You will have to build a coal mine close to one of these seams to extract its coal.</p> <p style="hp">The first time you ask for this information, you will have to undertake a coal survey which will cost you one million currency units. After that the information is free to look at again.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-cricket.xml lincity-ng-2.9~git20150314/data/help/en/msb-cricket.xml --- lincity-ng-2.0/data/help/en/msb-cricket.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Sports overlay</p> - <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> <p style="hp">Areas that have sport areas within range are shown as dark green.</p> <p style="hp">Areas that are out of range of a basketball court are displayed as normal.</p> <p style="hp">Remember, basketball courts take three months to become active.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-fire.xml lincity-ng-2.9~git20150314/data/help/en/msb-fire.xml --- lincity-ng-2.0/data/help/en/msb-fire.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Fire overlay</p> - <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> <p style="hp">Areas that have a fire station within range are shown as dark green.</p> <p style="hp">The areas out of range of a fire station are displayed as normal.</p> <p style="hp">Remember, fire stations take three months to become active.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-health.xml lincity-ng-2.9~git20150314/data/help/en/msb-health.xml --- lincity-ng-2.0/data/help/en/msb-health.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,33 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Health overlay</p> - <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> <p style="hp">Areas that have a health centre within range are shown as dark green.</p> <p style="hp">The areas out of range of a health centre are displayed as normal.</p> <p style="hp">Remember, health centres take three months to become active.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> - - - -<!-- - -text -1 270 Left click on the mini screen -text -1 280 to reposition the main window. -text -1 300 Left click on the mini screen title -text -1 310 to choose a different mini screen view. -text -1 330 Toggle overlay mode by pressing 'v' -text -1 340 or middle click on the mini screen title (X only) ---> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-normal.xml lincity-ng-2.9~git20150314/data/help/en/msb-normal.xml --- lincity-ng-2.0/data/help/en/msb-normal.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-normal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Land use overlay</p> - <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> <p style="hp">The land use mini screen shows buildings, roads, water and green space in the city.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> @@ -16,4 +17,4 @@ <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-pol.xml lincity-ng-2.9~git20150314/data/help/en/msb-pol.xml --- lincity-ng-2.0/data/help/en/msb-pol.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-pol.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Pollution overlay</p> - <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> <p style="hp">The pollution mini screen shows the pollution levels across the city.</p> <p style="hp">Pollution gets stronger as you go from: Light-green -> Dark-green -> Darker-green -> Dark-red -> Lighter-red -> Bright-red.</p> <p style="hp">Places with residential areas that show as red will cause sickness and make the area less desirable to live in.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-power.xml lincity-ng-2.9~git20150314/data/help/en/msb-power.xml --- lincity-ng-2.0/data/help/en/msb-power.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Power overlay</p> - <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> <p style="hp">Buildings that have low tech windmill power are shown as dark green.</p> <p style="hp">The buildings within the main power grid are shown as light green.</p> <p style="hp">The buildings which have no power are displayed as red.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-starve.xml lincity-ng-2.9~git20150314/data/help/en/msb-starve.xml --- lincity-ng-2.0/data/help/en/msb-starve.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-starve.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Starvation overlay</p> - <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> <p style="hp">The starvation mini screen shows only residential areas.</p> - <p style="hp">Bright green means that there is enough food (from market) and water (in the range of a water well) in that residential area. Bright red shows starvation in each residential area shown.</p> - <p style="hp">Waterwell cover is shown in dark blue</p> + <p style="hp">Bright green means that there is enough food (from market) and water (in the range of a water well) in that residential area. Bright red shows starvation in each residential area shown.</p> + <p style="hp">Waterwell cover is shown in dark blue</p> <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-transport.xml lincity-ng-2.9~git20150314/data/help/en/msb-transport.xml --- lincity-ng-2.0/data/help/en/msb-transport.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Transportation overlay</p> - <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> - <p style="hp">The transportation mini screen shows the amount of goods on the - city's <a href="track">tracks</a>, <a href="road">roads </a> - and <a href="rail">railways</a>.</p> + <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> + <p style="hp">The transportation mini screen shows the amount of goods on the city's <a href="track">tracks</a>, <a href="road">roads </a> and <a href="rail">railways</a>.</p> + <p style="hp">Click the icon to toggle between flows and levels. Use the scroll up and down buttons to run through the various commodities. You may also hit the 'm'/'n' keys, or simply use the mousewheel when hovering over minimap</p> <p style="hp">The bluish colors indicate buildings that are inside the range of a <a href="market">market</a>.</p> - <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> + <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> <li><a href="msb-coal">Coal overlay</a></li> <li><a href="msb-cricket">Sports overlay</a></li> <li><a href="msb-fire">Fire overlay</a></li> <li><a href="msb-health">Health overlay</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-pol">Pollution overlay</a></li> <li><a href="msb-power">Power overlay</a></li> <li><a href="msb-starve">Starvation overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> <li><a href="msb-ub40">Unemployment overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/msb-ub40.xml lincity-ng-2.9~git20150314/data/help/en/msb-ub40.xml --- lincity-ng-2.0/data/help/en/msb-ub40.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/msb-ub40.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,16 +1,17 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Unemployment overlay</p> - <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> + <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> <p style="hp">The unemployment mini screen shows residential areas (red or green) and building (yellow or grey)</p> - <p style="hp">Bright green means that there is no unemployment in that residential area. Darker green and bright red show increasingly severe unemployment in each residential area shown.(too many people here compared to the number of jobs)</p> - <p style="hp">Bright yellow means that a building asked for jobs, but could not get them (too few people here). Buildings are displayed in grey in this minimap when they have no problem with jobs.</p> + <p style="hp">Bright green means that there is no unemployment in that residential area. Darker green and bright red show increasingly severe unemployment in each residential area shown.(too many people here compared to the number of jobs)</p> + <p style="hp">Bright yellow means that a building asked for jobs, but could not get them (too few people here). Buildings are displayed in grey in this minimap when they have no problem with jobs.</p> <p style="hp">Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button.</p> - - <p style="hsubtitle">See also:</p> + + <p style="hsubtitle">See also:</p> <li><a href="mini-screen">Minimap</a></li> - <li><a href="transport">Transport</a></li> - <li><a href="market">Market</a></li> - <li><a href="msb-normal">Normal overlay</a></li> + <li><a href="transport">Transport</a></li> + <li><a href="market">Market</a></li> + <li><a href="msb-normal">Land use overlay</a></li> <li><a href="msb-transport">Transportation overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/oremine.xml lincity-ng-2.9~git20150314/data/help/en/oremine.xml --- lincity-ng-2.0/data/help/en/oremine.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/oremine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Ore mine</p> <p style="hp">Ore mines provide ore to make goods and steel. You may build an ore mine anywhere. The ore under the area is slowly consumed; you cannot bulldoze it and build another one and hope to get more ore.</p> - <p style="hp">Transport <b> must </b> connects to the top left hand corner of the ore mine.</p> + <p style="hp">If your economy provides ore in excess your ore mines can store up to 150% of the natural ore deposits</p> <p style="hp">When an ore mine is exhausted it turns into a lake. If you then want to reclaim this land you will have to bulldoze 16 water areas!</p> <p style="hp">The speed of the animation shows the activity in the ore mines.</p> - - <p style="hp">This is a ore mine</p> - <img src="images/tiles/oremine1.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + + <p style="hp">This is a ore mine</p> + <img src="images/tiles/oremine1.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="ore">Ore</a></li> <li><a href="goods">Goods</a></li> <li><a href="steel">Steel</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/ore.xml lincity-ng-2.9~git20150314/data/help/en/ore.xml --- lincity-ng-2.0/data/help/en/ore.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Ore</p> - <p style="hp">Ore is one of the game's basic raw materials. Communes oremines and recyclers produce ore.</p> + <p style="hp">Ore is one of the game's basic raw materials. Communes, oremines and recyclers produce ore.</p> <p style="hp">Potteries, light industry and heavy industry use ore.</p> - <p style="hsubtitle">See also:</p> - <li><a href="commune">Commune</a></li> - <li><a href="oremine">Oremine</a></li> - <li><a href="recycle">Recyclers</a></li> + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="oremine">Ore mine</a></li> + <li><a href="recycle">Recycle centres</a></li> <li><a href="pottery">Potteries</a></li> - <li><a href="indistryl">Light Industry</a></li> - <li><a href="indistryh">Heavy Industry</a></li> + <li><a href="industryl">Light industrial areas</a></li> + <li><a href="industryh">Heavy industry (Steel Works)</a></li> </Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/other-costs.xml lincity-ng-2.9~git20150314/data/help/en/other-costs.xml --- lincity-ng-2.0/data/help/en/other-costs.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/other-costs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,4 +1,5 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Other costs</p> <p style="hp">This is the other costs window.</p> @@ -14,4 +15,4 @@ <p style="hp">Sport costs</p> <p style="hp">Recycling costs</p> <p style="hp">Left clicking on this window's title will cycle through windows for finance, other costs and housing.</p> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/park.xml lincity-ng-2.9~git20150314/data/help/en/park.xml --- lincity-ng-2.0/data/help/en/park.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/park.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,22 +1,25 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Parks</p> <p style="hp">Parks are very simple: they clear pollution.</p> <p style="hp">A number of areas produce pollution. These are roads, railways, coal mines and light and heavy industry. Some produce more than others.</p> <p style="hp">You can use parks to shield residential areas or to stop pollution escaping from the local area of the source.</p> - <p style="hp">The wind comes <b>from</b> the south west, so build your parks accordingly.</p> - <p style="hp">Parks need underground water, so they can only be built on "green" tiles.</p> - - <p style="hp">This is a park</p> - <img src="images/tiles/parkland-plane.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">The wind comes from the south west, so build your parks accordingly.</p> + <p style="hp">Parks are much more effective then forests or farms but require underground water, so they can only be built on "green" tiles.</p> + <p style="hp">Hint: hold the 'w' key pressed while building a park to get a small pond.</p> + + <p style="hp">This is a park</p> + <img src="images/tiles/parkland-plane.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="pollution">Pollution</a></li> - <li><a href="road">Roads</a></li> - <li><a href="rail">Railways</a></li> - <li><a href="coalmine">Coal mines</a></li> - <li><a href="industryh">Heavy industry</a></li> - <li><a href="industryl">Light industry</a></li> -</Document> + <li><a href="farm">Farms</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="industryh">Heavy industry (Steel Works)</a></li> + <li><a href="industryl">Light industrial areas</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/pause.xml lincity-ng-2.9~git20150314/data/help/en/pause.xml --- lincity-ng-2.0/data/help/en/pause.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/pause.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,6 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Pause Button</p> <p style="hp">This is the pause button. It pauses the game.</p> <p style="hp">You can restart the game by clicking on it again.</p> -</Document> + + <p style="hsubtitle">See also:</p> + <li><a href="slow">Slow speed</a></li> + <li><a href="medium">Medium speed</a></li> + <li><a href="fast">Fast speed</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/pbar.xml lincity-ng-2.9~git20150314/data/help/en/pbar.xml --- lincity-ng-2.0/data/help/en/pbar.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,8 +1,13 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Stats</p> <p style="hp">This is the second tab of the miniwindow</p> - <p style="hp">It shows the total stocks stored in all markets, and how it is changing.</p> - <p style="hp">The number indicates the total quantity.</p> - <p style="hp">A green bar on the right side indicates an increase. A red bar on the left side indicates a decrease. The size of the bar indicates the amount of change.</p> -</Document> + <p style="hp">It shows some city wide statistics and their recent development.</p> + <p style="hp">A bar on the right side indicates an increase. A bar on the left side indicates a decrease. The size of the bar indicates the amount of change. Good changes are green bad ones red. But beaware that too much of a good thing is not always good.</p> + <p style="hp">Use the scroll up and down buttons to see different bars.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="msb-transport">Transportation overlay</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/pollution.xml lincity-ng-2.9~git20150314/data/help/en/pollution.xml --- lincity-ng-2.0/data/help/en/pollution.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/pollution.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,4 +1,5 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Pollution</p> <p style="hp">Most areas produce some pollution. The following are areas that can cause heavy pollution:</p> @@ -12,14 +13,14 @@ <p style="hp">The prevailing wind is from the South West. Therefore the pollution tends to drift towards the North East.</p> <p style="hp">Generally you would build strategically so people are not exposed to pollution. This is not always possible however. If this is the case then parks form quite a nice barrier. The more parks, the greater the protection.</p> - <p style="hsubtitle">See also:</p> - <li><a href="industryh">Heavy industry</a></li> - <li><a href="industryl">Light industry</a></li> - <li><a href="powerscoal">Coal fired power stations</a></li> - <li><a href="coalmine">Coal mines</a></li> - <li><a href="market">Markets</a></li> + <p style="hsubtitle">See also:</p> + <li><a href="industryh">Heavy industry (Steel Works)</a></li> + <li><a href="industryl">Light industrial areas</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> + <li><a href="coalmine">Coal mine</a></li> + <li><a href="market">Market</a></li> <li><a href="rail">Railways</a></li> <li><a href="road">Roads</a></li> <li><a href="park">Parks</a></li> <li><a href="msb-pol">Pollution overlay</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/port.xml lincity-ng-2.9~git20150314/data/help/en/port.xml --- lincity-ng-2.0/data/help/en/port.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/port.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,28 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Ports</p> <p style="hp">Ports let you import and export goods, steel, ore, coal and food. Importing costs you money and exporting makes you money.</p> - <p style="hp">To be of use a port must be connected to transport. You choose what to import by double clicking on the port. This brings up a menu with boxes to select what to import and what to export.</p> - <p style="hp">They <b>must</b> be connected to rivers all along the right hand side.</p> + <p style="hp">You choose what to import by double clicking on the port. This brings up a menu with boxes to select what to import and what to export.</p> + <p style="hp">They must be connected to rivers all along the right hand side.</p> <p style="hp">Nothing will be imported or exported until you have checked the appropriate box.</p> <p style="hp">The export area will take as much as it is given. If you need to export, but want to restrict the amount, you may want to use a type of transport with less capacity, use a long piece or pass the product through a market. You will need to experiment to get the right transport configuration.</p> <p style="hp">An active Port provides some technology. Note: Exporters discount large exports.</p> - <p style="hp">This is a port</p> - <img src="images/tiles/ex_port.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> - - <p style="hsubtitle">See also:</p> - <li><a href="export">Import and Export</a></li> - <li><a href="rivers">Rivers</a></li> + <p style="hp">This is a port</p> + <img src="images/tiles/ex_port.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="export">Import and export areas</a></li> + <li><a href="river">Rivers/Water</a></li> <li><a href="transport">Transport</a></li> - <li><a href="market">Markets</a></li> + <li><a href="market">Market</a></li> + <li><a href="food">Food</a></li> <li><a href="coal">Coal</a></li> <li><a href="ore">Ore</a></li> <li><a href="goods">Goods</a></li> <li><a href="steel">Steel</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/pottery.xml lincity-ng-2.9~git20150314/data/help/en/pottery.xml --- lincity-ng-2.0/data/help/en/pottery.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Potteries</p> <p style="hp">Potteries use ore, coal and jobs to make goods. They do not have to be connected to transport but they do, of course, have to be within range of a market with ore, coal and jobs and be able to receive goods.</p> <p style="hp">You can tell when potteries are working by the kilns producing smoke.</p> - - <p style="hp">This is a pottery</p> - <img src="images/tiles/pottery0.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + + <p style="hp">This is a pottery</p> + <img src="images/tiles/pottery0.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="transport">Transport</a></li> <li><a href="ore">Ore</a></li> <li><a href="coal">Coal</a></li> <li><a href="jobs">Jobs</a></li> - <li><a href="market">Markets</a></li> -</Document> + <li><a href="market">Market</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/powerline.xml lincity-ng-2.9~git20150314/data/help/en/powerline.xml --- lincity-ng-2.0/data/help/en/powerline.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/powerline.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,24 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Power lines</p> - <p style="hp">Power lines carry power from solar and coal power stations and modern windmills to substations. Power lines connect to the top left corner of each of the four types of icons, solar and coal power stations, modern windmills and substations.</p> - <p style="hp">Power lines cross <b>under</b> tracks, roads, railways and rivers (all of the width of 1). If a power line is placed either side of a transport or river area, they act as if they are joined. Often you will have to bulldoze a bit of river to cross a river - it's expensive! The power lines are joined when they are in a straight line.</p> + <p style="hp">Power lines carry power from solar and coal power stations and modern windmills to substations or industrial areas.</p> + <p style="hp">Power lines cross under tracks, roads, railways and rivers (all of the width of 1). If a power line is placed on either side of a transport or river area, they act as if they are joined. Often you will have to bulldoze a bit of river to cross a river - it's expensive! The power lines are joined when they are aligned and power packtes hop from one side to another</p> - <p style="hp">This is a powerline</p> - <img src="images/tiles/powerlvd.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> - <p style="hp">and this its mapview overlay icon</p> - <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + <p style="hp">This is a powerline</p> + <img src="images/tiles/powerlvd.png" halign="center"/> - <p style="hsubtitle">See also:</p> - <li><a href="substation">Substation</a></li> + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> + + <p style="hp">and this its mapview overlay icon</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="power">Power</a></li> + <li><a href="substation">Substations</a></li> + <li><a href="windmill">Windmills</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> <li><a href="powerssolar">Solar power station</a></li> <li><a href="msb-power">Power overlay</a></li> -</Document> - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/powerscoal.xml lincity-ng-2.9~git20150314/data/help/en/powerscoal.xml --- lincity-ng-2.0/data/help/en/powerscoal.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/powerscoal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,26 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Coal fired power station</p> <p style="hp">Coal fired power stations produce packets of electricity which are placed onto connected power lines.</p> - <p style="hp">Power lines connect at the top left corner of the station, transport connects to the next position in. See the example.</p> - <img src="images/help/powerscoal-example.png" halign="center"/> + <p style="hp">The efficiency of the conversion of coal to electricity increases with the tech level - when the station is built. You may want to demolish an old station and replace it with a newer, more efficient one, when your tech level has increased by a significant amount.</p> + <p style="hp">Coal power stations produce a lot of pollution. Make sure not to build them where the wind will blow the pollution to your residence areas. Windmills and solar power are clean alternatives</p> - <p style="hp">The above example shows a coal fired power - station with all its connection points used. To the left there - is a road, above this there are two power lines. To their - right a railway is connected to the other transport connection - point. To toggle visibility of high buildings press <b>h </b>.</p> + <p style="hp">This is a coal fired power station</p> + <img src="images/tiles/powerscoal-empty.png" halign="center"/> - <p style="hp">The efficiency of the conversion of coal to electricity increases with each tech level - when the station is <b>built</b>. You may want to demolish an old station and replace it with a newer, more efficient one, when your tech level has increased by a significant amount.</p> - - <p style="hp">This is a coal fired power station</p> - <img src="images/tiles/powerscoal-empty.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> - - <p style="hsubtitle">See also:</p> - <li><a href="transport">Transport</a></li> - <li><a href="tech-level">Tech level</a></li> + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="tech-level">Tech Level</a></li> + <li><a href="power">Power</a></li> <li><a href="powerline">Power lines</a></li> + <li><a href="windmill">Windmills</a></li> + <li><a href="powerssolar">Solar power station</a></li> <li><a href="msb-power">Power overlay</a></li> -</Document> + <li><a href="pollution">Pollution</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/powerssolar.xml lincity-ng-2.9~git20150314/data/help/en/powerssolar.xml --- lincity-ng-2.0/data/help/en/powerssolar.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/powerssolar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Solar power station</p> - <p style="hp">Solar power stations output their power to power lines in packets. The amount of power that it can produce increases with the tech-level when it was <b>built</b>.</p> + <p style="hp">Solar power stations output their power to power lines in packets. The amount of power that it can produce increases with the tech-level when it was built.</p> <p style="hp">Solar power stations need also manpower for producing power. If a solar power station has no jobs, it will produce no power.</p> - - <p style="hp">This is a Solar power station</p> - <img src="images/tiles/powerssolar.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> - - <p style="hsubtitle">See also:</p> - <li><a href="substation">Substation</a></li> + + <p style="hp">This is a Solar power station</p> + <img src="images/tiles/powerssolar.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="substation">Substations</a></li> + <li><a href="power">Power</a></li> <li><a href="powerline">Power lines</a></li> - <li><a href="residential">Residential</a></li> - <li><a href="tech-level">Tech-level</a></li> + <li><a href="tech-level">Tech Level</a></li> <li><a href="msb-power">Power overlay</a></li> - <li><a href="windmill">windmills</a></li> -</Document> + <li><a href="windmill">Windmills</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/power.xml lincity-ng-2.9~git20150314/data/help/en/power.xml --- lincity-ng-2.0/data/help/en/power.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">Power</p> + <p style="hp">Power commes in two different flavours kWh and MWh. kWh flow in underground cables along your cities transportation network and MWh flow over power lines.</p> + <p style="hp">kWH are produced by low-tech wind mills or provided by a substation. They can power residental areas, farms, textile mills, light industries and heavy industries (aka steel works).</p> + <p style="hp">MWH are produced by coal, solar or wind power plant and may either be delivered to substation or directly to light industries or heavy industries (aka steel works).</p> + + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="windmill">Windmills</a></li> + <li><a href="residential">Residential area</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="farm">Farms</a></li> + <li><a href="powerline">Power lines</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> + <li><a href="powerssolar">Solar power station</a></li> + <li><a href="substation">Substations</a></li> + <li><a href="industryl">Light industrial areas</a></li> + <li><a href="industryh">Heavy industry (Steel Works)</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/query.xml lincity-ng-2.9~git20150314/data/help/en/query.xml --- lincity-ng-2.0/data/help/en/query.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/query.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Query</p> <p style="hp">To show informations about a building use this tool and click on the Building in question.</p> <p style="hp">The information is shown int the lower right corner, instead of the minimap.</p> - <p style="hp">There are no costs to use this tool.</p> - <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> - <p style="hsubtitle">See also:</p> - <li><a href="keys">Keyboard commands</a></li> - <li><a href="help">index</a></li> -</Document> + <p style="hp">Press 'g' to show underground information. 'm' and 'n' cylcle through optional pages</p> + <p style="hp">There are no costs to use this tool. the Alternatively use the middle mouse key or press 'g' display information on the ground.</p> + <p style="hp">Query:</p> + <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="keys">Keyboard</a></li> + <li><a href="help">Lincity Help</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/rail.xml lincity-ng-2.9~git20150314/data/help/en/rail.xml --- lincity-ng-2.0/data/help/en/rail.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/rail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Railways</p> <p style="hp">Railways carry even more than roads. They produce slightly less pollution than roads. They are quite expensive to buy and maintain though. They are well worth the expense when you have a lot to transport over a long distance.</p> - <p style="hp">This is a railway</p> - <img src="images/tiles/railud.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">This is a railway</p> + <img src="images/tiles/railud.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="transport">Transport</a></li> - <li><a href="commune">Commune</a></li> <li><a href="pollution">Pollution</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/recycle.xml lincity-ng-2.9~git20150314/data/help/en/recycle.xml --- lincity-ng-2.0/data/help/en/recycle.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Recycle centres</p> - <p style="hp">Used goods produce waste.</p> - <p style="hp">Recycle centres convert used goods into ore. They must be connected to transport at the top left hand corner. Jobs and money are used to collect the waste goods and convert them into fresh ore.</p> - <p style="hp">It is possible to run a sustainable economy, (i.e. no more ore extracted, etc) with less than 100% efficient recycle centres if you have some mills to make up for the 'lost' waste goods.</p> - - <p style="hp">This is a recycle center</p> - <img src="images/tiles/recycle-centre.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> - - <p style="hsubtitle">See also:</p> - <li><a href="goods">Goods</a></li> - <li><a href="ore">Ore</a></li> + <p style="hp">Recycle centres convert waste into ore. Jobs, electric power (kWH) and money are used to collect the waste and convert it into raw ore. They can be used to empty previously filled tips.</p> + <p style="hp">It is possible to run a sustainable economy, (i.e. no more ore extracted, etc) with less than 100% efficient recycle centres if you have some mills to make up for the losses.</p> + + <p style="hp">This is a recycle center</p> + <img src="images/tiles/recycle-centre.png" halign="center"/> + + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="power">Power</a></li> <li><a href="transport">Transport</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/residential.xml lincity-ng-2.9~git20150314/data/help/en/residential.xml --- lincity-ng-2.0/data/help/en/residential.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/residential.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,26 +1,36 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Residential area</p> - <p style="hp">This is where people live. To encourage people to live in this area they must be fed (be within the range of a water well and get food from markets or transports). It also helps to provide them with work and goods to buy. They must be within range of a market or connected to transport (like most buildings).</p> - <p style="hp">There are 3 different types of residential areas: Low, Medium and High density housing. These have different birth and death rates associated with them. This gives you some control over your population.</p> + <p style="hp">This is where people live. To encourage people to live in this area they must have water and food. It also helps to provide them workplaces, electricity and goods. They must be connected to transport. Beeing in range of a market is benefitial. Sports fields increase desirability. Keep your people away from pollution</p> + <p style="hp">There are 3 different types of residential areas: Low, Medium and High density housing. These have different birth and death rates associated with them. This gives you some control over your population. Health centers also affect birth and death rates.</p> <p style="hp">Later in the game, if you have sufficient technology, you can build more 'modern' housing, even tower blocks.</p> - <p style="hp">This is a low density housing (hightech)</p> - <img src="images/tiles/reslowhi.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> - <p style="hp">This is a medium density housing (hightech)</p> - <img src="images/tiles/resmedhi.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> - <p style="hp">This is a high density housing (hightech)</p> - <img src="images/tiles/reshihi.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> + <p style="hp">This is a low density housing (hightech)</p> + <img src="images/tiles/reslowhi.png" halign="center"/> - <p style="hsubtitle">See also:</p> + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> + + <p style="hp">This is a medium density housing (hightech)</p> + <img src="images/tiles/resmedhi.png" halign="center"/> + + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> + + <p style="hp">This is a high density housing (hightech)</p> + <img src="images/tiles/reshihi.png" halign="center"/> + + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="market">Market</a></li> <li><a href="transport">Transport</a></li> - <li><a href="waterwell">Water well</a></li> -</Document> - + <li><a href="waterwell">Water well</a></li> + <li><a href="pollution">Pollution</a></li> + <li><a href="farm">Farms</a></li> + <li><a href="commodities">Commodities</a></li> + <li><a href="health">Health Centre</a></li> + <li><a href="cricket">Basketball courts</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/river.xml lincity-ng-2.9~git20150314/data/help/en/river.xml --- lincity-ng-2.0/data/help/en/river.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/river.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,11 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Rivers/Water</p> <p style="hp">Rivers are here mainly to get in your way. They are expensive to bridge, dig and demolish. Their only use is that ports must be connected to rivers.</p> - <p style="hp">There are two types of water. Lakes are water that is <b>not</b> connected to the river system; rivers are water that <b>is</b> connected to the river system. The river is defined as all the water that is present at the start of the game. For example, when an ore mine exhausts its supply and becomes water, it becomes a piece of river if connected to the river. Otherwise it becomes a lake.</p> + <p style="hp">There are two types of water. Lakes are water that is not connected to the river system; rivers are water that is connected to the river system. The river is defined as all the water that is present at the start of the game. For example, when an ore mine exhausts its supply and becomes water, it becomes a piece of river if connected to the river. Otherwise it becomes a lake.</p> <p style="hp">If you demolish some river both sides of your gap are still part of the river system.</p> - <p style="hp">You can build a brige by building transport on the river.</p> - <p style="hp">Once a piece of water is part of the river system it <b>cannot</b> revert to being a lake. Water which is part of the river is indicated as <b>navigatable</b> by the <a href="query">query tool</a>.</p> - <p style="hp">Power lines can transfer power under <b>one</b> piece of river in the same way that it can pass under transport.</p> -</Document> + <p style="hp">You can build a brige by building transport on the river.</p> + <p style="hp">Once a piece of water is part of the river system it cannot revert to being a lake. Water which is part of the river is indicated as navigatable by the query tool.</p> + <p style="hp">Power lines can transfer power under one piece of river in the same way that it can pass under transport.</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/road.xml lincity-ng-2.9~git20150314/data/help/en/road.xml --- lincity-ng-2.0/data/help/en/road.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Roads</p> <p style="hp">Roads carry more than tracks, but not as much as railways. They produce more pollution than railways as well. They are cheaper to buy and maintain than railways - there had to be a reason for them!</p> - - <p style="hp">This is a road</p> - <img src="images/tiles/roadud.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + + <p style="hp">This is a road</p> + <img src="images/tiles/roadud.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="transport">Transport</a></li> - <li><a href="commune">Commune</a></li> <li><a href="pollution">Pollution</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/rocket.xml lincity-ng-2.9~git20150314/data/help/en/rocket.xml --- lincity-ng-2.0/data/help/en/rocket.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Rocket Launch Pad</p> <p style="hp">Rockets enable you to evacuate your population to another world, and thus end the game.</p> <p style="hp">You must have five successful unmanned launches before you can start evacuating. Each successful evacuation rocket holds 1000 people.</p> - <p style="hp">If any launch fails, you must launch a further 5 unmanned rockets before you can evacuate any more people.</p> - <p style="hp">The tech level at the time of launch is the probability of a successful launch. This means that if your tech level is, say, 80%, then you have only a four in five chance of success. 100% or more means that a launch will always succeed. (Some of the <i>first 5</i> may still fail.) You must build a new launch pad for each rocket you build.</p> + <p style="hp">The tech level at the time of launch is the probability of a successful launch. This means that if your tech level is, say, 80%, then you have only a four in five chance of success. 100% or more means that a launch will always succeed. You must build a new launch pad for each rocket you build.</p> <p style="hp">Rocket Launch Pads do not need to be connected to transport, they can get all they need from local markets. They use large quantities of steel, goods, jobs and money to build. When the rocket is built you will get a message asking you if you want to launch now or later. If you choose later, then you can launch it when you wish by clicking on the area. You can have any number of rockets waiting to launch.</p> <p style="hp">When a rocket is built, but waiting to be launched, it no longer uses steel, goods or jobs, but still continues to cost a lot of money.</p> - <p style="hp">This is a Rocket Launch Pad</p> - <img src="images/tiles/rocket5.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">Hint, use the evacuate tool to recover the unused resources before you demolish a used lunch pad.</p> + + <p style="hp">This is a Rocket Launch Pad</p> + <img src="images/tiles/rocket5.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="market">Market</a></li> - <li><a href="ore">Ore</a></li> - <li><a href="commune">Commune</a></li> - <li><a href="steel">Steel</a></li> - <li><a href="jobs">Jobs</a></li> -</Document> + <li><a href="commodities">Commodities</a></li> + <li><a href="evacuate">Evacuate</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/school.xml lincity-ng-2.9~git20150314/data/help/en/school.xml --- lincity-ng-2.0/data/help/en/school.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/school.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Schools</p> <p style="hp">Schools use jobs and goods to produce technology in a similar way to universities. They use far fewer jobs and goods than universities, but produce far fewer tech points. Given the choice between putting four or five schools in a given area, or a single university, it is often (but not always) better to put a university in.</p> - <p style="hp">Schools do <b>not</b> need to connect to transport, but do need to be within range of a market than can supply the quantity of jobs and goods to make the school work.</p> - <p style="hp">Schools cost money to run. You can see the total cost for the <b>last</b> year by clicking on the money button.</p> + <p style="hp">Schools do not need to connect to transport, but do need to be within range of a market than can supply the quantity of jobs and goods to make the school work.</p> + <p style="hp">Schools cost money to run. You can see the total cost for the last year by clicking on the money button.</p> <p style="hp">You can see when a school is working in the usual way, by clicking on it.</p> - - <p style="hp">This is a school</p> - <img src="images/tiles/school0.png" halign="center"/> - <p style="hp">and this its icon</p> - <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + + <p style="hp">This is a school</p> + <img src="images/tiles/school0.png" halign="center"/> + + <p style="hp">and this its icon</p> + <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="tech-level">Tech Level</a></li> <li><a href="market">Market</a></li> - <li><a href="university">Universities</a></li> + <li><a href="university">University</a></li> <li><a href="transport">Transport</a></li> <li><a href="goods">Goods</a></li> <li><a href="jobs">Jobs</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/slow.xml lincity-ng-2.9~git20150314/data/help/en/slow.xml --- lincity-ng-2.0/data/help/en/slow.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/slow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,14 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Slow speed</p> - <img src="images/gui/speed/normal.png"/> + + <p style="hp">Slow button:</p> + <img src="images/gui/speed/normal.png" halign="center"/> <p style="hp">This is the slow button. It causes the to game run at its slowest speed. On slow machines the speed buttons may have no effect.</p> - - <p style="hsubtitle">See also:</p> - <li><a href="medium">Medium</a></li> - <li><a href="fast">Fast</a></li> -</Document> + + <p style="hsubtitle">See also:</p> + <li><a href="pause">Pause Button</a></li> + <li><a href="medium">Medium speed</a></li> + <li><a href="fast">Fast speed</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/steel.xml lincity-ng-2.9~git20150314/data/help/en/steel.xml --- lincity-ng-2.0/data/help/en/steel.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,4 +1,5 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Steel</p> <p style="hp">Steel is generally made by heavy industry (steel works). You must have attained a sufficient tech level to build a steel works. Before this, communes are your only source of steel. Communes produce a small amount of steel (from ore), so you will usually need a number of communes to provide enough steel for your needs.</p> @@ -6,11 +7,11 @@ <p style="hp">Rockets use a lot of steel, mainly to build the launch site.</p> <p style="hp">Railways also use steel for maintenance</p> - <p style="hsubtitle">See also:</p> - <li><a href="commune">Commune</a></li> - <li><a href="blacksmith">Blacksmith</a></li> - <li><a href="goods">Goods</a></li> - <li><a href="industryh">Heavy Industry</a></li> - <li><a href="industryl">Light Industry</a></li> - <li><a href="rail">Railway</a></li> -</Document> + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="blacksmith">Blacksmiths</a></li> + <li><a href="industryh">Heavy industry (Steel Works)</a></li> + <li><a href="industryl">Light industrial areas</a></li> + <li><a href="rail">Railways</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/substation.xml lincity-ng-2.9~git20150314/data/help/en/substation.xml --- lincity-ng-2.0/data/help/en/substation.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Substations</p> - <p style="hp">Substations take power packets from power lines and distribute the power to the surrounding area. You can see if, for example, your residential area is powered by clicking on the icon, then looking at the map point stats window.</p> - - <p style="hp">This is a substation</p> - <img src="images/tiles/substation-G.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + <p style="hp">Substations take power packets from power lines (MWH) and distribute the power to adjacent transport (kWH). Check the power overlay to see where you need more power. The transformators dont require any jobs to function.</p> + + <p style="hp">This is a substation</p> + <img src="images/tiles/substation-G.png" halign="center"/> + + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="msb-power">Power overlay</a></li> + <li><a href="power">Power</a></li> <li><a href="powerline">Power lines</a></li> + <li><a href="windmill">Windmills</a></li> + <li><a href="powerscoal">Coal fired power station</a></li> <li><a href="powerssolar">Solar power station</a></li> - <li><a href="commune">Commune</a></li> - <li><a href="steel">Steel</a></li> - <li><a href="jobs">Jobs</a></li> -</Document> - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/sustain.xml lincity-ng-2.9~git20150314/data/help/en/sustain.xml --- lincity-ng-2.0/data/help/en/sustain.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,33 +1,13 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Sustainability progress window</p> <p style="hp">This window contains six coloured lines. When they all reach the right hand side of the window, you have a sustainable economy.</p> - <li> - <span color="orange">Mining</span> (orange) you are not digging any ore or - coal, and are not dumping waste on a tip. - </li> - <li> - <span color="gray">Trade</span> (black) you are not importing or exporting. - </li> - <li> - <span color="green">Money</span> (green) your money is stable or rising, - this means you cannot build anything but the cheapest of areas. - </li> - <li> - <span color="blue">Population</span> (blue) your population is stable to within - 2% of the value when the 180 year count started. If it goes outside of - this band, the new population will be the new value and the year count - will be set back to zero. Also, your population must be at least 5000. - </li> - <li> - <span color="yellow">Technology</span> (yellow) your technology is increasing or - falling by only a very small amount. If it falls by more than 1%, the year - is set back to zero. Also, your tech level must be at least 50%. - </li> - <li> - <span color="red">Fire</span> (red) all areas that can catch fire have fire - cover. The following areas do *not* have to have fire cover: monuments, - ore mines, power lines and rockets. - </li> + <li><span color="orange">Mining</span> (orange) you are not digging any ore or coal, and are not dumping waste on a tip.</li> + <li><span color="gray">Trade</span> (black) you are not importing or exporting.</li> + <li><span color="green">Money</span> (green) your money is stable or rising, this means you cannot build anything but the cheapest of areas.</li> + <li><span color="blue">Population</span> (blue) your population is stable to within 2% of the value when the 180 year count started. If it goes outside of this band, the new population will be the new value and the year count will be set back to zero. Also, your population must be at least 5000.</li> + <li><span color="yellow">Technology</span> (yellow) your technology is increasing or falling by only a very small amount. If it falls by more than 1%, the year is set back to zero. Also, your tech level must be at least 50%.</li> + <li><span color="red">Fire</span> (red) all areas that can catch fire have fire cover. The following areas do *not* have to have fire cover: monuments, ore mines, power lines, tracks, roads, rails and rockets.</li> <p style="hp">Years required for sustainability: Mining=180 Trade=180 Money=60 Population=60 Technology=120 Fire=60</p> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tech-level.xml lincity-ng-2.9~git20150314/data/help/en/tech-level.xml --- lincity-ng-2.0/data/help/en/tech-level.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tech-level.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Tech Level</p> <p style="hp">Your city's technology level determines a number of things, such as what you can build and the efficiency of certain processes.</p> <p style="hp">To increase your technology, you must build (and supply with the appropriate inputs) Monuments, Schools and Universities.</p> - <p style="hp">When your tech level is very low you can only build monuments. When a few of these have been around for a while, you will then <i>invent</i> schools. Schools produce more technology than monuments.</p> - <p style="hp">When your tech level reaches a higher value still, you will <i>invent</i> universities. These produce even more technology than schools, but are <b>very</b> resource hungry.</p> - <p style="hp">The more technology you have, the faster it <i>erodes</i>. This means that the higher you want your tech level to be, the more schools and universities you will need.</p> - <p style="hp">Also, be aware that if for some reason you need to take out, say, a university or two (or they are suddenly starved of resources) your tech level is likely to start <b>falling</b>.</p> + <p style="hp">When your tech level is very low you can only build monuments. When a few of these have been around for a while, you will then invent schools. Schools produce more technology than monuments.</p> + <p style="hp">When your tech level reaches a higher value still, you will invent universities. These produce even more technology than schools, but are very resource hungry.</p> + <p style="hp">The more technology you have, the faster it erodes. This means that the higher you want your tech level to be, the more schools and universities you will need.</p> + <p style="hp">Also, be aware that if for some reason you need to take out, say, a university or two (or they are suddenly starved of resources) your tech level is likely to start falling.</p> <p style="hp">Percentage of chance for a successful rocket launch is equal to your tech-level.</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="monument">Monuments</a></li> <li><a href="school">Schools</a></li> - <li><a href="university">Universities</a></li> + <li><a href="university">University</a></li> <li><a href="rocket">Rocket Launch Pad</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tip.xml lincity-ng-2.9~git20150314/data/help/en/tip.xml --- lincity-ng-2.0/data/help/en/tip.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,16 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Tips (rubbish dumps)</p> <p style="hp">Tips provide a place to put your rubbish. If you accumulate too much at markets, they are forced to burn some. This makes quite a lot of pollution so you should be wary of letting rubbish accumulate.</p> <p style="hp">As the tip is filled, it slowly turns into a hill, which is grassed over when it is full.</p> - <p style="hp">Transport connects to the top left hand corner of the tip as usual.</p> - <p style="hp">You can see when a tip is working in the usual way, by clicking on it, and every so often the animation will come to life.</p> - - <p style="hp">This is a tip</p> - <img src="images/tiles/tip0.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> - - <p style="hsubtitle">See also:</p> - <li><a href="market">Markets</a></li> -</Document> + <p style="hp">If you clean up your city the trash from the tip can be re-excavated and processed in forests, electrified farms and recycling centers.</p> + <p style="hp">You can see when a tip is working in the usual way, by clicking on it</p> + + <p style="hp">This is a tip</p> + <img src="images/tiles/tip0.png" halign="center"/> + + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="waste">Waste</a></li> + <li><a href="market">Market</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="farm">Farms</a></li> + <li><a href="recycle">Recycle centres</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/track.xml lincity-ng-2.9~git20150314/data/help/en/track.xml --- lincity-ng-2.0/data/help/en/track.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/track.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Tracks</p> <p style="hp">Tracks are the simplest, and cheapest, form of transport. They also have the lowest capacity. On the other hand, they produce no pollution.</p> - - <p style="hp">This is a track</p> - <img src="images/tiles/trackud.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> - - <p style="hsubtitle">See also:</p> + + <p style="hp">This is a track</p> + <img src="images/tiles/trackud.png" halign="center"/> + + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> + + <p style="hsubtitle">See also:</p> <li><a href="transport">Transport</a></li> - <li><a href="commune">Communes</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/transport.xml lincity-ng-2.9~git20150314/data/help/en/transport.xml --- lincity-ng-2.0/data/help/en/transport.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,35 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Transport</p> <p style="hp">There are three types of transport in Lincity: tracks, roads and railways.</p> <p style="hp">There is a fourth form that consists of 'hopping across a field' to reach a market. This is a very short range form of trading and will not be referred to as transport again. However, it is very important, so you should read again <a href="market"> markets</a>.</p> - <p style="hp">Tracks, roads and railways are used to carry food, jobs, goods, coal, ore, steel and wastes between areas. Transport between markets, transport for buildings out of range of a market (this is generally a bad idea) and transport for building that explicitely need it:</p> - <li>Communes just need to be adjacent to transport</li> - <li>Light industries, ore mines, tips, ports, coal mines, heavy industries and recycling centers <b>need to</b> connect to transport at the top left hand corner. You will see the transport "bend", thus show the connection.</li> - <li>An exception is the coal power station: the top left corner is used for connection to the electric line, so the transport connect just near.</li> - <p style="hp">For example, an heavy industry can connect by road to a coal mine, and by rail to other resources like ore mine and markets.</p> - + <p style="hp">The transportation network can pick up, distribute and deliever any kind of commodity, except for MWh which are flowing in power lines. All steps to, inside and from the transportation network require direct adjacency. The market behaves differently.</p> <p style="hp">To cross a river with transport, simply build the transport over the river and you will create a bridge. Bridges are much more expensive than normal transport.</p> - <p style="hp">Roads and Rail causes yearly costs (for maintenance) and pollution (and more pollution if they carry lots of wastes).</p> - <p style="hsubtitle">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="track">Tracks</a></li> <li><a href="road">Roads</a></li> <li><a href="rail">Railways</a></li> - - <li><a href="commune">Communes</a></li> - <li><a href="coalmine">Coal mines</a></li> - <li><a href="powercoal">Coal fired power station</a></li> - <li><a href="tip">Tips</a></li> - <li><a href="recycle">Recycling centres</a></li> - <li><a href="oremine">Ore mines</a></li> - <li><a href="industryl">Light industry</a></li> - <li><a href="industryh">Heavy industry</a></li> - <li><a href="port">Ports</a></li> - + <li><a href="market">Market</a></li> + <li><a href="powerline">Power lines</a></li> + <li><a href="commodities">Commodities</a></li> <li><a href="finance">Finance window</a></li> - <li><a href="msb-transport">Transportation and market overlay</a></li> - -</Document> + <li><a href="msb-transport">Transportation overlay</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tutorial-advanced.xml lincity-ng-2.9~git20150314/data/help/en/tutorial-advanced.xml --- lincity-ng-2.0/data/help/en/tutorial-advanced.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tutorial-advanced.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Advanced features </p> -<p style="hsubtitle">Markets and Transports </p> -<p style="hp">Double click on a market in the main screen opens a windows. This is to control the <b> exchanges between markets and transports</b>. </p> -<li>buy is what the market buys from the transport (so market stock will increase) </li> -<li>sell is the opposite. </li> + <p style="htitle">Advanced features</p> -<p style="hp">This feature is rarely used, except when you want to precisely prevent something to happen. </p> - -<p style="hsubtitle">Sustainable development</p> -<p style="hp">The fourth tab of the miniwindow shows progress bars for sustainable development. </p> -<p style="hp">It is strongly recommended to save the game before you let it run for a long time and see if you have reached a sustainable state. If something goes very wrong (starvation for example) you can restart from the saved game :-) </p> -<p style="hp">Watching at the total markets stocks (the miniwindow with progress bars) should prevent big troubles. From time to time check the sustainable progression in the ECO miniwindow should be enough. </p> - -<li>Hint: Beware of shanties and wastes in markets... </li> -<p style="hp"></p> -</Document> + <p style="hsubtitle">Markets and Transports</p> + <p style="hp">Double click on a market in the main screen opens a windows. This is to control the <b> exchanges between markets and transports</b>.</p> + <li>buy is what the market buys from the transport (so market stock will increase)</li> + <li>sell is the opposite.</li> + <p style="hp">This feature is rarely used, except when you want to precisely prevent something to happen.</p> + <p style="hsubtitle">Sustainable development</p> + <p style="hp">The fourth tab of the miniwindow shows progress bars for sustainable development.</p> + <p style="hp">It is strongly recommended to save the game before you let it run for a long time and see if you have reached a sustainable state. If something goes very wrong (starvation for example) you can restart from the saved game :-)</p> + <p style="hp">Watching at the total markets stocks (the miniwindow with progress bars) should prevent big troubles. From time to time check the sustainable progression in the ECO miniwindow should be enough.</p> + <li>Hint: Beware of shanties and wastes in markets...</li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tutorial-aim.xml lincity-ng-2.9~git20150314/data/help/en/tutorial-aim.xml --- lincity-ng-2.0/data/help/en/tutorial-aim.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tutorial-aim.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,22 +1,16 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Aim of the game </p> -<p style="hp">There are 2 ways to "win" the game:</p> -<li>Reach <a href="sustain">sustainable economy </a> (you can still play after) </li> -<li>Evacuate all the population with <a href="rocket">spaceships </a> to another planet, then the game stops. </li> -<p style="hp"></p> - -<p style="hp">Currently there is only one way to lose:</p> -<li>Everybody is dead because of starvation or pollution. (you know that you need at least 2 people to create a population ;-) </li> -<p style="hp"></p> - -<p style="hp">You will need to increase your tech-level to get new possible buildings and industries. You have to manage the growth of population, and take care of various needs and economical balance. </p> -<p style="hp"></p> - -<p style="hp">See also:</p> -<li><a href="tutorial-basics">First steps</a></li> -<li><a href="tutorial-advanced">Advanced-features</a></li> -<li><a href="tutorial-scenario">Pre-defined scenario</a></li> - -</Document> + <p style="htitle">Aim of the game</p> + <p style="hp">There are 2 ways to "win" the game:</p> + <li>Reach <a href="sustain">sustainable economy </a> (you can still play after)</li> + <li>Evacuate all the population with <a href="rocket">spaceships </a> to another planet, then the game stops.</li> + <p style="hp">Currently there is only one way to lose:</p> + <li>Everybody is dead because of starvation or pollution. (you know that you need at least 2 people to create a population ;-)</li> + <p style="hp">You will need to increase your tech-level to get new possible buildings and industries. You have to manage the growth of population, and take care of various needs and economical balance.</p> + <p style="hsubtitle">See also:</p> + <li><a href="tutorial-basics">First steps</a></li> + <li><a href="tutorial-advanced">Advanced features</a></li> + <li><a href="tutorial-scenario">Pre-defined scenarii</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/en/tutorial-basics.xml --- lincity-ng-2.0/data/help/en/tutorial-basics.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,49 +1,40 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">First steps </p> -<p style="hp">Choose "new game " > "random village". Other scenarii are for more or less experienced players. </p> -<p style="hp">Notice that the random village contains basic resources: </p> -<li>Farms for feeding markets with foods </li> -<li>A Water well for people</li> -<li>Communes which produces charcoal and small amount of ore and steel </li> -<li>Residential areas</li> -<li>Pottery</li> -<li>Tracks</li> - -<p style="hp">Clicking on a building (in the main screen) displays information about it in the information window in lower right.</p> - -<p style="hsubtitle">Market </p> -<p style="hp">Market is a key building in Lincity. They are mandatory for nearly all local trades. You <b> must </b> read the help on <a href="market">market </a> :-). <i>Of course, when a market is empty it cannot sell the corresponding item, and when it is full it cannot buy more. This may help you to understand why some building does not work (probably they cannot find what they need, or they cannot sell their production)</i> </p> - -<p style="hsubtitle">Transport </p> -<p style="hp"><a href="transport">Transport </a> is needed for long distance exchanges, and for some specific activities (it is then written in the corresponding help message, for example communes). Like markets they have a limited capacity and can get saturated.</p> - -<p style="hp">If a 'normal' building is not in the range of a market, then it must be connected to transport. But remember that roads and rails have a yearly cost, so unless you really want to isolate one building (e.g. a monument) it is generally better (and cheaper) to use markets when needed. </p> - -<p style="hp">In the initial village tracks are not needed. But they will be useful when the village develops.</p> - -<p style="hsubtitle">Money </p> -<p style="hp">Productions are taxed and thus earn you money. In the miniwindow, the third tab is <a href="finance"> Finance window </a>. Take care of not investing too much too quickly: when your money is negative, you cannot build some things, and you have per year cost due to the debt. This can lead to bankruptcy (see <a href="tutorial-scenario"> Hard-time scenario </a>. </p> - -<p style="hsubtitle">Developing the city </p> -<p style="hp">Remember people eat food and drink water, or die. To control population growth, you have to find a balance in the kind of <a href="residential"> Residential area </a> you build (they have different rate of birth/death). The new population will allow more jobs, but also need more food, goods, jobs ... </p> -<p style="hp">You will have to augment your production (add potteries, blacksmith) and at the same time take care that they are supplied. So you will also need to add communes accordingly. </p> -<p style="hp">To get new buildings you must raise your <a href="tech-level"> Tech Level </a>.</p> -<p style="hp"> At some point you will have to choose your aim: either <a href="sustain"> Sustainable economy </a> or evacuation with <a href="rocket"> spaceships </a>.</p> - -<p style="hp">You'll have to check very often the <a href="pbar"> total market stocks </a>. Also minimaps can give you better insight on your economy, and for precise investigation remember that clicking on a building (in the main screen) displays information about it in the information window in lower right. </p> - -<li>Hint: Make one or two changes then wait a little (read help files ;-) or put the game at a faster speed, and watch how your economic indicators vary. </li> -<p style="hp"></p> -<p style="hp">Enjoy.</p> -<p style="hp"></p> - -<p style="hp">See also:</p> -<li><a href="tutorial-advanced">Tutorial Advanced-features</a></li> -<li><a href="tutorial-scenario">Tutorial Pre-defined scenario</a></li> -<li><a href="msb-starve">Starvation overlay</a></li> -<li><a href="msb-ub40">Unemployment overlay</a></li> - - -</Document> - + <p style="htitle">First steps</p> + <p style="hp">Choose "new game " > "random village". Other scenarii are for more or less experienced players.</p> + <p style="hp">Notice that the random village contains basic resources:</p> + <li>Farms for feeding markets with foods</li> + <li>A Water well for people</li> + <li>Communes which produces charcoal and small amount of ore and steel</li> + <li>Residential areas</li> + <li>Pottery</li> + <li>Tracks</li> + <p style="hp">Clicking on a building (in the main screen) displays information about it in the information window in lower right.</p> + + <p style="hsubtitle">Market</p> + <p style="hp">Market is a key building in Lincity. They are mandatory for nearly all local trades. You <b> must </b> read the help on <a href="market">market </a> :-). <i>Of course, when a market is empty it cannot sell the corresponding item, and when it is full it cannot buy more. This may help you to understand why some building does not work (probably they cannot find what they need, or they cannot sell their production)</i></p> + + <p style="hsubtitle">Transport</p> + <p style="hp"><a href="transport">Transport </a> is needed for long distance exchanges, and for some specific activities (it is then written in the corresponding help message, for example communes). Like markets they have a limited capacity and can get saturated.</p> + <p style="hp">If a 'normal' building is not in the range of a market, then it must be connected to transport. But remember that roads and rails have a yearly cost, so unless you really want to isolate one building (e.g. a monument) it is generally better (and cheaper) to use markets when needed.</p> + <p style="hp">In the initial village tracks are not needed. But they will be useful when the village develops.</p> + + <p style="hsubtitle">Money</p> + <p style="hp">Productions are taxed and thus earn you money. In the miniwindow, the third tab is <a href="finance"> Finance window </a>. Take care of not investing too much too quickly: when your money is negative, you cannot build some things, and you have per year cost due to the debt. This can lead to bankruptcy (see <a href="tutorial-scenario"> Hard-time scenario </a>.</p> + + <p style="hsubtitle">Developing the city</p> + <p style="hp">Remember people eat food and drink water, or die. To control population growth, you have to find a balance in the kind of <a href="residential"> Residential area </a> you build (they have different rate of birth/death). The new population will allow more jobs, but also need more food, goods, jobs ...</p> + <p style="hp">You will have to augment your production (add potteries, blacksmith) and at the same time take care that they are supplied. So you will also need to add communes accordingly.</p> + <p style="hp">To get new buildings you must raise your <a href="tech-level"> Tech Level </a>.</p> + <p style="hp">At some point you will have to choose your aim: either <a href="sustain"> Sustainable economy </a> or evacuation with <a href="rocket"> spaceships </a>.</p> + <p style="hp">You'll have to check very often the <a href="pbar"> total market stocks </a>. Also minimaps can give you better insight on your economy, and for precise investigation remember that clicking on a building (in the main screen) displays information about it in the information window in lower right.</p> + <li>Hint: Make one or two changes then wait a little (read help files ;-) or put the game at a faster speed, and watch how your economic indicators vary.</li> + <p style="hp">Enjoy.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="tutorial-advanced">Advanced features</a></li> + <li><a href="tutorial-scenario">Pre-defined scenarii</a></li> + <li><a href="msb-starve">Starvation overlay</a></li> + <li><a href="msb-ub40">Unemployment overlay</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tutorial-overview.xml lincity-ng-2.9~git20150314/data/help/en/tutorial-overview.xml --- lincity-ng-2.0/data/help/en/tutorial-overview.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tutorial-overview.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Overview of the screen </p> - -<p style="hp"><b>Top left </b>contains icons dock with tools (query and bulldoze) and all the building you can get during the game. </p> -<li>Left-Click on an icon to open the drawer and see more stuff. </li> -<li>Right-click on an icon to get related help. </li> -<li>Just wait with mouse pointer will popup a mini help message. </li> -<p style="hp"></p> - -<p style="hp"><b>Lower left </b>is game speed control </p> -<p style="hp"></p> - -<p style="hp"><b>Lower right </b>contains all the "information tools": miniscreen with 4 tabs, and below mini-icons for various informations. Click on them to see what happens. </p> -<p style="hp"></p> - -<p style="hp">Try keyboard and mouse (left, middle and right click and wheel...) , F1 for Help. </p> - -<p style="hp">See also:</p> -<li><a href="tutorial-basics">First steps</a></li> -<li><a href="tutorial-advanced">Advanced-features</a></li> -<li><a href="tutorial-scenario">Pre-defined scenario</a></li> - -</Document> - + <p style="htitle">Overview of the screen</p> + <p style="hp"><b>Top left </b>contains icons dock with tools (query and bulldoze) and all the building you can get during the game.</p> + <li>Left-Click on an icon to open the drawer and see more stuff.</li> + <li>Right-click on an icon to get related help.</li> + <li>Just wait with mouse pointer will popup a mini help message.</li> + <p style="hp"><b>Lower left </b>is game speed control</p> + <p style="hp"><b>Lower right </b>contains all the "information tools": miniscreen with 4 tabs and 2 scroll buttons, and below mini-icons for various informations. Click on them to see what happens.</p> + <p style="hp">Try keyboard and mouse (left, middle and right click and wheel...) , F1 for Help.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="tutorial-basics">First steps</a></li> + <li><a href="tutorial-advanced">Advanced features</a></li> + <li><a href="tutorial-scenario">Pre-defined scenarii</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/en/tutorial-scenario.xml --- lincity-ng-2.0/data/help/en/tutorial-scenario.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,14 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Pre-defined scenarii </p> -<p style="hp">Under "new game" </p> + <p style="htitle">Pre-defined scenarii</p> + <p style="hp">Under "new game"</p> -<p style="hsubtitle"> Easy</p> -<li>Good time </li> - -<li>Beach (remember that people eat food or die ;-) </li> - -<p style="hsubtitle">Hard </p> -<li>"hard-time": try to avoid bankruptcy. Careful analysis of the whole city is needed, and drastic measures are needed to cut costs and make money. It is hard but possible, even possible to reach sustainable development. </li> -<li>"extreme_arid": the land is very poor in water, so farms and communes ned to be carefully placed for maximum efficiency.</li> -<li>"extrem_wetland": the land is nearly flooded, so it is very difficult to build the city.</li> -<p style="hp"></p> -</Document> + <p style="hsubtitle">Easy</p> + <li>Good time</li> + <li>Beach (remember that people eat food or die ;-)</li> + <p style="hsubtitle">Hard</p> + <li>"hard-time": try to avoid bankruptcy. Careful analysis of the whole city is needed, and drastic measures are needed to cut costs and make money. It is hard but possible, even possible to reach sustainable development.</li> + <li>"extreme_arid": the land is very poor in water, so farms and communes ned to be carefully placed for maximum efficiency.</li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/tutorial.xml lincity-ng-2.9~git20150314/data/help/en/tutorial.xml --- lincity-ng-2.0/data/help/en/tutorial.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/tutorial.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,10 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Tutorial</p> - <li><a href="tutorial-aim">Aim of the game</a></li> - <li><a href="tutorial-overview">Overview of screen</a></li> + <li><a href="tutorial-overview">Overview of the screen</a></li> <li><a href="tutorial-basics">First steps</a></li> - <li><a href="tutorial-advanced">Advanced-features</a></li> - <li><a href="tutorial-scenario">Pre-defined scenario</a></li> -</Document> - + <li><a href="tutorial-advanced">Advanced features</a></li> + <li><a href="tutorial-scenario">Pre-defined scenarii</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/university.xml lincity-ng-2.9~git20150314/data/help/en/university.xml --- lincity-ng-2.0/data/help/en/university.xml 2009-01-25 20:21:02.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,25 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">University</p> - <p style="hp">Universities help to increase your technology level. In the process they consume goods and jobs. They produce more than schools for a given goods/jobs input. However they cunsume a lot of goods and jobs and also cost quite a lot of money to run, so you should have the economic and industrial capacity to supply them.</p> + <p style="hp">Universities help to increase your technology level. In the process they consume goods and jobs. They produce more than schools for a given goods/jobs input. However they consume a lot of goods and jobs and also cost quite a lot of money to run, so you should have the economic and industrial capacity to supply them.</p> <p style="hp">You will need a number of universities to achieve a tech level close to 100%</p> <p style="hp">Universities do not need to be connected to transport; they can get all their requirements from markets within range and with enough jobs and goods available.</p> <p style="hsubtitle">NOTE</p> - <p style="hp">You <b>must</b> have 5 schools per university to supply it with students.</p> + <p style="hp">You must have 4 schools per university to supply them with students.</p> - <p style="hp">This is a University</p> - <img src="images/tiles/university.png" halign="center"/> - <p style="hp">and this is its icon</p> - <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + <p style="hp">This is a University</p> + <img src="images/tiles/university.png" halign="center"/> - <p style="hsubtitle">See also:</p> + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + + <p style="hsubtitle">See also:</p> + <li><a href="tech-level">Tech Level</a></li> <li><a href="market">Market</a></li> <li><a href="transport">Transport</a></li> <li><a href="goods">Goods</a></li> <li><a href="jobs">Jobs</a></li> - <li><a href="schools">Schools</a></li> - <li><a href="tech-level">Technology Level</a></li> -</Document> + <li><a href="school">Schools</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/waste.xml lincity-ng-2.9~git20150314/data/help/en/waste.xml --- lincity-ng-2.0/data/help/en/waste.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/waste.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">Waste</p> + <p style="hp">Waste is produced whenever goods are consumed. It may be put to a landfill, processed at recycle centres or simply pile up on transport and markets. However, if to much waste piles up it catches fire and causes heavy air pollution.</p> + <p style="hp">Electricified farms and forests (aka communes) can bio-degrade a little waste.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="tip">Tips (rubbish dumps)</a></li> + <li><a href="recycle">Recycle centres</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="farm">Farms</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/waterwell.xml lincity-ng-2.9~git20150314/data/help/en/waterwell.xml --- lincity-ng-2.0/data/help/en/waterwell.xml 2009-01-25 20:21:04.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/waterwell.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,13 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Water well</p> - <p style="hp">Provide water to houses within the range. Lack of water will have the same consequences as lack of food. Informations is shown in starvation overlay/minimap.</p> + <p style="hp">Water wells provide frash water. Water flows in underground pipes along transport. Lack of water will have the same consequences as lack of food. Informations is shown in starvation overlay/minimap. Beware, too heavy pollution will render the water not drinkable.</p> - <p style="hp">See also:</p> + <p style="hsubtitle">See also:</p> <li><a href="food">Food</a></li> + <li><a href="water">Water</a></li> + <li><a href="transport">Transport</a></li> <li><a href="msb-starve">Starvation overlay</a></li> -</Document> + <li><a href="pollution">Pollution</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/water.xml lincity-ng-2.9~git20150314/data/help/en/water.xml --- lincity-ng-2.0/data/help/en/water.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/water.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">Water</p> + <p style="hp">Water is provided by water wells and flows in pipes underneath your cities transportation network. Residential area must be connected to waterpipes. Forests (aka communes) and electrified farms may use water to max out their fertiliy by irrigation.</p> + <p style="hp">Electricified farms and forests (aka communes) can bio-degrade a little waste.</p> + + <p style="hsubtitle">See also:</p> + <li><a href="commodities">Commodities</a></li> + <li><a href="waterwell">Water well</a></li> + <li><a href="residential">Residential area</a></li> + <li><a href="commune">Forests</a></li> + <li><a href="farm">Farms</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/en/windmill.xml lincity-ng-2.9~git20150314/data/help/en/windmill.xml --- lincity-ng-2.0/data/help/en/windmill.xml 2009-01-25 20:21:03.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/en/windmill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,36 +1,28 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Windmills</p> - <p style="hp">Windmills provide power for residences and farms. They - enable the farmer to process food more efficiently and make residences - more desirable.</p> - <p style="hp">Providing power to residences makes the people there use - more goods.</p> - <p style="hp">Low tech windmills do <b>not</b> provide power to industries. - (Heavy industry can get power from coal, light industry needs <i>real</i> - electricity to be powered, they still work without power at a lower - output) Windmills cannot directly provide power to industries and - recyclers.</p> - <p style="hp">Windmills also need manpower for producing power. If a - windmill does not have enough jobs, it will produce less power and it - will produce no power at all if it has no jobs.</p> - + <p style="hp">Wooden windmills provide power for residences and farms. They enable the farmer to process food more efficiently and make residences more desirable.</p> + <p style="hp">Providing power to residences makes the people there use more goods.</p> + <p style="hp">Windmills also need manpower for producing power. If a windmill does not have enough jobs, it will produce less power and it will produce no power at all if it has no jobs.</p> <p style="hp">There are two forms of windmills.</p> - <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> - <p style="hp">The first is a low-tech 'wooden' windmill.</p> - <img src="images/tiles/windmill1w.png" halign="center"/> - <p style="hp">The second is a 'modern' wind-farm type.</p> - <img src="images/tiles/windmill1g.png" halign="center"/> + + <p style="hp">There are two forms of windmills:</p> + <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> + + <p style="hp">The first is a low-tech 'wooden' windmill. It provides kWh for the local neighborhood:</p> + <img src="images/tiles/windmill1w.png" halign="center"/> + + <p style="hp">The second is a 'modern' wind-farm type. It provides MWh to the cities power grid:</p> + <img src="images/tiles/windmill1g.png" halign="center"/> <p style="hp">The type you get depends on your tech-level when you build it.</p> - <p style="hp">High tech windmills can supply power lines.</p> - - <p style="hsubtitle">See also:</p> - <li><a href="substation">Substation</a></li> + + <p style="hsubtitle">See also:</p> + <li><a href="power">Power</a></li> + <li><a href="substation">Substations</a></li> <li><a href="powerline">Power lines</a></li> - <li><a href="residential">Residential</a></li> - <li><a href="tech-level">Tech-level</a></li> + <li><a href="tech-level">Tech Level</a></li> <li><a href="msb-power">Power overlay</a></li> - <li><a href="powersolar">Solar power station</a></li> - - -</Document> + <li><a href="powerscoal">Coal fired power station</a></li> + <li><a href="powerssolar">Solar power station</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/fr/blacksmith.xml lincity-ng-2.9~git20150314/data/help/fr/blacksmith.xml --- lincity-ng-2.0/data/help/fr/blacksmith.xml 2009-01-25 20:21:05.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Forgeron</p> <p style="hp">Les Forgerons transforment le fer et le charbon en objets et en biens. Vous les utiliserez principalement au début du jeu. Bien sur, ils consomment des emplois.</p> - <p style="hp">Avant d'avoir des aciéries, vous aurez besoin de communes pour produire l'acier. 5 à 6 communes sont recommandées pour chaque forgeron.</p> + <p style="hp">Avant d'avoir des aciéries, vous aurez besoin de carbonnerie pour produire l'acier. 5 à 6 carbonneires sont recommandées pour chaque forgeron.</p> <p style="hp">Les forgerons n'ont pas besoin d'être connectés aux transports. Ils puisent leurs ressources dans les marchés de leur périmètre.</p> <p style="hp">Vous voyez l'activité d'un forgeron de la façon habituelle, en cliquant dessus, et selon la vitesse de l'animation.</p> <p style="hp">Ceci est un Forgeron</p> @@ -13,7 +13,7 @@ <p style="hsubtitle">Voir aussi:</p> <li><a href="market">Marché</a></li> <li><a href="ore">Minerai</a></li> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="steel">Acier</a></li> <li><a href="jobs">Emplois</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/fr/button-index.xml lincity-ng-2.9~git20150314/data/help/fr/button-index.xml --- lincity-ng-2.0/data/help/fr/button-index.xml 2009-01-25 20:21:05.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -56,7 +56,7 @@ <!--<p style="subtitle">Mine</p>--> <img src="images/gui/buttonpanel/mining/commune.png"/> - <p><a href="commune">Commune</a></p> + <p><a href="commune">Carbonnerie</a></p> <img src="images/gui/buttonpanel/mining/oremine.png"/> <p><a href="oremine">Carrière de minerai</a></p> diff -Nru lincity-ng-2.0/data/help/fr/coal.xml lincity-ng-2.9~git20150314/data/help/fr/coal.xml --- lincity-ng-2.0/data/help/fr/coal.xml 2009-01-25 20:21:05.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,12 +3,12 @@ <p style="htitle">Charbon</p> <p style="hp">Le Charbon est utilisé par les Centrales à charbon pour produire de l'électricité. Également par les Poteries, les Fabriques et les Forgerons pour la fabrication de Biens. Les Industries Lourdes utilisent du charbon quand elles n'ont pas d'électricité.</p> <p style="hp">Le charbon est extrait dans les mines de charbon. Les réserves de charbons sont limitées; vous pouvez les voir en utilisant le bouton réserve de charbon (voir mines de charbon).</p> - <p style="hp">Les Communes fournissent également un peu de charbon. Cependant elles en fournissent très peu, et ce charbon de bois suffit juste pour les poteries et les forgerons.</p> + <p style="hp">Les carbonneries fournissent également un peu de charbon. Cependant elles en fournissent très peu, et ce charbon de bois suffit juste pour les poteries et les forgerons.</p> <p style="hsubtitle">Voir aussi:</p> <li><a href="coalmine">Mines de charbon</a></li> <li><a href="powerscoal">Centrale thermique</a></li> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="pottery">Poterie</a></li> <li><a href="blacksmith">Forgeron</a></li> <li><a href="msb-coal">Surimpression Charbon</a></li> diff -Nru lincity-ng-2.0/data/help/fr/commune.xml lincity-ng-2.9~git20150314/data/help/fr/commune.xml --- lincity-ng-2.0/data/help/fr/commune.xml 2009-01-25 20:21:05.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,13 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Commune</p> - <p style="hp">Les Communes (faute de meilleur nom) sont des zones de fabrication de charbon de bois, et également de faibles quantité de minerai et d'acier.</p> - <p style="hp">Vous aurez besoin de quelques Communes pour alimenter en charbon (de bois) les poteries, forgerons et fabriques.</p> - <p style="hp">Si une commune ne produit rien pendant 10 ans, elle sera fermée et transformée en parc.</p> - <p style="hp">Les communes se connectent aux transports de n'importe quel coté</p> - <p style="hp">Le rendement dépend également de la quantité d'eau disponible dans le sous-sol (les cases "désert" n'ont pas d'eau et ne produisent rien lorsqu'on construit une commune dessus).</p> + <p style="htitle">Carbonnerie</p> + <p style="hp">Les carbonneries sont des zones de fabrication de charbon de bois, et également de faibles quantité de minerai et d'acier.</p> + <p style="hp">Vous aurez besoin de quelques carbonneries pour alimenter en charbon (de bois) les poteries, forgerons et fabriques.</p> + <p style="hp">Si une carbonnerie ne produit rien pendant 10 ans, elle sera fermée et transformée en parc.</p> + <p style="hp">Les carbonneries se connectent aux transports de n'importe quel coté</p> + <p style="hp">Le rendement dépend également de la quantité d'eau disponible dans le sous-sol (les cases "désert" n'ont pas d'eau et ne produisent rien lorsqu'on construit une carbonnerie dessus).</p> - <p style="hp">Ceci est une commune</p> + <p style="hp">Ceci est une carbonnerie</p> <img src="images/tiles/commune1.png" halign="center"/> <p style="hp">et ceci son icône</p> <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/fr/index.xml lincity-ng-2.9~git20150314/data/help/fr/index.xml --- lincity-ng-2.0/data/help/fr/index.xml 2009-01-25 20:21:06.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -13,7 +13,7 @@ <li><a href="bulldoze">Bulldozer</a></li> <li><a href="coal">Charbon</a></li> <li><a href="coalmine">Mine de charbon</a></li> -<li><a href="commune">Commune</a></li> +<li><a href="commune">Carbonnerie</a></li> <li><a href="cricket">Stade</a></li> <li><a href="export">Import-Export</a></li> <li><a href="farm">Ferme</a></li> diff -Nru lincity-ng-2.0/data/help/fr/mill.xml lincity-ng-2.9~git20150314/data/help/fr/mill.xml --- lincity-ng-2.0/data/help/fr/mill.xml 2009-01-25 20:21:06.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,7 +3,7 @@ <p style="htitle">Fabrique</p> <p style="hp">Les Fabriques convertissent les Aliments en Biens. Les aliments ? hmmm, la laine, le coton, le cuir ... sont considérés comme des aliments dans ce jeu, denrée agricole serait un terme plus exact ;-)</p> <p style="hp">Les Fabriques consomment beaucoup d'aliments, ce qui peut créer des famines si vous n'y prenez pas garde.</p> - <p style="hp">Les Fabriques doivent être à portée d'un marché disposant d'Aliments et d'Emplois, sinon elles doivent être connectées aux transports. Elles ont aussi besoin d'énergie, soit du charbon de bois (communes), soit du charbon, soit d'électricité. L'animation montre l'activité des fabriques par la fumée qui s'échappe.</p> + <p style="hp">Les Fabriques doivent être à portée d'un marché disposant d'Aliments et d'Emplois, sinon elles doivent être connectées aux transports. Elles ont aussi besoin d'énergie, soit du charbon de bois (carbonnerie), soit du charbon, soit d'électricité. L'animation montre l'activité des fabriques par la fumée qui s'échappe.</p> <p style="hp">Ceci est une Fabrique</p> <img src="images/tiles/mill1.png" halign="center"/> diff -Nru lincity-ng-2.0/data/help/fr/ore.xml lincity-ng-2.9~git20150314/data/help/fr/ore.xml --- lincity-ng-2.0/data/help/fr/ore.xml 2009-01-25 20:21:06.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,11 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Minerai</p> - <p style="hp">Le minerai est une matière première fondamentale dans le jeu. Les communes, les carrières et les centres de recyclage produisent du minerai.</p> + <p style="hp">Le minerai est une matière première fondamentale dans le jeu. Les carbonneries, les carrières et les centres de recyclage produisent du minerai.</p> <p style="hp">Les Poteries, industries légères et industries lourdes utilisent du minerai.</p> <p style="hsubtitle">Voir aussi:</p> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="oremine">Carrière de minerai</a></li> <li><a href="recycle">Centre de recyclage</a></li> <li><a href="pottery">Poterie</a></li> diff -Nru lincity-ng-2.0/data/help/fr/pottery.xml lincity-ng-2.9~git20150314/data/help/fr/pottery.xml --- lincity-ng-2.0/data/help/fr/pottery.xml 2009-01-25 20:21:06.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,7 +2,7 @@ <Document style="helpdocument"> <p style="htitle">Poterie</p> <p style="hp">Les Poteries utilisent du minerai, du charbon et des emplois pour produire des biens. Elles doivent être à portée d'un marché si elle ne sont pas connectées aux transports.</p> - <p style="hp">Quelques Communes sont suffisantes pour fournir les matières premières nécessaires. L'activité d'une poterie est visible par la fumée s'échappant du four. Si le four du bas ne produit pas de fumée, la production est inférieure à 100%.</p> + <p style="hp">Quelques carbonneries sont suffisantes pour fournir les matières premières nécessaires. L'activité d'une poterie est visible par la fumée s'échappant du four. Si le four du bas ne produit pas de fumée, la production est inférieure à 100%.</p> <p style="hp">Ceci est une poterie</p> <img src="images/tiles/pottery0.png" halign="center"/> @@ -10,7 +10,7 @@ <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> <p style="hsubtitle">Voir aussi:</p> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="transport">Transport</a></li> <li><a href="ore">Minerai</a></li> <li><a href="coal">Charbon</a></li> diff -Nru lincity-ng-2.0/data/help/fr/road.xml lincity-ng-2.9~git20150314/data/help/fr/road.xml --- lincity-ng-2.0/data/help/fr/road.xml 2009-01-25 20:21:06.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -9,7 +9,7 @@ <p style="hsubtitle">Voir aussi:</p> <li><a href="transport">Transport</a></li> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="pollution">Pollution</a></li> <li><a href="msb-transport">Surimpression Transport</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/fr/steel.xml lincity-ng-2.9~git20150314/data/help/fr/steel.xml --- lincity-ng-2.0/data/help/fr/steel.xml 2009-01-25 20:21:07.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,14 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Acier</p> - <p style="hp">L'acier est produit en toute petite quantité par les "communes" et quand le niveau technologique est suffisant par les Industries lourdes.</p> + <p style="hp">L'acier est produit en toute petite quantité par les carbonneries et quand le niveau technologique est suffisant par les Industries lourdes.</p> <p style="hp">L'acier est utilisé par les forgerons pour produire des biens. Les Industries légères peuvent fonctionner sans acier, mais alors leur production est très significativement réduite.</p> <p style="hp">La construction de fusée demande beacoup d'acier.</p> <p style="hp">La maintenance des voies ferrées consomme également de l'acier.</p> <p style="hp">La production d'acier est taxée et donc rapporte de l'argent.</p> <p style="hsubtitle">Voir aussi:</p> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="blacksmith">Forgeron</a></li> <li><a href="goods">Biens</a></li> <li><a href="industryh">Industrie lourde</a></li> diff -Nru lincity-ng-2.0/data/help/fr/transport.xml lincity-ng-2.9~git20150314/data/help/fr/transport.xml --- lincity-ng-2.0/data/help/fr/transport.xml 2009-01-25 20:21:07.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -17,7 +17,7 @@ <li><a href="road">Route</a></li> <li><a href="rail">Voie ferrée</a></li> - <li><a href="commune">Commune</a></li> + <li><a href="commune">Carbonnerie</a></li> <li><a href="industryl">Industrie légère</a></li> <li><a href="industryh">Industrie lourde</a></li> <li><a href="oremine">Carrière de minerai</a></li> diff -Nru lincity-ng-2.0/data/help/fr/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/fr/tutorial-basics.xml --- lincity-ng-2.0/data/help/fr/tutorial-basics.xml 2009-01-25 20:21:07.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -6,7 +6,7 @@ <li>un puits d'eau potable</li> <li>un marché</li> <li>Fermes, pour alimenter les marchés </li> -<li>Communes, qui produisent le charbon de bois et un peu de minerai et d'acier</li> +<li>Carbonneries, qui produisent le charbon de bois et un peu de minerai et d'acier</li> <li>Habitations</li> <li>Poterie</li> <li>Pistes</li> @@ -31,7 +31,7 @@ <p style="hsubtitle">Développer la cité </p> <p style="hp">Souvenez vous que les gens doivent manger et boire, sinon ils meurent. Pour contrôler la croissance démographique vous devrez trouver un équilibre dans les différents types de <a href="residential"> zones résidentielles </a> que vous construisez (elles ont des taux de natalité/mortalité différents). La nouvelle population permet plus de travail, donc plus de production et d'argent, mais aussi nécessite plus de nourritures, d'entreprises, de biens ...</p> -<p style="hp">Vous devrez augmenter la production (ajouter des poteries, forgerons) et en même temps vous assurer qu'elles ont les ressources nécessaires, donc augmenter aussi le nombre de "communes" qui fournissent la matière première.</p> +<p style="hp">Vous devrez augmenter la production (ajouter des poteries, forgerons) et en même temps vous assurer qu'elles ont les ressources nécessaires, donc augmenter aussi le nombre de carbonneries qui fournissent la matière première.</p> <p style="hp">Pour accéder à de nouveaux types de constructions, vous devrez augmenter votre <a href="tech-level"> Niveau technologique </a>.</p> <p style="hp"> A un moment vous devrez choisir votre stratégie: soit <a href="sustain"> développement durable </a>, soit évacuation vers une autre planète avec des <a href="rocket"> vaisseaux spatiaux </a>.</p> diff -Nru lincity-ng-2.0/data/help/fr/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/fr/tutorial-scenario.xml --- lincity-ng-2.0/data/help/fr/tutorial-scenario.xml 2009-01-25 20:21:07.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/fr/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -9,7 +9,7 @@ <p style="hsubtitle">Difficile </p> <li>"hard-time" = "Les temps sont durs": Essayez de ne pas faire banqueroute (faillite). Une analyse détaillée de la cité est nécessaire. Quelques ajustements faciles ne suffiront pas, des mesures drastiques sont indipensables pour diminuer les coûts et augmenter les rentrées d'argent. C'est difficile mais c'est possible... Bon courage. </li> -<li>"extrem_arid" = "Extrêmement aride": il y a beaucoup de cases sans eau souterraine (affichées comme "désert"), ce qui limite les productions des fermes et des communes.</li> +<li>"extrem_arid" = "Extrêmement aride": il y a beaucoup de cases sans eau souterraine (affichées comme "désert"), ce qui limite les productions des fermes et des carbonneries.</li> <li>"extrem_wetland" = "Marécage" : la carte montre un terrain innondé, ce qui complique terriblement le construction de nouvelles structures</li> <p style="hp"></p> </Document> diff -Nru lincity-ng-2.0/data/help/gd/blacksmith.xml lincity-ng-2.9~git20150314/data/help/gd/blacksmith.xml --- lincity-ng-2.0/data/help/gd/blacksmith.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Goibhnean-dubha</p> + <p style="hp">Nì goibhnean-dubha bathar de stàilinn is guail. Cleachdaidh tu tràth 'sa gheama iad mar as trice. Mar a shaoileadh tu, cleachdaidh iad obair cuideachd.</p> + <p style="hp">Gus am bi ceàrdaichean stàilinn agad, bi thu an eiseimeil air an stàilinn a shaothraicheas coilltean. Mholamaid 5 no 6 coilltean airson gach gobha-dhuibh.</p> + <p style="hp">Cha leig thu leas goibhnean-dubha a cheangal ri giùlan. Gheibh iad a h-uile nì air a bheil iad feumach o mhargaidean am fagas.</p> + <p style="hp">'S urrainn dhut briogadh air gobha-dubh san dòigh àbhaisteach airson fiosrachadh air co-dhiù a bheil e trang no nach eil is chì thu beòthachadh o àm gu àm cuideachd.</p> + + <p style="hp">Seo gobha-dubh</p> + <img src="images/tiles/blacksmith0.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="market">Margaid</a></li> + <li><a href="ore">Clach-mhèinneir</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="steel">Stàilinn</a></li> + <li><a href="jobs">Obair</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/bulldoze.xml lincity-ng-2.9~git20150314/data/help/gd/bulldoze.xml --- lincity-ng-2.0/data/help/gd/bulldoze.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/bulldoze.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Am milltear</p> + <p style="hp">Gus raon a mhilleadh, tagh putan a' mhillteir is an uairsin briog air an raon a tha thu airson cuidhteas fhaighinn dheth. Cosgaidh milleadh airgead. Nuair a thogas tu raon, thèid na cosgaisean togail is millidh a shealltainn air air a' bhonn gu clì.</p> + <p style="hp">Cha cuid a rudan a leithid carraighean uabhasach daor ri milleadh. Cha bhith cosgaisean gus cuidhteas fhaighinn dhen sgudal na lùib a-mhàin ach cosgaisean polataigeach cuideachd is thèid seo a ghabhail a-steach. Mar eisimpleir, bidh luchd-gearain is cosgaisean cuis-lagha agad ma mhilleas tu carragh.</p> + <p style="hp">'S urrainn dhut raon nas motha a mhilleadh 's tu a' cumail an iuchair ctrl sìos fhad 's a bhios tu a' milleadh.</p> + <p style="hp">Seo ìomhaigheag a' mhillteir</p> + <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="evacuate">Às-àiteachadh</a></li> + <li><a href="transport">Giulan</a></li> + <li><a href="river">Abhainn</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/gd/button-index.xml lincity-ng-2.9~git20150314/data/help/gd/button-index.xml --- lincity-ng-2.0/data/help/gd/button-index.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,128 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Na putanan</p> + + <!--<p style="subtitle">Power</p>--> + <img src="images/gui/buttonpanel/power/powerlines.png"/> + <p><a href="powerline">Loidhnichean-dealain</a></p> + <img src="images/gui/buttonpanel/power/solarpower.png"/> + <p><a href="powerssolar">Stèisean cumhachd-grèine</a></p> + <img src="images/gui/buttonpanel/power/substation.png"/> + <p><a href="substation">Fo-stèisean</a></p> + + <!--<p style="subtitle">Residences</p>--> + <img src="images/gui/buttonpanel/residence/residence.png"/> + <p><a href="residential">Còmhnaidh</a></p> + + <!--<p style="subtitle">Water well</p>--> + <img src="images/gui/buttonpanel/waterwell.png"/> + <p><a href="waterwell">Tobar</a></p> + + <!--<p style="subtitle">Parks</p>--> + <img src="images/gui/buttonpanel/parks/farm.png"/> + <p><a href="farm">Tuathanas</a></p> + + <!--<p style="subtitle">Industry</p>--> + <img src="images/gui/buttonpanel/industry/market.png"/> + <p><a href="market">Margaid</a></p> + + <!--<p style="subtitle">Base</p>--> + <img src="images/gui/buttonpanel/base/bulldozer.png"/> + <p><a href="bulldoze">Am milltear</a></p> + + <!--<p style="subtitle">Base</p>--> + <img src="images/gui/buttonpanel/base/broom.png"/> + <p><a href="evacuate">Às-àiteachadh</a></p> + + <!--<p style="subtitle">Transport</p>--> + <img src="images/gui/buttonpanel/transport/tracks.png"/> + <p><a href="track">Slighe</a></p> + + <!--<p style="subtitle">Mining</p>--> + <img src="images/gui/buttonpanel/mining/coalmine.png"/> + <p><a href="coalmine">Mèinn guail</a></p> + + <!--<p style="subtitle">Transport</p>--> + <img src="images/gui/buttonpanel/transport/rails2.png"/> + <p><a href="rail">Rèile</a></p> + + <!--<p style="subtitle">Power</p>--> + <img src="images/gui/buttonpanel/power/coalpower.png"/> + <p><a href="powerscoal">Stèisean cumhachd-guail</a></p> + + <!--<p style="subtitle">Transport</p>--> + <img src="images/gui/buttonpanel/transport/road.png"/> + <p><a href="road">Rathad</a></p> + + <!--<p style="subtitle">Industry</p>--> + <img src="images/gui/buttonpanel/industry/lightindustry.png"/> + <p><a href="industryl">Gnìomhachas aotrom</a></p> + + <!--<p style="subtitle">Misc</p>--> + <img src="images/gui/buttonpanel/misc/university.png"/> + <p><a href="university">Oilthigh</a></p> + + <!--<p style="subtitle">Mining</p>--> + <img src="images/gui/buttonpanel/mining/commune.png"/> + <p><a href="commune">Co-comann</a></p> + <img src="images/gui/buttonpanel/mining/oremine.png"/> + <p><a href="oremine">Mèinn cloiche-mèinneir</a></p> + + <!--<p style="subtitle">Trading</p>--> + <img src="images/gui/buttonpanel/transport/port.png"/> + <p><a href="export">Ion-phortadh is às-phortadh</a></p> + + <!--<p style="subtitle">Industry</p>--> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png"/> + <p><a href="industryh">Ceàrdach stàilinn</a></p> + + <!--<p style="subtitle">Parks</p>--> + <img src="images/gui/buttonpanel/parks/tree.png"/> + <p><a href="park">Pàirc</a></p> + + <!--<p style="subtitle">Mining</p>--> + <img src="images/gui/buttonpanel/mining/recycling.png"/> + <p><a href="recycle">Ionad ath-chuairteachaidh</a></p> + + <!--<p style="subtitle">Parks</p>--> + <img src="images/gui/buttonpanel/parks/water.png"/> + <p><a href="river">Abhainn</a></p> + + <!--<p style="subtitle">Misc</p>--> + <img src="images/gui/buttonpanel/misc/health.png"/> + <p><a href="health">Ionad-slàinte</a></p> + + <!--<p style="subtitle">Transport</p>--> + <img src="images/gui/buttonpanel/transport/rocket.png"/> + <p><a href="rocket">Raon-rocaide</a></p> + + <!--<p style="subtitle">Power</p>--> + <img src="images/gui/buttonpanel/power/windmills.png"/> + <p><a href="windmill">Muileann-gaoithe</a></p> + + <!--<p style="subtitle">Misc</p>--> + <img src="images/gui/buttonpanel/parks/monument.png"/> + <p><a href="monument">Carragh</a></p> + + <!--<p style="subtitle">Misc</p>--> + <img src="images/gui/buttonpanel/misc/book.png"/> + <p><a href="school">Sgoil</a></p> + + <!--<p style="subtitle">Parks</p>--> + <img src="images/gui/buttonpanel/parks/mills.png"/> + <p><a href="mill">Muileann-clòtha</a></p> + + <!--<p style="subtitle">Industry</p>--> + <img src="images/gui/buttonpanel/industry/pottery.png"/> + <p><a href="pottery">Criadhadaireachd</a></p> + + <!--<p style="subtitle">Misc</p>--> + <img src="images/gui/buttonpanel/misc/fire.png"/> + <p><a href="firestation">Stèisean-smàlaidh</a></p> + <img src="images/gui/buttonpanel/misc/sports.png"/> + <p><a href="cricket">Raon spòrsa</a></p> + + <!--<p style="subtitle">Transport</p>--> + <img src="images/gui/buttonpanel/transport/port.png"/> + <p><a href="port">Port</a></p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/coalmine.xml lincity-ng-2.9~git20150314/data/help/gd/coalmine.xml --- lincity-ng-2.0/data/help/gd/coalmine.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/coalmine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Mèinn-guail</p> + <p style="hp">Tochlaidh mèinnean-guail gual às an talamh. Feumaidh cuisle guail a bhith faisg air a' mhèinn. Briog air putan guail fon mhapa airson sealltainn far a bheil na cuislean.</p> + <p style="hp">Cosgaidh e millean not a' chiad turas a chleachdas tu am putan seo. Bidh e an-asgaidh an uairsin. Cha leig thu leas am putan seo a chleachdadh, ach feumaidh tu feuchainn ach an tachair thu air gual an uairsin.</p> + <p style="hp">Feumaidh mèinnean-guail obair gus gual a thochladh.</p> + <p style="hp">Ma shaothraicheas an eaconamaidh agad cus guail, 's urrainn dha na mèinnean-guail a cur ann an cuislean ùra fon talamh.</p> + + <p style="hp">Seo mèinn-guail</p> + <img src="images/tiles/coalmine-full.png" halign="center"/> + <p style="hp">is seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + + <p style="hp">Seallaidh a' ghrafaigeachd an uiread de ghuail a chaidh a thochladh ach nach deach a ghiùlan air falbh. Tha stòras na mèinne gu h-àrd cho làn sa ghabhas.</p> + <p style="hp">Briog air mèinn-guail gus an stòras guail aig a' mhèinn a shealltainn ann an uinneag nan stats agus – nas cudromaiche buileach – na tha air fhàgail de ghual airson tochladh.</p> + + <p style="hp">Adhbharaichidh mèinnean-guail <a href="pollution">truailleadh</a>.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="coal">Gual</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="pollution">Truailleadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/coal.xml lincity-ng-2.9~git20150314/data/help/gd/coal.xml --- lincity-ng-2.0/data/help/gd/coal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Guail</p> + <p style="hp">Cleachdaidh stèiseanan cumhachd-guail gual gus cumhachd-dealain a dhèanamh. Cleachdaidh criadhaireachd, muileannan-clòtha is goibhnean-dubha i cuideachd gus bathar a dhèanamh. Cleachdaidh ceàrdaichean stàilinn gual mur faigh iad cumhachd-dealain.</p> + <p style="hp">Tochlaidh tu gual às an talamh le mèinnean-guail. Chan eil na tha ann de ghual gun chrìch is chì thu na tha ann le putan tionalan guail (seall air a' chobhair airson mhèinnean-guail).</p> + <p style="hp">Bheir coille beagan "gual" dhut cuideachd. Seo gual air a losgadh o fhiodha. Cha toir iad ach beagan dhut a dh'fhòghnas airson cuid a ghoibhnean-dubha is criathaireachd.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="coalmine">Mèinn-guail</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="pottery">Criadhadaireachd</a></li> + <li><a href="blacksmith">Gobha-dubh</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/commodities.xml lincity-ng-2.9~git20150314/data/help/gd/commodities.xml --- lincity-ng-2.0/data/help/gd/commodities.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/commodities.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Bathar-amh</p> + <p style="hp">'S e rudan a ghabhas saothrachadh, tar-aiseag, stòradh, giullachd no caitheamh sa bhaile agad a tha sa bhathar-amh. Chì thu am bathar-amh buntainneach air sealladh staide aig gach togalach no leac giùlain. Nochdaidh na saighdean air toiseach gach loidhne am bun-stuth, am bathar is na ghabhas tar-aiseag dhut.</p> + +<p style="hp">Feumaidh co-dhiù 5% dhen bhun-stuth a bhith ann gus 5% dhen bhathar a dhèanamh dheth mar as trice.</p> + + <p style="hp">Seallaidh an dàrna taba aig a' mhapa dhut stadastaireachd a' bhaile air fad is na dh'atharraich o chionn ghoirid le bàraichean-adhartais. Innsidh iadsan 's an tar-còmhdachadh giùlain dhut torr mun leasachadh eaconamach agad.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="pbar">Stats</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="food">Biadh</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="waste">Sgudal</a></li> + <li><a href="ore">Clach-mhèinneir</a></li> + <li><a href="steel">Stàilinn</a></li> + <li><a href="coal">Gual</a></li> + <li><a href="water">Uisge</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/commune.xml lincity-ng-2.9~git20150314/data/help/gd/commune.xml --- lincity-ng-2.0/data/help/gd/commune.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Coille</p> + <p style="hp">'S e raointean a th' anns na coilltean far an dèan loisgeadairean-guail + gual de fhiodh. + Nì iad beagan cloiche-mhèinneir is stàilinn cuideachd.</p> + <p style="hp">Bi feum agad air coille no dhà gus gual is stàilinn a dh'fhòghnas a shaothrachadh + dha raointean a leithid criathaireachd, ghoibhnean-dubha is mhuileannan.</p> + <p style="hp">Ma tha coille gun saothrachadh fad 10 bliadhne, thèid a dùnadh is pàircean a dhèanamh dhith.</p> + <p style="hp">'S urrainn dha choille ceangal ri giùlan àite sam bith air oir seach aig a' ghèata a-mhàin.</p> + <p style="hp">Tha saothrachadh gual coille an eisimeil uisge fon talamh mur tèid uisge a ghiùlan dha. (tha leacan le uisge uaine is an còrr donn-bhuidhe mar fhàsach)</p> + + <p style="hp">Seo coille</p> + <img src="images/tiles/commune1.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="pottery">Criadhadaireachd</a></li> + <li><a href="blacksmith">Gobha-dubh</a></li> + <li><a href="mill">Muileann-clòtha</a></li> + <li><a href="oremine">Mèinn cloiche-mèinneir</a></li> + <li><a href="steel">Stàilinn</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/cricket.xml lincity-ng-2.9~git20150314/data/help/gd/cricket.xml --- lincity-ng-2.0/data/help/gd/cricket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Raon spòrsa</p> + <p style="hp">Gabhaidh muinntir a' bhaile tlachd à raointean spòrsa. Feumaidh raointean spòrsa bathar is obair ach an obraicheadh iad. Chan fheum iad a bhith ceangailte ri giùlan ach mur eil, feumaidh iad a bhith am fagas margaid a bheir an obair is am bathar dhaibh. Cosgaidh iad airgead gus an ruith cuideachd.</p> + <p style="hp">Nuair a thogas tu raon spòrsa, cha tòisich e sa bhad. Feumaidh tu feitheamh trì mìosan mar as trice gus am bi a h-uile goireas air a stàladh ann.</p> + <p style="hp">Briog air a' phutan spòrsa fon mhapa gus còmhdachadh nan raointean spòrsa agad a shealltainn. Thèid raointean fo chòmhdachadh a shealltainn gu h-àbhaisteach agus tha raointean aig nach eil spòrs le dorch-uaine.</p> + <p style="hp">Tha còmhnaidhean le raon spòrsa faisg orra as tarraingiche.</p> + <p style="hp">Chì thu beòthachadh air raointean spòrsa gach trì mìosan airson sealltainn dhut gu bheil iad ag obrachadh.</p> + + <p style="hp">Seo raon spòrsa</p> + <img src="images/tiles/cricket1.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag fon mhapa</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/dialogs.xml lincity-ng-2.9~git20150314/data/help/gd/dialogs.xml --- lincity-ng-2.0/data/help/gd/dialogs.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/dialogs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="utf-8"?> +<Document style="helpdocument"> + <p style="htitle">Tabaichean fiosrachaidh</p> + <p>Taba a' mhapa</p> + <li><a href="mini-screen">Am mapa</a></li> + <p>Taba nam margaidean</p> + <li><a href="pbar">Stats</a></li> + <p>Taba an airgid</p> + <li><a href="finance">Ionmhas</a></li> + <li><a href="other-costs">Cosgaisean eile</a></li> + <li><a href="housing">An sluagh</a></li> + <p>Taba an eaconamaidh</p> + <li><a href="economy">Foir-shealladh an eaconamaidh</a></li> + <li><a href="sustain">Seasmhachd</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/economy.xml lincity-ng-2.9~git20150314/data/help/gd/economy.xml --- lincity-ng-2.0/data/help/gd/economy.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Foir-shealladh an eaconamaidh</p> + <p style="hp">Tha ceithir loidhnichean dathte sa ghraf seo. Seallaidh iad dhut na tha as cudromaiche san eaconamaidh.</p> + <li> + <span color="brown">Sluagh</span> (donn) + Riochdaichidh an loidhne dhonn an sluagh agad. Thèid sgèile log-àireimh a chleachdadh. + </li> + <li> + <span color="blue">Gun chòmhnaidh</span> (gorm) + Riochdaichidh an loidhne ghorm na tha a dhìth de thaigheadas. Tha àirde na loidhne + co-rèireach ri freumh ceàrnagach an t-sluaigh gun chòmhnaidh. + </li> + <li> + <span color="yellow">Cion-cosnaidh</span> (buidhe) + Seallaidh na bàraichean buidhe dhut nuair a bhios cion-cosnaidh ann. Atharraichidh sgèile a' ghrafa seo le uiread an t-sluaigh. Tha an graf seo soladach gus d' aire a tharraing dha. + </li> + <li> + <span color="red">Gortas</span> (dearg) + Seallaidh na bàraichean dearga dhut nuair a bhios biadh a dhìth. Atharraichidh sgèile a' ghrafa seo le uiread an t-sluaigh. Tha an graf seo soladach gus d' aire a tharraing dha. + Thèid am bàr seo a tharraing os cionn bàr a' chion-cosnaidh. + </li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/gd/evacuate.xml lincity-ng-2.9~git20150314/data/help/gd/evacuate.xml --- lincity-ng-2.0/data/help/gd/evacuate.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/evacuate.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Às-àiteachadh</p> + <p style="hp">Tagh putan an às-àiteachaidh gus togalach às-àiteachadh is an uairsin cleachd an sguab gus bathar-amh luachmhor sam bith às-àiteachadh. Gheibh thu an t-às-àiteachadh an-asgaidh 's thèid gach stuth a bhios ann a chur air leacan giùlain ri thaobh 's dha na margaidean am fagas.</p> + <p style="hp">Faodaidh seo adhbharachadh gun tèid saothrachadh a stad no gum bi truailleadh ann no gum faigh daoine ionadail bàs leis an acras.</p> + <p style="hp">Tha togalaichean ann nach gabh às-àiteachadh mar slighean, rathaidean, rèilean no òtraichean.</p> + <p style="hp">Thèid mèinnean cloiche-mèinneir 's mèinnean-guail falamh àsàiteachadh gu fèin-obrachail mus tèid iad sìos.</p> + <p style="hp">Seo ìomhaigheag an às-àiteachaidh</p> + <img src="images/gui/buttonpanel/base/broom.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="bulldoze">Am milltear</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/export.xml lincity-ng-2.9~git20150314/data/help/gd/export.xml --- lincity-ng-2.0/data/help/gd/export.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/export.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ion-portadh 's às-phortadh</p> + <p style="hp">Obraichidh ion-phortadh is às-phortadh san aon dòigh ach gun cosg thu airgead leis an dàrna fear is gun coisinn thu airgead leis an fhear eile. Feumaidh an dà chuid port. On a tha iad cho coltach ri chèile, cha toir sinn sùil mionaideach ach air às-phortadh an-seo.</p> + <p style="hp">Feumaidh ceangal gu rathad a bhith aig port ach an dèan thu às-phortadh.</p> + <p style="hp"><b>Feumaidh</b> taobh deas a' phuirt gu lèir a bhith ceangailte ri abhainn.</p> + <p style="hp">Às-phortaichidh port na gheibh e. Ma tha thu airson uiread as lugha às-phortachadh, mholamaid gun cleachd thu dòigh giùlain fada slaodach no gun cleachd thu margaid gus am bathar aiseag. Feumaidh tu feuchainn dè an rèiteachadh giùlain as fhearr dhut.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="port">Port</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="coal">Gual</a></li> + <li><a href="ore">Clach-mhèinneir</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="steel">Stàilinn</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/farm.xml lincity-ng-2.9~git20150314/data/help/gd/farm.xml --- lincity-ng-2.0/data/help/gd/farm.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/farm.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tuathanas</p> + <p style="hp">Fàsaidh tuathanasan biadh a dh'itheas an sluagh is solairidh iad bun-stuth airson mhuileannan. 'S urrainn do thuathanaich biadh a reic sa mhargaid. Bheir iad le tractar ann e 's mar sin chan eil feum aca air giùlan. 'S urrainn dhaibh reic dhan ghiùlan cuideachd ma thogras tu. Feumaidh tu dèanamh cinnteach co-dhiù gum bi margaid am fagas tuathanais.</p> + <p style="hp">Tha an dèanadas aig tuathanas an eisimeil air uisge fon talamh. Tha leacan le uisge uaine is càch odhar (mar fhàsach no ùir lom).</p> + + <p style="hp">Seo tuathanas</p> + <img src="images/tiles/farm0.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> + + <p style="hp">Cha dèan tuathanas ach glè bheag de bhiadh mur eil daoine ag obair annta. Gheibh thu barrachd bìdh le cumhachd-dhealain (kWh). 'S urrainn do thuathanas aig a bheil cumhachd-dhealain ùir thioram uisgeachadh is sgudal a chaitheamh. Thoir an aire air caitheamh uisge nan tuathanasan. </p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="market">Margaid</a></li> + <li><a href="tech-level">Teicneolas</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/fast.xml lincity-ng-2.9~git20150314/data/help/gd/fast.xml --- lincity-ng-2.0/data/help/gd/fast.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/fast.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Luaths glè luath</p> + <img src="images/gui/speed/faster.png"/> + <p style="hp">Seo putan an luaiths glè luaith. Nì e gun ruith an geama cho luath 's a ghabhas. Thoir an aire leis a' mhodh seo air uidheaman luatha on a dh'fhaodadh suidheachaidhean doirbh a nochdadh sa gheama gu luath!</p> + <p style="hp">Bheir roghainn na loidhne-àithne "-q 1" no "--quick 1" am luaths as motha dhut (nas lugha na 10 diogan gach bliadhna) ach dh'fhaoidte gun teasaich seo am bathar-cruaidh agad. Is -q 9 a' bhun-roghainn (mu 25 diog gach bliadhna). Chan eil buaidh aig an roghainn seo air luaths geama eile.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="medium">Luaths luath</a></li> + <li><a href="slow">Luaths àbhaisteach</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/finance.xml lincity-ng-2.9~git20150314/data/help/gd/finance.xml --- lincity-ng-2.0/data/help/gd/finance.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/finance.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ionmhas</p> + <p style="hp">Dèan briogadh deas air an uinneag seo gus uinneagan fhosgladh air "balans an ionmhais uile-choitchinn", air mion-fhiosrachadh air na "cosgaisean eile" agus air "cosgaisean sluaigh". Cleachd na h-iuchraichean sgrolaidh gus leum a ghearradh eatorra.</p> + <p style="hp">Thèid uinneag an ionmhais ùrachadh gach 1ad dhen Fhaoilleach. Mìnichidh na h-àireamhan an teachd a-steach 's na cosgaisean a bh' agad an-uiridh.</p> + <p style="hp">'S e na tha de dh'airgead sa chunntas agad a tha san àireamh "iomlan". Tha rudan ann nach urrainn dhut dèanamh nuair a bhios an cunntas agad dearg.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="housing">An sluagh</a></li> + <li><a href="other-costs">Cosgaisean eile</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/firestation.xml lincity-ng-2.9~git20150314/data/help/gd/firestation.xml --- lincity-ng-2.0/data/help/gd/firestation.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/firestation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Stèisean-smàlaidh</p> + <p style="hp">Cuiridh stèiseanan-smàlaidh bacadh air tòiseachadh is leudachadh teine san astar a chòmhdaicheas iad. Tha iad feumach air bathar is obair ach an obraich iad. Cha leug thu leas an ceangal ri giùlan ach feumaidh iad a bhith am fagas margaid a bheir obair is bathar dhaibh. Bidh cosgaisean 'nan lùib cuideachd.</p> + <p style="hp">Cha tòisich stèisean-smàlaidh ag obair sa bhad nuair a bhios tu air fear a thogail. + Feumaidh tu feitheamh trì mìosan mar as trice mus tèid còmhdachadh smàlaidh a sholar.</p> + <p style="hp">Briog air putan tar-chòmhdachadh smàlaidh fon mhapa gus còmhdachadh na stèiseanan-smàlaidh agad a shealltainn. Bidh an coltas àbhaisteach air na roinnean aig a bheil còmhdachadh agus cha bhi càch ach dorch-uaine.</p> + <p style="hp">Tha còmhnaidhean fo chòmhdachadh smàlaidh as tarraingiche.</p> + <p style="hp">Chì thu beòthachadh air stèiseanan-smàlaidh gach trì mìosan airson sealltainn dhut gu bheil iad ag obrachadh.</p> + + <p style="hp">Seo stèisean-smàlaidh</p> + <img src="images/tiles/firestation1.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag fon mhapa</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/food.xml lincity-ng-2.9~git20150314/data/help/gd/food.xml --- lincity-ng-2.0/data/help/gd/food.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Biadh</p> + <p style="hp">Fàsaidh tuathanasan biadh agus 's urrainn dhut ion-phortadh cuideachd ann am port.</p> + <p style="hp">Feumaidh an sluagh biadh ach nach bi an t-acras orra. Gluaisidh iad air falbh o raon far a bheil gortas ann is gheibh cuid bàs leis an acras.</p> + <p style="hp">Cleachdaidh muileannan-clòtha biadh cuideachd. Nì iad aodach o chanach, mar eisimpleir. Thoir an aire gun cleachd iad mòran bìdh, 's dòcha.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="farm">Tuathanas</a></li> + <li><a href="residential">Còmhnaidhean</a></li> + <li><a href="mill">Muileann-clòtha</a></li> + <li><a href="port">Port</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/goods.xml lincity-ng-2.9~git20150314/data/help/gd/goods.xml --- lincity-ng-2.0/data/help/gd/goods.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/goods.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Bathar</p> + <p style="hp">Tha a' mhòrchuid a raointean feumach air bathar ach an obraich iad. Tha na daoine glè mheasail air cuideachd is thèid iad a chòmhnaidh far am faigh iad bathar ann.</p> + <p style="hp">Tha bathar fo chìsean is cuidich e leis an ionmhas agad ma tha tòrr dheth ann.</p> + <p style="hp">Solairidh criadhadaireachd, goibhnean-dubha, muileannan-clòtha is gnìomhachasan aotrom bathar.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="pottery">Criadhadaireachd</a></li> + <li><a href="blacksmith">Gobha-dubh</a></li> + <li><a href="mills">Muileann-clòtha</a></li> + <li><a href="industryl">Gnìomhachas aotrom</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/health.xml lincity-ng-2.9~git20150314/data/help/gd/health.xml --- lincity-ng-2.0/data/help/gd/health.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,26 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ionad-slàinte</p> + <p style="hp">Bheir ionadan-slàinte còmhdachadh-slàinte airson nan còmhnaidhean dhut.</p> + <p style="hp">Bidh barrachd luach air còmhnaîdh aig a bheil còmhdachadh-slàinte on a chaochlas nas lugha de dhaoine le tinneas co-cheangailte ri truailleadh agus gheibh thu barrachd obrach asta on nach bi an luchd-obrach tinn gu tric.</p> + <p style="hp">Tha ionadan-slàinte cosgail. Bidh nas lugha de "Bhàs mì-nàdarra" ann co-dhiù is gheibh thu barrachd cìsean air sgàth 's gun obraich daoine annta.</p> + <p style="hp">Nuair a bhios tu air ionad-slàinte a thogail, bheir e trì mìosan gus am bi e gnìomhach. Cleachdaidh e bathar.</p> + <p style="hp">Feumaidh tu ionadan-slàinte a cheangal ri giùlan no a thogail am fagas margaid.</p> + <p style="hp">Briog air a' phutan tar-chòmhdachadh slàinte fon mhapa aig a bhonn gu deas gus an còmhdachadh slàinte a shealltainn. + Tha còmhdachadh-slàinte aig na roinnean air a bheil coltas àbhaisteach.</p> + + <p style="hp">Seo ionad-slàinte</p> + <img src="images/tiles/health.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag fon mhapa</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="residential">Còmhnaidhean</a></li> + <li><a href="pollution">Truailleadh</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/gd/help.xml lincity-ng-2.9~git20150314/data/help/gd/help.xml --- lincity-ng-2.0/data/help/gd/help.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/help.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="utf-8"?> +<Document style="helpdocument"> + <p style="htitle">Cobhair Lincity</p> + <p style="hp">Seo siostam cobharach Lincity. Briog air fear dhe na faclan gorma gu h-ìosal gus cuspair a thaghadh. Tha faclan gorma 'nan ceangal gu sgrìobhainn eile mar as trice. Cleachd an t-saighead san oisean chlì air a' bharr gus tilleadh dhan chobhair roimhpe.</p> + <p style="hp">Gheibh thu cobhair airson cha mhòr a h-uile rud nuair a bhios tu a' cluich a' gheama le putan na cobharach no briogadh deas air ìomhaigheag togalaich air a' bhàr-inneal gu clì.</p> + + <li><a href="tutorial">Oideachadh</a></li> + <li><a href="keys">Am meur-chlàr 's an luchag</a></li> + <li><a href="button-index">Liosta de na ghabhas togail</a></li> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="dialogs">Tabaichean fiosrachaidh</a></li> + <li><a href="index">Clàr-innse</a></li> + + <p style="htitle">Amas</p> + <p style="hp">Buannaichidh tu Lincity ma thogas tu <a href="sustain">eaconamaidh seasmhach</a> no ma dh'às-àiticheas tu an sluagh gu lèir le <a href="rocket">soithichean-fànais</a>.</p> +</Document> + diff -Nru lincity-ng-2.0/data/help/gd/housing.xml lincity-ng-2.9~git20150314/data/help/gd/housing.xml --- lincity-ng-2.0/data/help/gd/housing.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/housing.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">An sluagh</p> + <p style="hp">Seo uinneag an t-sluaigh.</p> + <p style="hp">Seallaidh an uinneag dhut 9 luachan:</p> + <li>Iomlan – seo an sluagh iomlan aig a' bhaile agad.</li> + <li>Le còmhnaidh – seo na daoine a bhios a' fuireach ann an còmhnaidhean.</li> + <li>Gun chòmhnaidh – seo na daoine gun dachaigh no a bhios a' fuireach ann am bothan.</li> + <li>Bothain – seo an àireamh de bhothain sa bhaile agad.</li> + <li>Bàs mì-nàdarra – seo an àireamh de dhaoine a fhuair bàs le gortas no truailleadh sa mhìos seo chaidh.</li> + <li>Cion-cosnaidh – seo an àireamh de dhaoine aig nach robh obair sa mhìos seo chaidh.</li> + <li>Ceudad – seo an ceudad de dhaoine aig nach eil obair.</li> + <li>Acras – seo an àireamh de dhaoine air an robh an t-acras sa mhìos seo chaidh.</li> + <li>Ceudad – seo an ceudad de dhaoine air a bheil an t-acras.</li> + <p style="hp">Ma nì thu briogadh clì air tiotal na h-uinneige, nì thu cuairt tro na h-uinneagan airson ionmhas, cosgaisean eile is an sluaigh.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="finance">Ionmhas</a></li> + <li><a href="other-costs">Cosgaisean eile</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/index.xml lincity-ng-2.9~git20150314/data/help/gd/index.xml --- lincity-ng-2.0/data/help/gd/index.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,83 @@ +<?xml version="1.0" encoding="utf-8"?> +<Document style="helpdocument"> +<p style="htitle">Clar-innse</p> +<li><a href="river">Abhainn</a></li> +<li><a href="evacuate">Às-àiteachadh</a></li> +<li><a href="goods">Bathar</a></li> +<li><a href="commodities">Bathar-amh</a></li> +<li><a href="food">Biadh</a></li> +<li><a href="monument">Carragh</a></li> +<li><a href="query">Ceist</a></li> +<li><a href="ore">Clach-mhèinneir</a></li> +<li><a href="help">Cobhair Lincity</a></li> +<li><a href="commune">Coille</a></li> +<li><a href="residential">Còmhnaidhean</a></li> +<li><a href="other-costs">Cosgaisean eile</a></li> +<li><a href="pottery">Criadhadaireachd</a></li> +<li><a href="power">Cumhachd-dhealain</a></li> +<li><a href="substation">Fo-stèisean</a></li> +<li><a href="transport">Giùlan</a></li> +<li><a href="industryl">Gnìomhachas aotrom</a></li> +<li><a href="industryh">Ceàrdach stàilinn</a></li> +<li><a href="blacksmith">Gobha-dubh</a></li> +<li><a href="economy">Foir-shealladh an eaconamaidh</a></li> +<li><a href="coal">Gual</a></li> +<li><a href="recycle">Ionad ath-chuairteachaidh</a></li> +<li><a href="rocket">Raon-rocaide</a></li> +<li><a href="health">Ionad-slàinte</a></li> +<li><a href="finance">Ionmhas</a></li> +<li><a href="export">Ion-portadh 's às-phortadh</a></li> +<li><a href="powerline">Loidhne-dhealain</a></li> +<li><a href="keys">An luchag</a></li> +<li><a href="fast">Luaths glè luath</a></li> +<li><a href="slow">Luaths àbhaisteach</a></li> +<li><a href="medium">Luaths luath</a></li> +<li><a href="market">Margaid</a></li> +<li><a href="mini-screen">Am mapa</a></li> +<li><a href="oremine">Mèinn cloiche-mèinneir</a></li> +<li><a href="coalmine">Mèinn-guail</a></li> +<li><a href="keys">A' mheur-chlàr</a></li> +<li><a href="bulldoze">Am milltear</a></li> +<li><a href="mill">Muileann-clòtha</a></li> +<li><a href="windmill">Muileann-gaoithe</a></li> +<li><a href="jobs">Obair</a></li> +<li><a href="tutorial">Oideachadh</a></li> +<li><a href="tutorial-aim">Oideachadh - Amas a' gheama</a></li> +<li><a href="tutorial-overview">Oideachadh - An sgrìn</a></li> +<li><a href="tutorial-basics">Oideachadh - Toiseach tòiseachaidh</a></li> +<li><a href="tutorial-advanced">Oideachadh - Feartan adhartach</a></li> +<li><a href="tutorial-scenario">Oideachadh - Cnàmh-sgeul</a></li> +<li><a href="university">Oilthigh</a></li> +<li><a href="tip">Ã’trach</a></li> +<li><a href="cricket">Raon spòrsa</a></li> +<li><a href="road">Rathad</a></li> +<li><a href="rail">Rèile</a></li> +<li><a href="park">Pàirc</a></li> +<li><a href="port">Port</a></li> +<li><a href="button-index">Na putanan</a></li> +<li><a href="sustain">Seasmhachd</a></li> +<li><a href="school">Sgoil</a></li> +<li><a href="track">Slighe</a></li> +<li><a href="housing">An sluagh</a></li> +<li><a href="pause">Cuir an geama 'na stad</a></li> +<li><a href="steel">Stàilinn</a></li> +<li><a href="pbar">Stats</a></li> +<li><a href="powerscoal">Stèisean cumhachd-guail</a></li> +<li><a href="powerssolar">Stèisean cumhachd-grèine</a></li> +<li><a href="firestation">Stèisean-smàlaidh</a></li> +<li><a href="dialogs">Tabaichean fiosrachaidh</a></li> +<li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +<li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> +<li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> +<li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> +<li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> +<li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> +<li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> +<li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> +<li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> +<li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> +<li><a href="tech-level">Teicneolas</a></li> +<li><a href="waterwell">Tobar</a></li> +<li><a href="pollution">Truailleadh</a></li> +<li><a href="farm">Tuathanas</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/industryh.xml lincity-ng-2.9~git20150314/data/help/gd/industryh.xml --- lincity-ng-2.0/data/help/gd/industryh.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/industryh.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ceàrdach stàilinn</p> + <p style="hp">Nì ceàrdaichean stàilinn stàilinn de chlach-mhèinneir, cumhachd is obair. Gheibh thu clach-mhèinneir is obair on ghiùlan no margaid ceangailte.</p> + <p style="hp">Tha dà dhòigh ann gus cumhachd a thoirt dhan cheàrdach stàilinn. 'S e losgadh guail a tha san dàrna tè is cumhachd-dealain san tè eile. Gheibh thu kWh nach eil cho èifeachdach on ghiùlan ceangailte no MWh èifeachdach dìreach o loidhnichean-dealain. 'S e barrachd obrach a bhios ann gual a losgadh san àite fhèin. 'S gann gun toir muileannan-gaoithe cumhachd a dh'fhoghnadh dhut.</p> + <p style="hp">Adhbharaichidh ceàrdach stàilinn truailleadh mòr. Chì thu a bheil ceàrdach stàilinn trang san dòigh àbhaisteach 's tu a' briogadh air is thèid beòthachadh a shealltainn dhut o àm gu àm.</p> + + <p style="hp">Seo ceàrdach stàilinn</p> + <img src="images/tiles/industryhl1.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="pollution">Truailleadh</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="coal">Gual</a></li> + <li><a href="ore">Clach-mhèinneir</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/industryl.xml lincity-ng-2.9~git20150314/data/help/gd/industryl.xml --- lincity-ng-2.0/data/help/gd/industryl.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/industryl.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Gnìomhachas aotrom</p> + <p style="hp">Nì gnìomhachasan aotrom bathar de chlach-mhèinneir. + Obraichidh iad nas èifeachdaiche ma bhios stàilinn ri làimh cuideachd agus fiùs nas èifeachdaiche ma gheibh iad cumhachd. Gheibh thu kWh neo-èifeachdadh le giùlan agus MWh èifeachdach gu dìreach le loidhnichean-dealain. + 'S gann gun toir muileannan-gaoithe kWh a dh'fhoghnadh dhut.</p> + <p style="hp">Tha na sholaraicheas gnìomhachas aotrom an eisimeil air an stuth amh is an obair a gheibh e is air an uiread de bhathar a thèid a thoirt air falbh.</p> + <p style="hp">Ceangail gnìomhachas aotrom ri giùlan gu dìreach gus obair, clach-mhèinneir, stàilinn, kWh is bathar a mhalart. Dh'fhaoidte gum bi e feumach air margaid ach an obraich e a-rèir a chomas.</p> + + <p style="hp">Adhbharaichidh gnìomhachasan aotrom truailleadh mòr.</p> + + <p style="hp">Seo gnìomhachas aotrom</p> + <img src="images/tiles/industryll1.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="transport">Giùlan</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="pollution">Truailleadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/jobs.xml lincity-ng-2.9~git20150314/data/help/gd/jobs.xml --- lincity-ng-2.0/data/help/gd/jobs.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/jobs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Obair</p> + <p style="hp">Solairidh daoine a bhios a' fuireach ann an còmhnaidh obair. Chleachdaidh a' mhòrchuid a raointean obair ach an obraich iad. Chan eil cuid a raointean a leithid carraighean feumach air obair ach fhad 's a thèid an togail.</p> + <p style="hp">'S urrainn dha mhargaidean obair a sholar nuair a bhios tu air margaid a thogail am fagas an raoin a bhios feumach air obair. Feumaidh a' mhargaid an obair fhaighinn o àite air choireigin co-dhiù 's tha dà dhòigh ann: air an dàrna làimh, ma tha còmhnaidh am fagas na margaid, solairidh e obair dhan mhargaid an coimeas ris an t-sluagh a bhios a' fuireach ann is na h-àireamh de mhargaidean a cho-roinneas an obair. 'S e giùlan a tha san dòigh eile. Ma tha barrachd obrach aig margaid na tha i feumach air, cuiridh i cuid dhiubh air a' ghiùlan. Gheibh margaid sam bith a bhios ceangailte ris a' ghiùlan traca, rathaid no rèile greim air an obair ma bhios i feumach oirre.</p> + <p style="hp">Ma dh'fhàsas magaid "làn" de dh'obair cha ghabh i rithe tuilleadh o chòmhnaidhean. Bidh daoine gun chosnadh ann nuair a thachras seo is gun mhargaid nach eil làn am fagas.</p> + <p style="hp">Cuiridh ionad-slàinte am fagas còmhnaidh ris an uiread de dh'obair a thèid a sholar do mhagaidean ionadail.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="residential">Còmhnaidhean</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="market">Margaid</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/keys.xml lincity-ng-2.9~git20150314/data/help/gd/keys.xml --- lincity-ng-2.0/data/help/gd/keys.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/keys.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,41 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + + <p style="htitle">Am meur-chlàr</p> + <p style="hp">ESCAPE: gearr leum gun inneal-ceiste</p> + <p style="hp">b toglaich eadar am modh làithreach is am modh millidh</p> + <p style="hp">h falaich togalaichean àrda. Brùth air h a-rithist gus an sealltainn.</p> + <p style="hp">v rach mun cuairt air modhan còmhdachaidh a' mhapa</p> + <p style="hp">m,n rach mun cuairt air modhan còmhdachaidh a' ghiùlain</p> + <p style="hp">g seall fiosrachadh mu na tha fon talamh.</p> + <p style="hp">KP_PLUS: sùm a-steach</p> + <p style="hp">KP_MINUS sùm a-mach</p> + <p style="hp">KP_ENTER sùm 100%</p> + <p style="hp">KP5 cuir meadhan a' mhapa ann am meadhan na prìomh-sgrìn</p> + <p style="hp">KP9 sgrolaidh a' phrìomh-sgrìn gu tuath</p> + <p style="hp">KP1 sgrolaidh a' phrìomh-sgrìn gu deas</p> + <p style="hp">KP7 sgrolaidh a' phrìomh-sgrìn gun iar</p> + <p style="hp">KP3 sgrolaidh a' phrìomh-sgrìn gun ear</p> + <p style="hp">KP2 sgrolaidh a' phrìomh-sgrìn gu ear-dheas</p> + <p style="hp">KP4 sgrolaidh a' phrìomh-sgrìn gu iar-dheas</p> + <p style="hp">KP6 sgrolaidh a' phrìomh-sgrìn gu ear-thuath</p> + <p style="hp">KP8 sgrolaidh a' phrìomh-sgrìn gu iar-thuath</p> + <p style="hp">mar an ceudna leis a' chùrsair</p> + <p style="hp">cleachd shift + comhair airson sgroladh nas luaithe</p> + <p style="hp">F12 grad-shàbhaladh</p> + <p style="hp">F9 grad-luchdadh</p> + + <p style="htitle">An luchag</p> + <p style="hp">deas:</p> + <p style="hp">slaod a' phrìomh-sgrìn le putan deas na luchaige.</p> + <p style="hp">briog air a' phrìomh-sgrìn gus a mheadhanachadh fon chùrsair.</p> + <p style="hp">meadhan:</p> + <p style="hp">briog leis a' phutan meadhanach gus fiosrachadh mun raon fon chùrsair a shealltainn.</p> + <p style="hp">clì: </p> + <p style="hp">briog air a' mhapa gus an raon a thagh thu a shealltainn air a' phrìomh-sgrìn.</p> + <p style="hp">dèan gnìomh a-rèir an inneil a thagh thu. Mill, seall fiosrachadh, tog togalach.</p> + <p style="hp">cuibhle:</p> + <p style="hp">suas: sùm a-steach</p> + <p style="hp">sìos: sùm a-mach </p> +</Document> + diff -Nru lincity-ng-2.0/data/help/gd/market.xml lincity-ng-2.9~git20150314/data/help/gd/market.xml --- lincity-ng-2.0/data/help/gd/market.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/market.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,34 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Margaid</p> + <p style="hp">'S e togalaichean glè chudromach a tha sna margaidean ann an Lincity.</p> + <p style="hp">'S dòcha nach e ainm math a th' ann am "margaid" airson nan raointean seo. Tha iad nas coltaiche ri ionadan-obrach, bùithtean, taighean-malairt is margaidean còmhla. Ceannaichidh is reicidh iad biadh, obair, gual, bathar, clach-mhèinneir is stàilinn dha na raointean am fagas is do ghiùlan a leithid rathaidean ri an taobh.</p> + + <p style="hp">Thèid gach malairt taobh a-staigh margaide a dhèanamh aig astar. + Cleachd an tar-chòmhdachadh giùlain is mhargaidean gus sùil a thoirt a bheil togalach am fagas margaide. + Gheibh muinntir a' bhaile biadh, bathar is obair o mhargaidean a bhios faisg gu leòr air a' chòmhnaidh aca ach an coisicheadh iad ann. + Gheibh gach raon aig a bheil feum air obair o mhargaidean i. + 'S urrainn do thuathanasan biadh a reic do mhargaid gu dìreach. + Reicidh muileannan-clòtha, criadhadaireachd is gobhachan-dubha bathar do mhargaidean am fagas gu dìreach, is gheibh iad bun-stuth uapa a leithid ceudna.</p> + <p style="hp">Bidh na togalaichean seo feumach air giùlan mur eil margaid ri làimh.</p> + + + <p style="hsubtitle">Rèiteachadh air na reiceas is cheannaicheas margaid</p> + <p style="hp">Tha smachd agad air na reiceas is a cheannaicheas margaid o ghiùlan. + Briog air margaid (seach air a' phutan taghaidh) dà thuras 's nochdaidh uinneag ùr air a' bharr gu clì far an urrainn dhut taghadh na thèid a mhalart. Thèid a h-uile rud a mhalart o thùs.</p> + + <p style="hp">Seo margaid</p> + <img src="images/tiles/market-empty.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> + <p style="hp">Is ciall dha seo gu bheil malart ceadaichte.</p> + <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> + <p style="hp">Is ciall dha seo <b>nach eil</b> malart ceadaichte.</p> + <img src="images/gui/checkbox/checkbox.png" halign="center"/> + <p style="hp">Innsidh an càraid àireimh eadar nam faclan "ceannaich" is "reic" dhut far a bheil a' mhargaid air a' mhapa.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/medium.xml lincity-ng-2.9~git20150314/data/help/gd/medium.xml --- lincity-ng-2.0/data/help/gd/medium.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/medium.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Luaths luath</p> + <img src="images/gui/speed/fast.png"/> +<p style="hp">Seo putan an luaiths luaith. Nì e gun ruith a' gheama gu luath. Dh'fhaoidte nach dèan na putanan luaiths dad air innealan slaodach.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="slow">Luaths àbhaisteach</a></li> + <li><a href="fast">Luaths glè luath</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/mill.xml lincity-ng-2.9~git20150314/data/help/gd/mill.xml --- lincity-ng-2.0/data/help/gd/mill.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Muileann-clòtha</p> + <p style="hp">Nì muileann-clòtha bathar de bhiadh, gual is obair. Biadh?... uill, tha canach 's clòimh 'nam biadh sa gheama seo.</p> + <p style="hp">Cleachdaidh muileannan-clòtha an t-uabhas de bhiadh, mar sin dh'fhaoidte gum bidh gainnead bìdh ort mura cum thu seo 'nad chuimhne. (Mholamaid gun tog thu muileannan-gaoithe a sholaireas cumhachd dha thuathanasan a nì as èifeachdaiche iad)</p> + <p style="hp">Cha leig thu leas muileann-clòtha a cheangal ri giùlan. Mur eil giùlan aige fhèin, feumaidh margaid a bhith 'na fhagas aig a bheil gual, obair is biadh. Ma tha smùid a' tighinn à muileann-clòtha, is ciall dha seo gu bheil e trang.</p> + + <p style="hp">Seo muileann-clòtha</p> + <img src="images/tiles/mill1.png" halign="center"/> + <p style="hp">Seo muileann-clòtha nach eil trang</p> + <img src="images/tiles/mill0.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="goods">Bathar</a></li> + <li><a href="food">Biadh</a></li> + <li><a href="coal">Gual</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="windmill">Muileann-gaoithe</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/mini-screen.xml lincity-ng-2.9~git20150314/data/help/gd/mini-screen.xml --- lincity-ng-2.0/data/help/gd/mini-screen.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/mini-screen.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Am mapa</p> + <p style="hp">Seallaidh am mapa an raoin chluiche gu lèir agad ann an sgèile beag. Nuair a bhriogas tu air na putanan aig a, bhonn, seallaidh seo fiosrachadh dhut mar ìre an truaillidh air feadh an raoin chluiche agad.</p> + <p style="hp">Dèan briogadh deas air fear sam bith dhe na putanan aig bonn a' mhapa gus na duilleagan cobharach aca a shealltainn.</p> + <p style="hp">Nochdaidh a' cheàrnag gheal le iomall an raon dhut a chì thu sa phrìomh uinneag.</p> + <p style="hp">Tar-chòmhdaichidh am putan tar-chòmhdachaidh mòr susbaint a' mhapa air a' phrìomh uinneag</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/monument.xml lincity-ng-2.9~git20150314/data/help/gd/monument.xml --- lincity-ng-2.0/data/help/gd/monument.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/monument.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Carragh</p> + <p style="hp">'S e ionad-taice a tha sa charragh a chuidicheas an t-ionnsachadh is an tionnsgnadh. + Cuiridh gach carragh a thogas tu ri adhartas an teicneolais ach cha bhi iad èifeachdach tuilleadh nuair a bhios tu air teicneolas de 40% a ruigsinn.</p> + <p style="hp">Feumaidh tu obair a sholar gus carragh a thogail. Torr obrach. + Bidh iad feumach gus smachd a chumail air cion cosnaidh air an adhbhar seo. Cha chuir iad taic ri seo ach greis co-dhiù on nach eil iad feumach air obair tuilleadh nuair a bhios an togail coileanta.</p> + <p style="hp">'S urrainn dhut adhartas na togail a shealltainn 's tu a' briogadh air a' charragh 's a' coimhead air uinneag nan stats aig a bharr gu clì. Atharraichidh coltas na grafaigeachd cuideachd rè na togail. + Tha 6 grafaigean ann a riochdaicheas adhartas na togail o 0% gu 100%</p> + <p style="hp">Gliocas: Ma tha togail carraighe a' toirt cus obrach à roinn, 'ga cumail air falbh o roinnean eile, tog fad air falbh i no cleachd goireas an às-àiteachaidh nuair a bhios èiginn ort.</p> + + <p style="hp">Seo carragh</p> + <img src="images/tiles/monument5.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="jobs">Obair</a></li> + <li><a href="evacuate">Às-àiteachadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-coal.xml lincity-ng-2.9~git20150314/data/help/gd/msb-coal.xml --- lincity-ng-2.0/data/help/gd/msb-coal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh guail</p> + <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> + <p style="hp">Seallaidh mapa a' ghuail dhut na tha ann de ghual fon bhaile agad. Tha cuislean guail uaine no dearg air cùlaibh liath. Chan fhaigh thu gual à cuisle ach ma thogas tu mèinn-guail faisg air tè dhiubh.</p> + <p style="hp">Feumaidh tu rùrachadh airson guail a' chiad turas a dh'iarras tu am fiosrachadh seo a chosgas millean aonadan airgid. Bidh am fiosrachadh an-asgaidh às dèidh seo.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-cricket.xml lincity-ng-2.9~git20150314/data/help/gd/msb-cricket.xml --- lincity-ng-2.0/data/help/gd/msb-cricket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh spòrsa</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <p style="hp">Bidh na roinnean a bhios am fagas raoin spòrs dorch-uaine.</p> + <p style="hp">Bidh coltas àbhaisteach air roinnean aig nach eil còmhdachadh spòrs.</p> + <p style="hp">Cum 'nad chuimhne nach tòisich raointean spòrs air obair ach trì mìosan às dèis an togail.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-fire.xml lincity-ng-2.9~git20150314/data/help/gd/msb-fire.xml --- lincity-ng-2.0/data/help/gd/msb-fire.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh smàlaidh</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + <p style="hp">Bidh na roinnean a bhios am fagas stèisein-smàlaidh dorch-uaine .</p> + <p style="hp">Bidh coltas àbhaisteach air roinnean aig nach eil còmhdachadh smàlaidh.</p> + <p style="hp">Cum 'nad chuimhne nach tòisich stèiseanan-smàlaidh air obair ach trì mìosan às dèis an togail .</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-health.xml lincity-ng-2.9~git20150314/data/help/gd/msb-health.xml --- lincity-ng-2.0/data/help/gd/msb-health.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh slàinte</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + <p style="hp">Bidh na roinnean a bhios am fagas ionaid-shlàinte dorch-uaine.</p> + <p style="hp">Bidh coltas àbhaisteach air roinnean aig nach eil còmhdachadh slàinte.</p> + <p style="hp">Cum 'nad chuimhne nach tòisich ionadan-slàinte air obair ach trì mìosan às dèis an togail.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-normal.xml lincity-ng-2.9~git20150314/data/help/gd/msb-normal.xml --- lincity-ng-2.0/data/help/gd/msb-normal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-normal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh cleachdadh na tìre</p> + <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> + <p style="hp">Seallaidh mapa cleachdadh na tìre dhut na togalaichean, na rathaidean, an t-uisge 's na h-àiteachan uaine sa bhaile agad.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-pol.xml lincity-ng-2.9~git20150314/data/help/gd/msb-pol.xml --- lincity-ng-2.0/data/help/gd/msb-pol.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-pol.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh truaillidh</p> + <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> + <p style="hp">Seallaidh mapa an truaillidh dhut ìre an truaillidh air feadh a' bhaile.</p> + <p style="hp">Seo na dathan o bheagan truaillidh gu truailleadh mòr: soilleir-uaine -> uaine -> dorch-uaine -> dorch-dhearg -> dearg -> soilleir-dhearg.</p> + <p style="hp">Thig tinneasan air an t-sluagh a dh'fhuiricheas ann an còmhnaidh ann an roinn dearg is cha bhi luach mòr annta mar àitichean-fuirich tuilleadh.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-power.xml lincity-ng-2.9~git20150314/data/help/gd/msb-power.xml --- lincity-ng-2.0/data/help/gd/msb-power.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh cumhachd</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + <p style="hp">Bidh na togalaichean a bhios am fagas muileann-gaoithe dorch-uaine.</p> + <p style="hp">Bidh na togalaichean a bhios ceangailte ri griod an dealain soilleir-uaine.</p> + <p style="hp">Bidh na togalaichean aig nach eil cumhachd dearg.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-starve.xml lincity-ng-2.9~git20150314/data/help/gd/msb-starve.xml --- lincity-ng-2.0/data/help/gd/msb-starve.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-starve.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh gortais</p> + <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> + <p style="hp">Cha sheall mapa beag na gortais ach còmhnaidhean.</p> + <p style="hp">Is ciall dha soilleir-uaine gu bheil biadh (on mhargaid) 's uisge (am fagas tobair) gu leòr aig a' chòmhnaidh. Is ciall dha shoilleir-dhearg gu bheil gortas air a' chòmhnaidh.</p> + <p style="hp">Thèid còmhdachadh nan tobraichean a shealltainn dhut ann an dorch-ghorm.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-transport.xml lincity-ng-2.9~git20150314/data/help/gd/msb-transport.xml --- lincity-ng-2.0/data/help/gd/msb-transport.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh giùlain is mhargaidean</p> + <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> + <p style="hp">Seallaidh mapa beag a' ghiùlain dhut an t-uiread de bathar air <a href="track">slighean</a>, <a href="road">rathaidean</a> + 's <a href="rail">rèilean</a> a' bhaile.</p> + <p style="hp">Briog air an ìomhaigheag gus toglachadh eadar an uiread de thar-aiseag 's an uiread de bhathar-amh. Cleachd na putanan sgrolaidh suas is sìos gus dol tro na seòrsaichean de bhathar-amh. Faodaidh tu cuideachd na t-iuchraichean "m"/"n" a chleachdadh no cuibhle na luchaige nuair a bhios i os cionn a' mhapa bhig.</p> + <p style="hp">Seallaidh na dathan gorma togalaichean dhut a bhios am fagas <a href="market">margaide</a>.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="msb-coal">Tar-chòmhdachadh guail</a></li> + <li><a href="msb-cricket">Tar-chòmhdachadh spòrsa</a></li> + <li><a href="msb-fire">Tar-chòmhdachadh smàlaidh</a></li> + <li><a href="msb-health">Tar-chòmhdachadh slàinte</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/msb-ub40.xml lincity-ng-2.9~git20150314/data/help/gd/msb-ub40.xml --- lincity-ng-2.0/data/help/gd/msb-ub40.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/msb-ub40.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tar-chòmhdachadh cion-cosnaidh</p> + <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> + <p style="hp">Seallaidh mapa beag a' chion-cosnaidh còmhnaidhean (dearg no uaine) 's togalaichean eile (buidhe no liath) dhut.</p> + <p style="hp">Is ciall dha shoilleir-uaine nach eil cion-cosnaidh sa chòmhnaidh. Seallaidh uaine nas duirche 's soilleir-dhearg cion-cosnaidh as dona dhut airson gach còmhnaidh agus 's ciall dha seo gu bheil barrachd dhaoine a' fuireach annta na tha obair ri fhaighinn.</p> + <p style="hp">Is ciall dha shoilleir-bhuidhe gun do dh'iarr togalach obair ach nach d' fhuair e gin on nach eil daoine gu leòr ann. Bidh togalaichean liath mur eil trioblaid le obair aca.</p> + <p style="hp">Dèan briogadh clì air a' mhapa bheag gus ionad na prìomh uinneige atharrachadh. Toglaich modh an tar-chòmhdachaidh 's tu a' brùthadh air "v" no a' briogadh air a' phutan tar-chòmhdachaidh mhòr.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="mini-screen">Am mapa</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="msb-normal">Tar-chòmhdachadh cleachdadh na tìre</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/oremine.xml lincity-ng-2.9~git20150314/data/help/gd/oremine.xml --- lincity-ng-2.0/data/help/gd/oremine.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/oremine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Mèinn cloiche-mèinneir</p> + <p style="hp">Solairidh mèinnean cloiche-mèinneir clach-mhèinneir gus bathar no stàilinn a dhèanamh dheth. Faodaidh tu mèinn cloiche-mèinnir a thogail àite sam bith. Thèid a' chlach-mhèinneir fon raon a chaitheamh beag air bheag agus chan urrainn dhut a milleadh is tè eile a thogail gus barrachd cloiche-mèinneir fhaighinn.</p> + <p style="hp">Ma bheir an t-eaconamaidh agad barrachd cloiche-mèinneir dhut na air a bheil feum, 's urrainn dhut suas gu 150% dhith a ghlèidheadh sa mhèinn.</p> + <p style="hp">Thèid mèinn cloiche-mèinneir 'na loch ma tha i air a caitheamh. Feumaidh tu 16 raointean-uisge a mhilleadh an uairsin ma tha thu airson an tìr fhaighinn air ais!</p> + <p style="hp">Seallaidh luaths a' bheòthachaidh dhut dè cho trang 's a bhios mèinn.</p> + + <p style="hp">Seo mèinn cloiche-mhèinneir</p> + <img src="images/tiles/oremine1.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="ore">Clach-mhèinneir</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="steel">Stàilinn</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/ore.xml lincity-ng-2.9~git20150314/data/help/gd/ore.xml --- lincity-ng-2.0/data/help/gd/ore.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Clach-mhèinneir</p> + <p style="hp">'S e bun-stuth cudromach sa gheama a tha sa chlach-mhèinneir. Solairidh coilltean, mèinnean cloiche-mèinneir is ionadan ath-chuairteachaidh clach-mhèinneir.</p> + <p style="hp">Cleachdaidh criadhadaireachd, gnìomhachasan aotrom is ceàrdaich stàilinn clach-mhèinneir.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="oremine">Mèinn cloiche-mèinneir</a></li> + <li><a href="recycle">Ionad ath-chuairteachaidh</a></li> + <li><a href="pottery">Criadhadaireachd</a></li> + <li><a href="industryl">Gnìomhachas aotrom</a></li> + <li><a href="industryh">Ceàrdach stàilinn</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/other-costs.xml lincity-ng-2.9~git20150314/data/help/gd/other-costs.xml --- lincity-ng-2.0/data/help/gd/other-costs.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/other-costs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Cosgaisean eile</p> + <p style="hp">Seo uinneag nan cosgaisean eile.</p> + <p style="hp">Seallaidh seo mion-fhiosrachadh air na "cosgaisean eile" a thèid a shealltainn dhut ann an uinneag an eaconamaidh.</p> + <p style="hp">Riadh</p> + <p style="hp">Sgoiltean</p> + <p style="hp">Oilthighean</p> + <p style="hp">Bàs mì-nàdarra</p> + <p style="hp">Muileannan-gaoithe</p> + <p style="hp">Cùram-slàinte</p> + <p style="hp">Rocaidean</p> + <p style="hp">Stèiseanan-smàlaidh</p> + <p style="hp">Spòrs</p> + <p style="hp">Ath-chuairteachadh</p> + <p style="hp">Le briogadh clì na luchaige air tiotal na h-uinneige seo, thèid i mun cuairt air uinneagan mu ionmhas, cosgaisean eile is taigheadas.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/park.xml lincity-ng-2.9~git20150314/data/help/gd/park.xml --- lincity-ng-2.0/data/help/gd/park.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/park.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Pàirc</p> + <p style="hp">Tha pàircean glè shimplidh: glanaidh iad truailleadh.</p> + <p style="hp">Tha cuid a raointean ann a dh'adhbharaicheas truailleadh. 'S iadsan rathaidean, rèilean, mèinnean-guail, gnìomhachasan aotrom is ceàrdaichean stàilinn. + Adhbharaichidh cuid dhiubh barrachd dheth na càch.</p> + <p style="hp">'S urrainn dhut pàircean a chleachdadh gus còmhnaidhean a dhìon no truailleadh a bhacadh faisg air an tùs.</p> + <p style="hp">Thig a' ghaoth on iar-dheas is thoir an aire dha seo nuair a thogas tu pàirc.</p> + <p style="hp">Tha pàircean mòran as èifeachdaiche na coilltean no tuathanasan ach feumach air uisge fon talamh. Mar sin, chan urrainn dhut an togail ach air leacan "uaine".</p> + <p style="hp">Gliocas: cum an iuchair "w" sìos fhad 's a thogas tu pàirc gus lochan beag a thogail ann.</p> + + <p style="hp">Seo pàirc</p> + <img src="images/tiles/parkland-plane.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="pollution">Truailleadh</a></li> + <li><a href="farm">Tuathanas</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="industryh">Ceàrdach stàilinn</a></li> + <li><a href="industryl">Gnìomhachas aotrom</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/pause.xml lincity-ng-2.9~git20150314/data/help/gd/pause.xml --- lincity-ng-2.0/data/help/gd/pause.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/pause.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,6 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Cuir an geama 'na stad</p> + <p style="hp">Seo putan gus an geama a chur 'na stad.</p> + <p style="hp">Briog air a' phutan a-rithist gus leantainn air adhart leis a' gheama.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/pbar.xml lincity-ng-2.9~git20150314/data/help/gd/pbar.xml --- lincity-ng-2.0/data/help/gd/pbar.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Stats</p> + <p style="hp">Seo an dàrna taba aig uinneag a' mhapa.</p> + <p style="hp">Seallaidh e stadastaireachd choitcheann a' bhaile dhut 's mar a chaidh leotha o chionn ghoirid.</p> + <p style="hp">Nochdaidh bàr air an taobh deas meudachadh dhut. Nochdaidh bàr air an taobh chlì lùghdachadh dhut. Mar as motha an t-atharrachadh 's ann nas fhaide a tha am bàr. Thèid atharraichean matha a shealltainn le bàr uaine is feadhainn dhona le bàr dearg. Ach thoir an aire nach eil cus maith math an-còmhnaidh.</p> + <p style="hp">Cleachdaidh na putanan sgrolaidh suas is sìos gus bàraichean eadar-dhealaichte a shealltainn.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/pollution.xml lincity-ng-2.9~git20150314/data/help/gd/pollution.xml --- lincity-ng-2.0/data/help/gd/pollution.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/pollution.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Truailleadh</p> + <p style="hp">Adhbharaichidh a' mhòrchuid a raointean truailleadh. Seo na raointean a dh'adhbharaicheas truailleadh mòr ma dh'fhaoidte:</p> + <li>Ceàrdach stàilinn.</li> + <li>Gnìomhachas aotrom.</li> + <li>Stèisean cumhachd-guail.</li> + <li>Mèinn-guail.</li> + <li>Margaid làn sgudail.</li> + <li>Rathaidean/Rèiliean, gu h-àraidh nuair a bhios iad làn sgudail.</li> + <p style="hp">Cha toil le daoine fuireach ann an àiteachan le truailleadh orra. Nì iad imrich air falbh no thig tinneas orra 's caochlaidh iad.</p> + <p style="hp">Thig a' ghaoth on iar-dheas. Mar sin, siubhlaidh a' mhòrchuid dhen truailleadh gu ear-thuath.</p> + <p style="hp">Mholamaid gun tagh tu far an tog thu gach togalach ach nach bi duine fo thruailleadh. Cha ghabh seo a dhèanamh an-còmhnaidh co-dhiù agus 's urrainn dhut pàircean a thogail gus an truailleadh a bhacadh. Mar as motha de phàircean a th' agad, 's ann nas fhearr a tha an dìon.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="industryh">Ceàrdach stàilinn</a></li> + <li><a href="industryl">Gnìomhachas aotrom</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="coalmine">Mèinn-guail</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="rail">Rèile</a></li> + <li><a href="road">Rathad</a></li> + <li><a href="park">Pàirc</a></li> + <li><a href="msb-pol">Tar-chòmhdachadh truaillidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/port.xml lincity-ng-2.9~git20150314/data/help/gd/port.xml --- lincity-ng-2.0/data/help/gd/port.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/port.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,27 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ports</p> + <p style="hp">'S urrainn dhut bathar, stàilinn, clach-mhèinneir, gual is biadh ion-phortadh 's às-phortadh ann am port. + Cosgaidh ion-phortadh airgead is gheibh thu cosnadh à às-phortadh.</p> + <p style="hp">Dèan briogadh dùbailte air port gus taghadh na thèid ion-phortadh. Nochdaidh clàr-taice le bogsaichean airson taghadh na tha thu airson ion-phortadh no às-phortadh.</p> + <p style="hp">Feumaidh taobh deas puirt a bhith ceangailte gu lèir ri abhainn.</p> + <p style="hp">Cha tèid dad ion-phortadh no às-phortadh mus cuir thu cromag sa bhogsa iomchaidh.</p> + <p style="hp">Gabhaidh raon às-phortadh ri na tha ann. Ma tha thu airson às-phortadh ach an t-uiread a chuingeachadh, mholamaid gun cleachd thu seòrsa giùlain a tha slaodach no fada no gun cleachd thu margaid. Feumaidh tu fhèin feuchainn 's faighinn a-mach dè an rèiteachadh giùlain as fhearr dhut.</p> + <p style="hp">Bheir port gnìomhach beagan teicneolais dhut. Thoir an aire: gheibh thu nas lugha de dh'airgid airson gach aonaid le uiread mòr de dh'às-phortadhadh.</p> + + <p style="hp">Seo port</p> + <img src="images/tiles/ex_port.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="export">Ion-portadh 's às-phortadh</a></li> + <li><a href="rivers">Abhainn</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="food">Biadh</a></li> + <li><a href="coal">Gual</a></li> + <li><a href="ore">Clach-mhèinneir</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="steel">Stàilinn</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/pottery.xml lincity-ng-2.9~git20150314/data/help/gd/pottery.xml --- lincity-ng-2.0/data/help/gd/pottery.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Criadhadaireachd</p> + <p style="hp">Cleachdaidh criadhadaireachd clach-mhèinneir, gual 's obair gus bathar a dhèanamh. Cha leig thu leas a ceangal ri giùlan ach feumaidh i bhith am fagas margaide aig a bheil clach-mhèinneir, gual 's obair agus feumaidh comas a bhith aice gus bathar a ghiùlan.</p> + <p style="hp">Cuiridh a h-àth smùid fhad 's a bhios criadhadaireachd trang.</p> + + <p style="hp">Seo criadhadaireachd</p> + <img src="images/tiles/pottery0.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="transport">Giùlan</a></li> + <li><a href="ore">Clach-mhèinneir</a></li> + <li><a href="coal">Gual</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="market">Margaid</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/powerline.xml lincity-ng-2.9~git20150314/data/help/gd/powerline.xml --- lincity-ng-2.0/data/help/gd/powerline.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/powerline.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Loidhne-dhealain</p> + <p style="hp">Bheir loidhnichean-dealain cumhachd o stèiseanan cumhachd 's muileannan-gaoithe nuadha gu fo-stèiseanan no gnìomhachasan aotrom agus ceàrdaichean stàilinn.</p> + <p style="hp">Thèid loidhnichean-dealain tarsaing fo slighean, rathaidean, rèilean is aibhnichean (le leud de 1 aca). + Ma chuireas tu loidhne-dhealain ris an dà thaobh aig giùlan no abhainn, obraichidh i mar aon. Feumaidh tu pìos de dh'abhainn a mhilleadh aig amannan ach am faigh thu tarsaing oirre – thoir an aire gu bheil seo cosgail! Thèid loidhnichean-dealain a chur ri chèile nuair a cho-thaobhaicheas tu iad 's leumaidh pacaidean cumhachd on dàrna taobh dhan taobh eile.</p> + + <p style="hp">Seo loidhne-dhealain</p> + <img src="images/tiles/powerlvd.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag fon mhapa</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="substation">Fo-stèisean</a></li> + <li><a href="windmill">Muileann-gaoithe</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="powerssolar">Stèisean cumhachd-grèine</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/powerscoal.xml lincity-ng-2.9~git20150314/data/help/gd/powerscoal.xml --- lincity-ng-2.0/data/help/gd/powerscoal.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/powerscoal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Stèisean cumhachd-guail</p> + <p style="hp">Nì stèisean cumhachd-guail pacaidean de chumhachd-dhealain a thèid a chur air loidhnichean-dealain ceangailte.</p> + + <p style="hp">Mar as àirde an teicneolas agad, 's ann nas èifeachdaiche a bhios an tionndadh dhen ghual 'na dhealan – a-rèir cuine a chaidh an stèisean-cumhachd a thogail. Mholamaid gum mill thu seann stèisean 's gun cuir thu fear ùr as èifeachdaiche 'na àite nuair a bhios an teicneolas agad air àrdachadh gu reusanta mòr.</p> + + <p style="hp">Adhbharaichidh stèiseanan cumhachd-guail truailleadh mòr. Dèan cinnteach nach tog thu iad far an toireadh a' ghaoth torr truaillidh dha na còmhnaidhean. Tha muileannan-gaoithe 's cumhachd-grèine 'nan roghainn glan eile.</p> + + <p style="hp">Seo stèisean cumhachd-guail</p> + <img src="images/tiles/powerscoal-empty.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="tech-level">Teicneolas</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="powerline">Loidhne-dhealain</a></li> + <li><a href="windmill">Muileann-gaoithe</a></li> + <li><a href="powerssolar">Stèisean cumhachd-grèine</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="pollution">Truailleadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/powerssolar.xml lincity-ng-2.9~git20150314/data/help/gd/powerssolar.xml --- lincity-ng-2.0/data/help/gd/powerssolar.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/powerssolar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Stèisean cumhachd-grèine</p> + <p style="hp">Cuiridh stèisean cumhachd-grèine cumhachd-dhealain air loidhnichean-dealain ceangailte 'na pacaidean. Mar as àirde an teicneolas agad, 's ann nas motha de dhealan a thèid a ghintinn – a-rèir cuine a chaidh an stèisean-cumhachd a thogail.</p> + + <p style="hp">Tha stèisean cumhachd-grèine feumach air daoine a nì obair ann ach an gin e dealan idir.</p> + + <p style="hp">Seo stèisean cumhachd-grèine</p> + <img src="images/tiles/powerssolar.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="substation">Fo-stèisean</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="powerline">Loidhne-dhealain</a></li> + <li><a href="tech-level">Teicneolas</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="windmill">Muileann-gaoithe</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/power.xml lincity-ng-2.9~git20150314/data/help/gd/power.xml --- lincity-ng-2.0/data/help/gd/power.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Cumhachd</p> + <p style="hp">Tha dà sheòrsa de chumhachd ann: kWh agus MWh. Thèid kWh a thoirt dut tro chàballan fon talamh le lìonraidh giùlain do bhaile agus MWh le loidhnichean-dealain.</p> + + <p style="hp"> Thèid kWh a sholar le muileannan-gaoithe no le fo-stèisean. Bheir iad cumhachd dha chòmhnaidhean, tuathanasan, muilleanan, gnìomhachasan aotrom 's ceàrdaichean-stàilinn.</p> + + <p style="hp"> Thèid Mwh a sholar le stèisean cumhachd-guail no cumhachd-grèine no muileann-gaoithe nuadh 's faodaidh tu a thoirt do fo-stèisean no dìreach gu gnìomhachas aotrom no ceàrdach stàilinn.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="windmill">Muileann-gaoithe</a></li> + <li><a href="residential">Còmhnaidhean</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="farm">Tuathanas</a></li> + <li><a href="powerline">Loidhne-dhealain</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="powerssolar">Stèisean cumhachd-grèine</a></li> + <li><a href="substation">Fo-stèisean</a></li> + <li><a href="industryl">Gnìomhachas aotrom</a></li> + <li><a href="industryh">Ceàrdach stàilinn</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/query.xml lincity-ng-2.9~git20150314/data/help/gd/query.xml --- lincity-ng-2.0/data/help/gd/query.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/query.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ceist</p> + <p style="hp">Cleachd an t-inneal seo gus fiosrachadh mu thogalach a shealltainn 's tu a' briogadh air an togalach.</p> + <p style="hp">Nochdaidh am fiosrachadh ann an oisean deas aig a' bhonn seach air a' mhapa bheag.</p> + <p style="hp">XXX Press 'g' to show underground information. 'm' and 'n' cylcle through optional pages</p> + <p style="hp">There are no costs to use this tool. the Alternatively use the middle mouse key or press 'g' + display information on the ground.</p> + <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="keys">Am meur-chlàr 's an luchag</a></li> + <li><a href="help">Clàr-innse</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/rail.xml lincity-ng-2.9~git20150314/data/help/gd/rail.xml --- lincity-ng-2.0/data/help/gd/rail.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/rail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Rèile</p> + <p style="hp">Giùlainidh rèilean fiù 's a bharrachd na rathaidean agus adhbharaichidh iad beagan nas lugha de thruailleadh. Tha e caran daor an ceannach 's an glèidheadh co-dhiù. 'S luach na cosgaisean air an son ma tha torr agad ri giùlan astar fada.</p> + + <p style="hp">Seo rèile</p> + <img src="images/tiles/railud.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="transport">Giùlan</a></li> + <li><a href="pollution">Truailleadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/recycle.xml lincity-ng-2.9~git20150314/data/help/gd/recycle.xml --- lincity-ng-2.0/data/help/gd/recycle.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ionad ath-chuairteachaidh</p> + <p style="hp">Nì ionadan ath-chuairteachaidh clach-mhèinneir de sgudal. cleachdaidh iad obair, cumhachd-dealain (kWh) 's aisgead gus an sgudal a chruinneachadh agus clach-mhèinneir a dhèanamh dheth. 'S urrainn dhut fear a chleachdadh gus òtrach làn fhalamhachadh.</p> + <p style="hp">Gabhaidh eaconamaidh seasmhach ('s e seo nach eil clach-mhèinneir 'ga togail on talamh tuilleadh agus msaa.) a ruith le ionadan ath-chuairteachaidh aig a bheil èifeachdachd nas lugha na 100% ma tha muileann-clòtha no dhà agad gus na chailleas tu aiseag.</p> + + <p style="hp">Seo ionad ath-chuairteachaidh</p> + <img src="images/tiles/recycle-centre.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="transport">Giùlan</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/residential.xml lincity-ng-2.9~git20150314/data/help/gd/residential.xml --- lincity-ng-2.0/data/help/gd/residential.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/residential.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,30 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Còmhnaidhean</p> + <p style="hp">Seo far am fuirich muinntir do bhaile. Feumaidh uisge agus biadh a bhith ann an còmhnaidh ach an tig iad a dh'fhuireach innte 's feumaidh ceangal ri giùlan a bhith aca. Bidh na còmhnaidhean nas luachmhoire ma bhios obair, cumhachd-dhealain 's bathar ri fhaighinn dhaibh. Bidh e 'na bhuannachd cuideachd ma bhios iad am fagas margaide. Bheir thu barrachd tarraingeachd air còmhnaidhean le raointean-spòrs. Cum gach truailleadh air falbh o do mhuinntir.</p> + <p style="hp">Tha trì seòrsaichean de chòmhnaidhean ann: feadhainn bheaga, mheadhanach agus mòra. Tha tricead nam breith 's nam bàs eadar-dhealaichte aig gach seòrsa. 'S urrainn dhut seo a chleachdadh gus smachd a chumail air na th' agad de shluagh. Tha buaidh aig ionadan-slàinte air tricead nam breith 's nam bàs cuideachd.</p> + <p style="hp">'S urrainn dhut togalaichean "nuadha" a thogail, fiù 's 'nan tùir àrda nuair a bhios an teicneolas iomchaidh agad nas anmoiche 'sa gheama.</p> + + <p style="hp">Seo còmhnaidh bheag (teicneolas àrd)</p> + <img src="images/tiles/reslowhi.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> + <p style="hp">Seo còmhnaidh mheadhanach (teicneolas àrd)</p> + <img src="images/tiles/resmedhi.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> + <p style="hp">Seo còmhnaidh mhòr (teicneolas àrd)</p> + <img src="images/tiles/reshihi.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="market">Margaid</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="waterwell">Tobar</a></li> + <li><a href="pollution">Truailleadh</a></li> + <li><a href="farm">Tuathanas</a></li> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="health">Ionad-slàinte</a></li> + <li><a href="cricket">Raon spòrsa</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/river.xml lincity-ng-2.9~git20150314/data/help/gd/river.xml --- lincity-ng-2.0/data/help/gd/river.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/river.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Abhainn</p> + <p style="hp">Cha mhòr nach eil aibhnichean ann ach gus a bhith san rathad. Tha e cosgail drochaidean a thogail no an tochladh no milleadh. + Chan eil feum annta ach gu bheil agad ri gach port a cheangal ri abhainn.</p> + <p style="hp">Tha dà sheòrsa de dh'uisge ann: lochan nach eil ceangailte ri siostam nan aibhnichean 's siostam nan aibhnichean. 'S e a h-uile uisge a bhios ann aig toiseach a' gheama a th' ann an siostam nan aibhnichean. Mar eisimpleir, ma tha thu air mèinn cloiche-mèinneir a chaitheamh 's i air tionndadh 'na h-uisge, thèid i 'na h-abhainn ma bhios i ceangailte ri siostam nan aibhnichean no thèid i 'na loch mur eil i ceangailte ris.</p> + <p style="hp">Ma mhilleas tu pìos de dh'abhainn, bith na h-aibhnichean a bhios air am fàgail ri gach taobh dhen bheàrn fhathast 'nam pàirt de shiostam nan aibhnichean.</p> + <p style="hp">'S urrainn dhut drochaid a thogail 's tu a' togail giùlan air an abhainn.</p> + <p style="hp">Nuair a bhios cnap de dh'uisge air a dhol 'na abhainn, cha tèid e 'na loch a-rithist an uairsin. + Innsidh an t-inneal ceiste dhut co-dhiù a bheil uisge 'na h-abhainn gus nach eil.</p> + <p style="hp">'S urrainn do loidhnichean-dealain cumhachd a thar-chur fo aon phìos de dh'abhainn san aon dòigh a thachras le giùlan.</p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/road.xml lincity-ng-2.9~git20150314/data/help/gd/road.xml --- lincity-ng-2.0/data/help/gd/road.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Rathad</p> + <p style="hp">Giùlainidh rathaidean barrachd na slighean ach cha ghiùlain iad na ghiùlaineas rèilean. Adhbharaichidh iad barrachd truaillidh na rèilean cuideachd. Tha e nas saoire an ceannach 's an glèidheadh na rèilean – seo as adhbhar gu bheil iad ann!</p> + + <p style="hp">Seo rathad</p> + <img src="images/tiles/roadud.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="transport">Giùlan</a></li> + <li><a href="pollution">Truailleadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/rocket.xml lincity-ng-2.9~git20150314/data/help/gd/rocket.xml --- lincity-ng-2.0/data/help/gd/rocket.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Raon-rocaide</p> + <p style="hp">'S urrainn dhut do mhuinntir às-àiteachadh dha shaoghal eile le rocaidean 's crìoch a chur air a' gheama le sin.</p> + <p style="hp">Feumaidh tu còig rocaidean falamh a losgadh gu soirbheachail mus urrainn dhut tòiseachadh leis an às-àiteachadh. + Bidh rum airson 1000 duine anns gach rocaid às-àiteachaidh shoirbheachail.</p> + <p style="hp">Tha coltas soirbheas an losgaidh co-ionnan ri ìre an teicneolais aig àm an losgaidh. + Mar eisimpleir, bi thu an dùil air ceithir losgaidhean soirbheachail a-mach à còig ma bhios teicneolas de 80% agad. + Bidh losgadh soirbheachail an-còmhnaidh ma tha teicneolas de 100% no as àirde agad. Feumaidh tu raon-rocaide ùr a thogail airson gach rocaid a thogas tu.</p> + <p style="hp">Cha leig thu leas raointean-rocaide a cheangal ri giùlan cho fad 's a bhios margaid am fagas. Bidh thu feumach air uiread mòr de stàilinn, bathair, obrach 's airgid gus an togail. + Nuair a bhios rocaid air a togail, gheibh thu teachdaireachd a' faighneachd dhiot a bheil thu airson a losgadh sa bhad no uaireigin eile. + Ma chuireas tu romhad a losgadh uaireigin eile, briog air an raon nuair a bhios tu airson a losgadh. Faodaidh na thogras tu de rocaidean a' feitheamh a bhith agad.</p> + <p style="hp">Nuair a bhios rocaid air a togail ach a' feitheamh air losgadh, cha chleachd i stàilinn, bathar no obair tuilleadh ach cosgaidh i fhathast mòran airgid.</p> + <p style="hp">Gliocas: cleachd inneal an às-àiteachaidh gus na stòrasan nach deach a cleachdadh a thogail mus mill thu raon-rocaide air a chaitheamh.</p> + <p style="hp">Seo raon-rocaide</p> + <img src="images/tiles/rocket5.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="market">Margaid</a></li> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="evacuate">Às-àiteachadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/school.xml lincity-ng-2.9~git20150314/data/help/gd/school.xml --- lincity-ng-2.0/data/help/gd/school.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/school.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Sgoil</p> + <p style="hp">Cleachdaidh sgoiltean obair agus bathar gus teicneolas a shaothrachadh san aon dòigh a nì oilthighean. + Cleachdaidh iad mòran nas lugha de dh'obair 's bathar na oilthighean ach saothraichidh iad mòran nas lugha de theicneolas cuideachd. + Ma tha an roghainn agad còig sgoiltean no aon oilthigh a chur ann an roinn, bidh oilthigh an roghainn as fhearr mar as trice (ach chan ann an-còmhnaidh).</p> + <p style="hp">Cha leig thu leas sgoiltean a cheangal ri giùlan ach feumaidh iad a bhith am fagas margaide a sholaireas na tha a dhìth de dh'obair 's bathar ach an obraich an sgoil.</p> + <p style="hp">Cosgaidh sgoiltean airgead gus an ruith. Chì thu na chosg thu an-uiridh 's tu a' briogadh air putan an airgid.</p> + <p style="hp">Briog air sgoil gus sealltainn a bheil i trang.</p> + + <p style="hp">Seo sgoil</p> + <img src="images/tiles/school0.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="tech-level">Teicneolas</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="university">Oilthigh</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="jobs">Obair</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/slow.xml lincity-ng-2.9~git20150314/data/help/gd/slow.xml --- lincity-ng-2.0/data/help/gd/slow.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/slow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Luaths àbhaisteach</p> + <img src="images/gui/speed/normal.png"/> + <p style="hp">Seo putan an luaiths àbhaistich. Nì e gun ruith a' gheama leis an luaths àbhaisteach. Dh'fhaoidte nach dèan na putanan luaiths dad air innealan slaodach.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="medium">Luaths luath</a></li> + <li><a href="fast">Luaths glè luath</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/steel.xml lincity-ng-2.9~git20150314/data/help/gd/steel.xml --- lincity-ng-2.0/data/help/gd/steel.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Stàilinn</p> + <p style="hp">Nì thu a' mhòrchuid de stàilinn ann an ceàrdach stàilinn. Feumaidh teicneolas a dh'fhoghnadh a bhith agad gus fear a thogail co-dhiù. Roimhe seo, chan fhaigh thu stàilinn ach o choilltean. Nì coilltean beagan stàilinn de chlach-mhèinneir agus bidh thu feumach air uiread dhiubh ach am faigh thu an stàilinn a tha a dhìth ort.</p> + <p style="hp">cleachdaidh goibhnean-dubha stàilinn gus bathar a dhèanamh. Cleachdaidh gnìomhachasan aotrom stàilinn gus acainnean 's bathar a dhèanamh. Obraichidh gnìomhachasan aotrom gun stàilinn ach bidh dèanadas mòran nas lugha aca mur faigh iad stàilinn.</p> + <p style="hp">Cleachdaidh rocaidean torr stàilinn, gu h-àraidh gus raointean-rocaide a thogail.</p> + <p style="hp">Cleachdaidh rèilean stàilinn cuideachd airson an obrach-glèidhidh.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="blacksmith">Gobha-dubh</a></li> + <li><a href="industryh">Ceàrdach stàilinn</a></li> + <li><a href="industryl">Gnìomhachas aotrom</a></li> + <li><a href="rail">Rèile</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/substation.xml lincity-ng-2.9~git20150314/data/help/gd/substation.xml --- lincity-ng-2.0/data/help/gd/substation.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Fo-stèisean</p> + <p style="hp">Gabhaidh fo-stèiseanan ri pacaidean-cumhachd o loidhnichean-dealain (MWh) agus sgaoilidh iad an cumhachd dhan ghiùlan ri an taobh (kWh). Thoir sùil air an tar-chòmhdachadh cumhachd ach am faic thu far a bheil cumhachd a dhìth ort. Chan eil na tionndairean feumach air obair ach an obraich iad.</p> + + <p style="hp">Seo fo-stèisean</p> + <img src="images/tiles/substation-G.png" halign="center"/> + <p style="hp">and this is its icon</p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="powerline">Loidhne-dhealain</a></li> + <li><a href="windmill">Muileann-gaoithe</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="powerssolar">Stèisean cumhachd-grèine</a></li> + + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/sustain.xml lincity-ng-2.9~git20150314/data/help/gd/sustain.xml --- lincity-ng-2.0/data/help/gd/sustain.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Seasmhachd</p> + <p style="hp">Tha sia loidhnichean dathte san uinneag seo. Bidh eaconamaidh seasmhach agad nuair a bhios iad uile air taobh deas na h-uinneige a ruigsinn.</p> + <li> + <span color="orange">Mèinnean</span> (orainds) chan eil thu a' tochladh clach-mhèinneir 's chan eil thu a' cur sgudal dha dh'òtrach. + </li> + <li> + <span color="gray">Malart</span> (dubh) chan eil thu ag às-phortadh no ion-phortadh. + </li> + <li> + <span color="green">Airgead</span> (uaine) tha an airgead agad seasmhach no a' dìreadh; is ciall dha seo nach urrainn dhut gin a thogail ach na raointean as saoire. + </li> + <li> + <span color="blue">Sluagh</span> (gorm) tha an sluagh agad seasmhach le + 2% taobh a-staigh an luach nuair a thòisicheadh an cunntadh de 180 bliadhna. Nuair a bhriseas e a-mach às an rainse seo, bidh an sluagh ùr 'na luach ùr agus thòisichear a' cunntadh nam bliadhnaichean o neoni às ùr. Feumaidh sluagh de 5000 a bhith agad air a char as lugha chuideachd. + </li> + <li> + <span color="yellow">Teicneolas</span> (buidhe) chan eil ach glè bheag a dh'fhàs no a chrìonadh aig an teicneolas agad. Thèid am bliadhna ath-shuidheachadh gu neoni ma chrìonas e le barrachd air 1%. Feumaidh teicneolas de 50% a bhith agad air a char as lugha cuideachd. + </li> + <li> + <span color="red">Teine</span> (dearg) tha còmhdachadh-smàlaidh air gach raon a b' urrainn a dhol 'na theine. Chan eil na raointean a leanas feumach air còmhdachadh-smàlaidh: carraighean, mèinnean cloiche-mèinneir, loidhnichean-cumhachd, slighean, rathaidean, rèilean 's rocaidean. + </li> + <p style="hp">Na bliadhnaichean a dh'fheumas tu airson seasmhachd: Mèinnean=180 Malart=180 Airgead=60 Sluagh=60 Teicneolas=120 Teine=60</p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tech-level.xml lincity-ng-2.9~git20150314/data/help/gd/tech-level.xml --- lincity-ng-2.0/data/help/gd/tech-level.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tech-level.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Teicneolas</p> + <p style="hp">Tha iomadh rud an eisimeil ìre an teicneolais agad mar nas urrainn dhut togail agus an èifeachdachd aig pròiseasan.</p> + <p style="hp">Feumaidh tu carraighean, sgoiltean agus oilthighean a thogail aghs na tha a dhìth orra a thoirt dhaibh gus an teicneolas agad a thoirt gu ìre.</p> + <p style="hp">Ma tha ìre do theicneolais glè ìseal, chan urrainn dhut ach carraighean a thogail. Nuair a bhios feadhainn agad rè seall, bidh sgoiltean agad ri làimh an uairsin. Nì sgoiltean barrachd rannsachaidh na carraighean.</p> + <p style="hp">Cha bhi oilthighean ri làimh agad ach nuair a bhios an teicneolas agad air an ìre iomchaidh a ruigsinn. Nì oilthighean barrachd rannsachaidh na sgoiltean ach tha iad feumach air torr stòrasan.</p> + <p style="hp">Mar as àirde ìre an teicneolais agad 's ann as luaithe a chrìonas i. Is ciall dha seo gum feum thu barrachd sgoiltean 's oilthighean a thogail ma tha thu airson ìre àrd a ruigsinn.</p> + <p style="hp">Thoir an aire cuideachd gun crìon ìre an teicneolais agad ma dh'fhaoidte ma tha agad ri oilthigh no dhà a mhilleadh air adhbhar air choireigin no mur eil stòrasan gu leòr ri làimh dhaibh tuilleadh.</p> + <p style="hp">Tha ceudad an t-seans gun loisg thu rocaid gu soirbheachail co-ionnan ri ìre an teicneolais agad.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="monument">Carragh</a></li> + <li><a href="school">Sgoil</a></li> + <li><a href="university">Oilthigh</a></li> + <li><a href="rocket">Raon-rocaide</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tip.xml lincity-ng-2.9~git20150314/data/help/gd/tip.xml --- lincity-ng-2.0/data/help/gd/tip.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Ã’trach</p> + <p style="hp">'S e àite far an urrainn dhut an sgudal agad a chur a th' anns na h-òtraichean. Ma chruinnicheas tu cus sgudail aig margaidean, feumaidh iad a losgadh. Adhbharaichidh seo torr truaillidh, mar sin thoir an aire nach cruinnich thu cus sgudail.</p> + <p style="hp">Thèid òtrach 'na chnoc nuair a thèid a lìonadh agus fàsaidh feur air nuair a bhios e làn.</p> + <p style="hp">Ma ghlanas tu am baile agad, gabhaidh an sgudal a thogail on òtrach 's a chur gu feum ann an coilltean, tuathanasan aig a bheil cumhachd-dhealain agus ionadan ath-chuairteachaidh.</p> + <p style="hp">Briog air òtrach airson sealltainn a bheil e trang.</p> + + <p style="hp">Seo òtrach</p> + <img src="images/tiles/tip0.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="waste">Waste</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="farm">Tuathanas</a></li> + <li><a href="recycle">Ionad ath-chuairteachaidh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/track.xml lincity-ng-2.9~git20150314/data/help/gd/track.xml --- lincity-ng-2.0/data/help/gd/track.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/track.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Slighe</p> + <p style="hp">'S e an dòigh giùlain as simplidhe saoire a th' anns na slighean. Chan urrainn dhaibh cus a thar-aiseag ach chan adhbharaich iad truailleadh nas motha.</p> + + <p style="hp">Seo slighe</p> + <img src="images/tiles/trackud.png" halign="center"/> + <p style="hp">agus seo a h-ìomhaigheag</p> + <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="transport">Giùlan</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/transport.xml lincity-ng-2.9~git20150314/data/help/gd/transport.xml --- lincity-ng-2.0/data/help/gd/transport.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Giùlan</p> + <p style="hp">Seo na dòighean giùlain a tha ri làimh ann an Lincity: slighean, rathaidean agus rèilean.</p> + <p style="hp">Tha ceathramh dòigh ann is 's e seo "leum thar raoin" gus margaid a ruigsinn. 'S e dòigh giùlain glè ghoirid a th' ann agus cha chan sinn giùlan ris a-rithist. Tha e glè chudromach co-dhiù agus mholamaid gun toir thu sùil air <a href="market">margaidean</a> a-rithist.</p> + + <p style="hp">Thèid slighean, rathaidean agus rèilean a chleachdadh gus biadh, obair, bathar, gual, clach-mhèinneir, stàilinn agus sgudal a ghiùlan eadar roinnean. Cleachdaidh tu iad airson giùlan eadar margaidean no airson togalaichean nach eil am fagas margaide (cha mholamaid seo) agus airson togalaichean a bhios feumach air giùlan gu sònraichte.</p> + + <p style="hp">'S urrainn dhan lìonraidh giùlain bathar-amh sam bith a thogail, a sgaoileadh 's a lìbhrigeadh ach MWh a shruthas tro loidhnichean-dealain. Feumaidh gach ceum a-steach 's a-mach a bhith dìreach ri taobh an lìonraidh giùlain. Tha dòigh eadar-dhealaichte aig na margaidean.</p> + + <p style="hp">Tha leig thu leas ach giùlan a thogail thar abhainn ach an thèid drochaid a chruthachadh. Tha drochaidean nas cosgaile na giùlan àbhaisteach.</p> + + <p style="hp">Tha cosgaisean airson obrach-glèidhidh aig rathaidean 's rèilean gach bliadhna agus adhbharaichidh iad truailleadh, gu h-àraidh nuair a ghiùlaineas iad torr sgudail.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="track">Slighe</a></li> + <li><a href="road">Rathad</a></li> + <li><a href="rail">Rèile</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="powerline">Loidhne-dhealain</a></li> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="finance">Ionmhas</a></li> + <li><a href="msb-transport">Tar-chòmhdachadh giùlain 's mhargaidean</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tutorial-advanced.xml lincity-ng-2.9~git20150314/data/help/gd/tutorial-advanced.xml --- lincity-ng-2.0/data/help/gd/tutorial-advanced.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tutorial-advanced.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Oideachadh - Feartan adhartach</p> +<p style="hsubtitle">Margaidean 's giùlan</p> +<p style="hp">Nochdaidh uinneag ùr ma nì thu briogadh dùbailte air margaid sa phrìomh uinneag. Stiùirichidh tu <b>na thèid a mhalart eadar margaidean 's giùlan</b> le seo. </p> +<li>Cleachd "ceannaich" gus na thèid a cheannach leis a' mhargaid on ghiùlan a stiùireadh ('s bidh barrachd dheth ri fhaighinn aig a' mhargaid).</li> +<li>Cleachd "reic" airson a chaochladh.</li> + +<p style="hp">Cha chleachd thu am feart seo gu tric ach ma tha thu airson rudeigin a bhacadh gu sònraichte.</p> + +<p style="hsubtitle">Leasachadh seasmhach</p> +<p style="hp">Seallaidh an ceathramh taba dhen uinneag bheag bàraichean-adhartais airson an leasachaidh sheasmhaich. </p> +<p style="hp">Mholamaid gun sàbhail thu an geama mus ruith thu ùine fhada e gus faighinn a-mach an do ràinig thu cor seasmhach. Ma thèid rudeigin cearr dha-rìribh (goirteas, mar eisimpleir), 's urrainn dhut tòiseachadh às ùr on gheama a shàbhail thu :-) </p> +<p style="hp">Ma chumas tu sùil air na tha ri làimh aig na margaidean gu h-iomlan (an t-uinneag beag le bàraichean-adhartais) cha bu chòir trioblaidean mòra a bhith agad. Foghnaidh gun thoir sùil air an t-seasmhachd san uinneag bheag EACO o àm gu àm. </p> + +<li>Gliocas: Thoir an aire air bothain agus sgudal sna margaidean... </li> +<p style="hp"></p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tutorial-aim.xml lincity-ng-2.9~git20150314/data/help/gd/tutorial-aim.xml --- lincity-ng-2.0/data/help/gd/tutorial-aim.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tutorial-aim.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Oideachadh - Amas a' gheama</p> +<p style="hp">Tha dà dhòigh ann gus an geama a "bhuannachd":</p> +<li>Ruig <a href="sustain">eaconamaidh seasmhach</a> ('s urrainn dhut cluich fhathast às dèidh seo).</li> +<li>Às-àitich an sluagh gu lèir agad le <a href="rocket">soithichean-fànais</a> gu planaid eile agus crìochnaichidh an geama.</li> +<p style="hp"></p> + +<p style="hp">Chan eil ach aon dòigh ann gus geama a chall an-dràsta:</p> +<li>Fhuair a h-uile duine bàs leis an acras no an truailleadh. (Thoir an aire gum bi feum agad air co-dhiù dithis gus sluagh a chruthachadh ;-) </li> +<p style="hp"></p> + +<p style="hp">Feumaidh tu piseach a thoirt air an teicneolas agad gus togalaichean 's gnìomhachasan ùra fhaighinn. Feumaidh tu fàs an t-sluaigh a stiùireadh agus caochladh de dh'fheumalachdan a choileanadh agus meidh eaconamach a chumail. </p> +<p style="hp"></p> + +<p style="hp">Faic cuideachd:</p> +<li><a href="tutorial-basics">Oideachadh - Toiseach tòiseachaidh</a></li> +<li><a href="tutorial-advanced">Oideachadh - Feartan adhartach</a></li> +<li><a href="tutorial-scenario">Oideachadh - Cnàmh-sgeul</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/gd/tutorial-basics.xml --- lincity-ng-2.0/data/help/gd/tutorial-basics.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,47 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Oideachadh - Toiseach tòiseachaidh</p> +<p style="hp">Tagh "Geama ùr " > "gobhlan aibhne". Tha na cnàmh-sgeulan eile airson cluicheadairean le barrachd eòlais. </p> +<p style="hp">Thoir an aire gu bheil goireasan bunasach aig a' bhaile: </p> +<li>Tuathanasan gus biadh a thoirt dha na margaidean</li> +<li>Tobar dhan luchd-còmhnaidh</li> +<li>Coilltean a nì gual à fiodh agus a shaothraicheas beagan cloiche-mèinneir 's stàilinn</li> +<li>Còmhnaidhean</li> +<li>Criadhadaireachd</li> +<li>Slighean</li> + +<p style="hp">Briog air togalach (sa phrìomh sgrìn) gus fiosrachadh a shealltainn san uinneag fiosrachaidh taobh deas aig a' bhonn.</p> + +<p style="hsubtitle">Margaid</p> +<p style="hp">Tha margaidean glè chudromach ann an Lincity. Bidh cha mhòr gach malart ionadail feumach air tè. <b>Feumaidh</b> tu a' chobhair air <a href="market">margaidean</a> a leughadh :-). <i>Gu nàdarra, ma tha margaid falamh, chan urrainn dhi nì a reic agus nuair a bhios i làn chan urrainn dhi nì a cheannach tuilleadh. Bidh seo as adhbhar gu tric nach eil togalach ag obair tuilleadh (cha lorg e na tha feum aige air no chan urrainn dha na rinn e a reic).</i> </p> + +<p style="hsubtitle">Giùlan</p> +<p style="hp">Bidh tu feumach air <a href="transport">giùlan</a> gus nithean aiseag astar fada agus airson gnìomhan sònraichte (thèid seo a mhìneachadh dhut ann an teachdaireachdan cobharach sònraichte, mar eisimpleir airson coilltean). Tha cuingeachadh aig giùlan mar a tha aig margaid agus 's urrainn dha fàs làn.</p> + +<p style="hp">Mur eil togalach "àbhaisteach" am fagas margaide, feumaidh tu a cheangal ri giùlan. Thoir an aire co.dhiù gu bheil cosgaisean an lùib rathaidean 's rèilean gach bliadhna, mar sin mur eil thu airson togalach a chur 'na aonar (carragh, mar eisimpleir), mholamaid gun cleachd thu margaidean nuair a bhios feum orra on a tha seo nas saoire. </p> + +<p style="hp">Chan eil feum air slighean sa bhaile tòiseachaidh ach bidh iad feumail nuair a thèid am baile a leasachadh.</p> + +<p style="hsubtitle">Airgead</p> +<p style="hp">Gheibh thu airgead le cìsean air an t-saothrachadh. San uinneag bheag, 's e <a href="finance">ionmhas</a> a th' anns an treas taba. Thoir an aoire nach cosg thu cus airgid ro luath: Nuair a bhios an t-airgead air ruith ort, tha rudan ann nach urrainn dhut togail agus feumaidh tu riadh a phàigheadh gach bliadhna airson nam fiachan. Dh'fhaoidte gun tig bristeachas ort le seo (faic an cnàmh-sgeul <a href="tutorial-scenario">droch amannan</a>.</p> + +<p style="hsubtitle">A' leasachadh a' bhaile</p> +<p style="hp">Thoir an aire gum faigh an luchd-còmhnaidh agad bàs gun bhiadh no uisge. Feumaidh tu an seòrsa de <a href="residential">chòmhnaidhean</a> a thogas tu a thaghadh le cùram gus smachd a chumail air àireamh an t-sluaigh (tha uiread de bhreith/bhàs eadar-dhealaichte aig gach seòrsa). Bheir barrachd sluaigh barrachd obrach dhut ach bidh do mhuinntir feumach air biadh, bathar, obair, ...</p> +<p style="hp">Feumaidh tu an saothrachadh agad a mheudachadh (cuir criadhaireachd 's gobha-dubh ris) agus dèanamh cinnteach gun solair thu na tha a dhìth aig na ceàrdaichean aig an aon àm. Mar sin, feumaidh tu uiread iomchaidh de choilltean a chur ris cuideachd. </p> +<p style="hp">Feumaidh tu ìre an <a href="tech-level">teicneolais</a> agad àrdachadh gus barrachd thogalaichean fhaighinn.</p> +<p style="hp">Thig an t-àm a dh'fheumas tu d' amas a thaghadh: <a href="sustain">eaconamaidh seasmhach</a> no às-àiteachadh le <a href="rocket">soithichean-fànais</a>.</p> + +<p style="hp">Mholamaid gun toir thu sùil air na <a href="pbar">stats</a> gu tric gus faighinn a-mach na tha sna margaidean. Bheir na mapaichean beaga barrachd fiosrachaidh dhut mun eaconamaidh agad agus airson rannsachadh mionaideach briog air na togalaichean (sa phrìomh sgrìn) airson fiosrachadh mun dèidhinn san uinneag bheag aig a' bhonn gu deas. </p> + +<li>Gliocas: Dèan atharrachadh no dhà agus fan ort greis (fhad 's a bhios tu a' leughadh na cobharach ;-) no thoir air a' gheama ruith nas luaithe 's cum sùil air mar a dh'atharraicheas an eaconamaidh agad. </li> +<p style="hp"></p> +<p style="hp">Gabh tlachd.</p> +<p style="hp"></p> + +<p style="hp">Faic cuideachd:</p> +<li><a href="tutorial-advanced">Oideachadh - Feartan adhartach</a></li> +<li><a href="tutorial-scenario">Oideachadh - Cnàmh-sgeul</a></li> +<li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> +<li><a href="msb-ub40">Tar-chòmhdachadh cion-cosnaidh</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tutorial-overview.xml lincity-ng-2.9~git20150314/data/help/gd/tutorial-overview.xml --- lincity-ng-2.0/data/help/gd/tutorial-overview.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tutorial-overview.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Oideachadh - An sgrìn</p> + +<p style="hp"><b>Barr gu clì </b> Seo far a bheil am bàr-inneal leis na h-innealan (ceist agus am milltear) agus na togalaichean a gheibh thu sa gheama. </p> +<li>Dèan briogadh clì air ìomhaigheag gus barrachd nithean a shealltainn. </li> +<li>Dèan briogadh deas air ìomhaigheag gus a' chobhair ceangailte ris a shealltainn. </li> +<li>Ma dh'fhanas tu leis an luchag, nochdaidh teachdaireachd cobharach bheag. </li> +<p style="hp"></p> + +<p style="hp"><b>Bonn gu clì </b> Seo far a chumas tu smachd air luaths a' gheama.</p> +<p style="hp"></p> + +<p style="hp"><b>Bonn gu deas</b> Seo far a bheil na h-"innealan fiosrachaidh": mapa beag le 4 tabaichean 's 2 phutan sgrolaidh agus ìomhaigheagan fodha le caochladh fiosrachaidh. Briog orra gus faighinn a-mach na thachras. </p> +<p style="hp"></p> + +<p style="hp">Feuch am meur-chlàr 's an luchag (briogadh clì, meadhanach 's deas agus an cuibhle ...), F1 airson cobharach. </p> + +<p style="hp">Faic cuideachd:</p> +<li><a href="tutorial-basics">Oideachadh - Toiseach tòiseachaidh</a></li> +<li><a href="tutorial-advanced">Oideachadh - Feartan adhartach</a></li> +<li><a href="tutorial-scenario">Oideachadh - Cnàmh-sgeul</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/gd/tutorial-scenario.xml --- lincity-ng-2.0/data/help/gd/tutorial-scenario.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> +<p style="htitle">Oideachadh - Cnàmh-sgeul</p> +<p style="hp">Fo "Geama ùr" </p> + +<p style="hsubtitle">Furasta</p> +<li>Deagh amannan</li> + +<li>Tràigh (cuimhnich gum faigh do mhuinntir bàs gun bhiadh ;-) </li> + +<p style="hsubtitle">Doirbh</p> +<li>"droch amannan": feuch gun seachnaich thu bristeachas. Feumaidh tu sgrùdadh mionaideach a dhèanamh air a' bhaile agus ceumannan èiginneach a chur romhad gus cosgaisean a sheachnadh ach am faigh thu airgead. Tha e doirbh ach gabh e dèanamh fiù 's gun ruig thu eaconamaidh seasmhach.</li> +<li>"glè thioram": chan eil ach glè bheag de dh'uisge air an tìr, mar sin feumaidh tu taghadh gu cùramach far an cuir thu na tuathanasan agus na coilltean agad airson an èifeachdachd as motha.</li> +<li>"glè fhliuch": tha cha mhòr an dùthaich gu lèor fo thuil, mar sin tha e glè dhoirbh baile a thogail.</li> +<p style="hp"></p> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/tutorial.xml lincity-ng-2.9~git20150314/data/help/gd/tutorial.xml --- lincity-ng-2.0/data/help/gd/tutorial.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/tutorial.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Document style="helpdocument"> + <p style="htitle">Oideachadh</p> + + <li><a href="tutorial-aim">Amas a' gheama</a></li> + <li><a href="tutorial-overview">An sgrìn</a></li> + <li><a href="tutorial-basics">Toiseach tòiseachaidh</a></li> + <li><a href="tutorial-advanced">Feartan adhartach</a></li> + <li><a href="tutorial-scenario">Cnàmh-sgeul</a></li> +</Document> + diff -Nru lincity-ng-2.0/data/help/gd/university.xml lincity-ng-2.9~git20150314/data/help/gd/university.xml --- lincity-ng-2.0/data/help/gd/university.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,26 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Oilthigh</p> + <p style="hp">Cuiridh oilthighean ris an teicneolas agad. + Tha iad feumach air bathar agus obair. Nì iad barrachd rannsachaidh na sgoiltean airson an t-aon uiread de bhathar is obair. + Caithidh iad torr bathair 's obrach co-dhiù agus tha iad cosgail ri ruith, mar sin dèan cinnteach gu bheil an t-eaconamaidh agad làidir gu leòr gus taic a thoirt dhaibh.</p> + <p style="hp">Bidh thu feumach air uiread de dh'oilthighean gus teicneolas mu 100% a ruigsinn.</p> + <p style="hp">Chan eil oilthighean feumach air ceangal dhan ghiùlan on a chruinnicheas na tha a dhìth orra o mhargaid ionadail aig a bheil bathar 's obair a dh'fhòghnadh ri làimh.</p> + + <p style="hsubtitle">An AIRE</p> + <p style="hp">Feumaidh 4 sgoiltean airson gach oilthigh a bhith agad gus oileanaich a thoirt dha.</p> + + <p style="hp">Seo oilthigh</p> + <img src="images/tiles/university.png" halign="center"/> + <p style="hp">agus seo ìomhaigheag</p> + <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="tech-level">Teicneolas</a></li> + <li><a href="market">Margaid</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="goods">Bathar</a></li> + <li><a href="jobs">Obair</a></li> + <li><a href="school">Sgoil</a></li> + +</Document> diff -Nru lincity-ng-2.0/data/help/gd/waste.xml lincity-ng-2.9~git20150314/data/help/gd/waste.xml --- lincity-ng-2.0/data/help/gd/waste.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/waste.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Sgudal</p> + <p style="hp">Adhbharaichidh gach caitheamh bathair sgudal. 'S urrainn dhut an sgudal a thoirt do dh'òtrach, a chur gu feum ann an ionad ath-chuairteachaidh no a chruinneachadh air giùlan agus sna margaidean. Thoir an aire co-dhiù ma tha cus sgudail ann gun tèid e 'na theine na dh'adhbharaicheas truailleadh dona an adhair.</p> + + <p style="hp">'S urrainn dha thuathanasan aig a bheil cumhachd-dhealain agus dha choilltean beagan sgudail a chaitheamh gu bith-eòlach.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="tip">Ã’trach</a></li> + <li><a href="recycle">Ionad ath-chuairteachaidh</a></li> + <li><a href="commune">Co-chomann</a></li> + <li><a href="farm">Tuathanas</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/waterwell.xml lincity-ng-2.9~git20150314/data/help/gd/waterwell.xml --- lincity-ng-2.0/data/help/gd/waterwell.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/waterwell.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Tobar</p> + <p style="hp">Bheir tobraichean uisge dhut. Sruthaidh uisge ann am pìoban fon t-siostam giùlain agad. + Adhbharaichidh dìth uisge na h-aon trioblaidean a dh'adhbharaicheas dìth bìdh. + Chì thu fiosrachadh san tar-chòmhdachadh gortais air a' mhapa bheag. Thoir an aire nach gabh an t-uisge òl tuilleadh ma bhios cus truaillidh ann.</p> + + <p style="hp">Faic cuideachd:</p> + <li><a href="food">Biadh</a></li> + <li><a href="water">Water</a></li> + <li><a href="transport">Giùlan</a></li> + <li><a href="msb-starve">Tar-chòmhdachadh gortais</a></li> + <li><a href="pollution">Truailleadh</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/water.xml lincity-ng-2.9~git20150314/data/help/gd/water.xml --- lincity-ng-2.0/data/help/gd/water.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/water.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Uisge</p> + <p style="hp">Bheir tobraichean uisge dhut agus sruthaidh i ann am pìoban fon t-siostam giùlain agad. Feumaidh tu còmhnaidhean a cheangal ri pìoban uisge. 'S urrainn do choilltean agus tuathanasan aig a bheil cumhachd-dhealain piseach a thoirt air an torrachas le uisgeachadh. </p> + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="commodities">Bathar-amh</a></li> + <li><a href="waterwell">Tobar</a></li> + <li><a href="residential">Còmhnaidhean</a></li> + <li><a href="commune">Coille</a></li> + <li><a href="farm">Tuathanas</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/gd/windmill.xml lincity-ng-2.9~git20150314/data/help/gd/windmill.xml --- lincity-ng-2.0/data/help/gd/windmill.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/gd/windmill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +<?xml version="1.0"?> +<Document style="helpdocument"> + <p style="htitle">Muileann-gaoithe</p> + <p style="hp">Bheir muileannan-gaoithe fiodha cumhachd dha chòmhnaidhean 's tuathanasan. Le cumhachd-dhealain, 's urrainn dha na thuathanasan barrachd bìdh a shaothrachadh agus bidh barrachd luach sna còmhnaidhean.</p> + <p style="hp">Cleachdaidh luchd-còmhnaidh aig a bheil cumhachd-dhealain barrachd bathair.</p> + <p style="hp">Tha muileannan-gaoithe feumach air obair gus cumhachd a shaothrachadh. Mur eil obair gu leòr ri làimh muilinn-ghaoithe, cha shaothraich e an uiread de chumhachd agus cha shaothraich e gin mur eil obair sam bith ri làimh.</p> + + <p style="hp">Tha dà sheòrsa muillinn-ghaoithe ann.</p> + <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> + <p style="hp">Seo muileann-gaoithe "fiodha" a bhios ri làimh dhut le beagan teicneolais. Solairidh e cumhachd-dhealain kWh ionadail.</p> + <img src="images/tiles/windmill1w.png" halign="center"/> + <p style="hp">'s e seòrsa muilinn-ghaoithe "nuadh" a tha san dàrna seòrsa. Bheir e cumhachd-dhealain MWh gu grioda cumhachd a' bhaile.</p> + <img src="images/tiles/windmill1g.png" halign="center"/> + <p style="hp">Tha an seòrsa a gheibh thu a' crochadh air ìre an teicneolais agad.</p> + + <p style="hsubtitle">Faic cuideachd:</p> + <li><a href="power">Cumhachd-dhealain</a></li> + <li><a href="substation">Fo-stèisean</a></li> + <li><a href="powerline">Loidhne-dhealain</a></li> + <li><a href="tech-level">Teicneolas</a></li> + <li><a href="msb-power">Tar-chòmhdachadh cumhachd</a></li> + <li><a href="powerscoal">Stèisean cumhachd-guail</a></li> + <li><a href="powersolar">Stèisean cumhachd-grèine</a></li> +</Document> diff -Nru lincity-ng-2.0/data/help/ru/blacksmith.xml lincity-ng-2.9~git20150314/data/help/ru/blacksmith.xml --- lincity-ng-2.0/data/help/ru/blacksmith.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Кузница</p> - <p style="hp">Кузница преобразовывает Ñталь и уголь в товар. Ð’Ñ‹ должны иÑпользовать кузницы на ранней Ñтадии игры. Да! ЕÑтеÑтвенно она дает рабочие меÑта.</p> - <p style="hp">Ðа одну кузницу рекомендуетÑÑ Ð¿Ð¾Ñтроить 5/6 коммун.</p> - <p style="hp">Кузницу не обÑзательно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортными путÑми. Ð’Ñе нужные реÑурÑÑ‹ она может купить и продать в близко ÑтоÑщие магазины.</p> - <p style="hp">Что бы увидеть какую пользу приноÑÑÑ‚ кузницы, можно нажать на неё и поÑмотреть ÑтатуÑ. Так же по анимации можно понÑÑ‚ÑŒ работает она, или нет.</p> + <p style="hp">Кузница Ñоздаёт товары из ÑƒÐ³Ð»Ñ Ð¸ Ñтали, а также предоÑтавлÑет рабочие меÑта.</p> + <p style="hp">Пока у Ð’Ð°Ñ Ð½ÐµÑ‚ производÑтва Ñтали, Ð’Ñ‹ можете Ñтроить коммуны. Ðа одну кузницу рекомендуетÑÑ Ð¿Ð¾Ñтроить 5 или 6 коммун.</p> + <p style="hp">Кузницу не обÑзательно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли она находитÑÑ Ð² зоне доÑÑгаемоÑти магазина.</p> + <p style="hp">Чтобы увидеть, какую пользу приноÑÑÑ‚ кузницы, можно нажать на неё и поÑмотреть ÑтатуÑ. Также по анимации можно понÑÑ‚ÑŒ, работает она или нет.</p> - <p style="hp">Это кузница:</p> - <img src="images/tiles/blacksmith0.png" halign="center"/> - <p style="hp">а Ñто иконка:</p> - <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазины</a></li> + <p style="hp">Это кузница:</p> + <img src="images/tiles/blacksmith0.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="market">Магазин</a></li> <li><a href="ore">Руда</a></li> <li><a href="commune">Коммуна</a></li> <li><a href="steel">Сталь</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <li><a href="jobs">Рабочие</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/bulldoze.xml lincity-ng-2.9~git20150314/data/help/ru/bulldoze.xml --- lincity-ng-2.0/data/help/ru/bulldoze.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/bulldoze.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,17 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Бульдозер</p> - <p style="hp">Уничтожает выбранные вами поÑтройки. Ðажмите на подÑтроку, еÑли желаете от неё избавитьÑÑ. Уничтожение Ñтоит денег. Когда вы Ñтроите и уничтожаете поÑтройки, вы можете увидеть ÑтоимоÑÑ‚ÑŒ внизу Ñкрана.</p> - <p style="hp">Ðекоторые думают, что уничтожение монумента Ñтоит очень больших денег, на Ñамом деле так и еÑÑ‚ÑŒ :-). СтоимоÑÑ‚ÑŒ Ñ€Ð°Ð·Ñ€ÑƒÑˆÐµÐ½Ð¸Ñ ÑкладываетÑÑ Ð½Ðµ только из физичеÑких затрат, а так же из политичеÑких Ñоображений. Ðапример, ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶Ð°Ñ Ð¼Ð¾Ð½ÑƒÐ¼ÐµÐ½Ñ‚ цена поÑтроек, из-за протеÑта, увеличиваютÑÑ.</p> - <p style="hp">Уничтожение воды так же очень дорого.</p> - <p style="hp">Это иконка бульдозера</p> - <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="river">Реки(вода)</a></li> -</Document> + <p style="hp">Уничтожает выбранные Вами поÑтройки. Ðажмите на поÑтройку, еÑли желаете от неё избавитьÑÑ. Уничтожение Ñтоит денег. Когда Ð’Ñ‹ Ñтроите и уничтожаете поÑтройки, Ð’Ñ‹ можете увидеть ÑтоимоÑÑ‚ÑŒ внизу Ñкрана.</p> + <p style="hp">Ðекоторые думают, что уничтожение монумента Ñтоит очень больших денег, на Ñамом деле так и еÑÑ‚ÑŒ :-). СтоимоÑÑ‚ÑŒ Ñ€Ð°Ð·Ñ€ÑƒÑˆÐµÐ½Ð¸Ñ ÑкладываетÑÑ Ð½Ðµ только из физичеÑких затрат, но и из политичеÑких Ñоображений. Ðапример, в ÑтоимоÑÑ‚ÑŒ ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð½ÑƒÐ¼ÐµÐ½Ñ‚Ð° закладываютÑÑ Ñ€Ð°Ñходы на Ñудебные Ñ‚Ñжбы, ÑвÑзанные Ñ Ð¿Ñ€Ð¾Ñ‚ÐµÑтами.</p> + <p style="hp">Уничтожение воды также очень дорого.</p> + <p style="hp">Ðажатие клавиши Ctrl позволит увеличить количеÑтво уничтожаемых поÑтроек.</p> + <p style="hp">Это иконка бульдозера:</p> + <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="evacuate">ОпуÑтошение</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="river">Река/Озеро</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/button-index.xml lincity-ng-2.9~git20150314/data/help/ru/button-index.xml --- lincity-ng-2.0/data/help/ru/button-index.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,124 +1,70 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Выберите что вам интереÑно</p> - - <!--<p style="subtitle">ЭлектричеÑтво</p>--> - <img src="images/gui/buttonpanel/power/powerlines.png"/> - <p><a href="powerline">Электролинии (ЛЭП)</a></p> - <img src="images/gui/buttonpanel/power/solarpower.png"/> - <p><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></p> - <img src="images/gui/buttonpanel/power/substation.png"/> - <p><a href="substation">ПодÑтанциÑ</a></p> - - <!--<p style="subtitle">Резиденции</p>--> - <img src="images/gui/buttonpanel/residence/residence.png"/> - <p><a href="residential">Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ‚Ð½Ð°Ñ Ð¿Ð¾Ñтройка</a></p> - - <!--<p style="subtitle">Water well</p>--> - <img src="images/gui/buttonpanel/waterwell.png"/> - <p><a href="waterwell">ВодÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°</a></p> - - <!--<p style="subtitle">Парки</p>--> - <img src="images/gui/buttonpanel/parks/farm.png"/> - <p><a href="farm">Фермы</a></p> - - <!--<p style="subtitle">ИндуÑтриÑ</p>--> - <img src="images/gui/buttonpanel/industry/market.png"/> - <p><a href="market">Магазины</a></p> - - <!--<p style="subtitle">Базовые</p>--> - <img src="images/gui/buttonpanel/base/bulldozer.png"/> - <p><a href="bulldoze">Бульдозер</a></p> - - <!--<p style="subtitle">ТранÑпорт</p>--> - <img src="images/gui/buttonpanel/transport/tracks.png"/> - <p><a href="track">Грунтовка</a></p> - - <!--<p style="subtitle">Шахты</p>--> - <img src="images/gui/buttonpanel/mining/coalmine.png"/> - <p><a href="coalmine">Шахта углÑ</a></p> - - <!--<p style="subtitle">ТранÑпорт</p>--> - <img src="images/gui/buttonpanel/transport/rails2.png"/> - <p><a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></p> - - <!--<p style="subtitle">ЭлектричеÑтво</p>--> - <img src="images/gui/buttonpanel/power/coalpower.png"/> - <p><a href="powerscoal">Угольные ÑлектроÑтанции</a></p> - - <!--<p style="subtitle">ТранÑпорт</p>--> - <img src="images/gui/buttonpanel/transport/road.png"/> - <p><a href="road">Дорога</a></p> - - <!--<p style="subtitle">ИндуÑтриÑ</p>--> - <img src="images/gui/buttonpanel/industry/lightindustry.png"/> - <p><a href="industryl">Ð—Ð´Ð°Ð½Ð¸Ñ Ð»ÐµÐ³ÐºÐ¾Ð¹ индуÑтрии</a></p> - - <!--<p style="subtitle">Другое</p>--> - <img src="images/gui/buttonpanel/misc/university.png"/> - <p><a href="university">УниверÑитеты</a></p> - - <!--<p style="subtitle">Шахты</p>--> - <img src="images/gui/buttonpanel/mining/commune.png"/> - <p><a href="commune">Коммуна</a></p> - <img src="images/gui/buttonpanel/mining/oremine.png"/> - <p><a href="oremine">Шахта руды</a></p> - - <!--<p style="subtitle">КоммерциÑ</p>--> - <img src="images/gui/buttonpanel/transport/port.png"/> - <p><a href="export">Импорт, ÑкÑпорт </a></p> - - <!--<p style="subtitle">ИндуÑтриÑ</p>--> - <img src="images/gui/buttonpanel/industry/heavyindustry2.png"/> - <p><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ(Ñталь)</a></p> - - <!--<p style="subtitle">Парки</p>--> - <img src="images/gui/buttonpanel/parks/tree.png"/> - <p><a href="park">Парк</a></p> - - <!--<p style="subtitle">Шахты</p>--> - <img src="images/gui/buttonpanel/mining/recycling.png"/> - <p><a href="recycle">Переработка</a></p> - - <!--<p style="subtitle">Парки</p>--> - <img src="images/gui/buttonpanel/parks/water.png"/> - <p><a href="river">Вода/Реки</a></p> - - <!--<p style="subtitle">Другое</p>--> - <img src="images/gui/buttonpanel/misc/health.png"/> - <p><a href="health">Больницы</a></p> - - <!--<p style="subtitle">ТранÑпорт</p>--> - <img src="images/gui/buttonpanel/transport/rocket.png"/> - <p><a href="rocket">Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></p> - - <!--<p style="subtitle">ЭлектричеÑтво</p>--> - <img src="images/gui/buttonpanel/power/windmills.png"/> - <p><a href="windmill">ВетрÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°</a></p> - - <!--<p style="subtitle">Другое</p>--> - <img src="images/gui/buttonpanel/parks/monument.png"/> - <p><a href="monument">Монумент</a></p> - - <!--<p style="subtitle">Другое</p>--> - <img src="images/gui/buttonpanel/misc/book.png"/> - <p><a href="school">Школы</a></p> - - <!--<p style="subtitle">Парки</p>--> - <img src="images/gui/buttonpanel/parks/mills.png"/> - <p><a href="mill">Мельница</a></p> - - <!--<p style="subtitle">ИндуÑтриÑ</p>--> - <img src="images/gui/buttonpanel/industry/pottery.png"/> - <p><a href="pottery">ГончарнаÑ</a></p> - - <!--<p style="subtitle">Другое</p>--> - <img src="images/gui/buttonpanel/misc/fire.png"/> - <p><a href="firestation">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</a></p> - <img src="images/gui/buttonpanel/misc/sports.png"/> - <p><a href="cricket">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></p> - - <!--<p style="subtitle">ТранÑпорт</p>--> - <img src="images/gui/buttonpanel/transport/port.png"/> - <p><a href="port">Порт</a></p> -</Document> + <p style="htitle">Выберите интереÑующую Ð’Ð°Ñ Ñ‚ÐµÐ¼Ñƒ</p> + <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> + <p style="hp"><a href="powerline">Линии Ñлектропередач (ЛЭП)</a></p> + <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> + <p style="hp"><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + <p style="hp"><a href="substation">ПодÑтанциÑ</a></p> + <img src="images/gui/buttonpanel/residence/residence.png" halign="center"/> + <p style="hp"><a href="residential">Жилой дом</a></p> + <img src="images/gui/buttonpanel/waterwell.png" halign="center"/> + <p style="hp"><a href="waterwell">Колодец</a></p> + <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> + <p style="hp"><a href="farm">Ферма</a></p> + <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> + <p style="hp"><a href="market">Магазин</a></p> + <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> + <p style="hp"><a href="bulldoze">Бульдозер</a></p> + <img src="images/gui/buttonpanel/base/broom.png" halign="center"/> + <p style="hp"><a href="evacuate">ОпуÑтошение</a></p> + <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> + <p style="hp"><a href="track">Грунтовка</a></p> + <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + <p style="hp"><a href="coalmine">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</a></p> + <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> + <p style="hp"><a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></p> + <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> + <p style="hp"><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></p> + <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> + <p style="hp"><a href="road">Дорога</a></p> + <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> + <p style="hp"><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></p> + <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + <p style="hp"><a href="university">УниверÑитет</a></p> + <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> + <p style="hp"><a href="commune">Коммуна</a></p> + <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> + <p style="hp"><a href="oremine">Рудник</a></p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + <p style="hp"><a href="export">Импорт, ÑкÑпорт</a></p> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> + <p style="hp"><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (металлургичеÑкий завод)</a></p> + <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> + <p style="hp"><a href="park">Парк</a></p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + <p style="hp"><a href="recycle">Центр по переработке отходов</a></p> + <img src="images/gui/buttonpanel/parks/water.png" halign="center"/> + <p style="hp"><a href="river">Река/Озеро</a></p> + <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> + <p style="hp"><a href="health">Больница</a></p> + <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> + <p style="hp"><a href="rocket">Ð¡Ñ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей</a></p> + <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> + <p style="hp"><a href="windmill">Ветрогенератр</a></p> + <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> + <p style="hp"><a href="monument">Монумент</a></p> + <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> + <p style="hp"><a href="school">Школа</a></p> + <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> + <p style="hp"><a href="mill">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</a></p> + <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> + <p style="hp"><a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a></p> + <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> + <p style="hp"><a href="firestation">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</a></p> + <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> + <p style="hp"><a href="cricket">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/coalmine.xml lincity-ng-2.9~git20150314/data/help/ru/coalmine.xml --- lincity-ng-2.0/data/help/ru/coalmine.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/coalmine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,26 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</p> - <p style="hp">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° должна быть поÑтроена на меÑторождениÑÑ… углÑ. МеÑÑ‚Ð¾Ñ€Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð²Ñ‹ можете увидеть нажав ÑоответÑтвующую кнопку под мини-картой.</p> - <p style="hp">Первое нажатие будет Ñтоить вам 1 миллион рублей. ПоÑле Ñтого иÑпользовать можно будет беÑплатно. Стоить вы можете и без иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñтой кнопки.</p> - <p style="hp">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° требует рабочих.</p> - - <p style="hp">Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</p> - <img src="images/tiles/coalmine-full.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + <p style="hp">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° должна быть поÑтроена на меÑторождениÑÑ… углÑ. МеÑÑ‚Ð¾Ñ€Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð’Ñ‹ можете увидеть, нажав ÑоответÑтвующую кнопку под миникартой.</p> + <p style="hp">Первое нажатие будет Ñтоить Вам 1 миллион рублей. ПоÑледующее иÑпользование беÑплатно. Строить вы можете и без иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñтой кнопки.</p> + <p style="hp">Угольной шахте требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ.</p> + <p style="hp">ЕÑли Ваша Ñкономика производит избыточное количеÑтво углÑ, Ваши угольные шахты могут перемещать уголь на новые подземные Ñлои.</p> - <p style="hp">Ðа карте меÑторождений будет выделено краÑным там, где ÑƒÐ³Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐµ вÑего.</p> - <p style="hp">За добычу ÑƒÐ³Ð»Ñ Ð²Ñ‹ получаете деньги.</p> + <p style="hp">Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°:</p> + <img src="images/tiles/coalmine-full.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/mining/coalmine.png" halign="center"/> + <p style="hp">Графики отображают количеÑтво углÑ, который добыли, но не отправили Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы. Верхние угольные шахты имеют наибольшый Ð·Ð°Ð¿Ð°Ñ ÑƒÐ³Ð»Ñ.</p> + <p style="hp">Ðажав на угольную шахту, Ð’Ñ‹ Ñможете увидеть количеÑтво добытого ÑƒÐ³Ð»Ñ Ð² шахте и, что более важно, доÑтупные запаÑÑ‹ углÑ.</p> + <p style="hp">За добычу ÑƒÐ³Ð»Ñ Ð’Ñ‹ получаете деньги.</p> + <p style="hp">Также угольные шахты -- иÑточники <a href="pollution">загрÑзнениÑ</a>.</p> + + <p style="hsubtitle">См. ещё:</p> <li><a href="coal">Уголь</a></li> <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="jobs">Рабочие</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/coal.xml lincity-ng-2.9~git20150314/data/help/ru/coal.xml --- lincity-ng-2.0/data/help/ru/coal.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,17 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Уголь</p> - <p style="hp">Уголь иÑпользуетÑÑ Ð´Ð»Ñ ÑƒÐ³Ð¾Ð»ÑŒÐ½Ñ‹Ñ… ÑлектроÑтанций. Так же Ð´Ð»Ñ Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ñ‹Ñ… поÑтроек, мельниц и кузниц. ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ(Ñталь) иÑпользует уголь в Ñлучае еÑли нет ÑлектричеÑтва.</p> - <p style="hp">Угольные шахты нужно Ñтроить там, где еÑÑ‚ÑŒ уголь. Можно запроÑить информацию нажав на ÑоответÑтвующую кнопку(на мини-карте).</p> - <p style="hp">Коммуны могут вырабатывать очень малое кол-во углÑ. Реально Ñто будет древеÑный уголь. ЕÑтеÑтвенно они Ñмогут Ñнабжать лишь небольшие поÑтройки.</p> + <p style="hp">Уголь иÑпользуетÑÑ ÑƒÐ³Ð¾Ð»ÑŒÐ½Ñ‹Ð¼Ð¸ ÑлектроÑтанциÑми Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ñтва ÑлектричеÑтва. Также иÑпользуетÑÑ Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ñ‹Ð¼Ð¸ маÑтерÑкими, текÑтильными фабриками и кузницами в процеÑÑе производÑтва товаров. ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (металлугричеÑкие заводы) иÑпользует уголь, еÑли нет ÑлектричеÑтва.</p> + <p style="hp">Уголь добываетÑÑ Ð¸Ð·-под земли Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ угольных шахт. ЗапаÑÑ‹ ÑƒÐ³Ð»Ñ Ð½Ð° карте ограничены, Ð’Ñ‹ можете запроÑить информацию о запаÑах углÑ, нажав на ÑоответÑтвующую кнопку (на миникарте).</p> + <p style="hp">Коммуны могут вырабатывать очень малое количеÑтво углÑ. Ð’ дейÑтвительноÑти Ñто древеÑный уголь. ЕÑтеÑтвенно, коммуны могут Ñнабжать углём лишь небольшие поÑтройки.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="coalmine">Угольные шахты</a></li> - <li><a href="powerscoal">Угольные ÑлектроÑтанции</a></li> - <li><a href="commune">Общины</a></li> - <li><a href="pottery">Гончарные</a></li> - <li><a href="blacksmith">Кузницы</a></li> - <li><a href="msb-coal">Карта углÑ</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="coalmine">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a></li> + <li><a href="blacksmith">Кузница</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/commodities.xml lincity-ng-2.9~git20150314/data/help/ru/commodities.xml --- lincity-ng-2.0/data/help/ru/commodities.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/commodities.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">Товары потреблениÑ</p> + <p style="hp">Товары Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ -- Ñто товары, которые могут быть произведены, транÑпортированы, Ñкладированы, обработаны и иÑпользованы в Вашем горде. ДиÑплей ÑтатуÑа каждого ÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ учаÑтка дороги вÑегда выдаёт релевантный ÑпиÑок товаров потреблениÑ. Стрелки в начале линий показывают Ñырьё, продукцию и транÑпортабельноÑÑ‚ÑŒ.</p> + <p style="hp">Ð’ большинÑтве Ñлучаев должно быть как минимум 5% ÑÑ‹Ñ€ÑŒÑ (Ð´Ð»Ñ Ð¿Ñ€ÐµÐ²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ð¸Ñ… в 5% товаров).</p> + <p style="hp">Ð’Ñ‚Ð¾Ñ€Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° на миникарте показывает раÑширенную ÑтатиÑтику и процеÑÑ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹. ВмеÑте Ñ Ð·Ð¾Ð½Ð¾Ð¹ транÑпорта можно получить много информации о Вашей Ñкономике.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="pbar">Окно ÑтатиÑтики</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> + <li><a href="food">Еда</a></li> + <li><a href="jobs">Рабочие</a></li> + <li><a href="goods">Товары</a></li> + <li><a href="waste">МуÑор</a></li> + <li><a href="ore">Руда</a></li> + <li><a href="steel">Сталь</a></li> + <li><a href="coal">Уголь</a></li> + <li><a href="water">Вода</a></li> + <li><a href="power">ЭнергиÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/commune.xml lincity-ng-2.9~git20150314/data/help/ru/commune.xml --- lincity-ng-2.0/data/help/ru/commune.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Коммуна</p> - <p style="hp">Коммуна Ð´Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка включает в ÑÐµÐ±Ñ Ð´Ñ€ÐµÐ²ÐµÑную топку, леÑной учаÑток и Ñарай Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð´Ñ€ÐµÐ²ÐµÑного ÑƒÐ³Ð»Ñ (может быть заменой каменного углÑ). Она ещё вырабатывает небольшое кол-во руды и Ñтали.</p> - <p style="hp">ВероÑтно вам нужно много Ñтих поÑтроек, что бы получать доÑтаточное кол-во углÑ, руды и Ñтали Ð´Ð»Ñ ÑÐ½Ð°Ð±Ð¶ÐµÐ½Ð¸Ñ Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ñ‹Ñ… изделий, кузниц и других поÑтроик.</p> + <p style="hp">Ð”Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка включает в ÑÐµÐ±Ñ Ð´Ñ€ÐµÐ²ÐµÑную топку, леÑной учаÑток и Ñарай Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð´Ñ€ÐµÐ²ÐµÑного ÑƒÐ³Ð»Ñ (может быть заменой каменного углÑ). Также она вырабатывает небольшое количеÑтво руды и Ñтали.</p> + <p style="hp">ВероÑтно, Вам потребуетÑÑ "неÑколько" коммун, чтобы получать доÑтаточное количеÑтво углÑ, руды и Ñтали Ð´Ð»Ñ ÑÐ½Ð°Ð±Ð¶ÐµÐ½Ð¸Ñ Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ñ‹Ñ… маÑтерÑких, кузниц и других поÑтроек.</p> <p style="hp">ЕÑли коммуна ничего не вырабатывает больше 10 лет, то она закрываетÑÑ Ð¸ превращаетÑÑ Ð² парк.</p> - <p style="hp">Общины можно ÑоединÑÑ‚ÑŒ транÑпортной линией в любой точке.</p> - - <p style="hp">Это коммуна</p> - <img src="images/tiles/commune1.png" halign="center"/> - <p style="hp">и Ñто иконка</p> - <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="pottery">Гончарные изделиÑ</a></li> - <li><a href="blacksmith">КузнечнаÑ</a></li> - <li><a href="mill">Мельница</a></li> - <li><a href="oremine">Шахта руды</a></li> + <p style="hp">Коммуны можно ÑоединÑÑ‚ÑŒ c транÑпортной ÑиÑтемой в любой точке.</p> + <p style="hp">ПроизводÑтво ÑƒÐ³Ð»Ñ Ð² коммунах завиÑит от Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ñ… вод, еÑли они не получают Ñвежую воду Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемой (учаÑтки Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ð¼Ð¸ водами отображаютÑÑ Ð·ÐµÐ»Ñ‘Ð½Ñ‹Ð¼ цветом).</p> + + <p style="hp">Это коммуна:</p> + <img src="images/tiles/commune1.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a></li> + <li><a href="blacksmith">Кузница</a></li> + <li><a href="mill">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</a></li> + <li><a href="oremine">Рудник</a></li> <li><a href="steel">Сталь</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/cricket.xml lincity-ng-2.9~git20150314/data/help/ru/cricket.xml --- lincity-ng-2.0/data/help/ru/cricket.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,26 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</p> - <p style="hp">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° дает Ñпорт людÑм и развлекает ваше наÑеление. Ð”Ð»Ñ Ð½ÐµÑ‘ нужны товары и работа. Площадку не нужно подÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортом, вÑе что ей надо она может взÑÑ‚ÑŒ в магазинах, которые должны находитьÑÑ Ð½ÐµÐ¿Ð¾Ð´Ð°Ð»ÐµÐºÑƒ. Ещё она требует ежемеÑÑчных инвеÑтиций.</p> - <p style="hp">Когда вы Ñтроите баÑкетбольную площадку, она начинает работать не Ñразу, только поÑле 3-Ñ… меÑÑцев.</p> - <p style="hp">Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾, чтобы поÑмотреть кому доÑтупна площадка, нажмите на ÑоответÑтвующую кнопку на мини-карте. МеÑта отмеченные зелёным цветом имеют возможноÑÑ‚ÑŒ пользоватьÑÑ Ñтой площадкой.</p> - <p style="hp">БаÑкетбол увеличивает желание жить в домах, которые вы поÑтроили.</p> - <p style="hp">С помощью анимации вы можете увидеть, работать площадка или нет. МакÑимально ÑÑ„Ñ„ÐµÐºÑ‚Ð¸Ð²Ð½Ð°Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ð° будет 1 раз в 3 меÑÑца.</p> + <p style="hp">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° приобщает ваше наÑеление к Ñпорту и развлечениÑм. Ð”Ð»Ñ Ð½ÐµÑ‘ нужны товары и рабочие. Площадку не обÑзательно должна быть Ñоединена Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, однако, еÑли она не Ñоединена, то должна раÑполагатьÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°, который Ñможет обеÑпечить её товарами и рабочими. Ещё она требует ежемеÑÑчных инвеÑтиций.</p> + <p style="hp">Когда Ð’Ñ‹ Ñтроите баÑкетбольную площадку, она начинает работать не Ñразу. Обычно проходит около трёх меÑÑцев до начала её функционированиÑ.</p> + <p style="hp">Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾ чтобы поÑмотреть, кому доÑтупна площадка, нажмите на ÑоответÑтвующую кнопку на миникарте. МеÑта в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ¸ отображаютÑÑ Ñ‚Ñ‘Ð¼Ð½Ð¾-зелёным цветом, не попадающие в зону дейÑÑ‚Ð²Ð¸Ñ -- Ñерым.</p> + <p style="hp">БаÑкетбол увеличивает привлекательноÑÑ‚ÑŒ раÑположенных Ñ€Ñдом домов.</p> + <p style="hp">С помощью анимации Ð’Ñ‹ можете увидеть, работает площадка или нет.</p> - <p style="hp">Это баÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</p> - <img src="images/tiles/cricket1.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> - <p style="hp">и Ñто иконка под мини картой</p> - <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <p style="hp">Это баÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°:</p> + <img src="images/tiles/cricket1.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини-канта</a></li> - <li><a href="goods">Товары</a></li> - <li><a href="market">Магазин</a></li> - <li><a href="jobs">Работа</a></li> - <li><a href="msb-cricket">Спортивное покрытие</a></li> -</Document> + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/misc/sports.png" halign="center"/> + <p style="hp">а Ñто иконка под миникартой:</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="goods">Товары</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="jobs">Рабочие</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/dialogs.xml lincity-ng-2.9~git20150314/data/help/ru/dialogs.xml --- lincity-ng-2.0/data/help/ru/dialogs.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/dialogs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,18 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Помощь</p> - <p>Map-Tab</p> - <li><a href="mini-screen">Мини карта</a></li> - <p>Markets-Tab</p> - <li><a href="pbar">Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ñ€ÐµÑурÑов</a></li> - <p>$-Tab</p> - <li><a href="finance">ФинанÑÑ‹</a></li> - <li><a href="other-costs">Другие цены</a></li> - <li><a href="housing">ÐаÑеление</a></li> - <p>Eco-Tab</p> - <li><a href="economy">Графика Ñкономики</a></li> - <li><a href="sustain">Работа прогреÑÑ Ð±Ð°Ñ€Ð° </a></li> -</Document> + <p style="htitle">Информационные окна</p> + <p style="hp">Крт</p> + <li><a href="mini-screen">Миникарта</a></li> + <p style="hp">Стат</p> + <li><a href="pbar">Окно ÑтатиÑтики</a></li> + <p style="hp">Фин</p> + <li><a href="finance">Окно финанÑов</a></li> + <li><a href="other-costs">Другие затраты</a></li> + <li><a href="housing">Окно наÑелениÑ</a></li> + <p style="hp">ЭКО</p> + <li><a href="economy">График Ñкономики</a></li> + <li><a href="sustain">Окно доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑƒÑтойчивой Ñкономики</a></li> + + <p style="hsubtitle">См. ещё:</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/economy.xml lincity-ng-2.9~git20150314/data/help/ru/economy.xml --- lincity-ng-2.0/data/help/ru/economy.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">График Ñкономики</p> - <p style="hp">ЭкономичеÑкий график Ñодержит четыре цветных линии. Они показывают значимые ÑкономичеÑкие факторы.</p> - <li> - <span color="brown">ÐаÑеление</span> (коричневый) - ÐšÐ¾Ñ€Ð¸Ñ‡Ð½ÐµÐ²Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ наÑелениÑ. - Она накапливает информацию о количеÑтве. - </li> - <li> - <span color="blue">Бездомные</span> (Ñиний) - СинÑÑ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ людей, которые требуют жильÑ. - Ð’Ñ‹Ñота графика пропорциональна квадрату бездомных жителей. - </li> - <li> - <span color="yellow">Безработица</span> (желтый) - Ярко желтый цвет показывает кол-во безработного наÑелениÑ. - - </li> - <li> - <span color="red">Голодание</span> (краÑный) - КраÑный цвет показывает, уровень Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð»ÑŽÐ´ÐµÐ¹. - Как и любой другой фактор, он ÑвлÑетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ важным. - </li> -</Document> + <p style="hp">График Ñкономики Ñодержит четыре цветных линии. Они показывают наиболее значимые ÑкономичеÑкие факторы.</p> + <li><span color="brown">ÐаÑеление</span> (коричневый) ÐšÐ¾Ñ€Ð¸Ñ‡Ð½ÐµÐ²Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ наÑеление. Ð”Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ÑпользуетÑÑ Ð»Ð¾Ð³Ð°Ñ€Ð¸Ñ„Ð¼Ð¸Ñ‡ÐµÑÐºÐ°Ñ ÑˆÐºÐ°Ð»Ð°.</li> + <li><span color="blue">Бездомные</span> (Ñиний) СинÑÑ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ потребноÑÑ‚ÑŒ в жилье. Ð’Ñ‹Ñота графика пропорциональна квадратному корню бездомных жителей.</li> + <li><span color="yellow">Безработица</span> (желтый) Ярко-жёлтый цвет показывает количеÑтв безработного наÑелениÑ. Шкала Ñтого графика изменÑетÑÑ Ñ Ð’Ð°ÑˆÐ¸Ð¼ наÑелением. График отображаетÑÑ Ñплошным Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ вниманиÑ.</li> + <li><span color="red">Голодание</span> (краÑный) Ð¡Ð¿Ð»Ð¾ÑˆÐ½Ð°Ñ ÐºÑ€Ð°ÑÐ½Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ уровень Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð»ÑŽÐ´ÐµÐ¹. Как и любой другой фактор, он ÑвлÑетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ важным.</li> + + <p style="hsubtitle">См. ещё:</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/evacuate.xml lincity-ng-2.9~git20150314/data/help/ru/evacuate.xml --- lincity-ng-2.0/data/help/ru/evacuate.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/evacuate.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">ОпуÑтошение</p> + <p style="hp">Ð”Ð»Ñ Ð¾Ð¿ÑƒÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ñтроений нажмите кнопку опуÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ð¸ выберите желаемые поÑтройки Ñ Ñ‚Ð¾Ð²Ð°Ñ€Ð°Ð¼Ð¸ потреблениÑ. ОпуÑтошение производитÑÑ Ð±ÐµÑплатно, вÑе товары перемещаютÑÑ Ð² близлежащие магазины и на дорогу.</p> + <p style="hp">ПоÑледÑÑ‚Ð²Ð¸Ñ Ð¾Ð¿ÑƒÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть опаÑными (от оÑтановки производÑтва до Ð¾Ð±Ñ€ÐµÑ‡ÐµÐ½Ð¸Ñ Ð¶Ð¸Ñ‚ÐµÐ»ÐµÐ¹ на голодную Ñмерть).</p> + <p style="hp">Ðекоторые ÑтроениÑ, такие как дороги, рельÑÑ‹, Ñвалки и другие, Ð½ÐµÐ»ÑŒÐ·Ñ Ð¾Ð¿ÑƒÑтошить.</p> + <p style="hp">ИÑтощённые рудники и угольные шахты перед разрушением опуÑтошаютÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки.</p> + + <p style="hp">Это кнопка опуÑтошениÑ:</p> + <img src="images/gui/buttonpanel/base/broom.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="bulldoze">Бульдозер</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/export.xml lincity-ng-2.9~git20150314/data/help/ru/export.xml --- lincity-ng-2.0/data/help/ru/export.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/export.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ÐŸÐ¾Ð»Ñ Ð¸Ð¼Ð¿Ð¾Ñ€Ñ‚Ð° и ÑкÑпорта</p> - <p style="hp">Импорт и ÑкÑпорт имеет такое значение: на Ñто можно зарабатывать и тратить деньги. Ð”Ð»Ñ Ð»ÑŽÐ±Ñ‹Ñ… из Ñтих целей нужен порт. С начало логичнее будет иÑключительно ÑкÑпортировать излишки.</p> - <p style="hp">К порту Ñледует подводить дорогу.</p> - <p style="hp">Порт <b>должен</b> ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ€ÐµÐºÐ¾Ð¹.</p> - <p style="hp">ЭкÑпортный товар дешевле чем импортированный. Правильное иÑпользование магазинов и дорог помогает макÑимально Ñффективно импортировать и ÑкÑпортировать товары.</p> - - <p style="hsubtitle">См. ещe:</p> - <li><a href="port">Порты</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="market">Магазины</a></li> + <p style="htitle">Импорт и ÑкÑпорт</p> + <p style="hp">Импорт и ÑкÑпорт очень похожи, за иÑключением того, что в первом Ñлучае Ð’Ñ‹ тратите деньги, а во втором зарабатываете. Оба Ñтих дейÑÑ‚Ð²Ð¸Ñ Ñ‚Ñ€ÐµÐ±ÑƒÑŽÑ‚ наличие порта. Сначала логичнее будет иÑключительно ÑкÑпортировать излишки товаров.</p> + <p style="hp">Порт должен ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой.</p> + <p style="hp">Порт <b>должен</b> ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ€ÐµÐºÐ¾Ð¹, раÑположенной Ñ Ð¿Ñ€Ð°Ð²Ð¾Ð¹ Ñтороны от него.</p> + <p style="hp">ЭкÑпорт иÑпользует вÑе доÑтупные товары. ЕÑли Вам надо ÑкÑпортировать только ограниченное количеÑтво товаров, Ð’Ñ‹ можете иÑпользовать более медленный вид транÑпортной ÑиÑтемы, более длинные дороги и Ñ‚.д. Вам придётÑÑ Ð¿Ð¾ÑкÑпериментировать Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ð¹ транÑпортной ÑиÑтемы.</p> + <p style="hp">ЭкÑпортируемый товар дешевле, чем импортированный.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="port">Порт</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="market">Магазин</a></li> <li><a href="coal">Уголь</a></li> <li><a href="ore">Руда</a></li> <li><a href="goods">Товары</a></li> <li><a href="steel">Сталь</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/farm.xml lincity-ng-2.9~git20150314/data/help/ru/farm.xml --- lincity-ng-2.0/data/help/ru/farm.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/farm.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Фермы</p> - <p style="hp">Фермы выращивают еду Ð´Ð»Ñ Ð»ÑŽÐ´ÐµÐ¹ и Ñнабжают ÑтроениÑ, которые иÑпользую еду. Фермеры продают еду в магазины. ПеревозÑÑ‚ eÑ‘ на тракторах, по Ñтому им не нужна дорога. ЕÑтеÑтвенно магазины должны находитьÑÑ Ð½Ðµ очень далеко от ферм.</p> - - <p style="hp">Это ферма.</p> - <img src="images/tiles/farm0.png" halign="center"/> - <p style="hp">а Ñто её иконка</p> - <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> - - <p style="hp">Фермы дают работу и производÑÑ‚ небольшое кол-во еды. Ð’ Ñлучае еÑли к ним подвеÑти ÑлектричеÑтво, то КПД значительно увеличитÑÑ.</p> - <p style="hsubtitle">См. еще:</p> - <li><a href="market">Магазины</a></li> - <li><a href="tech-level">Ðаучный уровень</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="windmill">ВетрÑные мельницы</a></li> - <li><a href="food">Еда</a></li> -</Document> + <p style="htitle">Ферма</p> + <p style="hp">Фермы выращивают еду Ð´Ð»Ñ Ð»ÑŽÐ´ÐµÐ¹ и Ñнабжают Ñырьём текÑтильные фабрики. Фермеры продают еду в магазины. Они перевозÑÑ‚ eÑ‘ на тракторах, поÑтому им не нужна дорога. Однако Ð’Ñ‹ можете иÑпользовать транÑпортную ÑиÑтему Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð°Ð¶, еÑли пожелаете. ЕÑтеÑтвенно, магазины должны находитьÑÑ Ð½Ðµ очень далеко от ферм.</p> + <p style="hp">Работа ферм завиÑит от Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ñ… вод. УчаÑтки Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ð¼Ð¸ водами Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶Ð°ÑŽÑ‚Ñ Ð·ÐµÐ»Ñ‘Ð½Ñ‹Ð¼ цветом.</p> + + <p style="hp">Это ферма:</p> + <img src="images/tiles/farm0.png" halign="center"/> + + <p style="hp">а Ñто её иконка:</p> + <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> + <p style="hp">При наличии рабочих фермы производÑÑ‚ больше еды. ЕÑли же к ним подвеÑти ÑлектричеÑтво, то КПД значительно увеличитÑÑ. Также такие фермы могут орошать Ñухие земли и уничтожать отходы. ОÑтерегайтеÑÑŒ Ñлишком большого Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ Ð²Ð¾Ð´Ñ‹ фермами.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="market">Магазин</a></li> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="power">ЭнергиÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/fast.xml lincity-ng-2.9~git20150314/data/help/ru/fast.xml --- lincity-ng-2.0/data/help/ru/fast.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/fast.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,13 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</p> - <img src="images/gui/speed/fast.png"/> - <p style="hp">Это кнопка выÑокой ÑкороÑти. Она запуÑкает игру на макÑимальной ÑкороÑти. Ð¡Ð¾Ð±Ñ‹Ñ‚Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ проиÑходить очень быÑтро.</p> + <img src="images/gui/speed/faster.png" halign="center"/> + <p style="hp">Это кнопка выÑокой ÑкороÑти. Она запуÑкает игру на макÑимальной ÑкороÑти. Будьте внимательны, ÑÐ¾Ð±Ñ‹Ñ‚Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ проиÑходить очень быÑтро.</p> + <p style="hp">ÐžÐ¿Ñ†Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¹ Ñтроки "-q 1" или "--quick 1" запуÑтит игру Ñ Ð¼Ð°ÐºÑимально возможной ÑкороÑтью (менее 10 Ñекунд на год), но может нагреть Вашу аппаратуру. По умолчанию иÑпользуетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ "-q 9" (около 25 Ñекунд на год).</p> - <p style="hsubtitle">См. ещё:</p> - <li><a href="medium">Средний</a></li> - <li><a href="slow">Медленный</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="pause">Пауза</a></li> + <li><a href="medium">СреднÑÑ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="slow">ÐÐ¸Ð·ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/finance.xml lincity-ng-2.9~git20150314/data/help/ru/finance.xml --- lincity-ng-2.0/data/help/ru/finance.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/finance.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ФинанÑовое окно</p> - <p style="hp">Левое нажатие на окне открывает окна Ñ 'глобальным финанÑовым баланÑом', ещё одно нажатие открывает 'другие затраты' и ещё одно нажатие открывает 'затраты наÑелениÑ'.</p> - <p style="hp">ФинанÑовое окно обновлÑетÑÑ ÐºÐ°Ð¶Ð´Ñ‹Ð¹ раз 1-ого ÑнварÑ. Фигурально выражаÑÑÑŒ, Ñто затраты и поÑÑ‚ÑƒÐ¿Ð»ÐµÐ½Ð¸Ñ Ð·Ð° год.</p> - <p style="hp">Итог изменÑет ваш Ð±Ð°Ð»Ð°Ð½Ñ (чаÑтенько в худшую Ñторону). Ðекоторые вещи переÑтают работать, когда вы находитеÑÑŒ 'в краÑном'.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="housing">Окно людей</a></li> - <li><a href="other-costs">Другие затраты</a></li> - -</Document> + <p style="htitle">Окно финанÑов</p> + <p style="hp">Левое нажатие на Ñтом окне открывает окна Ñ 'глобальным финанÑовым баланÑом', ещё одно нажатие открывает 'другие затраты' и ещё одно нажатие открывает 'затраты наÑелениÑ'.</p> + <p style="hp">ФинанÑовое окно обновлÑетÑÑ ÐºÐ°Ð¶Ð´Ñ‹Ð¹ год 1-ого ÑнварÑ. Данные отражают приход и траты за прошедший год.</p> + <p style="hp">'Итог' -- Ñто ваш баланÑ. Ðекоторые вещи Ð’Ñ‹ не Ñможете делать, находÑÑÑŒ 'в краÑном'.</p> + <p style="hsubtitle">См. ещё:</p> + <li><a href="housing">Окно наÑелениÑ</a></li> + <li><a href="other-costs">Другие затраты</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/firestation.xml lincity-ng-2.9~git20150314/data/help/ru/firestation.xml --- lincity-ng-2.0/data/help/ru/firestation.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/firestation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,26 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</p> - <p style="hp">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚ возникновение и раÑпроÑÑ‚Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð° в зоне дейÑтвиÑ. Она требует немного товара и рабочий Ñилы, Ð´Ð»Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ. Она <b>не обÑзана</b> иметь ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, вÑÑŽ рабочую Ñилу и товары она может найти в магазинах, которые находÑÑ‚ÑÑ Ð² их зоне дейÑтвиÑ. Так же Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ñ‚Ñ€ÐµÐ±ÑƒÐµÑ‚ финанÑированиÑ.</p> + <p style="hp">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚ возникновение и раÑпроÑÑ‚Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð° в зоне дейÑтвиÑ. Она требует доÑтупа к товарам и рабочей Ñиле. Она <b>не обÑзательно</b> должна быть Ñоединенина Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, рабочих и товары она может получать в магазинах, в зоне дейÑÑ‚Ð²Ð¸Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… находитÑÑ. Также Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ñ‚Ñ€ÐµÐ±ÑƒÐµÑ‚ финанÑированиÑ.</p> + <p style="hp">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð¾Ð±Ñ‹Ñ‡Ð½Ð¾ начинает работать через три меÑÑца поÑле поÑтройки.</p> + <p style="hp">Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾ чтобы поÑмотреть зону дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций, нужно нажать на кнопку пожарной Ñтанции под миникартой. Зоны, которые покрывают пожарные Ñтанции, отмечены тёмно-зелёным цветом, не попадающие в зону дейÑÑ‚Ð²Ð¸Ñ -- Ñерым.</p> + <p style="hp">ЖителÑм больше нравитÑÑ Ð¶Ð¸Ñ‚ÑŒ в меÑтах, попадающих в зону дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций.</p> + <p style="hp">ЕÑли Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð½Ð° пожарной Ñтанции менÑетÑÑ, значит, ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ð°ÐµÑ‚.</p> + <p style="hp">Это Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ:</p> + <img src="images/tiles/firestation1.png" halign="center"/> - <p style="hp">Когда вы Ñтроите пожарную Ñтанцию нужно времÑ, что бы ей начать функционировать. Ей нужен меÑÑц, что бы начать работать в полную Ñилу.</p> - <p style="hp">Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾, что бы поÑмотреть зону покрытиÑ, нужно нажать на <i>мини карту</i>. Зона которую покрывает пожарные Ñтанции отмечены нормальным цветом, а те что не покрывает, отменены черно зелёным.</p> - <p style="hp">ЖителÑм больше нравитьÑÑ Ð¶Ð¸Ñ‚ÑŒ там, где еÑÑ‚ÑŒ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑиÑтема.</p> - <p style="hp">ЕÑли Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð½Ð° пожарной Ñтанции менÑÑ‚ÑŒÑÑ, значит она работает.</p> + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> - <p style="hp">Это Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</p> - <img src="images/tiles/firestation1.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/misc/fire.png" halign="center"/> - <p style="hp">Ñто иконка мини карты</p> - <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + <p style="hp">Ñто иконка миникарты:</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> - <p style="hsubtitle">Ñм. ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> <li><a href="goods">Товары</a></li> - <li><a href="market">Магазины</a></li> - <li><a href="jobs">Работа</a></li> - <li><a href="msb-fire">Пожарное покрытие</a></li> -</Document> + <li><a href="market">Магазин</a></li> + <li><a href="jobs">Рабочие</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/food.xml lincity-ng-2.9~git20150314/data/help/ru/food.xml --- lincity-ng-2.0/data/help/ru/food.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Еда</p> - <p style="hp">Еда раÑтет на фермах, или может быть импортирована через порт.</p> - <p style="hp">ЛюдÑм нужна еда, Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, что бы выжить. ЕÑли люди начинают умирать от голода, то другие начинают уезжают из вашего города.</p> - <p style="hp">Мельницы иÑпользуют еду. Они перерабатывает её в хлопок(товар). Они могут иÑпользовать <i>Ñлишком</i> много еды.</p> - - <p style="hsubtitle">Ñм. ещё:</p> - <li><a href="farm">Фермы</a></li> - <li><a href="port">Порты</a></li> - <li><a href="mill">Мельницы</a></li> - <li><a href="steel">Сталь</a></li> -</Document> + <p style="hp">Еда раÑÑ‚Ñ‘Ñ‚ на фермах или импортируетÑÑ Ñ‡ÐµÑ€ÐµÐ· порт.</p> + <p style="hp">ЛюдÑм нужна еда Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, чтобы выжить. ЕÑли люди начинают умирать от голода, их ÑоÑеди уезжают из Вашего города.</p> + <p style="hp">Также еда нужна текÑтильным фабрикам. Ðапример, они перерабатывают хлопок в одежду (товар). Они могут иÑпользовать <i>Ñлишком</i> много еды.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="farm">Ферма</a></li> + <li><a href="residential">Жилой дом</a></li> + <li><a href="mill">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</a></li> + <li><a href="port">Порт</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/goods.xml lincity-ng-2.9~git20150314/data/help/ru/goods.xml --- lincity-ng-2.0/data/help/ru/goods.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/goods.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Товары</p> <p style="hp">Товары нужны большинÑтву поÑтроек. У людей товары тоже пользуютÑÑ ÑпроÑом.</p> - <p style="hp">Товары облагаютÑÑ Ð½Ð°Ð»Ð¾Ð³Ð¾Ð¼, Ñто может помочь поднÑÑ‚ÑŒ ваш капитал.</p> - <p style="hp">Товары умеют делать: Гончарные, Кузнецы, Мельницы и Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ.</p> + <p style="hp">Товары облагаютÑÑ Ð½Ð°Ð»Ð¾Ð³Ð¾Ð¼, что может помочь поправить Ваше финанÑовое положение.</p> + <p style="hp">Товары умеют делать: гончарные маÑтерÑкие, кузницы, текÑтильные фабрики и Ð»Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ.</p> - <p style="hsubtitle">Ñм. ещё:</p> - <li><a href="pottery"></a>ГончарнаÑ</li> + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a></li> <li><a href="blacksmith">Кузница</a></li> - <li><a href="mills">Мельница</a></li> - <li><a href="industryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> -</Document> + <li><a href="mill">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/health.xml lincity-ng-2.9~git20150314/data/help/ru/health.xml --- lincity-ng-2.0/data/help/ru/health.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,28 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Мед центр</p> - <p style="hp">Мед центр Ñнабжает здоровьем резиденции. Ð Ð°Ð´Ð¸ÑƒÑ Ð´ÐµÐ¹ÑÑ‚Ð²Ð¸Ñ Ñ†ÐµÐ½Ñ‚Ð° 4 полÑ.</p> - <p style="hp">Мед центр помогает людÑм жить дольше, люди начинаю меньше умирать из-за болезней и более производительно работать (их меньше мучают болезни).</p> - <p style="hp">Мед центры очень дорогие 60,000 рублей в год. Однако понижают ÑтоимоÑÑ‚ÑŒ 'нееÑтеÑтвенных Ñмертей' и могут повышать заработок от работы.</p> - <p style="hp">ПоÑле поÑтройки мед центра он начинает работать только через 3 меÑÑца. Он иÑпользует товары, однако ему не нужна работа. ЕÑтеÑтвенно болезней в облаÑти дейÑÑ‚Ð²Ð¸Ñ Ð¼ÐµÐ´ центра ниже.</p> - <p style="hp">Мед центр не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортом, вÑе что ему нужно он найдет в магазинах.</p> - <p style="hp">ОблаÑÑ‚ÑŒ дейÑÑ‚Ð²Ð¸Ñ Ð¼ÐµÐ´ центра вы можете увидеть нажав на миникарте ÑоответÑтвующую кнопку.</p> + <p style="htitle">Больница</p> + <p style="hp">Больница обеÑпечивает потребноÑти наÑÐµÐ»ÐµÐ½Ð¸Ñ Ð² медицинÑкой помощи в радиуÑе четырёх учаÑтков.</p> + <p style="hp">Больница помогает людÑм жить дольше, люди начинают меньше умирать из-за болезней, вызванных загрÑзнениÑми, и более производительно работать (они проводÑÑ‚ меньше времени на больничном).</p> + <p style="hp">Больницы очень дорогие. Однако они понижают затраты на нееÑтеÑтвенные Ñмерти (погибшие) и могут приноÑить дополнительную прибыль от налогов.</p> + <p style="hp">Больницы начинают работать через три меÑÑца поÑле поÑтройки. Ð”Ð»Ñ Ð¸Ñ… работы требуютÑÑ Ñ‚Ð¾Ð²Ð°Ñ€Ñ‹.</p> + <p style="hp">Больницу нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли она не находитÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°.</p> + <p style="hp">ОблаÑÑ‚ÑŒ дейÑÑ‚Ð²Ð¸Ñ Ð±Ð¾Ð»ÑŒÐ½Ð¸Ñ†Ñ‹ Ð’Ñ‹ можете увидеть, нажав на миникарте ÑоответÑтвующую кнопку.</p> - <p style="hp">Это мед центр</p> - <img src="images/tiles/health.png" halign="center"/> - <p style="hp">Ñто его иконка</p> - <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> - <p style="hp">Ñто иконка на миникарте</p> - <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + <p style="hp">Это больница:</p> + <img src="images/tiles/health.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> - <li><a href="residential">Резиденции</a></li> - <li><a href="pollution">ÐаÑеление</a></li> - <li><a href="jobs">Работа</a></li> + <p style="hp">Ñто его иконка:</p> + <img src="images/gui/buttonpanel/misc/health.png" halign="center"/> + + <p style="hp">Ñто иконка на миникарте:</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="residential">Жилой дом</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> + <li><a href="jobs">Рабочие</a></li> <li><a href="goods">Товары</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="msb-health">Зона дейÑÑ‚Ð²Ð¸Ñ Ð¼ÐµÐ´ центра</a></li> -</Document> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/help.xml lincity-ng-2.9~git20150314/data/help/ru/help.xml --- lincity-ng-2.0/data/help/ru/help.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/help.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Помощь Lincity</p> - <p style="hp">Это Lincity Ñправочник. ПожалуйÑта выберите тему, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð²Ð°Ð¼ будет интереÑна и нажмите на нее. СÑылки выделены Ñиним цветом.</p> - <p style="hp">Ð’ игровом цикле игры вы можете на многих объектах нажимать правую кнопку мыши и получать Ñправку по ней. Так же еÑÑ‚ÑŒ кнопка помощи, находитьÑÑ Ð²Ð½Ð¸Ð·Ñƒ Ñкрана.</p> + <p style="htitle">Помощь по Lincity</p> + <p style="hp">Это опиÑание игры Lincity. ПожалуйÑта, выберите тему, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð’Ð°Ð¼ будет интереÑна, и нажмите на неё. СÑылки выделены Ñиним цветом.</p> + <p style="hp">Ð’ игровом цикле Ð’Ñ‹ можете получать помощь по многим объектам, Ð½Ð°Ð¶Ð¸Ð¼Ð°Ñ Ð½Ð° них правой кнопкой мыши. Также внизу Ñкрана еÑÑ‚ÑŒ кнопка помощи.</p> + <p style="hp">Выиграть в Lincity можно Ð´Ð²ÑƒÐ¼Ñ Ð¿ÑƒÑ‚Ñми. Первый ÑпоÑоб -- Ñто <a href="sustain">Ñтабилизировать Ñкономику</a>, второй -- Ñвакуировать вÑех жителей на <a href="rocket">коÑмичеÑких кораблÑÑ…</a>.</p> + <p style="hsubtitle">См. ещё:</p> <li><a href="tutorial">Обучение</a></li> - <li><a href="keys">Комбинации клавиш</a></li> - <li><a href="button-index">ЛиÑÑ‚ вÑех кнопок помощи</a></li> - <li><a href="mini-screen">Помощь на мини карте</a></li> - <li><a href="dialogs">Помощь по ÑообщениÑм.</a></li> - <li><a href="index">СпиÑок</a></li> - - <p style="htitle">ÐžÐ±Ñ‰Ð°Ñ Ð·Ð°Ð´Ð°Ñ‡Ð° игры</p> - <p style="hp">Ð’Ñ‹ можете выиграть в Lincity уÑтановив в ней <a href="sustain">Ñтабильную Ñкономику</a> или - отправить вÑех жителей на ракетах в другой мир...</p> -</Document> + <li><a href="keys">Клавиатура</a></li> + <li><a href="button-index">Выберите интереÑующую Ð’Ð°Ñ Ñ‚ÐµÐ¼Ñƒ</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="dialogs">Информационные окна</a></li> + <li><a href="index">Содержание</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/housing.xml lincity-ng-2.9~git20150314/data/help/ru/housing.xml --- lincity-ng-2.0/data/help/ru/housing.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/housing.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Окно наÑелениÑ</p> <p style="hp">Это окно наÑелениÑ.</p> <p style="hp">Оно показывает 7 значений:</p> - <li>ÐаÑел - показывает кол-во людей в вашем городе. Данное значение не включает бездомных.</li> - <li>Дома - Ñто показывает кол-во людей живущих в резиденциÑÑ….</li> - <li>Дома % - тоже, но в процентном Ñоотношение.</li> - <li>Хибарка - кол-во людей живущих в хибарах.</li> - <li>Смерти - показывает кол-во людей умерших от голода за поÑледний меÑÑц.</li> - <li>Безраб % - количеÑтво безработных в процентном Ñоотношении.</li> - <li>Смерти % - показывает кол-во умерших от Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð² процентах.</li> - <p style="hp">Левые Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ ÐºÐ½Ð¾Ð¿ÐºÐ¸ мыши на Ñтом окне менÑет окна между финанÑами, другими затратами и домами.</p> + <li>ÐаÑел - показывает количеÑтво людей в Вашем городе. Данное значение не учитывает бездомных.</li> + <li>Дома - показывает количеÑтво людей, живущих в жилых домах.</li> + <li>Бездомные - показывает количеÑтво бездомных.</li> + <li>Трущобы - количеÑтво людей, живущих в трущобах.</li> + <li>Погибшие - показывает количеÑтво людей, умерших от голода или болезни в прошлом меÑÑце.</li> + <li>Безработица - показывает количеÑтво безработных.</li> + <li>Безработица % - показывает количеÑтво безработных в %.</li> + <li>Голод - показывает количеÑтво голодающих людей.</li> + <li>Голод % - показывает количеÑтво голодающих людей в %.</li> + <p style="hp">Ðажатие левой кнопкой мыши на Ñтом окне позволÑет переключатьÑÑ Ð¼ÐµÐ¶Ð´Ñƒ окнами финанÑов, других затрат и наÑелениÑ.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="finance">ФинанÑовое окно</a></li> + <p style="hsubtitle">См. ещё:</p> + <li><a href="finance">Окно финанÑов</a></li> <li><a href="other-costs">Другие затраты</a></li> - -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/index.xml lincity-ng-2.9~git20150314/data/help/ru/index.xml --- lincity-ng-2.0/data/help/ru/index.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,80 +1,83 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Содержание</p> -<li><a href="blacksmith">Кузница</a></li> -<li><a href="bulldoze">Бульдозер</a></li> -<li><a href="button-index">Выберите кнопку ÑодержаниÑ</a></li> -<li><a href="coal">Уголь</a></li> -<li><a href="coalmine">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</a></li> -<li><a href="commune">Коммуна</a></li> -<li><a href="cricket">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></li> -<li><a href="dialogs">Диалоги</a></li> -<li><a href="economy">График Ñкономики</a></li> -<li><a href="export">Импорт и ÑкÑпорт</a></li> -<li><a href="farm">Фермы</a></li> -<li><a href="fast">БыÑÑ‚Ñ€Ð°Ñ ÑкороÑÑ‚ÑŒ</a></li> -<li><a href="finance">ФинанÑовое окно</a></li> -<li><a href="firestation">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</a></li> -<li><a href="food">Еда</a></li> -<li><a href="goods">Товары</a></li> -<li><a href="health">Мед центр</a></li> -<li><a href="help">Помошь в Lincity</a></li> -<li><a href="housing">Окно наÑелениÑ</a></li> -<li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ (Ñталь)</a></li> -<li><a href="industryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> -<li><a href="jobs">Работа</a></li> -<li><a href="keys">Клавиатура</a></li> -<li><a href="keys">Мышь</a></li> -<li><a href="market">Магазин</a></li> -<li><a href="medium">СреднÑÑ ÑкороÑÑ‚ÑŒ</a></li> -<li><a href="mill">Мельница</a></li> -<li><a href="mini-screen">Мини карта</a></li> -<li><a href="monument">Монумент</a></li> -<li><a href="msb-coal">Угольные зоны</a></li> -<li><a href="msb-cricket">Ð¡Ð¿Ð¾Ñ€Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð·Ð¾Ð½Ð°</a></li> -<li><a href="msb-fire">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ Ð·Ð¾Ð½Ð°</a></li> -<li><a href="msb-health">Мед зона</a></li> -<li><a href="msb-normal">ÐžÐ±Ñ‹Ñ‡Ð½Ð°Ñ Ð·Ð¾Ð½Ð°</a></li> -<li><a href="msb-pol">Зона наÑелениÑ</a></li> -<li><a href="msb-power">ЭлектричеÑÐºÐ°Ñ Ð·Ð¾Ð½Ð°</a></li> -<li><a href="msb-starve">Зона голоданиÑ</a></li> -<li><a href="msb-transport">Зона магазинов и транÑпорта</a></li> -<li><a href="msb-ub40">Зона безработицы</a></li> -<li><a href="ore">Руда</a></li> -<li><a href="oremine">Шахта руды</a></li> -<li><a href="other-costs">Другие затраты</a></li> -<li><a href="park">Парки</a></li> -<li><a href="pause">Кнопка паузы</a></li> -<li><a href="pbar">Строка</a></li> -<li><a href="pollution">ÐаÑеление</a></li> -<li><a href="port">Порты</a></li> -<li><a href="pottery">Гончарные изделиÑ</a></li> -<li><a href="powerline">Электролинии</a></li> -<li><a href="powerscoal">Угольные ÑлектроÑтанции</a></li> -<li><a href="powerssolar">Солнечные ÑлектроÑтанции</a></li> -<li><a href="query">КурÑор</a></li> -<li><a href="rail">Ð ÐµÐ»ÑŒÑ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></li> -<li><a href="recycle">Центр переработки</a></li> -<li><a href="residential">Резиденции</a></li> -<li><a href="river">Реки/Вода</a></li> -<li><a href="road">Дороги</a></li> -<li><a href="rocket">Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></li> -<li><a href="school">Школы</a></li> -<li><a href="slow">ÐœÐµÐ´Ð»ÐµÐ½Ð½Ð°Ñ ÑкороÑÑ‚ÑŒ</a></li> -<li><a href="steel">Сталь</a></li> -<li><a href="substation">ПодÑтанциÑ</a></li> -<li><a href="sustain">ПрогреÑÑ Ð±Ð°Ñ€ ÑтроительÑтва</a></li> -<li><a href="tech-level">Ðаучный уровень</a></li> -<li><a href="tip">МуÑорка</a></li> -<li><a href="track">Грунтовка</a></li> -<li><a href="transport">ТранÑпорт</a></li> -<li><a href="tutorial">Обучение</a></li> -<li><a href="tutorial-aim">Цель игры</a></li> -<li><a href="tutorial-overview">РаÑположение на Ñкране</a></li> -<li><a href="tutorial-basics">Первые шаги</a></li> -<li><a href="tutorial-advanced">Продвинутое бучение</a></li> -<li><a href="tutorial-scenario">Сценарий игры</a></li> -<li><a href="university">УниверÑитет</a></li> -<li><a href="waterwell">ВодÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°</a></li> -<li><a href="windmill">ВетрÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°</a></li> -</Document> + <p style="htitle">Содержание</p> + <li><a href="blacksmith">Кузница</a></li> + <li><a href="bulldoze">Бульдозер</a></li> + <li><a href="button-index">Выберите интереÑующую Ð’Ð°Ñ Ñ‚ÐµÐ¼Ñƒ</a></li> + <li><a href="coal">Уголь</a></li> + <li><a href="coalmine">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="cricket">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></li> + <li><a href="dialogs">Информационные окна</a></li> + <li><a href="economy">График Ñкономики</a></li> + <li><a href="evacuate">ОпуÑтошение</a></li> + <li><a href="export">Импорт и ÑкÑпорт</a></li> + <li><a href="farm">Ферма</a></li> + <li><a href="fast">Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="finance">Окно финанÑов</a></li> + <li><a href="firestation">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</a></li> + <li><a href="food">Еда</a></li> + <li><a href="goods">Товары</a></li> + <li><a href="health">Больница</a></li> + <li><a href="help">Помощь по Lincity</a></li> + <li><a href="housing">Окно наÑелениÑ</a></li> + <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> + <li><a href="jobs">Рабочие</a></li> + <li><a href="keys">Клавиатура</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="medium">СреднÑÑ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="mill">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</a></li> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="monument">Монумент</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> + <li><a href="msb-ub40">Зоны безработицы</a></li> + <li><a href="ore">Руда</a></li> + <li><a href="oremine">Рудник</a></li> + <li><a href="other-costs">Другие затраты</a></li> + <li><a href="park">Парк</a></li> + <li><a href="pause">Пауза</a></li> + <li><a href="pbar">Окно ÑтатиÑтики</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> + <li><a href="port">Порт</a></li> + <li><a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a></li> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="powerline">ЛЭП</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="query">КурÑор</a></li> + <li><a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></li> + <li><a href="recycle">Центр по переработке отходов</a></li> + <li><a href="residential">Жилой дом</a></li> + <li><a href="river">Река/Озеро</a></li> + <li><a href="road">Дорога</a></li> + <li><a href="rocket">Ð¡Ñ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей</a></li> + <li><a href="school">Школа</a></li> + <li><a href="slow">ÐÐ¸Ð·ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="steel">Сталь</a></li> + <li><a href="substation">ПодÑтанциÑ</a></li> + <li><a href="sustain">Окно доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑƒÑтойчивой Ñкономики</a></li> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="tip">Свалка</a></li> + <li><a href="track">Грунтовка</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="tutorial">Обучение</a></li> + <li><a href="tutorial-aim">Цель игры</a></li> + <li><a href="tutorial-overview">ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ Ñкрану</a></li> + <li><a href="tutorial-basics">Первые шаги</a></li> + <li><a href="tutorial-advanced">Продвинутые функции</a></li> + <li><a href="tutorial-scenario">Сценарии игры</a></li> + <li><a href="university">УниверÑитет</a></li> + <li><a href="waterwell">Скважина</a></li> + <li><a href="windmill">Ветрогенератор</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/industryh.xml lincity-ng-2.9~git20150314/data/help/ru/industryh.xml --- lincity-ng-2.0/data/help/ru/industryh.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/industryh.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ (Сталь)</p> - <p style="hp">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ Ñталь из руды, работы и Ñнергии. Руда должна поÑтавлÑÑ‚ÑŒÑÑ Ð¿Ð¾ транÑпортной ÑиÑтеме. Сталь увозÑÑ‚ транÑпортом. Ð Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила добываетÑÑ Ð¸Ð· магазинов. ТранÑпорт нужно ÑоединÑÑ‚ÑŒ Ñ Ð²ÐµÑ€Ñ…Ð½Ð¸Ð¼ левым углом.</p> - <p style="hp">ЭлектричеÑтво может быть подведено Ð´Ð²ÑƒÐ¼Ñ Ð¿ÑƒÑ‚Ñми. Первый, Ñто угольный, он может перерабатыватьÑÑ Ð² ÑлектричеÑтво прÑмо в здании. Так же можно поÑтавить подÑтанцию, КПД от неё будет выше. (ВетрÑные мельницы <b>не Ñмогут</b> обеÑпечить данную поÑтройку должным количеÑтвом ÑлектроÑнергии.)</p> - <p style="hp">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ‚ÑŒ загрÑзнениÑ</p> - <p style="hp">ПонÑÑ‚ÑŒ что Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ð°ÐµÑ‚, можно или нажав на неё курÑором, или увидеть, что Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð·Ð¼ÐµÐ½ÑетÑÑ.</p> - - <p style="hp">Это Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</p> - <img src="images/tiles/industryhl1.png" halign="center"/> - <p style="hp">Ñто её иконка</p> - <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> - - <p style="hsubtitle">См. ещё:</p> + <p style="htitle">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</p> + <p style="hp">МеталлургичеÑкий завод производит Ñталь из руды Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ рабочей Ñилы и Ñнергии. Завод должен раÑполагатьÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð° Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñ€ÑƒÐ´Ñ‹ и рабочей Ñилы, в ином Ñлучае завод должен быть Ñоединён Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. Её нужно ÑоединÑÑ‚ÑŒ Ñ Ð²ÐµÑ€Ñ…Ð½Ð¸Ð¼ левым углом завода.</p> + <p style="hp">Ð­Ð½ÐµÑ€Ð³Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ быть получена Ð´Ð²ÑƒÐ¼Ñ Ð¿ÑƒÑ‚Ñми -- либо путём ÑÐ¾Ð¶Ð¶ÐµÐ½Ð¸Ñ ÑƒÐ³Ð»Ñ Ð¿Ñ€Ñмо на заводе, либо Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑлектричеÑтва. ИÑпользование ÑƒÐ³Ð»Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±ÑƒÐµÑ‚ большее количеÑтво рабочих. Ðе очень Ñффективные кВт⋅ч могут доÑтавлÑÑ‚ÑŒÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы, куда более Ñффективные МВт⋅ч -- Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ прÑмого подключении к ЛЭП. Ветрогенераторы Ñ Ñ‚Ñ€ÑƒÐ´Ð¾Ð¼ могут обеÑпечить данную поÑтройку должным количеÑтвом Ñнергии.</p> + <p style="hp">МеталлургичеÑкий завод ÑвлÑетÑÑ Ð²Ð°Ð¶Ð½Ñ‹Ð¼ иÑточником загрÑзнений.</p> + <p style="hp">ПонÑÑ‚ÑŒ, что Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ работает, можно или нажав на неё курÑором, или поÑмотрев на Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ð¸ зданиÑ.</p> + + <p style="hp">Это Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ:</p> + <img src="images/tiles/industryhl1.png" halign="center"/> + + <p style="hp">Ñто её иконка:</p> + <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> <li><a href="pollution">ЗагрÑзнение</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="power">ЭлектричеÑтво</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="power">ЭнергиÑ</a></li> <li><a href="coal">Уголь</a></li> <li><a href="ore">Руда</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/industryl.xml lincity-ng-2.9~git20150314/data/help/ru/industryl.xml --- lincity-ng-2.0/data/help/ru/industryl.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/industryl.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</p> - <p style="hp">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð¿ÐµÑ€ÐµÑ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ руду в товары. Она Ñто делает более Ñффективно, еÑли еÑÑ‚ÑŒ Ñталь. ЭлектричеÑтво увеличивает КПД. ВетрÑные мельницы <b>не могут</b> обеÑпечить данную поÑтройку ÑлектричеÑтвом.</p> - <p style="hp">Ðе забудьте обеÑпечить данную поÑтройку нужным товаром, и так же <b>увозить товары</b>.</p> - <p style="hp">С помощью транÑпорта к ней подводитьÑÑ Ñ€ÑƒÐ´Ð°, Ñталь и увозÑÑ‚ÑÑ Ñ‚Ð¾Ð²Ð°Ñ€Ñ‹. Ð Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила должна братьÑÑ Ð¸Ð· магазинов.</p> - <p style="hp">СоединÑÑ‚ÑŒ транÑпорт нужно <b>Ñ Ð²ÐµÑ€Ñ…Ð½Ð¸Ð¼ левым углом</b>. ТранÑпорт закруглÑетÑÑ Ð½Ð° здание, еÑли правильно Ñоединен.</p> - - <p style="hp">Это Ð»ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</p> - <img src="images/tiles/industryll1.png" halign="center"/> - <p style="hp">Ñто её иконка</p> - <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> - - <p style="hsubtitle">См. ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="road">Дороги</a></li> - <li><a href="rail">Ð ÐµÐ»ÑŒÑ Ð´Ð¾Ñ€Ð¾Ð³Ð¸</a></li> - <li><a href="market">Магазины</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <p style="htitle">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</p> + <p style="hp">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ перерабатывает руду в товары. Переработка более Ñффективна при наличии Ñтали. Ð­Ð½ÐµÑ€Ð³Ð¸Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡Ð¸Ð²Ð°ÐµÑ‚ КПД. Ðе очень Ñффективные кВт⋅ч могут доÑтавлÑÑ‚ÑŒÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы, куда более Ñффективные МВт⋅ч -- Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ прÑмого подключении к ЛЭП. Ветрогенераторы Ñ Ñ‚Ñ€ÑƒÐ´Ð¾Ð¼ могут обеÑпечить данную поÑтройку ÑлектричеÑтвом.</p> + <p style="hp">КоличеÑтво товаров, вырабатываемого лёгкой промышленноÑтью, завиÑит от количеÑтва ÑÑ‹Ñ€ÑŒÑ Ð¸ рабочей Ñилы, которые она может получить, а также от количеÑтва товаров, которое могут увезти.</p> + <p style="hp">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ должна быть подÑоединена к транÑпортной ÑиÑтеме Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ñ‹Ñ… Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ руды, Ñтали, рабочей Ñилы, а также продажи товаров. БлизкораÑположенный магазин поможет ей работать на полную мощноÑÑ‚ÑŒ.</p> + <p style="hp">СоединÑÑ‚ÑŒ транÑпортную ÑиÑтему нужно <b>Ñ Ð²ÐµÑ€Ñ…Ð½Ð¸Ð¼ левым углом</b> зданиÑ. ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема закруглÑетÑÑ Ð½Ð° здание, еÑли правильно подÑоединена.</p> + <p style="hp">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ ÑвлÑетÑÑ Ð²Ð°Ð¶Ð½Ñ‹Ð¼ иÑточником загрÑзнений.</p> + + <p style="hp">Это Ð»Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ:</p> + <img src="images/tiles/industryll1.png" halign="center"/> + + <p style="hp">Ñто её иконка:</p> + <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/jobs.xml lincity-ng-2.9~git20150314/data/help/ru/jobs.xml --- lincity-ng-2.0/data/help/ru/jobs.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/jobs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Работа</p> - <p style="hp">Люди живущие резиденциÑÑ… дают работу. Работа иÑпользуетÑÑ Ð² большинÑтве Ñлучаев. Почти каждой поÑтройке нужна Ñ€Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила. Ðапример монументу нужна иÑключительно работа.</p> - <p style="hp">Работа берётÑÑ Ð¸Ð· магазинов. ЕÑтеÑтвенно магазины должны откуда та брать рабочую Ñилу. Ðа Ñто еÑÑ‚ÑŒ 2 пути. Первый Ñто резиденции, которые находитьÑÑ Ñ€Ñдом Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°Ð¼Ð¸. Второй путь Ñто транÑпорт. Чтобы магазин имел возможноÑÑ‚ÑŒ переводить рабочую Ñилу, к нему нужно подвеÑти транÑпорт.</p> - <p style="hp">ЕÑли магазин заполнен работой, то он переÑтает принимать её из резиденций. Когда Ñто ÑлучаетÑÑ Ð»ÑŽÐ´Ð¸ ÑтановÑÑ‚ÑÑ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð½Ñ‹Ðµ.</p> - <p style="hp">Мед центр около резиденций дает куда больший объем рабочий Ñилы, чем любой магазин.</p> + <p style="htitle">Рабочие</p> + <p style="hp">Рабочей Ñилой в Lincity ÑвлÑÑŽÑ‚ÑÑ Ð»ÑŽÐ´Ð¸, живущие в жилых домах. Рабочие нужны почти каждой поÑтройке, например, Ð´Ð»Ñ Ð¿Ð¾Ñтройки монумента нужны иÑключительно они.</p> + <p style="hp">ПредприÑÑ‚Ð¸Ñ Ð½Ð°Ð½Ð¸Ð¼Ð°ÑŽÑ‚ рабочих в магазинах. ЕÑтеÑтвенно, магазины должны откуда-то брать рабочую Ñилу. У них еÑÑ‚ÑŒ два пути: первый -- Ñто раÑположенные в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð° жилые дома. Второй -- Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы. Магазины, имеющие избыток рабочих, могут отправить их Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы в другие магазины. Магазины, в которых не хватает рабочих, Ñмогут найти и привезти их Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы.</p> + <p style="hp">ЕÑли в магазине избыток рабочей Ñилы, то они переÑтанут принимать новых людей из ближайших жилых домов. Ð’ такой Ñитуации, еÑли нет других Ñвободных магазинов в округе, оÑтавшиеÑÑ Ð»ÑŽÐ´Ð¸ ÑтановÑÑ‚Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð½Ñ‹Ð¼Ð¸.</p> + <p style="hp">Больница, раÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÐ¾Ð»Ð¾ жилых домов, увеличивает количеÑтво рабочих, принимаемых на работу во вÑех ÑоÑедних магазинах.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="residential">Резиденции</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="market">Магазины</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="residential">Жилой дом</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="market">Магазин</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/keys.xml lincity-ng-2.9~git20150314/data/help/ru/keys.xml --- lincity-ng-2.0/data/help/ru/keys.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/keys.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,38 +1,37 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - - <p style="htitle">Клавиатура</p> - <p style="hp">ESCAPE: Переключает курÑор</p> - <p style="hp">b Переключает бульдозер и курÑор</p> - <p style="hp">h прÑчит бульдозер. Жмите h Ñнова, что бы показать его.</p> - <p style="hp">v переключает зоны миникарты</p> - <p style="hp">KP_PLUS: приближение</p> - <p style="hp">KP_MINUS одаление</p> - <p style="hp">KP_ENTER приближение 100%</p> - <p style="hp">KP5 перемеÑтить обзор на Ñередину карты</p> - <p style="hp">KP9 перемеÑтитÑÑ Ñевернее</p> - <p style="hp">KP1 перемеÑтитÑÑ ÑŽÐ¶Ð½ÐµÐµ</p> - <p style="hp">KP7 перемеÑтитÑÑ Ð·Ð°Ð¿Ð¾Ð´Ð½ÐµÐµ</p> - <p style="hp">KP3 перемеÑтитÑÑ Ð²Ð¾Ñточне</p> - <p style="hp">KP2 перемеÑтитÑÑ ÑŽÐ²</p> - <p style="hp">KP4 перемеÑтитÑÑ ÑŽÐ·</p> - <p style="hp">KP6 перемеÑтитÑÑ cв</p> - <p style="hp">KP8 перемеÑтитÑÑ Ñз</p> - <p style="hp">жмите shiht+ перемешатьÑÑ Ð½Ð°Ñ‡Ð¸Ð½Ð°Ñ‚Ðµ быÑтре</p> - <p style="hp">F12 быÑтрое Ñохранение</p> - <p style="hp">F9 быÑÑ‚Ñ€Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°</p> - - <p style="htitle">Мышка</p> - <p style="hp">праваÑ:</p> - <p style="hp">Жмите на миникарте, что бы перемеÑтитьÑÑ.</p> - <p style="hp">ÑреднаÑ:</p> - <p style="hp">При наведении на поÑтройку показывает информацию.</p> - <p style="hp">леваÑ:</p> - <p style="hp">Minimap shows the selected Area on mainscreen.</p> - <p style="hp">Perform action depending on selected tool. Bulldoze, show Information, - construct building.</p> - <p style="hp">колёÑико:</p> - <p style="hp">вверх: приближение</p> - <p style="hp"> вниз: удаление</p> -</Document> + <p style="htitle">Клавиатура</p> + <p style="hp">ESCAPE: возвращает курÑор</p> + <p style="hp">b переключает бульдозер и курÑор</p> + <p style="hp">h прÑчет выÑокие поÑтройки. Повторное нажатие h Ñнова покажет их</p> + <p style="hp">v переключает зоны миникарты</p> + <p style="hp">m,n переключают отображение информации о транÑпортной ÑиÑтеме</p> + <p style="hp">g отображает информацию о типе земли и вÑех её параметрах</p> + <p style="hp">KP_PLUS: приближение</p> + <p style="hp">KP_MINUS отдаление</p> + <p style="hp">KP_ENTER маÑштаб 100%</p> + <p style="hp">KP5 перемеÑтить обзор на Ñередину карты</p> + <p style="hp">KP9 перемеÑтитьÑÑ Ñевернее</p> + <p style="hp">KP1 перемеÑтитьÑÑ ÑŽÐ¶Ð½ÐµÐµ</p> + <p style="hp">KP7 перемеÑтитьÑÑ Ð·Ð°Ð¿Ð°Ð´Ð½ÐµÐµ</p> + <p style="hp">KP3 перемеÑтитьÑÑ Ð²Ð¾Ñточнее</p> + <p style="hp">KP2 перемеÑтитьÑÑ ÑŽÐ²</p> + <p style="hp">KP4 перемеÑтитьÑÑ ÑŽÐ·</p> + <p style="hp">KP6 перемеÑтитьÑÑ cв</p> + <p style="hp">KP8 перемеÑтитьÑÑ Ñз</p> + <p style="hp">иÑпользуйте shift + направление Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ быÑтрого перемещениÑ</p> + <p style="hp">F12 быÑтрое Ñохранение</p> + <p style="hp">F9 быÑÑ‚Ñ€Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°</p> + <p style="hsubtitle">Мышка</p> + <p style="hp">Ð¿Ñ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°:</p> + <p style="hp">нажатие правой кнопки позволит перемещатьÑÑ Ð¿Ð¾ карте</p> + <p style="hp">ÑреднÑÑ ÐºÐ½Ð¾Ð¿ÐºÐ°:</p> + <p style="hp">нажатие Ñредней кнопки отобразит информацию об учаÑтке земли под курÑором</p> + <p style="hp">Ð»ÐµÐ²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°:</p> + <p style="hp">нажатие на миникарте перемеÑтит в указанную зону оÑновную карту</p> + <p style="hp">колёÑико:</p> + <p style="hp">вверх: приближение</p> + <p style="hp">вниз: удаление</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/market.xml lincity-ng-2.9~git20150314/data/help/ru/market.xml --- lincity-ng-2.0/data/help/ru/market.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/market.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,35 +1,32 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Магазин</p> - <p style="hp">Магазин Ñто ключевое здание в Lincity.</p> - <p style="hp">Магазины Ñто доÑтаточно Ñлабое название. Правильнее Ñказать job centres, магазин, товарный Ñклад, так же муÑорка :-) причем Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾Ñтью обмениватьÑÑ Ð²Ñем Ñтим хламом :-D.</p> + <p style="hp">Это ключевое здание в Lincity.</p> + <p style="hp">Магазин -- Ñто не ÑовÑем правильное название. Магазин выполнÑет функцию Ð±Ð¸Ð·Ð½ÐµÑ Ñ†ÐµÐ½Ñ‚Ñ€Ð°, торгового центра, биржи труда, продовольÑтвенного магазина, Ñклада. Он может покупать и продавать вÑевозможные реÑурÑÑ‹ объектам, которые находÑÑ‚ÑÑ Ð² пешей доÑтупноÑти (радиуÑе дейÑтвиÑ).</p> + <p style="hp">Магазины могут обмениватьÑÑ Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼Ð¸ магазинами и ÑтроениÑми товарами Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы.</p> + <p style="hp">ИÑпользуйте проÑмотр зоны транÑпорта Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð´Ð¾ÑтупноÑти магазина другим объектам.</p> + <p style="hp">Люди могут покупать еду и товары, уÑтраиватьÑÑ Ð½Ð° работу. Ð’Ñе зданиÑ, которые требуют рабочую Ñилу, могут найти её только через магазин. Фермы могут продавать еду непоÑредÑтвенно в магазин. ТекÑтильные фабрики, гончарные маÑтерÑкие и кузницы продают товар в ближайший магазин, так же как и берут товар оттуда.</p> + <p style="hp">ЕÑли Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð°Ñ…Ð¾Ð´ÑÑ‚ÑÑ Ð²Ð½Ðµ зоны дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°, то их необходимо ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой.</p> + <p style="hp">Ð’ первой закладке миникарты показано <b>общее количеÑтво товаров</b> и то, как они изменÑÑŽÑ‚ÑÑ. Это может помочь Вам управлÑÑ‚ÑŒ реÑурÑами.</p> - <p style="hp"><b>Ð’ пределах зоны дейÑÑ‚Ð²Ð¸Ñ </b>магазины могут обмениватьÑÑ Ð¼Ð°Ñ‚ÐµÑ€Ð¸Ð°Ð»Ð¾Ð¼<b> без транÑпорта.</b>. ИÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ <a href="msb-transport">транÑпортные зоны и магазины</a> проверÑйте, что бы ваши Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð°Ñ…Ð¾Ð´Ð¸Ð»Ð¸ÑÑŒ в зоне их дейÑтвиÑ.</p> - <li>Люди могут брать из магазинов еду, товары и работу еÑли они находÑÑ‚ÑÑ Ð² пределах ходьбы.</li> - <li>Очень многие поÑтройки требуют в том чиÑле и работу, которую могут взÑÑ‚ÑŒ из магазинов..</li> - <li>Рк примеру фермы ещё продают еду в магазины.</li> - <p style="hp">ЕÑли к зданию поÑтавить магазин нельзÑ, то его нужно ÑоединÑÑ‚ÑŒ<a href="transport"> транÑпортом</a>.</p> - <p style="hp">Ð’ первой закладке мини окна показано <b>общее кол-во товаров</b>, и то, как они изменÑÑ‚ÑŒÑÑ. Это может помочь вам Ñделать выводы, о том какие у Ð²Ð°Ñ ÐµÑÑ‚ÑŒ реÑурÑÑ‹, и о том, как они изменÑÑŽÑ‚ÑÑ.</p> - - <p style="hsubtitle">Контролируйте, что магазины покупают и продают.</p> - <p style="hp">Ð’Ñ‹ можете контролировать какие функции выполнÑет данный магазин, что он покупает и продает транÑпортом. Кликните дважды на магазине, и в выпадающем окне выберите то, чем должен заниматьÑÑ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½.</p> - - <p style="hp">Это магазин</p> - <img src="images/tiles/market-empty.png" halign="center"/> - <p style="hp">Ñто его иконка</p> - <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> - <p style="hp">в Ñлучае еÑли он заполнен.</p> - <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> - <p style="hp">Ñто еÑли он <b>пуÑÑ‚</b>.</p> - <img src="images/gui/checkbox/checkbox.png" halign="center"/> - <p style="hp">Sell are the map reference for that market.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="food">Еда</a></li> - <li><a href="jobs">Работа</a></li> - <li><a href="coal">Уголь</a></li> - <li><a href="goods">Товары</a></li> - <li><a href="ore">Руда</a></li> - <li><a href="steel">Сталь</a></li> - <li><a href="transport">ТранÑпорт</a></li> -</Document> + <p style="hsubtitle">Контроль того, что может продавать и покупать магазин.</p> + <p style="hp">Ð’Ñ‹ можете контролировать, какие функции выполнÑет магазин, что он покупает и продаёт. Кликните дважды на магазине и в выпадающем окне выберите то, чем должен заниматьÑÑ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½.</p> + + <p style="hp">Это магазин:</p> + <img src="images/tiles/market-empty.png" halign="center"/> + + <p style="hp">Это иконка:</p> + <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> + + <p style="hp">Это означает, что магазин работает:</p> + <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> + + <p style="hp">Это означает, что продажи запрещены:</p> + <img src="images/gui/checkbox/checkbox.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/medium.xml lincity-ng-2.9~git20150314/data/help/ru/medium.xml --- lincity-ng-2.0/data/help/ru/medium.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/medium.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">СреднÑÑ ÑкороÑÑ‚ÑŒ</p> - <img src="images/gui/speed/normal.png"/> - <p style="hp">Это кнопка Ñредней ÑкороÑти игры. Ðа Ñлабых машинах, кнопки ÑкороÑти могут не работать.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="slow">Медленно</a></li> - <li><a href="fast">БыÑтро</a></li> -</Document> - + <img src="images/gui/speed/fast.png" halign="center"/> + <p style="hp">Это кнопка Ñредней ÑкороÑти игры. Ðа Ñлабых машинах кнопки ÑкороÑти могут не работать.</p> + <p style="hsubtitle">См. ещё:</p> + <li><a href="pause">Пауза</a></li> + <li><a href="slow">ÐÐ¸Ð·ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="fast">Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/mill.xml lincity-ng-2.9~git20150314/data/help/ru/mill.xml --- lincity-ng-2.0/data/help/ru/mill.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,22 +1,26 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Мельница</p> - <p style="hp">Мельницы из еды, ÑƒÐ³Ð»Ñ Ð¸ работы делают товары. Еда?... хорошо, хлопок и шерÑÑ‚ÑŒ за Ñчет еды, в Ñтой игре.</p> - <p style="hp">Мельницы иÑпользуют много еды, итак вы можете легко взÑÑ‚ÑŒ излишек еды и получить из него товары. (Это не Ñложно, когда вы имеете ветрÑные мельницы, которые дают ÑлектричеÑтво фермам, они начинают работать гораздо Ñффективнее)</p> - <p style="hp">Мыльницы не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортом. Ð’Ñе что им нужно они могут взÑÑ‚ÑŒ из магазинов, Ñто как уже говорилоÑÑŒ уголь, работа и еда. Правда от мельниц идет загрÑзнениÑ..</p> - - <p style="hp">Это мельница</p> - <img src="images/tiles/mill1.png" halign="center"/> - <p style="hp">Это не Ñ€Ð°Ð±Ð¾Ñ‚Ð°ÑŽÑ‰Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°</p> - <img src="images/tiles/mill0.png" halign="center"/> - <p style="hp">Это её иконка</p> - <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> + <p style="htitle">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</p> + <p style="hp">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ° из еды и ÑƒÐ³Ð»Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ рабочих делает товары. Еда?... ну, да, в Ñтой игре хлопок и шерÑÑ‚ÑŒ ÑчитаютÑÑ ÐµÐ´Ð¾Ð¹.</p> + <p style="hp">ТекÑтильные фабрики иÑпользуют много еды, поÑтому Ð’Ñ‹ легко можете ÑтолкнутьÑÑ Ñ Ð½ÐµÑ…Ð²Ð°Ñ‚ÐºÐ¾Ð¹ еды, еÑли не будете учитывать Ñто. При ветрогенераторах проблем меньше, так как они могут Ñнабжать фермы ÑлектричеÑтвом, из-за чего те будут производить больше еды.</p> + <p style="hp">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ð½Ðµ обÑзательно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли они раÑположены в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°.</p> + <p style="hp">Увидеть, что фабрика работает, Ð’Ñ‹ можете по дыму, иÑходÑщему из зданиÑ.</p> + + <p style="hp">Это текÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°:</p> + <img src="images/tiles/mill1.png" halign="center"/> + + <p style="hp">Это Ð½ÐµÑ€Ð°Ð±Ð¾Ñ‚Ð°ÑŽÑ‰Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°:</p> + <img src="images/tiles/mill0.png" halign="center"/> + + <p style="hp">Это её иконка:</p> + <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> <li><a href="goods">Товары</a></li> <li><a href="food">Еда</a></li> <li><a href="coal">Уголь</a></li> - <li><a href="jobs">Работа</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="windmill">ВетрÑные мельницы</a></li> -</Document> + <li><a href="jobs">Рабочие</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="windmill">Ветрогенератор</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/mini-screen.xml lincity-ng-2.9~git20150314/data/help/ru/mini-screen.xml --- lincity-ng-2.0/data/help/ru/mini-screen.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/mini-screen.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Мини карта</p> - <p style="hp">Мини карта показывает, в уменьшенном вариант, вÑÑŽ игровую карту. Кнопки внизу, при нажатии, разные зоны покрытиÑ, Ñто работа, загрÑзнение, уголь и прочее.</p> - <p style="hp">Правый клик на кнопки мини карты активирует помощь.</p> - <p style="hp">The white bordered square shows the area covered by the main screen.</p> - <p style="hp">Ð‘Ð¾Ð»ÑŒÑˆÐ°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° "зоны" переноÑит Ñодержимое мини карты на главную карту.</p> - - <p style="hsubtitle">См ещё:</p> + <p style="htitle">Миникарта</p> + <p style="hp">Миникарта показывает вÑÑŽ игровую карту в уменьшенном варианте. Кнопки внизу показывают информацию о различных игровых зонах -- транÑпотра, загрÑзнений и Ñ‚.д.</p> + <p style="hp">Правый клик на какой-либо кнопке под миникартой показывает Ñправочную информацию об Ñтой кнопке.</p> + <p style="hp">Ð‘ÐµÐ»Ð°Ñ Ñ€Ð°Ð¼ÐºÐ° указывает на облаÑÑ‚ÑŒ, отображаемую в данный момент на оÑновной карте.</p> + <p style="hp">Ð‘Ð¾Ð»ÑŒÑˆÐ°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° "зоны" переноÑит Ñодержимое миникарты на главную карту.</p> + + <p style="hsubtitle">См. ещё:</p> <li><a href="msb-coal">Зоны углÑ</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Энерго зоны</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> <li><a href="msb-starve">Зоны голоданиÑ</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> <li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> - - - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/monument.xml lincity-ng-2.9~git20150314/data/help/ru/monument.xml --- lincity-ng-2.0/data/help/ru/monument.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/monument.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Монумент</p> - <p style="hp">Монументы обучают и вдохновлÑÑŽÑ‚. Каждый монумент, который вы поÑтроили увеличивает ваш технологичеÑкий уровень. Ðо не может поднÑÑ‚ÑŒ его выше 40%.</p> - <p style="hp">Ð”Ð»Ñ Ð¿Ð¾Ñтройке монумента нужна Ñ€Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила. <b>Много</b> Ñилы. Его можно иÑпользовать Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†Ñ‹. Это не долгое решение проблемы, как монумент поÑтроитьÑÑ, поÑвитьÑÑ Ð¾Ð¿ÑÑ‚ÑŒ ÑÐ²Ð¾Ð±Ð¾Ð´Ð½Ð°Ñ Ñ€Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила.</p> - <p style="hp">Ð’Ñ‹ можете увидеть как идут дела, нажав на монумент. Так же по мере ÑтроительÑтва изменÑетÑÑ Ð¸ÐºÐ¾Ð½ÐºÐ°. СущеÑтвует вÑего 6 таких иконок.</p> - <p style="hp"><b>ПодÑказка</b>: How to stop monument building sucking too many jobs out of an area and therefore starving other areas of jobs: build a monument farm away from other areas.</p> + <p style="hp">Монументы помогают наÑелению развиватьÑÑ Ð¸ вдохновлÑÑŽÑ‚ на новые изобретениÑ. Каждый монумент, который Ð’Ñ‹ Ñтроите, увеличивает технологичеÑкий уровень, однако Ð’Ñ‹ не Ñможете поднÑÑ‚ÑŒ его выше 40% таким образом.</p> + <p style="hp">Ð”Ð»Ñ Ð¿Ð¾Ñтройки монумента нужна Ñ€Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила. <b>Много</b> рабочей Ñилы. По Ñтой причине монументы можно иÑпользовать Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑƒÑ€Ð¾Ð²Ð½Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†Ñ‹. Правда, Ñто лишь кратковременное решение проблемы безработицы, так как поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва монументу не требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ.</p> + <p style="hp">Ð’Ñ‹ можете увидеть, как идёт ÑтроительÑтво, нажав на монумент и поÑмотрев на окно ÑтатиÑтики. Также по мере ÑтроительÑтва изменÑетÑÑ ÐµÐ³Ð¾ иконка. 6 различных иконок отображают веÑÑŒ процеÑÑ Ñтроительтва, от Ð·Ð°Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ ÐºÐ°Ð¼Ð½Ñ Ð´Ð¾ церемонии открытиÑ.</p> + <p style="hp"><b>ПодÑказка</b>: Как избежать Ñитуации, когда на ÑтроительÑтве монумента занÑто Ñлишком много людей, в то Ð²Ñ€ÐµÐ¼Ñ ÐºÐ°Ðº окружающим поÑтройкам не хватает рабочей Ñилы: Ñтроить монумент подальше от оÑтальных поÑтроек либо иÑпользовать опуÑтошение в чрезвычайных ÑитуациÑÑ….</p> - <p style="hp">Это монумент</p> - <img src="images/tiles/monument5.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазин</a></li> - <li><a href="ore">Руда</a></li> - <li><a href="commune">Коммуна</a></li> - <li><a href="steel">Сталь</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <p style="hp">Это монумент:</p> + <img src="images/tiles/monument5.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="jobs">Рабочие</a></li> + <li><a href="evacuate">ОпуÑтошение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-coal.xml lincity-ng-2.9~git20150314/data/help/ru/msb-coal.xml --- lincity-ng-2.0/data/help/ru/msb-coal.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Зоны углÑ</p> - <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> - <p style="hp">Зоны ÑƒÐ³Ð»Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÑŽÑ‚ где находитьÑÑ Ñ€ÐµÑурÑÑ‹ ÑƒÐ³Ð»Ñ Ð² вашем городе. МеÑÑ‚Ð¾Ñ€Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÑŽÑ‚ÑÑ Ñ‡ÐµÑ€Ð½Ñ‹Ð¼ цветом. ЕÑли ваша ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° поÑтроена на них, то она начинает добывать Ñти реÑурÑÑ‹.</p> - <p style="hp">Ð”Ð»Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ запроÑа данной информации вам нужно заплатить 1 миллион рублей. Это разовый платеж, и в дальнейшем Ð´Ð°Ð½Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð±ÑƒÐ´ÐµÑ‚ беÑплатна.</p> + <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> + <p style="hp">Зоны ÑƒÐ³Ð»Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÑŽÑ‚, где находÑÑ‚ÑÑ Ð·Ð°Ð¿Ð°ÑÑ‹ ÑƒÐ³Ð»Ñ Ð² Вашем городе. МеÑÑ‚Ð¾Ñ€Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶Ð°ÑŽÑ‚ÑÑ ÐºÑ€Ð°Ñным и зелёным цветом на Ñерой земле. Ð’Ñ‹ должны Ñтроить угольные шахты Ñ€Ñдом Ñ Ð¼ÐµÑторождениÑми углÑ.</p> + <p style="hp">Ð”Ð»Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ запроÑа данной информации Вам нужно будет заплатить 1 миллион рублей. Это Ñ€Ð°Ð·Ð¾Ð²Ð°Ñ Ð¿Ð»Ð°Ñ‚Ð° за иÑÑледование территории, поÑледующий доÑтуп к данной информации беÑплатен.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карты</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Энегро зоны</a></li> + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> <li><a href="msb-starve">Зоны голоданиÑ</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> <li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> - +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-cricket.xml lincity-ng-2.9~git20150314/data/help/ru/msb-cricket.xml --- lincity-ng-2.0/data/help/ru/msb-cricket.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Спортивное покрытие</p> - <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> - <p style="hp">МеÑта отмеченные зелёным цветом могут пользоватьÑÑ Ñпортивными площадками.</p> - <p style="hp">МеÑта которые находÑÑ‚ÑÑ Ð½Ð° грани, тоже могут пользоватьÑÑ Ñпортивными площадками</p> - <p style="hp">Запомните, они доÑтупны только через 3 меÑÑца поÑле поÑтройки.</p> + <p style="htitle">Зоны Ñпорта</p> + <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> + <p style="hp">Зоны, которые имеют доÑтуп к Ñпортивным площадкам, окрашены в тёмно-зелёный цвет. ОÑтальные учаÑтки карты отображаютÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ цветом.</p> + <p style="hp">Помните, Ñпортивные площадки ÑтановÑÑ‚ÑÑ Ð´Ð¾Ñтупны только через три меÑÑца поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини-карта</a></li> - <li><a href="msb-coal">Угольное покрытие</a></li> - <li><a href="msb-fire">Пожарное покрытие</a></li> - <li><a href="msb-health">Больничное покрытие</a></li> - <li><a href="msb-normal">Ðормальное покрытие</a></li> - <li><a href="msb-pol">Покрытие наÑелениÑ</a></li> - <li><a href="msb-power">ЭлектричеÑкое покрытие</a></li> - <li><a href="msb-starve">Покрытие голодающих</a></li> - <li><a href="msb-transport">ТранÑпортное покрытие</a></li> - <li><a href="msb-ub40">Покрытие безработицы</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> + <li><a href="msb-ub40">Зоны безработицы</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-fire.xml lincity-ng-2.9~git20150314/data/help/ru/msb-fire.xml --- lincity-ng-2.0/data/help/ru/msb-fire.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ Ð·Ð¾Ð½Ð°</p> - <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> - <p style="hp">Зоны, которые защищены пожарными ÑтанциÑми окрашены в зелёный.</p> - <p style="hp">Ð’Ñе зоны что не охранÑÑ‚ÑŒÑÑ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ð¼Ð¸ ÑтанциÑми не окрашиватьÑÑ.</p> - <p style="hp">Запомните Ñтанции начинают работать только поÑле 3-Ñ… меÑÑцев поÑле поÑтройки.</p> - <p style="hp">FIXME Left click on the mini screen title to choose a different mini screen view. Что бы переключить то что показывает миникарте, нужно пользоватьÑÑ ÐºÐ½Ð¾Ð¿ÐºÐ¾Ð¹ "v".</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> - <li><a href="msb-coal">Угольные зоны</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Электро зоны</a></li> + <p style="htitle">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</p> + <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> + <p style="hp">Зоны, которые защищены пожарными ÑтанциÑми, окрашены в тёмно-зелёный цвет. ОÑтальные учаÑтки карты отображаютÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ цветом.</p> + <p style="hp">Помните, Ñтанции начинают работать только через три меÑÑца поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> <li><a href="msb-starve">Зоны голоданиÑ</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> <li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-health.xml lincity-ng-2.9~git20150314/data/help/ru/msb-health.xml --- lincity-ng-2.0/data/help/ru/msb-health.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,32 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Мед зоны</p> - <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> - <p style="hp">Зоны которые окрашены зелёным, находÑÑ‚ÑÑ Ð¿Ð¾Ð´ наблюдением медицинÑкого центра.</p> - <p style="hp">Ð’Ñе не окрашенные меÑта, медицинÑким центром не обÑлуживаютÑÑ.</p> - <p style="hp">Запомните, мед центр начинает работать только поÑле 3 меÑÑцев поÑле поÑтройки.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> - <li><a href="msb-coal">Зоны углÑ</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Энегро зоны</a></li> - <li><a href="msb-starve">Зоны безработицы</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> - <li><a href="msb-ub40">Зоны голоданиÑ</a></li> -</Document> - - + <p style="htitle">Зоны доÑтупа к больницам</p> + <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> + <p style="hp">Зоны, которые имеют доÑтуп к больницам, окрашены в тёмно-зелёный цвет. ОÑтальные учаÑтки карты отображаютÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ цветом.</p> + <p style="hp">Помните, больница начинает работать только через три меÑÑца поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва.</p> -<!-- - -text -1 270 Left click on the mini screen -text -1 280 to reposition the main window. -text -1 300 Left click on the mini screen title -text -1 310 to choose a different mini screen view. -text -1 330 Toggle overlay mode by pressing 'v' -text -1 340 or middle click on the mini screen title (X only) ---> + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> + <li><a href="msb-ub40">Зоны безработицы</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-normal.xml lincity-ng-2.9~git20150314/data/help/ru/msb-normal.xml --- lincity-ng-2.0/data/help/ru/msb-normal.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-normal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</p> - <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> - <p style="hp">Показывает на миникарте зданиÑ, дороги, воду и зелёные меÑта в вашем городе.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> + <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> + <p style="hp">Показывает на миникарте зданиÑ, дороги, воду и зелёные наÑÐ°Ð¶Ð´ÐµÐ½Ð¸Ñ Ð² городе.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> <li><a href="msb-coal">Зоны углÑ</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Энегро зоны</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> <li><a href="msb-starve">Зоны голоданиÑ</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> <li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-pol.xml lincity-ng-2.9~git20150314/data/help/ru/msb-pol.xml --- lincity-ng-2.0/data/help/ru/msb-pol.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-pol.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Зоны загрÑзнениÑ</p> - <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> - <p style="hp">Зона загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð½Ð° мини карте показывает уровень загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð² вашем городе.</p> - <p style="hp">ЗагрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð´ÐµÐ»ÑÑ‚ÑÑ Ð½Ð°: Ñветло-зелёный -> зелёный -> темно-зелёный -> темно-краÑный -> краÑный -> Ñветло-краÑный.</p> - <p style="hp">Резиденции в которых загрÑзнение отмечено краÑным, ÑвлÑÑ‚ÑŒÑÑ Ð±Ð¾Ð»ÑŒÐ½Ñ‹Ðµ много умирают. Ðе рекомендуетÑÑ Ð´Ð¾Ñ…Ð¾Ð´Ð¸Ñ‚ÑŒ до такой Ñитуации.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> + <p style="htitle">Зоны загрÑзнений</p> + <img src="images/gui/mapview/roundbuttons/round_pollution.png" halign="center"/> + <p style="hp">Зоны загрÑзнений на миникарте показывают уровень загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ города.</p> + <p style="hp">Ð’ завиÑимоÑти от Ñтепени загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ отображатьÑÑ Ñледующими цветами (в порÑдке ÑƒÑ…ÑƒÐ´ÑˆÐµÐ½Ð¸Ñ Ñитуации): Ñветло-зелёный -> зелёный -> тёмно-зелёный -> тёмно-краÑный -> Ñветло-краÑный -> Ñрко-краÑный.</p> + <p style="hp">Ð’ жилых домах, которые попадают в краÑные зоны, отмечаетÑÑ Ð¿Ð¾Ð²Ñ‹ÑˆÐµÐ½Ð½Ñ‹Ð¹ уровень заболеваемоÑти. Люди предпочитают жить в ÑкологичеÑки чиÑÑ‚Ñ‹Ñ… районах.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> <li><a href="msb-coal">Зоны углÑ</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-power">Энегро зоны</a></li> - <li><a href="msb-starve">Зоны безработицы</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> - <li><a href="msb-ub40">Зоны голоданиÑ</a></li> - -</Document> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> + <li><a href="msb-ub40">Зоны безработицы</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-power.xml lincity-ng-2.9~git20150314/data/help/ru/msb-power.xml --- lincity-ng-2.0/data/help/ru/msb-power.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Энерго зоны</p> - <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> - <p style="hp">МеÑта которые отмечены тёмно зелёным питаютÑÑ Ð¾Ñ‚ воздушной мельницы.</p> - <p style="hp">МеÑта которые питаютÑÑ Ð¾Ñ‚ Ñлетро раÑпределителÑ, краÑÑÑ‚ÑÑ Ð² Ñветло зелёный цвет.</p> - <p style="hp">Ðе отмеченные зоны не имеют ÑлектричеÑтва.</p> - <p style="hp">Это кнопка ÑлектричеÑтва, пожалуйÑта не включайте её надолго.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> - <li><a href="msb-coal">Угольные зоны</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> + <p style="htitle">Зоны ÑлектроÑнабжениÑ</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + <p style="hp">Зоны, в которых ÑÐ½ÐµÑ€Ð³Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ÑÑ Ð¼Ð°Ð»Ð¾Ð¼Ð¾Ñ‰Ð½Ñ‹Ð¼Ð¸ ветрогенераторами, окрашены в тёмно-зелёный цвет. Зоны, подключенные непоÑредÑтвенно к ЛЭП, окрашены в Ñветло-зелёный цвет. Зоны, не имеющие доÑтупа к Ñнергии, окрашены в краÑный цвет.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> <li><a href="msb-starve">Зоны голоданиÑ</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> <li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-starve.xml lincity-ng-2.9~git20150314/data/help/ru/msb-starve.xml --- lincity-ng-2.0/data/help/ru/msb-starve.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-starve.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Зоны голоданиÑ</p> - <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> - <p style="hp">Показывает зоны Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð½Ð° карте.</p> - <p style="hp">Светло зелёный показывает то, что еда в данных зонах доÑтупна. Темно зелёные и краÑные зоны показывают что еды не хватает.</p> - <p style="hp">Зона Ñ Ð²Ð¾Ð´Ð¾Ð¹ окрашена в темно-Ñиний.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> - <li><a href="msb-coal">Угольные зоны</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Электро зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> + <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> + <p style="hp">Зоны Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð¾Ñ‚Ð½Ð¾ÑÑÑ‚ÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ к жилым домам.</p> + <p style="hp">Ярко-зелёным цветом отмечены зоны, в которых доÑтаточно еды (из магазинов) и воды (из Ñкважин). Ярко-краÑные же означают, что в данных зонах люди голодают.</p> + <p style="hp">Зона доÑтупноÑти Ñкважины окрашена в тёмно-Ñиний цвет.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="msb-coal">Зоны углÑ</a></li> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> <li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-transport.xml lincity-ng-2.9~git20150314/data/help/ru/msb-transport.xml --- lincity-ng-2.0/data/help/ru/msb-transport.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ТранÑпортные зоны</p> - <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> - <p style="hp">Показывает передвижение реÑурÑов по карте в вашем городе по <a href="track">грунтовке</a>, <a href="road">дорогам </a> - и <a href="rail">рельÑам</a>.</p> - <p style="hp">Голубоватый Ñиний показывает зоны дейÑÑ‚Ð²Ð¸Ñ Ð²Ð°ÑˆÐ¸Ñ… <a href="market">магазинов</a>.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> + <p style="htitle">Зоны транÑпорта</p> + <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> + <p style="hp">Зоны транÑпорта отображают количеÑтво товаров на городÑких <a href="track">грунтовках</a>, <a href="road">дорогах</a> и <a href="rail">железных дорогах</a>.</p> + <p style="hp">Ðажмите на иконке Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ потоками и уровнÑми. ИÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ¸ вверх и вниз, Ð’Ñ‹ можете переключатьÑÑ Ð¼ÐµÐ¶Ð´Ñƒ различными товарами потреблениÑ.</p> + <p style="hp">Синими цветами отображаютÑÑ Ð¿Ð¾Ñтройки, находÑщиеÑÑ Ð² зоне доÑтупноÑти <a href="market">магазина</a>.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> <li><a href="msb-coal">Зоны углÑ</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Энегро зоны</a></li> - <li><a href="msb-starve">Зоны безработицы</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-ub40">Зоны голоданиÑ</a></li> -</Document> + <li><a href="msb-cricket">Зоны Ñпорта</a></li> + <li><a href="msb-fire">Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций</a></li> + <li><a href="msb-health">Зоны доÑтупа к больницам</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> + <li><a href="msb-ub40">Зоны безработицы</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/msb-ub40.xml lincity-ng-2.9~git20150314/data/help/ru/msb-ub40.xml --- lincity-ng-2.0/data/help/ru/msb-ub40.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/msb-ub40.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Зоны безработицы</p> - <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> - <p style="hp">Безработица показываетÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ на резиденциÑÑ….</p> - <p style="hp">Светло зелёный означает, что безработица отÑутÑтвует. Темно зелёный и краÑный означает что безработица еÑÑ‚ÑŒ, причем в краÑной зоне она больше.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="mini-screen">Мини карта</a></li> - <li><a href="msb-coal">Угольные зоны</a></li> - <li><a href="msb-cricket">Спортивные зоны</a></li> - <li><a href="msb-health">Мед зоны</a></li> - <li><a href="msb-normal">Ðормальное отображение</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> - <li><a href="msb-power">Электро зоны</a></li> - <li><a href="msb-starve">Зоны голоданиÑ</a></li> - <li><a href="msb-transport">ТранÑпортные зоны</a></li> - <li><a href="msb-fire">Пожарные зоны</a></li> -</Document> + <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> + <p style="hp">Зоны безработицы отображают жилые дома краÑным или зелёным цветами, а оÑтальные поÑтройки -- жёлтым или Ñерым.</p> + <p style="hp">Ярко-зелёный цвет означает, что в данных жилых домах нет проблем Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†ÐµÐ¹. Тёмно-зелёный и Ñрко-краÑный цвета показывают нараÑтающие проблемы Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†ÐµÐ¹.</p> + <p style="hp">Ярко-жёлтый цвет означает, что данной поÑтройке не хватает рабочей Ñилы. Объекты, отмеченые Ñерым цветом, полноÑтью обеÑпечены рабочей Ñилой.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="mini-screen">Миникарта</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="msb-normal">Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/oremine.xml lincity-ng-2.9~git20150314/data/help/ru/oremine.xml --- lincity-ng-2.0/data/help/ru/oremine.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/oremine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Шахта руды</p> - <p style="hp">Шахта руды Ñнабжает рудой, из который можно делать товары и Ñталь. Ð’Ñ‹ можете Ñтроить шахту где угодно. Под вашей поÑтройкой Ð·ÐµÐ¼Ð»Ñ Ð±ÑƒÐ´ÐµÑ‚ портитÑÑ. Ð’Ñ‹ не Ñмежите ÑнеÑти шахту и поÑтроить новую (точнее Ñто будет Ñтоить вам много денег).</p> - <p style="hp">Когда шахта опуÑтошаетÑÑ Ð² меÑто неё поÑвлÑетÑÑ 16 зон воды!</p> - <p style="hp">График показывает, какие шахты близки и иÑтощению.</p> - <p style="hp">Данной поÑтройке нужен транÑпорт, который приÑоединÑетÑÑ Ðº верхнему левому углу..</p> - - <p style="hp">Это шахта руды</p> - <img src="images/tiles/oremine1.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> + <p style="htitle">Рудник</p> + <p style="hp">Ð”Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка позволÑет добывать руду, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð° Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ñтва товаров и Ñтали. Рудники можно Ñтроить в любом меÑте карты. Ð’ процеÑÑе добычи запаÑÑ‹ руды иÑÑÑкают -- еÑли Ð’Ñ‹ уничтожите рудник бульдозером и поÑтроите нa его меÑте новый, не раÑÑчитывайте, что руды прибавитÑÑ.</p> + <p style="hp">ПоÑле того, как запаÑÑ‹ руды иÑÑÑкнут, рудник превратитÑÑ Ð² реку или озеро. ЕÑли Ð’Ñ‹ захотите воÑÑтановить землю на Ñтом учаÑтке Ð´Ð»Ñ Ð´Ð°Ð»ÑŒÐ½ÐµÐ¹ÑˆÐµÐ³Ð¾ иÑпользованиÑ, учтите, что Вам придётÑÑ Ð·Ð°ÐºÐ¾Ð¿Ð°Ñ‚ÑŒ 16 учаÑтков воды!</p> + <p style="hp">СкороÑÑ‚ÑŒ анимации показывает активноÑÑ‚ÑŒ на руднике.</p> + + <p style="hp">Это рудник:</p> + <img src="images/tiles/oremine1.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> <li><a href="ore">Руда</a></li> <li><a href="goods">Товары</a></li> <li><a href="steel">Сталь</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/ore.xml lincity-ng-2.9~git20150314/data/help/ru/ore.xml --- lincity-ng-2.0/data/help/ru/ore.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Руда</p> - <p style="hp">Руда одна из Ñамых проÑÑ‚Ñ‹Ñ… материалов в игре. Руду умеют добывать коммуны и рудные шахты. Так же из отходов её получает Переработка.</p> - <p style="hp">Гончары, Ð»ÐµÐ³ÐºÐ°Ñ Ð¸ Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтрии иÑпользуют руду.</p> + <p style="hp">Руда -- один из оÑновных видов ÑÑ‹Ñ€ÑŒÑ Ð² игре. Коммуны, рудники и центры по переработке отходов могут добывать руду.</p> + <p style="hp">Руда необходима Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ гончарных маÑтерÑких, а также лёгкой и Ñ‚Ñжёлой промышленноÑти.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="commune">Комуны</a></li> - <li><a href="oremine">Шахта руды</a></li> - <li><a href="recycle">Переработка</a></li> - <li><a href="pottery">ГончарнаÑ</a></li> - <li><a href="indistryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="indistryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="oremine">Рудник</a></li> + <li><a href="recycle">Центр по переработке отходов</a></li> + <li><a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> + <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/other-costs.xml lincity-ng-2.9~git20150314/data/help/ru/other-costs.xml --- lincity-ng-2.0/data/help/ru/other-costs.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/other-costs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,19 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Другие затраты</p> - <p style="hp">Это окно других затрат.</p> - <p style="hp">Заём</p> - <p style="hp">Школьные затраты</p> - <p style="hp">Ðе еÑтеÑтвенные Ñмети</p> - <p style="hp">ВетрÑные мельница</p> - <p style="hp">Мед центры</p> - <p style="hp">Ракеты</p> - <p style="hp">Пожарные Ñтанции</p> - <p style="hp">Спортивные площадки</p> - <p style="hp">Центры переработки</p> - <p style="hp">Левое нажатие на финанÑовую вкладку переключает окна между финанÑами, другими затратами и домами.</p> -</Document> + <p style="hp">Это окно других затрат. Оно показывает раÑпределение "других затрат", которые отображаютÑÑ Ð² окне финанÑов.</p> + <li>Выплата процентов</li> + <li>Школы</li> + <li>УниверÑитеты</li> + <li>ÐееÑтеÑтвенные Ñмерти</li> + <li>Ветрогенераторы</li> + <li>Больницы</li> + <li>КоÑмичеÑкие корабли</li> + <li>Пожарные Ñтанции</li> + <li>Спортивные площадки</li> + <li>Центры по переработке отходов</li> + <p style="hp">Ðажатие левой кнопкой на заголовке Ñтого окна позволит переключатьÑÑ Ð¼ÐµÐ¶Ð´Ñƒ окнами финанÑов, других затрат и наÑелениÑ.</p> + + <p style="hsubtitle">См. ещё:</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/park.xml lincity-ng-2.9~git20150314/data/help/ru/park.xml --- lincity-ng-2.0/data/help/ru/park.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/park.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,25 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Парки</p> - <p style="hp">Парки очень проÑÑ‚Ñ‹: очищают загрÑзнение.</p> - <p style="hp">Очищает вÑе что Ñоздает загрÑзнение в оÑновном Ñто легкаÑ, Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтрии и ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ.</p> - <p style="hp">Ð’Ñ‹ можете иÑпользовать парки Ð´Ð»Ñ Ð·Ð°Ñ‰Ð¸Ñ‚Ñ‹ резиденций, или Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ что бы оÑтановить раÑпроÑтранение загрÑзнениÑ.</p> - <p style="hp">Ветер дует Ñ ÑŽÐ³Ð¾-запада на Ñеверо-воÑток, Ñтройте парки полагаÑÑÑŒ на Ñто.</p> - - <p style="hp">Это парк</p> - <img src="images/tiles/parkland-plane.png" halign="center"/> - <p style="hp">а Ñто его иконка</p> - <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> - - <p style="hsubtitle">Ñм ещё:</p> + <p style="htitle">Парк</p> + <p style="hp">Парки имеют очень проÑтое назначение: они уменьшают загрÑзнениÑ.</p> + <p style="hp">Очень многие объекты загрÑзнÑÑŽÑ‚ город: Ñто и дороги, и угольные шахты, и промышленноÑÑ‚ÑŒ, и Ñ‚.д. Какие-то объекты загрÑзнÑÑŽÑ‚ город больше, какие-то меньше.</p> + <p style="hp">Ð’Ñ‹ можете Ñтроить парки Ð´Ð»Ñ ÑƒÐ»ÑƒÑ‡ÑˆÐµÐ½Ð¸Ñ Ñкологии возле жилых домов или около иÑточников загрÑзнений.</p> + <p style="hp">Ð’ городе преобладает юго-западный ветер, учитывайте Ñто при Ñоздании парков.</p> + <p style="hp">Парки более Ñффективны, чем леÑа или фермы, однако Ð´Ð»Ñ Ð¸Ñ… ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾ наличие подземных вод. ПоÑтому они могут раÑполагатьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ на зелёных учаÑтках карты.</p> + <p style="hp"><b>ПодÑказка:</b> Ðажав клавишу 'w' при Ñоздании парка, Ð’Ñ‹ увидите маленький пруд.</p> + + <p style="hp">Это парк:</p> + <img src="images/tiles/parkland-plane.png" halign="center"/> + + <p style="hp">а Ñто его иконка:</p> + <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> <li><a href="pollution">ЗагрÑзнение</a></li> - <li><a href="road">Дороги</a></li> - <li><a href="rail">РельÑÑ‹</a></li> - <li><a href="coalmine">Каменный уголь</a></li> - <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="industryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> -</Document> + <li><a href="farm">Ферма</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/pause.xml lincity-ng-2.9~git20150314/data/help/ru/pause.xml --- lincity-ng-2.0/data/help/ru/pause.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/pause.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,6 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Пауза игры</p> - <p style="hp">Ð”Ð°Ð½Ð½Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° "замораживает" времÑ.</p> - <p style="hp">Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾ что бы его "разморозить" нажмите на кнопку ещё раз.</p> -</Document> + <p style="htitle">Пауза</p> + <p style="hp">Ð”Ð°Ð½Ð½Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° приоÑтанавливает ход игры.</p> + <p style="hp">Повторное нажатие продолжает игру.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="slow">ÐÐ¸Ð·ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="medium">СреднÑÑ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="fast">Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/pbar.xml lincity-ng-2.9~git20150314/data/help/ru/pbar.xml --- lincity-ng-2.0/data/help/ru/pbar.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,8 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Пбар</p> - <p style="hp">Это Ð²Ñ‚Ð¾Ñ€Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° на миникарте</p> - <p style="hp">Показывает количеÑтво запаÑов во вÑех магазинах.</p> - <p style="hp">ЧиÑла показывают общее кол-во.</p> - <p style="hp">Ð—ÐµÐ»ÐµÐ½Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ñправа показывает что данный реÑÑƒÑ€Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡Ð¸Ð²Ð°ÐµÑ‚ÑÑ, краÑÐ½Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ñлева означает что реÑÑƒÑ€Ñ ÑƒÐ¼ÐµÐ½ÑŒÑˆÐ°ÐµÑ‚ÑÑ, линии могут быть разной длины.</p> -</Document> + <p style="htitle">Окно ÑтатиÑтики</p> + <p style="hp">Это Ð²Ñ‚Ð¾Ñ€Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° на миникарте.</p> + <p style="hp">Она показывает раÑширенную ÑтатиÑтику объектов города и их недавнее развитие.</p> + <p style="hp">ПолоÑа Ñ Ð¿Ñ€Ð°Ð²Ð¾Ð¹ Ñтороны указывает на увеличение Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°, полоÑа Ñ Ð»ÐµÐ²Ð¾Ð¹ Ñтороны -- на уменьшение. По размеру полоÑÑ‹ можно Ñудить о размере изменений. Зелёной полоÑой обозначены хорошие изменениÑ, краÑной -- плохие. Будьте внимательны, Ñлишком большое чиÑло хороших изменений не вÑегда полезно.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/pollution.xml lincity-ng-2.9~git20150314/data/help/ru/pollution.xml --- lincity-ng-2.0/data/help/ru/pollution.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/pollution.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,26 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">ЗагрÑзнение</p> - <p style="hp">МножеÑтво Ñтроений загрÑзнÑет. Ð’ их ÑпиÑке:</p> - <li>ТÑÐ¶Ð¾Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ.</li> - <li>Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ.</li> + <p style="hp">БольшинÑтво объектов загрÑзнÑÑŽÑ‚ окружающую Ñреду. Ðаиболее опаÑные:</p> + <li>ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ.</li> + <li>Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ.</li> <li>Угольные ÑлектроÑтанции.</li> <li>Угольные шахты.</li> <li>Магазины, заполненные муÑором.</li> - <li>РельÑÑ‹/Дороги, оÑобенно когда заполнены муÑором.</li> - <p style="hp">ЛюдÑм не нравитьÑÑ Ð¶Ð¸Ñ‚ÑŒ в грÑзи. Они могут уехать или умереть.</p> - <p style="hp">Ветер дует Ñ ÑŽÐ³Ð¾ запада. ТеоретичеÑки вÑе загрÑзнение ÑдуваетÑÑ Ð½Ð° Ñеверо воÑток.</p> - <p style="hp">ЕÑли правильно размешать резиденции, то падает риÑк загрÑзнить их. Ðо Ñто не вÑегда возможно. Можно Ñтроить парки, что бы Ñнизить уровень загрÑзнениÑ.</p> + <li>РельÑÑ‹ и дороги, оÑобенно когда заполнены муÑором.</li> + <p style="hp">ЛюдÑм не нравитÑÑ Ð¶Ð¸Ñ‚ÑŒ в грÑзи. Они захотÑÑ‚ уехать, потому что иначе могут заболеть или даже умереть.</p> + <p style="hp">Ð’ городе преобладает юго-западный ветер, поÑтому загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰Ð°ÑŽÑ‚ÑÑ Ð½Ð° Ñеверо-воÑток.</p> + <p style="hp">Чаще вÑего при правильной Ñтратегии заÑтройки города Ваши люди не будут Ñтрадать от загрÑзнений. Однако Ñто не вÑегда возможно. Ð’ таких ÑлучаÑÑ… иÑпользуйте парки -- они помогут улучшить Ñкологию. Чем больше парков, тем лучше защита от загрÑзнений.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="industryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> + <p style="hsubtitle">См. ещё:</p> + <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> <li><a href="coalmine">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</a></li> - <li><a href="market">Магазины</a></li> - <li><a href="rail">РельÑÑ‹</a></li> - <li><a href="road">Дороги</a></li> - <li><a href="park">Парки</a></li> - <li><a href="msb-pol">Зоны загрÑзнениÑ</a></li> -</Document> + <li><a href="market">Магазин</a></li> + <li><a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></li> + <li><a href="road">Дорога</a></li> + <li><a href="park">Парк</a></li> + <li><a href="msb-pol">Зоны загрÑзнений</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/port.xml lincity-ng-2.9~git20150314/data/help/ru/port.xml --- lincity-ng-2.0/data/help/ru/port.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/port.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,24 +1,28 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Порт</p> - <p style="hp">Порты могут импортировать и ÑкÑпортировать товары, Ñталь, руду, уголь и еду. Импорт уменьшает кол-во денег, ÑкÑпорт увеличивает.</p> - <p style="hp">УбедитеÑÑŒ, что порт Ñоединен Ñ Ñ‚Ñ€Ð°Ð½Ñпортом. Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾ чтобы выбрать что ÑкÑпортировать/импортировать два раза нажмите на порт. Данное дейÑтвие откроет ÑоответÑтвующее окно.</p> - <p style="hp">Порт <b>должен</b> быть Ñоединен транÑпортом Ñ Ð¿Ñ€Ð°Ð²Ñ‹Ð¼ верхним углом.</p> - <p style="hp">За ÑкÑпорт вы получите меньше денег, чем потратите на импорте одинакового кол-ва реÑурÑа.</p> - <p style="hp">Note: Exporters discount large exports.</p> + <p style="hp">Порты позволÑÑŽÑ‚ Вам импортировать и ÑкÑпортировать товары, Ñталь, руду, уголь и еду. За импорт платите Ð’Ñ‹, за ÑкÑпорт платÑÑ‚ Вам.</p> + <p style="hp">Выберите, что Ð’Ñ‹ хотите импортировать, двойным нажатием на порте. Ð’ меню Ð’Ñ‹ Ñможете Двойное нажатие на порте откроет меню, в котором Ð’Ñ‹ Ñможете выбрать, какие товары необходимо импортировать и/или ÑкÑпортировать.</p> + <p style="hp">Порт должен ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой.</p> + <p style="hp">Порт <b>должен</b> ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ€ÐµÐºÐ¾Ð¹, раÑположенной Ñ Ð¿Ñ€Ð°Ð²Ð¾Ð¹ Ñтороны от него.</p> + <p style="hp">ЭкÑпорт иÑпользует вÑе доÑтупные товары. ЕÑли Вам надо ÑкÑпортировать только ограниченное количеÑтво товаров, Ð’Ñ‹ можете иÑпользовать более медленный вид транÑпортной ÑиÑтемы, более длинные дороги и Ñ‚.д. Вам придётÑÑ Ð¿Ð¾ÑкÑпериментировать Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ð¹ транÑпортной ÑиÑтемы.</p> + <p style="hp">ДейÑтвующий порт развивает технологии. Примечание: ÑкÑпортёры получают Ñкидку на большие партии товаров.</p> - <p style="hp">Это порт</p> - <img src="images/tiles/ex_port.png" halign="center"/> - <p style="hp">Ñто иконка</p> - <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="export">ЭкÑпорт и импорт</a></li> - <li><a href="rivers">Реки</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="market">Магазины</a></li> + <p style="hp">Это порт:</p> + <img src="images/tiles/ex_port.png" halign="center"/> + + <p style="hp">Ñто иконка:</p> + <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="export">Импорт и ÑкÑпорт</a></li> + <li><a href="river">Река/Озеро</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="food">Еда</a></li> <li><a href="coal">Уголь</a></li> <li><a href="ore">Руда</a></li> <li><a href="goods">Товары</a></li> <li><a href="steel">Сталь</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/pottery.xml lincity-ng-2.9~git20150314/data/help/ru/pottery.xml --- lincity-ng-2.0/data/help/ru/pottery.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ГончарнаÑ</p> - <p style="hp">Гончарные делают товары из руды, ÑƒÐ³Ð»Ñ Ð¸ работы. Её не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортом, но она должна быть в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°(ов).</p> - <p style="hp">Ð’Ñ‹ можете Ñказать работать гончарным обжигать товар, из-за Ñтого поÑвлÑетÑÑ Ð·Ð°Ð³Ñ€Ñзнение, но за то КПД увеличиваетÑÑ Ð´Ð¾ 100%.</p> - - <p style="hp">Это гончарнаÑ</p> - <img src="images/tiles/pottery0.png" halign="center"/> - <p style="hp">Ñто иконка</p> - <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> + <p style="htitle">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</p> + <p style="hp">Гончарные маÑтерÑкие Ñоздают товары из руды и ÑƒÐ³Ð»Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ рабочих. Они не обÑзательно должны быть Ñоединены Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, однако их надо Ñтроить в зоне доÑтупа к магазину.</p> + <p style="hp">Ð’Ñ‹ можете увидеть, что Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑÐºÐ°Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ð°ÐµÑ‚, по дыму, выходÑщему из трубы печи.</p> + + <p style="hp">Это Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ:</p> + <img src="images/tiles/pottery0.png" halign="center"/> + + <p style="hp">Ñто иконка:</p> + <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> <li><a href="ore">Руда</a></li> <li><a href="coal">Уголь</a></li> - <li><a href="jobs">Работа</a></li> + <li><a href="jobs">Рабочие</a></li> <li><a href="market">Магазин</a></li> -</Document> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/powerline.xml lincity-ng-2.9~git20150314/data/help/ru/powerline.xml --- lincity-ng-2.0/data/help/ru/powerline.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/powerline.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,24 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">ЛЭП</p> - <p style="hp">Линии Электро Передач (ЛЭП) передают ÑлектроÑнергию от Ñолнечных и угольных Ñтанций подÑтанциÑм. Ко вÑем Ñлектропередающим(принимающим) поÑтройкам ЛЭП подÑоединÑетÑÑ Ðº верхнему левому углу.</p> - <p style="hp">ЛЭП могут проходить <b>под</b> грунтовками, дорогами, рельÑами и речками (но не более 1-ого полÑ). ЕÑли Ñлектролинии наÑположены или под транÑпортом или речкой, они могут передавать ÑлектричеÑтво. Много раз вы можете захотеть убрать речушку, но помните Ñто будет Ñтоить много денег. The power lines are joined when they are in a straight line.</p> + <p style="hp">Линии Ñлектропередач (ЛЭП) передают ÑлектроÑнергию от Ñолнечных и угольных ÑлектроÑтанций, а также продвинутых ветрогенераторов, подÑтанциÑм и в промзоны. ЛЭП должны подÑоединÑÑ‚ÑŒÑÑ Ðº верхнему левому углу поÑтроек, которым необходима ÑнергиÑ.</p> + <p style="hp">ЛЭП могут проходить <b>над</b> грунтовками, дорогами, рельÑами и реками (но не более одного учаÑтка). ЕÑли они раÑположены по обе Ñтороны транÑпортной ÑиÑтемы или реки, они дейÑтвуют как будто они Ñоединены. Вам иногда придётÑÑ Ð·Ð°ÐºÐ°Ð¿Ñ‹Ð²Ð°Ñ‚ÑŒ небольшие учаÑтки рек, чтобы Ñоединить ЛЭП -- но помните, Ñто очень дорого. ЛЭП Ñоединены между Ñобой, когда они выровнены и видна передача ÑлектроÑнергии по проводам.</p> - <p style="hp">Это ЛЭП</p> - <img src="images/tiles/powerlvd.png" halign="center"/> - <p style="hp">Это иконка</p> - <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> - <p style="hp">так выглÑдит на миникарте</p> - <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + <p style="hp">Это ЛЭП:</p> + <img src="images/tiles/powerlvd.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> - <li><a href="substation">ПодÑтанции</a></li> - <li><a href="powerssolar">Угольные Ñлектролинии</a></li> - <li><a href="msb-power">Электро зоны</a></li> -</Document> + <p style="hp">Это иконка:</p> + <img src="images/gui/buttonpanel/power/powerlines.png" halign="center"/> + <p style="hp">так выглÑдит на миникарте:</p> + <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="substation">ПодÑтанциÑ</a></li> + <li><a href="windmill">Ветрогенератор</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/powerscoal.xml lincity-ng-2.9~git20150314/data/help/ru/powerscoal.xml --- lincity-ng-2.0/data/help/ru/powerscoal.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/powerscoal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</p> - <p style="hp">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ ÑлектричеÑтво и передает его на <a href="powerline">ЛЭП</a>.</p> - <p style="hp">ЛЭП ÑоединÑÑ‚ÑŒÑÑ Ñ Ð»ÐµÐ²Ñ‹Ð¼ верхним углом, ТранÑпорт ÑоединÑетÑÑ Ñ€Ñдом. Смотрите пример. (еÑли вы правильно ÑоединÑете дорогу и ЛЭП, в точке ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ð¾Ð½Ð¸ поворачивают на здание)</p> - <p style="hp">КПД от переработки ÑƒÐ³Ð»Ñ Ð² ÑлектроÑнергию значительно можно поднÑÑ‚ÑŒ, еÑли Ñтоить ÑлектроÑтанции Ñ Ð²Ñ‹Ñоким научным уровнем. Ð’ Ñлучае еÑли ваш уровень значительно выроÑ, а ÑлектроÑнергии не хватает, вероÑтно ÑнеÑти Ñтарые и поÑтроить новые ÑлектроÑтанции будет хорошей идеей.</p> - - <p style="hp">Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</p> - <img src="images/tiles/powerscoal-empty.png" halign="center"/> - <p style="hp">Ñто её иконка</p> - <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="tech-level">Ðаучный уровень</a></li> - <li><a href="powerline">Электро линии</a></li> - <li><a href="msb-power">Зоны ÑлектричеÑтва</a></li> -</Document> + <p style="hp">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ Ñнергию путём ÑÐ¶Ð¸Ð³Ð°Ð½Ð¸Ñ ÑƒÐ³Ð»Ñ Ð¸ передаёт её по <a href="powerline">ЛЭП</a>.</p> + <p style="hp">ЭффективноÑÑ‚ÑŒ ÑÐ¶Ð¸Ð³Ð°Ð½Ð¸Ñ ÑƒÐ³Ð»Ñ Ð²Ð¾Ð·Ñ€Ð°Ñтает Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸ÐµÐ¼ технологичеÑкого уровнÑ, но только Ð´Ð»Ñ Ð²Ð½Ð¾Ð²ÑŒ поÑтроенных Ñтанций. ПоÑтому Ð’Ñ‹, вероÑтно, захотите ÑнеÑти Ñтарую Ñтанцию и поÑтроить на её меÑте новую, более Ñффективную, когда Ваш технологичеÑкий уровень значительно увеличитÑÑ.</p> + <p style="hp">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ ÑвлÑетÑÑ Ð²Ð°Ð¶Ð½Ñ‹Ð¼ иÑточником загрÑзнений. УбедитеÑÑŒ, что работа Ваших угольных ÑлектроÑтанций не загрÑзнÑет окружающую Ñреду возле жилых домов. Ветрогенераторы и Ñолнечные ÑлектроÑтанции куда менее Ñффективные, но более Ñкологичные решениÑ.</p> + + <p style="hp">Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ:</p> + <img src="images/tiles/powerscoal-empty.png" halign="center"/> + + <p style="hp">Ñто её иконка:</p> + <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="powerline">ЛЭП</a></li> + <li><a href="windmill">Ветрогенератор</a></li> + <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/powerssolar.xml lincity-ng-2.9~git20150314/data/help/ru/powerssolar.xml --- lincity-ng-2.0/data/help/ru/powerssolar.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/powerssolar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,22 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Солнечные ÑлектроÑтанции</p> - <p style="hp">Солнечные ÑлектроÑтанции делают ÑлектроÑнергию и отдают на ЛЭП. Чем выше ваш научный уровень, тем больше ÑлектроÑнергии могут вырабатывать Ñолнечные ÑлектроÑтанции. Данное значение уÑтанавливаетÑÑ Ð¿Ñ€Ð¸ поÑтройки и не менÑетÑÑ.</p> - <p style="hp">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð½ÑƒÐ¶Ð´Ð°ÐµÑ‚ÑÑ Ð² большой рабочий Ñиле. ЕÑли рабочий Ñилы не хватает, то ÑлектричеÑтва вырабатываетÑÑ Ð¼ÐµÐ½ÑŒÑˆÐµ и без рабочих ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð½Ðµ работает.</p> - - <p style="hp">Это ÑÐ¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</p> - <img src="images/tiles/powerssolar.png" halign="center"/> - <p style="hp">а Ñто её иконка</p> - <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="substation">ПодÑтанции</a></li> - <li><a href="powerline">Электролинии</a></li> - <li><a href="residential">Резиденции</a></li> - <li><a href="tech-level">Ðаучный уровень</a></li> - <li><a href="msb-power">Электролинии</a></li> - <li><a href="windmill">ВетрÑные мельницы</a></li> -</Document> + <p style="htitle">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</p> + <p style="hp">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ Ñнергию Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñолнечных батарей и передаёт её по <a href="powerline">ЛЭП</a>.</p> + <p style="hp">ЭффективноÑÑ‚ÑŒ Ñолнечных батарей возраÑтает Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸ÐµÐ¼ технологичеÑкого уровнÑ.</p> + <p style="hp">Без рабочих ÑÐ¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð½Ðµ будет функционировать.</p> + + <p style="hp">Это ÑÐ¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ:</p> + <img src="images/tiles/powerssolar.png" halign="center"/> + + <p style="hp">а Ñто её иконка:</p> + <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="substation">ПодÑтанциÑ</a></li> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="powerline">ЛЭП</a></li> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="windmill">Ветрогенератор</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/power.xml lincity-ng-2.9~git20150314/data/help/ru/power.xml --- lincity-ng-2.0/data/help/ru/power.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> +<Document style="helpdocument"> + <p style="htitle">ЭнергиÑ</p> + <p style="hp">Ð­Ð½ÐµÑ€Ð³Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ вырабатыватьÑÑ Ð² кВт⋅ч или МВт⋅ч. кВт⋅ч передаютÑÑ Ð¿Ð¾ подземным кабелÑм вдоль Вашей городÑкой транÑпортной ÑиÑтемы, а МВт⋅ч -- по ЛЭП.</p> + <p style="hp">кВт⋅ч производÑÑ‚ÑÑ Ð½Ð¸Ð·ÐºÐ¾Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡Ð½Ñ‹Ð¼Ð¸ ветрогенераторами или передаютÑÑ Ð¿Ð¾Ð´ÑтанциÑми. Они могут обеÑпечивать Ñнергией жилые дома, фермы, текÑтильные фабрики, лёгкую промышленноÑÑ‚ÑŒ и Ñ‚Ñжёлую промышленноÑÑ‚ÑŒ (металлургичеÑкие заводы).</p> + <p style="hp">МВт⋅ч производÑÑ‚ÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ угольных и Ñолнечных ÑлектроÑтанций и могут передаватьÑÑ Ð¿Ð¾Ð´ÑтанциÑм или напрÑмую обеÑпечивать Ñнергией лёгкую и Ñ‚Ñжёлую промышленноÑÑ‚ÑŒ (металлургиеÑкие заводы).</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="windmill">Ветрогенератор</a></li> + <li><a href="residential">Жилой дом</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="farm">Ферма</a></li> + <li><a href="powerline">ЛЭП</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="substation">ПодÑтанциÑ</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> + <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/query.xml lincity-ng-2.9~git20150314/data/help/ru/query.xml --- lincity-ng-2.0/data/help/ru/query.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/query.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,14 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">КурÑор</p> <p style="hp">Показывает информацию о поÑтройках. Ð”Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð°Ð²ÐµÐ´Ð¸Ñ‚Ðµ на поÑтройку и нажмите клавишу мыши.</p> - <p style="hp">Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ÑÑ Ñлева внизу, вмеÑто мини-карты </p> - <p style="hp">ИÑпользование беÑплатно.</p> - <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> - <li><a href="keys">"ГорÑчие" клавиши</a></li> - <li><a href="help">Ñодержание</a></li> -</Document> + <p style="hp">Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ÑÑ Ð² правом нижнем углу (вмеÑто миникарты).</p> + <p style="hp">Это курÑор:</p> + <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="keys">Клавиатура</a></li> + <li><a href="help">Помощь по Lincity</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/rail.xml lincity-ng-2.9~git20150314/data/help/ru/rail.xml --- lincity-ng-2.0/data/help/ru/rail.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/rail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">РельÑÑ‹ (Ð¶ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°)</p> - <p style="hp">Ðа рельÑах можно перевозить больше чем по дорогам. Данный вид загрÑзнÑет чуть больше чем дороги. Однако их ÑтроительÑтво и ремонт дороже. Однако Ñто Ñ…Ð¾Ñ€Ð¾ÑˆÐ°Ñ Ñ†ÐµÐ½Ð°, еÑли вам нужно перевозить много товара, на дальние раÑÑтоÑниÑ.</p> + <p style="htitle">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</p> + <p style="hp">Железные дороги обладают большей пропуÑкной ÑпоÑобноÑтью, чем обычные. Также они производÑÑ‚ чуть меньше загрÑзнений. Однако их ÑтроительÑтво и обÑуживание доÑтаточно дорого. Они оправдывают ÑебÑ, когда Вам надо перевозить большое количеÑтво товаров на дальние раÑÑтоÑниÑ.</p> - <p style="hp">Это рельÑÑ‹</p> - <img src="images/tiles/railud.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="commune">Коммуна</a></li> - <li><a href="pollution">ЗагрÑзнениÑ</a></li> -</Document> + <p style="hp">Это рельÑÑ‹:</p> + <img src="images/tiles/railud.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/recycle.xml lincity-ng-2.9~git20150314/data/help/ru/recycle.xml --- lincity-ng-2.0/data/help/ru/recycle.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Центр переработки</p> - <p style="hp">Used goods produce waste.</p> - <p style="hp">Центр переработки делает из муÑора руду. ТранÑпорт нужно подÑоединÑÑ‚ÑŒ к левому верхнему углу. Ð”Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ требуетÑÑ Ñ€Ð°Ð±Ð¾Ñ‚Ð° и деньги.</p> - <p style="hp">Данный центр дает возможноÑÑ‚ÑŒ получить Ñтабильную Ñкономику, (Ñ‚.е.. не нужно добывать руду) Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ что бы поднÑÑ‚ÑŒ КПД до 100% нужно поÑтроить больше мельниц.</p> - - <p style="hp">Это центр переработки</p> - <img src="images/tiles/recycle-centre.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="goods">Товары</a></li> - <li><a href="ore">Руда</a></li> - <li><a href="transport">ТранÑпорт</a></li> -</Document> + <p style="htitle">Центр по переработке отходов</p> + <p style="hp">Ð”Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка перерабатывает отходы в руду. Ð”Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ центра необходимы рабочие, ÑÐ½ÐµÑ€Ð³Ð¸Ñ (доÑтаточно кВт⋅ч) и деньги. Также он может иÑпользоватьÑÑ Ð´Ð»Ñ Ð¾Ð¿ÑƒÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð»Ð½ÐµÐ½Ð½Ñ‹Ñ… Ñвалок.</p> + <p style="hp">Ð’Ñ‹ можете получить Ñтабильную Ñкономику (когда больше не надо добывать руду и Ñ‚.д.) и при центрах по переработке, работающих не Ñо 100% ÑффективноÑтью, еÑли у Ð’Ð°Ñ ÐµÑÑ‚ÑŒ ветрогенераторы Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿ÐµÐ½Ñации потерь.</p> + + <p style="hp">Это центр по переработке отходов:</p> + <img src="images/tiles/recycle-centre.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/residential.xml lincity-ng-2.9~git20150314/data/help/ru/residential.xml --- lincity-ng-2.0/data/help/ru/residential.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/residential.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,26 +1,36 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Резиденции</p> - <p style="hp">Это то меÑто, где живут люди. Что бы люди жили в резиденциÑÑ…, их нужно кормить (быть в пределах водных мельниц и магазинов/дорог). Так же помогает жизни работауÑтроеноÑÑ‚ÑŒ и товары.</p> - <p style="hp">ЕÑÑ‚ÑŒ 3 вида резиденций: Ñлабо, Ñредние и Ñильно заÑелÑемые поÑтройки. Они имеют разный уровень рождаемоÑти и ÑмертноÑти ÑвÑзанный Ñ Ð½Ð¸Ð¼Ð¸. Это дает возможноÑÑ‚ÑŒ контролировать кол-во наÑелениÑ..</p> - <p style="hp">Ð’ дальнейшей игре вы будите иметь возможноÑÑ‚ÑŒ Ñтроить продвинутые дома.</p> - - <p style="hp">Так выглÑдит Ñлабо заÑелÑÐµÐ¼Ð°Ñ Ð¿Ð¾Ñтройка(продвинутаÑ)</p> - <img src="images/tiles/reslowhi.png" halign="center"/> - <p style="hp">а Ñто её иконка</p> - <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> - <p style="hp">Это дома Ñредней заÑелÑeмоÑти (продвинутые)</p> - <img src="images/tiles/resmedhi.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> - <p style="hp">Это дом выÑокой заÑелÑeмоÑти (продвинутый)</p> - <img src="images/tiles/reshihi.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазины</a></li> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="waterwell">ВодÑные мельници</a></li> -</Document> + <p style="htitle">Жилой дом</p> + <p style="hp">Это то меÑто, где живут люди. Чтобы люди хотели жить в доме, он должен иметь доÑтуп к еде (магазину) и воде (Ñкважине). Также людÑм нужна работа, ÑлектричеÑтво и товары. Дома должны быть Ñоединены Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. Спортивные площадки повышают привлекательноÑÑ‚ÑŒ жилого района, а вот из-за загрÑзнений люди могут уехать.</p> + <p style="hp">Ð’ игре еÑÑ‚ÑŒ 3 вида жилых домов, которые отличаютÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтвом проживающих в них людей. Они имеют разный уровень рождаемоÑти и ÑмертноÑти, что позволит Вам как-то контролировать Ваше наÑеление. Ðаличие больницы неподалёку также влиÑет на рождаемоÑÑ‚ÑŒ и ÑмертноÑÑ‚ÑŒ.</p> + <p style="hp">При доÑтижении некоторого ÑƒÑ€Ð¾Ð²Ð½Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¹, Ð’Ñ‹ Ñможете Ñтроить более Ñовременные дома, даже многоÑтажки.</p> + <p style="hp">Так выглÑдит маленький дом (Ñовременный):</p> + <img src="images/tiles/reslowhi.png" halign="center"/> + + <p style="hp">а Ñто её иконка:</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-lo.png" halign="center"/> + + <p style="hp">Это обычный дом (Ñовременный):</p> + <img src="images/tiles/resmedhi.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-med.png" halign="center"/> + + <p style="hp">Это большой дом (Ñовременный):</p> + <img src="images/tiles/reshihi.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="market">Магазин</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="waterwell">Скважина</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> + <li><a href="farm">Ферма</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="health">Больница</a></li> + <li><a href="cricket">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/river.xml lincity-ng-2.9~git20150314/data/help/ru/river.xml --- lincity-ng-2.0/data/help/ru/river.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/river.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,13 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Речки/Вода</p> - <p style="hp">Речки обычно имеют вход. Они дороги Ð´Ð»Ñ ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ ÑозданиÑ. ЕдинÑÑ‚Ð²ÐµÐ½Ð½Ð°Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð°, можно около них Ñтроить порт.</p> - <p style="hp">ЕÑÑ‚ÑŒ два вида воды. Вода <b>не ÑоединеннаÑ</b> Ñ ÑиÑтемой реки и ÑоединённаÑ. Ð’ начале игры, на Ñлучайно Ñозданной карте, вÑÑ Ð²Ð¾Ð´Ð° ÑвлÑетÑÑ Ñоединённой Ñ Ñ€ÐµÑ‡Ð½Ð¾Ð¹ ÑиÑтемой. Ð”Ñ€ÑƒÐ³Ð°Ñ Ð²Ð¾Ð´Ð°, Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð¼ÐµÑ€Ð°, поÑвлÑетÑÑ, еÑли Ñ€ÑƒÐ´Ð½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° иÑтощена (превращаетÑÑ Ð² воду), и еÑли она находилаÑÑŒ Ñ€Ñдом Ñ Ñ€ÐµÐºÐ¾Ð¹, то она будет иметь Ñоединение Ñ Ñ€ÐµÑ‡Ð½Ð¾Ð¹ ÑиÑтемой.</p> - <p style="hp">Уничтожение реки, Ñто аналогично поÑтройке моÑта. Река ÑÐ¾Ð·Ð´Ð°Ð½Ð½Ð°Ñ Ð½Ð° начальном Ñтапе, вÑегда оÑтаетÑÑ Ñоединённой Ñоединенной между Ñобой.</p> - <p style="hp">Узнать что чаÑÑ‚ÑŒ воды Ñоединен Ñ ÑиÑтемой реки, можно по отметке <b>навигациÑ</b> которую покажет <a href="query">курÑор</a>.</p> - <p style="hp">Электролинии могут передавать ÑлектричеÑтво под 1 зоной реки. Это так же как и передавать под транÑпортом.</p> -</Document> + <p style="htitle">Река/Озеро</p> + <p style="hp">Реки довольно чаÑто будут мешать Вам развивать город. Их уничтожение (закапывание), равно как и поÑтройка моÑтов, очень дороги. ЕдинÑÑ‚Ð²ÐµÐ½Ð½Ð°Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾ÑÑ‚ÑŒ их Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ -- порты должны иметь доÑтуп к реке Ð´Ð»Ñ Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ð¸.</p> + <p style="hp">Помимо рек ÑущеÑтвуют ещё и озёра. Ð’ начале игры на карте еÑÑ‚ÑŒ только реки. Затем, когда, например, когда рудник иÑтощит Ñвои запаÑÑ‹, то при доÑтупе к реке он превратитÑÑ Ð² реку, а иначе -- в озеро.</p> + <p style="hp">ЕÑли Ð’Ñ‹ уничтожите какой-то учаÑток реки, обе Ñтороны, которые были её берегами, вÑÑ‘ равно оÑтанутÑÑ Ñ‡Ð°Ñтью речной ÑиÑтемы.</p> + <p style="hp">ЕÑли Ð’Ñ‹ Ñтроите транÑпортную ÑиÑтему через реку, там поÑвитÑÑ Ð¼Ð¾ÑÑ‚.</p> + <p style="hp">УчаÑток реки, который однажды был Ñоединён Ñ Ñ€ÐµÑ‡Ð½Ð¾Ð¹ ÑиÑтемой, никогда не превратитÑÑ Ð² озеро. Узнать, что чаÑÑ‚ÑŒ воды ÑвлÑетÑÑ Ñ€ÐµÐºÐ¾Ð¹, можно по отметке <b>ÑудоходÑтво</b>, которую покажет <a href="query">курÑор</a>.</p> + <p style="hp">ЛЭП могут передавать Ñнергию через один учаÑток реки.</p> + + <p style="hsubtitle">См. ещё:</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/road.xml lincity-ng-2.9~git20150314/data/help/ru/road.xml --- lincity-ng-2.0/data/help/ru/road.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,16 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Дороги</p> - <p style="hp">Дороги перевозÑÑ‚ больше чем грунтовки, но не так много, как рельÑÑ‹. Дороги загрÑзнÑÑŽÑ‚ Ñреду больше чем рельÑÑ‹. Они дешевле в поÑтройке и обÑлуживании чем рельÑÑ‹.</p> - - <p style="hp">Это дорога</p> - <img src="images/tiles/roadud.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="commune">Коммуна</a></li> - <li><a href="pollution">ЗагрÑзнениÑ</a></li> -</Document> + <p style="htitle">Дорога</p> + <p style="hp">Дороги перевозÑÑ‚ больше товаров, чем грунтовки, но не так много, как железные дороги. Также они производÑÑ‚ больше загрÑзнений, чем железные дороги, однако их ÑтроительÑтво и обÑлуживание дешевле -- должен же быть зоть какой-то повод иÑпользовать их.</p> + + <p style="hp">Это дорога:</p> + <img src="images/tiles/roadud.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/rocket.xml lincity-ng-2.9~git20150314/data/help/ru/rocket.xml --- lincity-ng-2.0/data/help/ru/rocket.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,21 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Площадки Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка ракет</p> - <p style="hp">Ракеты могут отправить ваше наÑеление в другой мир, и выиграть игру.</p> - <p style="hp">Ð’Ñ‹ должны 5 раз подрÑд удачно запуÑтить ракеты, перед тем, как вы Ñможете Ñвакуировать людей. Одна ÑƒÐ´Ð°Ñ‡Ð½Ð°Ñ Ð²Ñ‹ увозите 1000 человек.</p> - <p style="hp">ЕÑли хоть и запуÑк произошёл неудачно, то Ñвакуировать людей можно будет только поÑле 5-ти уÑпешных запуÑков.</p> - <p style="hp">Ðаучный уровень уÑтанавливает вероÑтноÑÑ‚ÑŒ уÑпешного запуÑка ракеты. ВозможноÑÑ‚ÑŒ запуÑка поÑвлÑетÑÑ ÐºÐ¾Ð³Ð´Ð° научный уровень доÑтигает 80% тогда вы имеете вÑего 4 из 5 уÑпешных запуÑков (80% удачи). 100% или более дает абÑолютную вероÑтноÑÑ‚ÑŒ уÑпешного запуÑка. (Правда из <i>первых 5</i> ракет могут быть неудачи.) С одной площадки отправить можно не более одной ракеты.</p> - <p style="hp">Ракетный площадки не нуждаютÑÑ Ð² Ñоединении Ñ Ñ‚Ñ€Ð°Ð½Ñпортом. Ð’Ñе нужные материалы они могут взÑÑ‚ÑŒ из магазинов, которые находÑÑ‚ÑÑ Ð² зоне дейÑтвиÑ. ПоÑтройка иÑпользует большое количеÑтво Ñтали, товаров работы и денег, Ð´Ð»Ñ Ð¿Ð¾Ñтройки. Когда ракета поÑтроена поÑвитьÑÑ Ñообщение о том хотите ли вы запуÑтить её, еÑли вы откажитеÑÑŒ то вы Ñможете запуÑтить её нажав на неё. Ð’Ñ‹ можете держать любое количеÑтво ракет.</p> - <p style="hp">Держать ракету дорого.</p> - <p style="hp">Это площадка Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка ракет</p> - <img src="images/tiles/rocket5.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазины</a></li> - <li><a href="ore">Руда</a></li> - <li><a href="commune">Комуны</a></li> - <li><a href="steel">Сталь</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <p style="htitle">Ð¡Ñ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей</p> + <p style="hp">КоÑмичеÑкие корабли могут отправить Ваше наÑеление в другой мир, и игра закончитÑÑ.</p> + <p style="hp">Перед началом Ñвакуации людей Вам потребуетÑÑ Ñовершить пÑÑ‚ÑŒ уÑпешных Ñтартов без людей. Каждое уÑпешное отправление Ñ Ð»ÑŽÐ´ÑŒÐ¼Ð¸ позволÑет отправить в коÑÐ¼Ð¾Ñ 1000 человек.</p> + <p style="hp">ВероÑтноÑÑ‚ÑŒ уÑпешного запуÑка коÑмичеÑкого ÐºÐ¾Ñ€Ð°Ð±Ð»Ñ Ð½Ð°Ð¿Ñ€Ñмую завиÑит от ÑƒÑ€Ð¾Ð²Ð½Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкого развитиÑ. Это означает, что еÑли Ваш технологичеÑкий уровень 80%, то ÑˆÐ°Ð½Ñ Ð½Ð° уÑпех -- 4 к 5. ЕÑли же технологичеÑкий уровень 100% или больше, каждый запуÑк будет уÑпешным. Ð”Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ коÑмичеÑкого ÐºÐ¾Ñ€Ð°Ð±Ð»Ñ Ð’Ð°Ð¼ придётÑÑ Ñтроить отдельную Ñтартовую площадку.</p> + <p style="hp">Стартовую площадку не требуетÑÑ ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли она находитÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°. Ð”Ð»Ñ ÐµÑ‘ ÑтроительÑтва требуетÑÑ Ð±Ð¾Ð»ÑŒÑˆÐ¾Ðµ количеÑтво Ñтали, товаров, рабочей Ñилы и денег. ПоÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва Ð’Ñ‹ получите Ñообщение Ñ Ð²Ð¾Ð¿Ñ€Ð¾Ñом, когда Ð’Ñ‹ хотите запуÑтить коÑмичеÑкий корабль. ЕÑли Ð’Ñ‹ решите отложить запуÑк, потом Ð’Ñ‹ Ñможете Ñовершить его, нажав на поÑтроенной площадке. Ð’ городе может быть Ñколько угодно коÑмичеÑких кораблей, ожидающих запуÑк.</p> + <p style="hp">Когда коÑмичеÑкий корабль на Ñтартовой площадке поÑтроен, но не запущен, Ð´Ð»Ñ ÐµÑ‘ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ð¾Ð»ÑŒÑˆÐµ не требуютÑÑ Ñталь, товары или рабочие, однако Ñодержание такой площадки вÑÑ‘ ещё будет Ñтоить Вам денег.</p> + + <p style="hp">Это ÑÑ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей:</p> + <img src="images/tiles/rocket5.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="market">Магазин</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="evacuate">ОпуÑтошение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/school.xml lincity-ng-2.9~git20150314/data/help/ru/school.xml --- lincity-ng-2.0/data/help/ru/school.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/school.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,20 +1,23 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Школы</p> - <p style="hp">Школам нужна работа и товары, Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ что бы Ñоздавать технологии, которые они могут применÑÑ‚ÑŒ в универÑитетах. They use far fewer jobs and goods than universities, but produce far fewer tech points. Ðужно 4 или 5 школ, Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð³Ð¾ универÑитета. It is often (but not always) better to put a university in.</p> - <p style="hp">Школам не нужно подÑоединÑÑ‚ÑŒ к транÑпорту. Ð’Ñе что нужно они могут взÑÑ‚ÑŒ из магазина.</p> - <p style="hp">Школы ÑтоÑÑ‚ денег, что бы работать. Ð’Ñ‹ видите общую ÑтоимоÑÑ‚ÑŒ ÑÐ¾Ð´ÐµÑ€Ð¶Ð°Ð½Ð¸Ñ Ð²Ñех школ за поÑледний год.</p> - <p style="hp">ЕÑли изображение поÑтроенной школы изменÑÑ‚ÑÑ, то она работает.</p> - - <p style="hp">Это школа</p> - <img src="images/tiles/school0.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазины</a></li> - <li><a href="university">УниверÑитеты</a></li> - <li><a href="transport">ТранÑпорт</a></li> + <p style="htitle">Школа</p> + <p style="hp">Ðналогично универÑитетам, школам требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ и товары Ð´Ð»Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¹, Ñ…Ð¾Ñ‚Ñ Ð¸ в гораздо меньшем количеÑтве. СоответÑтвенно, технологии также развиваютÑÑ Ð½Ðµ так быÑтро. У Ð’Ð°Ñ ÐµÑÑ‚ÑŒ выбор: поÑтроить четыре-пÑÑ‚ÑŒ школ или же один универÑитет. Чаще (но не вÑегда!) выгоднее Ñтроить универÑитет.</p> + <p style="hp">Школы не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, однако они должны раÑполагатьÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°.</p> + <p style="hp">Содержание школы Ñтоит денег. Ð’Ñ‹ можете увидеть общую Ñумму затрат на школы за прошлый год в окне финанÑов.</p> + <p style="hp">Ðажав на школу, Ð’Ñ‹ можете получить информацию о её работе.</p> + + <p style="hp">Это школа:</p> + <img src="images/tiles/school0.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="university">УниверÑитет</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> <li><a href="goods">Товары</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <li><a href="jobs">Рабочие</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/slow.xml lincity-ng-2.9~git20150314/data/help/ru/slow.xml --- lincity-ng-2.0/data/help/ru/slow.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/slow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,12 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ÐœÐµÐ´Ð»ÐµÐ½Ð½Ð°Ñ ÑкороÑÑ‚ÑŒ</p> - <img src="images/gui/speed/normal.png"/> - <p style="hp">Это кнопка медленной ÑкороÑти. Она уÑтанавливает ÑкороÑÑ‚ÑŒ игры на медленной ÑкороÑти. Ðа Ñлабых машинах вы можете не заметить Ñффекта.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="medium">СреднÑÑ</a></li> - <li><a href="fast">БыÑтраÑ</a></li> -</Document> + <p style="htitle">ÐÐ¸Ð·ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</p> + <img src="images/gui/speed/normal.png" halign="center"/> + <p style="hp">Это кнопка низкой ÑкороÑти. Она запуÑкает игру на минимальной ÑкороÑти. Ðа Ñлабых машинах Ð’Ñ‹ можете не заметить Ñффекта.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="pause">Пауза</a></li> + <li><a href="medium">СреднÑÑ ÑкороÑÑ‚ÑŒ</a></li> + <li><a href="fast">Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/steel.xml lincity-ng-2.9~git20150314/data/help/ru/steel.xml --- lincity-ng-2.0/data/help/ru/steel.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Сталь</p> - <p style="hp">Сталь в большинÑтве Ñвоем ÑоздаетÑÑ Ñ‚Ñжёлой индуÑтрией. Ð’Ñ‹ должны иметь ÑоответÑтвующий научный уровень, что бы делать Ñталь. Перед Ñтом только коммуны Ñмогут добывать вам Ñталь. Комуны делают очень малое кол-во Ñтали ( из руды ).</p> - <p style="hp">Сталь иÑпользуетÑÑ ÐºÑƒÐ·Ð½ÐµÑ†Ð°Ð¼Ð¸ Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, что бы делать товары. Сталь иÑпользуетÑÑ Ð»ÐµÐ³ÐºÐ¾Ð¹ индуÑтрией ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð´ÐµÐ»Ð°ÐµÑ‚ товары, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Ñталь, гораздо Ñффективнее.</p> - <p style="hp">Ракеты иÑпользуют много Ñтали, Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, что бы Ñделать площадку.</p> - <p style="hp">РельÑÑ‹ так же иÑпользуют Ñтать Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¸.</p> - <p style="hp">Ð¡Ñ‚Ð°Ð»ÑŒÐ½Ð°Ñ Ð¿Ñ€Ð¾Ð´ÑƒÐºÑ†Ð¸Ñ Ð¾Ð±Ð»Ð°Ð³Ð°ÐµÑ‚ÑÑ Ð½Ð°Ð»Ð¾Ð³Ð¾Ð¼.</p> + <p style="hp">Сталь производитÑÑ Ð² оÑновном Ñ‚Ñжёлой промышленноÑтью (металлургичеÑкими заводами). ПоÑтроить их Ð’Ñ‹ Ñможете, только доÑтигнув определённого технологичеÑкого уровнÑ. До Ñтого единÑтвенным иÑточником Ñтали (в небольшом количеÑтве) ÑвлÑÑŽÑ‚ÑÑ ÐºÐ¾Ð¼Ð¼ÑƒÐ½Ñ‹, которые производÑÑ‚ Ñталь из руды.</p> + <p style="hp">Сталь иÑпользуетÑÑ ÐºÑƒÐ·Ð½Ð¸Ñ†Ð°Ð¼Ð¸ и лёгкой промышленноÑтью Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð¾Ð²Ð°Ñ€Ð¾Ð². Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ может обойтиÑÑŒ и без Ñтали, однако в таком Ñлучае её производительноÑÑ‚ÑŒ будет куда меньше.</p> + <p style="hp">Ð”Ð»Ñ Ð¿Ð¾Ñтройки коÑмичеÑких кораблей и Ñтартовых площадок требуетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ много Ñтали.</p> + <p style="hp">Железные дороги также иÑпользуют Ñталь Ð´Ð»Ñ Ð¾Ð±ÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¿ÑƒÑ‚ÐµÐ¹.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="commune">Комуны</a></li> - <li><a href="blacksmith">Кузницы</a></li> - <li><a href="goods">Товары</a></li> - <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="industryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="rail">РельÑÑ‹</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="blacksmith">Кузница</a></li> + <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод)</a></li> + <li><a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a></li> + <li><a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/substation.xml lincity-ng-2.9~git20150314/data/help/ru/substation.xml --- lincity-ng-2.0/data/help/ru/substation.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,20 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ПодÑтанции</p> - <p style="hp">ПодÑтанции берут ÑлектричеÑтво Ñ Ð›Ð­ÐŸ и раÑпределÑÑŽÑ‚ его в зонах покрытиÑ. Ð’Ñ‹ можете убедитьÑÑ, что ÑлектричеÑтво подÑоединено, кликнув курÑором, к примеру, на резиденциÑ, потом поÑмотрев на миникарту.</p> - - <p style="hp">Это подÑтанциÑ</p> - <img src="images/tiles/substation-G.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> - - <p style="hsubtitle">Ñм ещё:</p> - <li><a href="powerline">Электролинии</a></li> - <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> - <li><a href="commune">Коммуна</a></li> - <li><a href="steel">Сталь</a></li> - <li><a href="jobs">Работа</a></li> -</Document> + <p style="htitle">ПодÑтанциÑ</p> + <p style="hp">ПодÑтанции получают ÑлектричеÑтво Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ЛЭП и раÑпределÑÑŽÑ‚ его по округе. Зоны Ñнергетики позволÑÑŽÑ‚ увидеть, каким облаÑÑ‚Ñм требуетÑÑ Ð±Ð¾Ð»ÑŒÑˆÐµ Ñнергии. Ð”Ð»Ñ Ñвоего Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð´ÑтанциÑм не требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ.</p> + + <p style="hp">Это подÑтанциÑ:</p> + <img src="images/tiles/substation-G.png" halign="center"/> + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="powerline">ЛЭП</a></li> + <li><a href="windmill">Ветрогенератор</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/sustain.xml lincity-ng-2.9~git20150314/data/help/ru/sustain.xml --- lincity-ng-2.0/data/help/ru/sustain.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,34 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Окно Ñтабилизированного развитиÑ</p> - <p style="hp">Это окно показывает шеÑÑ‚ÑŒ цветных линий. Когда вÑе линии дотÑнутьÑÑ Ð´Ð¾ правого краÑ, тогда вы имеете Ñтабильную Ñкономику.</p> - <li> - <span color="orange">Мнл</span> (оранжеваÑ) вы не занимаетеÑÑŒ никакой добычей руды, или ÑƒÐ³Ð»Ñ - и не накапливаете муÑор на помойках. - </li> - <li> - <span color="gray">ЭкÑ</span> (Ñерый) вы не ÑкÑпортируете и не импортируете. - </li> - <li> - <span color="green">Днг</span> (зелёный) в Ð²Ð°Ñ Ð¿Ð¾Ð»Ð¾Ð¶Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ð¹ или нулевой баланÑ, - this means you cannot build anything but the cheapest of areas. - </li> - <li> - <span color="blue">ÐÑл</span> (Ñиний) ваше наÑеление Ñтабилизировано - изменение разрешено не более чем на 2% за 180 лет (of the value when the 180 year count started). - If it goes outside of - this band, the new population will be the new value and the year count - will be set back to zero. Also, your population must be at least 5000. - </li> - <li> - <span color="yellow">ÐУ</span> (желтый) ваш технологичеÑкий уровень прибавлÑетÑÑ - или падает до нулÑ, еÑли произошли очень малые изменениÑ. ЕÑли научный уровень упал хоть на 1%, за год - то уровень падает до нулÑ. Так же научный уровень должен быть больше 50%. - </li> - <li> - <span color="red">Пжк</span> (КраÑный) Ð’Ñе Ð·Ð´Ð°Ð½Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ‹ защищатьÑÑ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ð¼Ð¸. - The following areas do *not* have to have fire cover: monuments, - ore mines, power lines and rockets. - </li> - <p style="hp">Ð’Ñ€ÐµÐ¼Ñ Ð´Ð»Ñ Ñтабильной Ñкономики (в годах): Мнл=180 ЭкÑ=180 Днг=60 ÐÑл=60 ÐУ=120 Пжк=60</p> -</Document> + <p style="htitle">Окно доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑƒÑтойчивой Ñкономики</p> + <p style="hp">Это окно показывает шеÑÑ‚ÑŒ цветных линий. Когда вÑе линии дотÑнутÑÑ Ð´Ð¾ правого краÑ, Ð’Ñ‹ получите уÑтойчивую Ñкономику и выиграете игру!</p> + <li><span color="orange">Доб</span> (оранжевый) Ð’Ñ‹ не занимаетеÑÑŒ добычей руды или ÑƒÐ³Ð»Ñ Ð¸ не накапливаете муÑор на Ñвалках.</li> + <li><span color="gray">Торг</span> (Ñерый) Ð’Ñ‹ не ÑкÑпортируете и не импортируете товары.</li> + <li><span color="green">Денег</span> (зелёный) Ð‘Ð°Ð»Ð°Ð½Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ города Ñтабильный или раÑтущий, Ñто означает, что Ð’Ñ‹ не можете Ñтроить ничего, кроме Ñамых дешёвых зданий.</li> + <li><span color="blue">ÐаÑел</span> (Ñиний) Ваше наÑеление поÑтоÑнно в пределах 2% за 180 лет. ЕÑли Ð’Ñ‹ выйдите за Ñти границы, за иÑходное количеÑтво людей будет взÑто текущее, а отÑчёт времени начнётÑÑ Ñ Ð½Ð°Ñ‡Ð°Ð»Ð°. Также в городе должно проживать не менее 5000 человек.</li> + <li><span color="yellow">Ðаука</span> (жёлтый) Ваш технологичеÑкий уровень изменÑетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ незначительно. ЕÑли он упал более чем на 1%, отÑчёт времени начнётÑÑ Ñ Ð½Ð°Ñ‡Ð°Ð»Ð°. Уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ быть не менее 50%.</li> + <li><span color="red">Огонь</span> (краÑный) ВеÑÑŒ Ð·Ð´Ð°Ð½Ð¸Ñ Ð² городе должны быть покрыты пожарными ÑтанциÑми, кроме Ñледующих: монументы, рудники, ЛЭП, транÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема и площадки Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка коÑмичеÑких кораблей.</li> + <p style="hp">Каждый параметр должен оÑтаватьÑÑ Ñтабильным на протÑжении некоторого времени (в годах):</p> + <li>Доб =180</li> + <li>Торг =180</li> + <li>Денег=60</li> + <li>ÐаÑел=60</li> + <li>Ðаука=120</li> + <li>Огонь=60</li> + + <p style="hsubtitle">См. ещё:</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tech-level.xml lincity-ng-2.9~git20150314/data/help/ru/tech-level.xml --- lincity-ng-2.0/data/help/ru/tech-level.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tech-level.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">Ðаучный уровень</p> - <p style="hp">Ðаучный уровень уÑтанавливает кол-во предметов, которое вы можете Ñтроить и их ÑффективноÑÑ‚ÑŒ работы.</p> - <p style="hp">Ð”Ð»Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ðµ уровнÑ, в должны Ñтроить (и Ñнабжать необходимыми реÑурÑами) Монументы, Школы и УниверÑитеты.</p> - <p style="hp">Когда ваш уровень очень низок, вы можете Ñтроить только Монументы. Когда ваш уровень немного подраÑтет, вы <i>изобретаете</i> школы. Школы лучше поднимают научный уровень, чем монументы.</p> - <p style="hp">Когда ваш научный уровень поднимаетÑÑ Ð²Ñ‹ÑˆÐµ, вы <i>изобретаете</i> УниверÑитеты. Они ещё лучше поднимают научный уровень, но иÑпользует <b>очень</b> много реÑурÑов.</p> - <p style="hp">Чем выше технологии, тем проще их потерÑÑ‚ÑŒ. ИмеетÑÑ Ð²Ð²ÐµÐ´Ñƒ что чем выше вы хотите технологии, тем больше школ и универÑитетов вам надо.</p> - <p style="hp">Также знайте, if for some reason you need to take out, say, a university or two (or they are suddenly starved of resources) your tech level is likely to start <b>falling</b>.</p> - <p style="hp">Процент того что ваша ракета будет запущена уÑпешно равнÑетÑÑ Ð²Ð°ÑˆÐµÐ¼Ñƒ научному уровню.</p> + <p style="htitle">Уровень технологичеÑкого развитиÑ</p> + <p style="hp">ТехнологичеÑкий уровень определÑет, какие Ð·Ð´Ð°Ð½Ð¸Ñ Ð’Ñ‹ можете Ñтроить, а также влиÑет на ÑффективноÑÑ‚ÑŒ некоторых процеÑÑов.</p> + <p style="hp">Ð”Ð»Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ðµ ÑƒÑ€Ð¾Ð²Ð½Ñ Ð’Ñ‹ должны Ñтроить (и Ñнабжать необходимыми реÑурÑами) монументы, школы и универÑитеты.</p> + <p style="hp">Пока Ваш технологичеÑкий уровень очень низкий, Ð’Ñ‹ можете Ñтроить только монументы. Через некоторое Ð²Ñ€ÐµÐ¼Ñ Ð¿Ð¾Ñле поÑтройки неÑкольких монументов Вам Ñтанут доÑтупны школы. Школы позволÑÑŽÑ‚ развивать технологии быÑтрее, чем монументы.</p> + <p style="hp">Когда Ваш технологичеÑкий уровень Ñтанет ещё выше, Ð’Ñ‹ Ñможете Ñтроить универÑитеты. Они ÑпоÑобны развивать технологии ещё быÑтрее, однако требуют значительное количеÑтво реÑурÑов.</p> + <p style="hp">Чем больше технологий, тем проще их потерÑÑ‚ÑŒ. ИмеетÑÑ Ð² виду, что чем более выÑокий уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð’Ñ‹ хотите, тем больше школ и универÑитетов Вам придётÑÑ Ð¿Ð¾Ñтроить.</p> + <p style="hp">Также знайте, что еÑли по какой-то причине Вам придётÑÑ Ð¿Ñ€Ð¸Ð¾Ñтановить работу одного-двух универÑитетов (или они вдруг недополучат реÑурÑов Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹), Выш технологичеÑкий уровень начнёт падать.</p> + <p style="hp">ВероÑтноÑÑ‚ÑŒ уÑпешного запуÑка коÑмичеÑкого ÐºÐ¾Ñ€Ð°Ð±Ð»Ñ Ð½Ð°Ð¿Ñ€Ñмую завиÑит от технологичеÑкого уровнÑ.</p> - <p style="hsubtitle">См ещё:</p> - <li><a href="monument">Монументы</a></li> - <li><a href="school">Школы</a></li> - <li><a href="university">УниверÑитеты</a></li> - <li><a href="rocket">Ракетные площадки</a></li> -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="monument">Монумент</a></li> + <li><a href="school">Школа</a></li> + <li><a href="university">УниверÑитет</a></li> + <li><a href="rocket">Ð¡Ñ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tip.xml lincity-ng-2.9~git20150314/data/help/ru/tip.xml --- lincity-ng-2.0/data/help/ru/tip.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,16 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">МуÑорки </p> - <p style="hp">Собирают муÑор. ЕÑли вы Ñоберёте много муÑора в магазинах, они могут его Ñжечь. От Ñтого многие жители начинают Ñмотреть Ñ Ð¾Ð¿Ð°Ñкой. (This makes quite a lot of pollution so you should be wary of letting rubbish accumulate).</p> - <p style="hp">МуÑорки заполнÑÑŽÑ‚ÑÑ Ñ ÐºÑ€Ð°Ñ, и потом к центру и вверх.</p> - <p style="hp">К муÑоркe нужно ÑоединÑÑ‚ÑŒ транÑпорт к верхнему левому углу.</p> - <p style="hp">Что бы увидеть, что муÑорки работают, надо нажать по ним курÑором, и поÑмотреть в мини окно. Так же при заполнении менÑетÑÑ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ðµ.</p> - - <p style="hp">Это муÑорка</p> - <img src="images/tiles/tip0.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазины</a></li> -</Document> + <p style="htitle">Свалка</p> + <p style="hp">Свалка ÑвлÑетÑÑ Ð¼ÐµÑтом, куда ÑкладируетÑÑ Ð¼ÑƒÑор. ЕÑли в магазине его будет Ñлишком много, Ñотрудники могут его Ñжечь. Это Ñильно загрÑзнит окружающую Ñреду, поÑтому Ð’Ñ‹ должны ответÑтвенно отноÑитьÑÑ Ðº Ñборке и переработке муÑора.</p> + <p style="hp">По мере Ð½Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¼ÑƒÑором Ñвалка превращаетÑÑ Ð² холм, который зараÑÑ‚Ñ‘Ñ‚ травой поÑле полного Ð·Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ñвалки.</p> + <p style="hp">МуÑор Ñо Ñвалок может быть иÑпользован в коммунах, Ñлектрифицированных фермах и центрах по переработке отходов.</p> + + <p style="hp">Это Ñвалка:</p> + <img src="images/tiles/tip0.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="waste">МуÑор</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="commune">Коммуна</a></li> + <li><a href="farm">Ферма</a></li> + <li><a href="recycle">Центр по переработке отходов</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/track.xml lincity-ng-2.9~git20150314/data/help/ru/track.xml --- lincity-ng-2.0/data/help/ru/track.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/track.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,15 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Грунтовка</p> - <p style="hp">Грунтовки проÑтейший и дешёвый вид транÑпорта. У неё очень Ð¼Ð°Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¿ÑƒÑÐºÐ½Ð°Ñ ÑпоÑобноÑÑ‚ÑŒ. Ðо зато она не загрÑзнÑет.</p> - - <p style="hp">Это грунтовка</p> - <img src="images/tiles/trackud.png" halign="center"/> - <p style="hp">а Ñто иконка</p> - <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> - - <p style="hsubtitle">См ещё:</p> - <li><a href="transport">ТранÑпорт</a></li> - <li><a href="commune">Коммуны</a></li> -</Document> + <p style="hp">Грунтовки -- проÑтейший и Ñамый дешёвый вид транÑпортной ÑиÑтемы. Они обладают Ñамой малой пропуÑкной ÑпоÑобноÑтью, зато Ñовершенно не загрÑзнÑÑŽÑ‚ окружающую Ñреду.</p> + + <p style="hp">Это грунтовка:</p> + <img src="images/tiles/trackud.png" halign="center"/> + + <p style="hp">а Ñто иконка:</p> + <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/transport.xml lincity-ng-2.9~git20150314/data/help/ru/transport.xml --- lincity-ng-2.0/data/help/ru/transport.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,35 +1,21 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ТранÑпорт</p> - <p style="hp">СущеÑтвует три типа транÑпорта: грунтовка, дороги и рельÑÑ‹.</p> - <p style="hp">Так же еÑÑ‚ÑŒ четвертый тип, Ñто "прыгающий", он иÑпользуетÑÑ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°Ð¼Ð¸. ОблаÑÑ‚ÑŒ дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð² очень Ð½ÐµÐ±Ð¾Ð»ÑŒÑˆÐ°Ñ and will not be referred to as transport again. Однако, он очень важный, в общем читайте про <a href="market"> магазины</a>.</p> + <p style="htitle">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</p> + <p style="hp">СущеÑтвует три типа транÑпортных ÑиÑтем: грунтовка, дорога и Ð¶ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°.</p> + <p style="hp">Так же еÑÑ‚ÑŒ четвертый тип, Ñто "зона дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð²". ОблаÑÑ‚ÑŒ дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð² очень небольшаÑ, в Ñправочной информации она обычно фигурирует отдельно от транÑпортных ÑиÑтем. Однако то очень важное понÑтие, поÑтому перечитайте Ñправку про <a href="market">магазины</a>.</p> + <p style="hp">Грунтовки, дороги и железные дороги иÑпользуютÑÑ Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½Ñпортировки еды, рабочих, товаров, углÑ, руды, Ñтали и муÑора; в общем, любые виды товаров Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ Ð·Ð° иÑключением МВт⋅ч (которые передаютÑÑ Ð¿Ð¾ ЛЭП). ОбÑзательно должна ÑущеÑтвовать ÑвÑзь между магазинами, ÑвÑзь Ñо зданиÑми, раÑположенными вне зоны дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð² (Ñ…Ð¾Ñ‚Ñ Ð² оÑновном такой план Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð³Ð¾Ñ€Ð¾Ð´Ð° -- Ð¿Ð»Ð¾Ñ…Ð°Ñ Ð·Ð°Ñ‚ÐµÑ).</p> + <p style="hp">Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÑÐµÑ‡ÐµÐ½Ð¸Ñ Ñ€ÐµÐºÐ¸ проÑто Ñтройте транÑпортную ÑиÑтему через реку -- так Ð’Ñ‹ поÑтроите моÑÑ‚. СтроительÑтво моÑтов обходитÑÑ Ð´Ð¾Ñ€Ð¾Ð¶Ðµ, чем ÑтроительÑтво обычной транÑпортной ÑиÑтемы.</p> + <p style="hp">ОбÑлуживание дорог и железных дорог требует ежегодных вложений, также они загрÑзнÑÑŽÑ‚ окружающую Ñреду (оÑобенно еÑли транÑпортируют много муÑора).</p> + <p style="hp">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема закруглÑетÑÑ Ð½Ð° здание, еÑли правильно подÑоединена.</p> - <p style="hp">Грунтовки, дороги и рельÑÑ‹ перевозÑÑ‚ еду, работу, товары, уголь, руду, Ñталь и муÑор. Transport between markets, transport for buildings out of range of a market (this is generally a bad idea) and transport for building that explicitely need it:</p> - <li>Коммунам нужен транÑпорт</li> - <li>Легкой индуÑтрии, угольным шахтам, помойкам, портам, рудным шахтам, Ñ‚Ñжёлой индуÑтрии и центрам переработки <b>необходимым</b> Ñоединение Ñ Ñ‚Ñ€Ð°Ð½Ñпортом в левом верхнем углу. ЕÑли вы правильно Ñоединили, транÑпорт "изогнётÑÑ" в Ñторону поÑтройки.</li> - <li>К угольным ÑтанциÑм, Ñ Ð»ÐµÐ²Ð¾Ð¼ углом ÑоединÑетÑÑ Ð›Ð­ÐŸ, по Ñтому транÑпорт нужно ÑоединÑÑ‚ÑŒ чуть "ниже".</li> - <p style="hp">К примеру Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ ÑоединÑÑ‚ÑŒÑÑ Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð¾Ð¹, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¸Ð´ÐµÑ‚ на угольную шахту, а рельÑÑ‹ ÑоединÑÑ‚ÑŒÑÑ Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼Ð¸ реÑурÑами из магазина, и рудными шахтами.</p> - - <p style="hp">Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÑÐµÑ‡ÐµÐ½Ð¸Ñ Ñ€ÐµÐº транÑпортом, вам нужно уничтожить реку и поÑтроить дорогу, грунтовку или рельÑÑ‹ в Ñтом проеме. Уничтожение реки понимайте как ÑтроительÑтво через него моÑта. Это будет Ñтоить Ð´Ð»Ñ Ð²Ð°Ñ Ð¾Ñ‡ÐµÐ½ÑŒ много денег, потому что уничтожение воды очень дорогоÑтоÑщее занÑтие.</p> - - <p style="hp">Дороги и рельÑÑ‹ требуют ежегодных взноÑов (Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑ€Ð¶ÐºÐ¸) и загрÑзнÑÑŽÑ‚ (причем значительнее, еÑли муÑора накапливаетÑÑ Ñлишком много).</p> - - <p style="hsubtitle">См ещё:</p> + <p style="hsubtitle">См. ещё:</p> <li><a href="track">Грунтовка</a></li> <li><a href="road">Дорога</a></li> - <li><a href="rail">РельÑÑ‹</a></li> - - <li><a href="commune">Коммуны</a></li> - <li><a href="coalmine">Угольные шахты</a></li> - <li><a href="powercoal">Угольные ÑлектроÑтанции</a></li> - <li><a href="tip">МуÑорки</a></li> - <li><a href="recycle">Центры переработки</a></li> - <li><a href="oremine">Шахты руды</a></li> - <li><a href="industryl">Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ</a></li> - <li><a href="port">Порты</a></li> - - <li><a href="finance">ФинанÑовое окно</a></li> - <li><a href="msb-transport">ТранÑпортные и магазинные зоны</a></li> - -</Document> + <li><a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="powerline">ЛЭП</a></li> + <li><a href="commodities">Товары потреблениÑ</a></li> + <li><a href="finance">Окно финанÑов</a></li> + <li><a href="msb-transport">Зоны транÑпорта</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tutorial-advanced.xml lincity-ng-2.9~git20150314/data/help/ru/tutorial-advanced.xml --- lincity-ng-2.0/data/help/ru/tutorial-advanced.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tutorial-advanced.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Продвинутые функции</p> -<p style="hsubtitle">Магазины и транÑпорт</p> -<p style="hp">Двойное нажатие на магазин открывает окно. Это окно ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ <b>обмена магазина Ñ Ñ‚Ñ€Ð°Ð½Ñпортом</b>. </p> -<li>покупка Ñто то что покупает магазин у транÑпорта </li> -<li>продажа Ñто передача оппонентам. </li> + <p style="htitle">Продвинутые функции</p> -<p style="hp">Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¸ÑпользуетÑÑ Ñ€ÐµÐ´ÐºÐ¾, обычно Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ ÐºÐ°ÐºÐ¸Ñ… либо Ñобытий. </p> - -<p style="hsubtitle">Ð¡Ð¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñтабилизации</p> -<p style="hp">Ðа четвертой вкладке мини окна показываетÑÑ ÑоÑтоÑние Ñтабилизированной Ñкономики.</p> -<p style="hp">Очень рекомендуетÑÑ ÑохранÑÑ‚ÑŒ игру, перед тем, как вы оÑтавлÑете игру, Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, что бы добитьÑÑ Ñтабильного ÑтатуÑа. ЕÑли что-то пойдет не так (например голодание) вы можете запуÑтить игру Ñ Ð¼ÐµÑта ÑохранениÑ.  :-) </p> -<p style="hp">Смотрите на запаÑÑ‹ магазинов (мини окно ) Ñто предотвращает большие проблемы. ПериодичеÑки Ñмотрите на ECO в мини окне, Ñтого должно быть доÑтаточно. </p> - -<li>Совет: ОÑтерегайтеÑÑŒ хибар и муÑора в магазинах... </li> -<p style="hp"></p> -</Document> + <p style="hsubtitle">Магазины и транÑпортные ÑиÑтемы</p> + <p style="hp">Двойное нажатие на магазине открывает окно ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ <b>обмена магазина Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой</b>.</p> + <li>покупка -- что покупает магазин через транÑпортную ÑиÑтему</li> + <li>продажа -- что продаёт магазин через транÑпортную ÑиÑтему</li> + <p style="hp">Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¸ÑпользуетÑÑ Ñ€ÐµÐ´ÐºÐ¾, обычно Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ ÐºÐ°ÐºÐ¸Ñ…-либо Ñобытий.</p> + <p style="hsubtitle">УÑтойчивое развитие</p> + <p style="hp">Ð§ÐµÑ‚Ð²ÐµÑ€Ñ‚Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° миниокна показывает ÑоÑтоÑние уÑтойчивого развитиÑ.</p> + <p style="hp">ÐаÑтоÑтельно рекомендуетÑÑ ÑохранÑÑ‚ÑŒ игру перед тем, как Ð’Ñ‹ оÑтавлÑете игру на долгое Ð²Ñ€ÐµÐ¼Ñ Ð² ожидании доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑоÑтоÑÐ½Ð¸Ñ ÑƒÑтойчивого развитиÑ. ЕÑли в процеÑÑе Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ ÑлучитÑÑ Ñ‡Ñ‚Ð¾-нибудь плохое (например, вÑеобщее голодание), Ð’Ñ‹ Ñможете перезапуÑтитьÑÑ Ñ Ð¼ÐµÑта ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¸ предпринÑÑ‚ÑŒ какие-либо дейÑтвиÑ. :-)</p> + <p style="hp">Следите за запаÑами в магазинах (миниокно) и Ñможете избежать больших проблем. ПериодичеÑкого проÑмотра ECO миниокна должно быть доÑтаточно.</p> + <p style="hp"><b>ПодÑказка:</b> ОÑтерегайтеÑÑŒ хибар и муÑора в магазинах...</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tutorial-aim.xml lincity-ng-2.9~git20150314/data/help/ru/tutorial-aim.xml --- lincity-ng-2.0/data/help/ru/tutorial-aim.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tutorial-aim.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,22 +1,16 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Цель игры</p> -<p style="hp">СущеÑтвует 2 пути выиграть в игре</p> -<li>Доведение до <a href="sustain">Ñтабильной Ñкономики </a> (поÑле Ñтого вы можете продолжать игру) </li> -<li>Ð­Ð²Ð°ÐºÑƒÐ°Ñ†Ð¸Ñ Ð²Ñего наÑÐµÐ»ÐµÐ½Ð¸Ñ Ð² <a href="rocket">другой мир</a> на другую планету (продолжить играть вы Ñможете только Ñами Ñ Ñобой :-D ). </li> -<p style="hp"></p> + <p style="htitle">Цель игры</p> + <p style="hp">Игру можно выиграть двум ÑпоÑобами:</p> + <li>ДобитьÑÑ <a href="sustain">уÑтойчивого ÑоÑтоÑниÑ</a> Ñкономики (поÑле Ñтого Ð’Ñ‹ можете продолжить игру)</li> + <li>Эвакуировать вÑех жителей на <a href="rocket">коÑмичеÑких кораблÑÑ…</a> в другой мир (поÑле Ñтого игра оÑтановитÑÑ)</li> + <p style="hp">Проиграть Ð’Ñ‹ можете только в одном Ñлучае:</p> + <li>Ð’ÑÑ‘ Ваше наÑеление погибнет в результате голода или от болезней (Ð´Ð»Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð½Ð°ÑелениÑ, как извеÑтно, нужно минимум двое человек ;-)</li> + <p style="hp">Вам придётÑÑ Ð¿Ð¾Ð²Ñ‹ÑˆÐ°Ñ‚ÑŒ уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð´Ð»Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾Ñти ÑтроительÑтва более Ñовременные объекты. Также Вам придётÑÑ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÑÑ‚ÑŒ роÑтом наÑелениÑ, обеÑпечивать нужды города и ÑкономичеÑкий баланÑ.</p> -<p style="hp">Проиграть вы можете только одним ÑпоÑобом:</p> -<li>Ð’Ñе погибнут от голода или невозможноÑти размножатьÑÑ. (Ð’Ñ‹ знаете нужно 2 человека Ð´Ð»Ñ Ñтого ;-) </li> -<li>*ХотÑÑ‚ добавить другой ÑпоÑоб, еÑли бюджет неприлично отрицателен </li> -<p style="hp"></p> - -<p style="hp">Ваша задача развивать научный уровень Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, что бы получить возможноÑÑ‚ÑŒ Ñтоить более Ñерьёзные поÑтройки. Ваша задача руководить развитием наÑÐµÐ»ÐµÐ½Ð¸Ñ Ð¸ заботитÑÑ Ð¾ ÑкономичеÑком баланÑе.</p> -<p style="hp"></p> - -<p style="hp">Ñм. ещё:</p> -<li><a href="tutorial-basics">Первые шаги</a></li> -<li><a href="tutorial-advanced">Продвинутые возможноÑти</a></li> -<li><a href="tutorial-scenario">Сценарий игры</a></li> - -</Document> + <p style="hsubtitle">См. ещё:</p> + <li><a href="tutorial-basics">Первые шаги</a></li> + <li><a href="tutorial-advanced">Продвинутые функции</a></li> + <li><a href="tutorial-scenario">Сценарии игры</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/ru/tutorial-basics.xml --- lincity-ng-2.0/data/help/ru/tutorial-basics.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,47 +1,40 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Первые шаги</p> -<p style="hp">Выберите "Ð½Ð¾Ð²Ð°Ñ Ð¸Ð³Ñ€Ð°" > "Ñлучайный городок". Другие Ñценарии Ñделаны Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ опытных игроков. </p> -<p style="hp">Случайный городок Ñодержит такие реÑурÑÑ‹: </p> -<li>Фермы которые заполнÑÑŽÑ‚ магазины едой</li> -<li>Комуны, которые добывают древеÑный уголь малое количеÑтво руды и Ñтали.</li> -<li>Резидентные поÑтройки</li> -<li>Гончарную маÑтерÑкую</li> -<li>Ðебольшие дороги</li> - -<p style="hp">Ðажмите на любое здание(любое из тех что поÑтроены), и Ñправа увидите информацию о нем.</p> - -<p style="hsubtitle">Магазин</p> -<p style="hp">Магазин Ñто ключевое здание в Lincity. Они обÑзательны, раÑпределÑÑŽÑ‚ реÑурÑÑ‹ по зданиÑм и карте. Ð’Ñ‹ <b> можете </b> прочеÑÑ‚ÑŒ больше в помощи на <a href="market">магазины </a> :-). <i>Конечно когда магазин пуÑтой, он не может функционировать нормально. ЕÑли он полноÑтью забит, Ñто обычно тоже не очень хорошо. Так же некоторые Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ðµ могут функционировать без магазинов, им негде покупать нужные товары</i> </p> - -<p style="hsubtitle">ТранÑпорт</p> -<p style="hp"><a href="transport">ТранÑпорт</a> очень Ð²Ð°Ð¶Ð½Ð°Ñ Ñ‡Ð°ÑÑ‚ÑŒ, Ð³Ð»Ð°Ð²Ð½Ð°Ñ Ð·Ð°Ð´Ð°Ñ‡Ð° обмениватьÑÑ Ñ‚Ð¾Ð²Ð°Ñ€Ð°Ð¼Ð¸ (Ñ…Ð¾Ñ‚Ñ Ð¼Ð¾Ð¶ÐµÑ‚ подейÑтвовать на коммуну, об Ñтом читайте в документации). Хорошо ÑÐ¿Ñ€Ð¾ÐµÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ñ‚Ñ€Ð°Ð½ÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема очень поможет вам в будущем.</p> - - -<p style="hp">К зданиÑм которым нужен магазин, можно подвеÑти дорогу, Ñто поможет не Ñтроить магазины, но помните что Ñ…Ð¾Ñ€Ð¾ÑˆÐ°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð° Ñтоит денег. </p> - -<p style="hp">Ð’ небольшом городке транÑпорт нужен иÑключительно Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¼ÑƒÐ½. Ð”Ð»Ñ Ð¾Ñтальных вполне хватает магазинов. </p> - -<p style="hsubtitle">Деньги</p> -<p style="hp">Деньги зарабатываютÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ налогов. Ð’ мини окне еÑÑ‚ÑŒ <a href="finance"> ФинанÑÐ¾Ð²Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ°</a>. ПозаботьтеÑÑŒ о том, что бы ваши затраты были не очень большие: еÑли ваш Ð±Ð°Ð»Ð°Ð½Ñ ÑтановитьÑÑ Ð¾Ñ‚Ñ€Ð¸Ñ†Ð°Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ð¹, то вы не можете Ñтоить некоторые Ð·Ð´Ð°Ð½Ð¸Ñ Ð° так же Ñ Ð²Ð°Ñ Ð±ÐµÑ€ÑƒÑ‚ÑÑ Ð¿Ñ€Ð¾Ñ†ÐµÐ½Ñ‚Ñ‹. Это может привеÑти к банкротÑтву (Ñм <a href="tutorial-scenario"> Сценарий Ñ‚Ñжёлые времена</a>. </p> - -<p style="hsubtitle">ПоÑтройка города</p> -<p style="hp">Помните, люди или едÑÑ‚ и пьют, или умирают. Контролируйте наÑеление, Ñтройте <a href="residential">Резидентные поÑтройки</a> (они имеют разные уровни рождаемоÑти/ÑмертноÑти). Ðовое наÑеление требует больше рабочих меÑÑ‚, больше еды, товаров и тд.</p> -<p style="hp">Ð’Ñ‹ должны увеличивать вашу продукцию (добавлÑйте кузницы, гончарные...) и заботьтеÑÑŒ о том, что Ð²Ð°Ñ Ð¿Ñ€Ð¾ÑÑÑ‚. </p> -<p style="hp">Больше пользы можно получить от зданий, еÑли поднимать <a href="tech-level"> Ðаучный уровень </a>.</p> -<p style="hp"> Так же можете выбрать Ñебе цель выиграть: или <a href="sustain"> Ð¡Ñ‚Ð°Ð±Ð¸Ð»ÑŒÐ½Ð°Ñ Ñкономика </a> или ÑÐ²Ð°ÐºÑƒÐ°Ñ†Ð¸Ñ Ð²Ñех в <a href="rocket"> другой мир</a>.</p> - -<p style="hp">Почаще проверÑйте <a href="pbar"> Склад магазина</a>. Так же мини карта может дать больше информации о вашей Ñкономике и точных затрат потраченных на поÑтройку зданиÑ.</p> - -<li>Ðамек: Сделайте одно или два Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¸ подождите немного, (Ðапример почитайте документацию) или увеличьте ÑкороÑÑ‚ÑŒ игры и Ñмотрите как изменÑÑ‚ÑŒÑÑ Ð¸Ð½Ð´Ð¸ÐºÐ°Ñ‚Ð¾Ñ€Ñ‹ Ñкономики.</li> -<p style="hp"></p> -<p style="hp">Пробуйте </p> -<p style="hp"></p> - -<p style="hp">См. ещё:</p> -<li><a href="tutorial-advanced">Продвинутые возможноÑти</a></li> -<li><a href="tutorial-scenario">Сценарии игры</a></li> -<li><a href="msb-starve">Зоны голоданиÑ</a></li> -<li><a href="msb-ub40">Зоны безработицы</a></li> -</Document> - + <p style="htitle">Первые шаги</p> + <p style="hp">Выберите "Ð½Ð¾Ð²Ð°Ñ Ð¸Ð³Ñ€Ð°" > "Река". УÑтановите галочки "С поÑелением", "Без деревьев". Другие Ñценарии Ñозданы Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ опытных игроков.</p> + <p style="hp">ПоÑеление Ñодержит Ñледующие оÑновные реÑурÑÑ‹:</p> + <li>Фермы, которые доÑтавлÑÑŽÑ‚ еду в магазины</li> + <li>Скважины, которые Ñнабжают округу водой</li> + <li>Коммуны, которые добывают древеÑный уголь и небольшое количеÑтво руды и Ñтали.</li> + <li>Жилые дома</li> + <li>Гончарные маÑтерÑкие, где производитÑÑ Ñ‚Ð¾Ð²Ð°Ñ€</li> + <li>Грунтовки</li> + <li>Магазины</li> + <p style="hp">Ðажатие на любом здании (на оÑновной карте) отобразит информацию о нём в информационном окне в правом нижнем углу.</p> + + <p style="hsubtitle">Магазин</p> + <p style="hp">Магазин -- Ñто ключевое здание в Lincity. Они необходимы почти вÑем поÑтройкам Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ½Ð° товарами потреблениÑ. Вам <b>обÑзательно </b>нужно прочеÑÑ‚ÑŒ Ñправочную информацию про <a href="market">магазин</a> :-). <i>Конечно, когда магазин пуÑÑ‚, он не может никому ничего продать, а когда переполнен -- не может получить новые товары. Это может помочь Вам понÑÑ‚ÑŒ, почему некоторые объекты не работают (возможно, они не могут купить то, что им требуетÑÑ, или продать Ñвою продукцию).</i></p> + + <p style="hsubtitle">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</p> + <p style="hp"><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a> необходима Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ½Ð° товарами на больших раÑÑтоÑниÑÑ…, а также Ð´Ð»Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… ÑпецифичеÑких дейÑтвий. Как и магазины, транÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема обладает ограниченной пропуÑкной ÑпоÑобноÑтью и может быть перегружена.</p> + <p style="hp">ЕÑли объект находитÑÑ Ð²Ð½Ðµ зоны дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°, его необходимо ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. Помните, что на обÑлуживание дорог и железных дорог ежегодно требуютÑÑ Ð´ÐµÐ½ÑŒÐ³Ð¸, поÑтому в начале игры обычно лучше (и дешевле) Ñтроить объекты в зоне доÑтупа магазина (еÑли Ð’Ñ‹ не хотите изолировать какое-либо Ñтроение). Однако Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸ÐµÐ¼ города Вам обÑзательно понадобитÑÑ Ñ€Ð°Ð·Ð²Ð¸Ð²Ð°Ñ‚ÑŒ транÑпортную ÑиÑтему.</p> + + <p style="hsubtitle">Деньги</p> + <p style="hp">Производимые товары облагаютÑÑ Ð½Ð°Ð»Ð¾Ð³Ð¾Ð¼, что помогает Вашему городу зарабатывать деньги. Ð¢Ñ€ÐµÑ‚ÑŒÑ Ð²ÐºÐ»Ð°Ð´ÐºÐ° миниокна -- <a href="finance">ФИÐ</a>. ПозаботьтеÑÑŒ о том, чтобы не тратить Ñлишком много денег Ñлишком быÑтро: когда Ð’Ñ‹ влезаете в долги, Ð’Ñ‹ не можете Ñтроить некоторые зданиÑ, а также каждый год должны платить проценты по кредиту. Это может привеÑти к банкротÑтву города (Ñм. <a href="tutorial-scenario">Сценарий "Ñ‚Ñжёлые времена"</a>.</p> + + <p style="hsubtitle">Развитие города</p> + <p style="hp">Помните, что Вашим людÑм Ð´Ð»Ñ Ð¶Ð¸Ð·Ð½Ð¸ необходимы еда и вода, иначе они умрут. Ð”Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð½Ð°ÑÐµÐ»ÐµÐ½Ð¸Ñ Ð’Ñ‹ можете Ñтроить различные <a href="residential">жилые дома</a> (Ñ Ñ€Ð°Ð·Ð½Ñ‹Ð¼Ð¸ уровнÑми рождаемоÑти и ÑмертноÑти). Ðовым людÑм также требуютÑÑ ÐµÐ´Ð°, вода, рабочие меÑта и Ñ‚.п.</p> + <p style="hp">Вам придётÑÑ Ñ€Ð°Ð·Ð²Ð¸Ð²Ð°Ñ‚ÑŒ производÑтво (Ñтроить новые кузницы, гончарные маÑтерÑкие) и в то же Ð²Ñ€ÐµÐ¼Ñ Ñледить, что они обеÑпечены вÑем необходимым. Возможно, Ð´Ð»Ñ Ñтого потребуетÑÑ Ð¿Ð¾Ñтроить ещё что-нибудь.</p> + <p style="hp">Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ñ‹Ñ… зданий и новых возможноÑтей уже ÑущеÑтвующих зданий Вам необходимо поднимать <a href="tech-level">уровень технологичеÑкого развитиÑ</a>. Первое, что Ð’Ð°Ñ Ñледует поÑтроить, Ñто Монумент, он поднимет уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð´Ð¾ возможноÑти Ñтроить школы.</p> + <p style="hp">Ð’ какой-то момент Вам придётÑÑ Ð²Ñ‹Ð±Ñ€Ð°Ñ‚ÑŒ Ñтратегию выигрыша: либо добиватьÑÑ ÑƒÑтойчивого <a href="sustain">уÑтойчивого ÑоÑтоÑÐ½Ð¸Ñ Ñкономики</a>, либо Ñвакуировать вÑÑ‘ наÑеление на <a href="rocket">коÑмичеÑких кораблÑÑ…</a>.</p> + <p style="hp">Ð’Ñ‹ должны регулÑрно проверÑÑ‚ÑŒ <a href="pbar">ÑтатиÑтику объектов города (Стат)</a>, миникарты могут дать дополнительную информацию о ÑоÑтоÑнии Вашей Ñкономики. Также помните, что нажатие на здании (на оÑновной карте) отображает информацию о нём в информационном окне в правом нижнем углу.</p> + <p style="hp"><b>ПодÑказка:</b> Сделайте одно или два изменениÑ, затем немного подождите (например, почитайте Ñправочную информацию ;-) или увеличьте ÑкороÑÑ‚ÑŒ игры, и Ð’Ñ‹ увидите, как Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð²Ð»Ð¸Ñли на Ñитуацию в городе.</p> + <p style="hp">ÐаÑлаждайтеÑÑŒ!</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="tutorial-advanced">Продвинутые функции</a></li> + <li><a href="tutorial-scenario">Сценарии игры</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="msb-ub40">Зоны безработицы</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tutorial-overview.xml lincity-ng-2.9~git20150314/data/help/ru/tutorial-overview.xml --- lincity-ng-2.0/data/help/ru/tutorial-overview.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tutorial-overview.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ Ñкрану</p> - -<p style="hp"><b>ПоÑмотрите налево </b>иконки ÑоÑтоÑÑ‚ из (курÑора и бульдозера) и вÑех зданий которые можно поÑтроить в течении игры. </p> -<li>Ð›ÐµÐ²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши открывает иконку, открывает группу Ñ Ð¾Ð±ÑŠÐµÐºÑ‚Ð°Ð¼Ð¸. </li> -<li>ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши показывает помощь по выбранному объекту. </li> -<li>ЕÑли оÑтановить мышь на иконке, то поÑвлÑетÑÑ Ð²Ñ‹Ð¿Ð°Ð´Ð°ÑŽÑ‰ÐµÐµ окно</li> -<p style="hp"></p> - -<p style="hp"><b>Снизу внизу </b> ÑкороÑÑ‚ÑŒ игры </p> -<p style="hp"></p> - -<p style="hp"><b>Справа внизу </b>Контейнер Ð´Ð»Ñ Ð¾Ð¿Ð¸ÑÐ°Ð½Ð¸Ñ Ð²ÐµÑ… Ñлементов игры: мини Ñкран Ñ 4 вкладками, и Ñнизу Ñ Ð¸ÐºÐ¾Ð½ÐºÐ°Ð¼Ð¸, показывающими определённые покрытиÑ. Ðажмите на них и поÑмотрите что ÑлучитьÑÑ.</p> -<p style="hp"></p> - -<p style="hp">Пожимайте на клавиатуре и мыши(влево, Ñреднюю клавишу и правую клавишу и колёÑико...) , F1 Ð´Ð»Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰Ð¸. </p> - -<p style="hp">Ñм. ещё:</p> -<li><a href="tutorial-basics">Первые шаги</a></li> -<li><a href="tutorial-advanced">Продвинутые возможноÑти</a></li> -<li><a href="tutorial-scenario">Сценарии игры</a></li> - -</Document> - + <p style="htitle">ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ Ñкрану</p> + <p style="hp">Ð’ <b>верхнем левом углу</b> находÑÑ‚ÑÑ Ð¸ÐºÐ¾Ð½ÐºÐ¸ курÑора, бульдозера и вÑех зданий, которые Ð’Ñ‹ Ñожете Ñтроить в ходе игры.</p> + <li>Ð›ÐµÐ²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши на иконке открывает группу объектов.</li> + <li>ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши на иконке показывает Ñправочную информацию о выбранном объекте.</li> + <li>ЕÑли задержать мышь на иконке, поÑвитÑÑ Ð¾ÐºÐ½Ð¾ подÑказки</li> + <p style="hp">Ð’ <b>левом нижнем углу</b> находитÑÑ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ ÑкороÑтью игры.</p> + <p style="hp"><b>Правый нижний угол</b> Ñодержит вÑе информационные окна: миникарту, окна ÑтатиÑтики и финанÑов, зоны Ð¿Ð¾ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ð¸ прочие информационные окна, которые можно переключать нажатием мыши.</p> + <p style="hp">Пожимайте разные клавиши на клавиатуре и мыши, клавиша F1 откроет Ñправочную информацию.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="tutorial-basics">Первые шаги</a></li> + <li><a href="tutorial-advanced">Продвинутые функции</a></li> + <li><a href="tutorial-scenario">Сценарии игры</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/ru/tutorial-scenario.xml --- lincity-ng-2.0/data/help/ru/tutorial-scenario.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,17 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> -<p style="htitle">Сценарии игры</p> -<p style="hp">Ðиже "Ðовой игры" </p> + <p style="htitle">Сценарии игры</p> + <p style="hp">Различные предопределённые Ñценарии игры Ð’Ñ‹ можете увидеть под кнопкой "Ð½Ð¾Ð²Ð°Ñ Ð¸Ð³Ñ€Ð°".</p> -<p style="hsubtitle"> ПроÑто</p> -<li>Хорошие времена </li> + <p style="hsubtitle">ПроÑтые</p> + <li>Хорошие времена</li> + <li>ПлÑжи (помните, людÑм нужна еда, иначе они умрут ;-)</li> -<li>ПлÑжи (Помните, люди или едÑÑ‚, или умирают  ;-) </li> - -<p style="hsubtitle">ТÑжело </p> -<li>"ТÑжёлые времена": попробуйте избежать банкротÑтва. ОÑторожно анализируйте игровой цикл и принимайте Ñерьёзные меры, что бы делать деньги. Это Ñложно, но возможно, возможно доÑтичь Ñтабильной Ñкономики. </li> -<p style="hp"></p> -</Document> + <p style="hsubtitle">Сложные</p> + <li>ТÑжёлые времена: попробуйте избежать банкротÑтва. ОÑторожно анализируйте потребноÑти города, Вам придётÑÑ Ð¿Ñ€Ð¸Ð½Ð¸Ð¼Ð°Ñ‚ÑŒ решительные меры Ð´Ð»Ñ ÑÐ¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ð·Ð°Ñ‚Ñ€Ð°Ñ‚ и ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð±Ñ‹Ð»Ð¸. Это Ñложно, но возможно; еÑÑ‚ÑŒ шанÑÑ‹ даже добитьÑÑ ÑƒÑтойчивой Ñкономики.</li> + <li>ПуÑтынÑ: в данной меÑтноÑти очень мало воды, поÑтому необходимо тщательно продумывать иÑпользование Ñтих учаÑтков Ð´Ð»Ñ ÑтроительÑтва ферм и коммун.</li> + <li>Болото: название говорит Ñамо за ÑÐµÐ±Ñ :-), здеÑÑŒ очень Ñложно Ñтроить город.</li> + <p style="hsubtitle">См. ещё:</p> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/tutorial.xml lincity-ng-2.9~git20150314/data/help/ru/tutorial.xml --- lincity-ng-2.0/data/help/ru/tutorial.xml 2009-01-25 20:21:13.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/tutorial.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,12 @@ -<?xml version="1.0" encoding="UTF-8"?> +<?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> <p style="htitle">Обучение</p> - <li><a href="tutorial-aim">Цели в игре</a></li> + <p style="hsubtitle">См. ещё:</p> + <li><a href="tutorial-aim">Цель игры</a></li> <li><a href="tutorial-overview">ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ Ñкрану</a></li> <li><a href="tutorial-basics">Первые шаги</a></li> - <li><a href="tutorial-advanced">Продвинутые возможноÑти</a></li> - <li><a href="tutorial-scenario">Предопределённый Ñценарий</a></li> -</Document> - + <li><a href="tutorial-advanced">Продвинутые функции</a></li> + <li><a href="tutorial-scenario">Сценарии игры</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/university.xml lincity-ng-2.9~git20150314/data/help/ru/university.xml --- lincity-ng-2.0/data/help/ru/university.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,25 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">УниверÑитеты</p> - <p style="hp">Помогают повыÑить научный уровень. Ð”Ð»Ñ Ñтого они иÑпользуют работу и товары. They produce more than schools for a given goods/jobs input. Однако большое количеÑтво товара и работы дорого Ñтоит, итак вы должны не забывать про Ñкономку.</p> - <p style="hp">У Ð²Ð°Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ‹ быть универÑитеты, что бы поднÑÑ‚ÑŒ научный уровень выше чем 100%</p> - <p style="hp">УниверÑитеты не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортом; вÑе что им нужно они могут взÑÑ‚ÑŒ в близлежащих магазинах.</p> + <p style="htitle">УниверÑитет</p> + <p style="hp">Помогают повыÑить уровень технологичеÑкого развитиÑ. Ð”Ð»Ñ Ð¸Ñ… Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ñ‹ товары и рабочие. Они повышают технологичеÑкий уровень Ñильнее, чем школы, однако тратÑÑ‚ на Ñто большие реÑурÑÑ‹ и дорого ÑтоÑÑ‚, поÑтому их рекомендуетÑÑ Ñтроить при доÑтаточно развитой Ñкономике и промышленноÑти.</p> + <p style="hp">Ð”Ð»Ñ Ð´Ð¾ÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкого ÑƒÑ€Ð¾Ð²Ð½Ñ Ð²Ñ‹ÑˆÐµ 100% Вам потребуетÑÑ Ð½ÐµÑколько дейÑтвующих универÑитетов.</p> + <p style="hp">УниверÑитеты не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемы, еÑли они находÑÑ‚ÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð° и имеют доÑтуп к необходимому количеÑтву товаров и рабочей Ñилы.</p> - <p style="hsubtitle">Замечание</p> - <p style="hp">Ð’Ñ‹ <b>должны</b> иметь 5 школ, на каждый универÑитеты.</p> + <p style="hsubtitle">Примечание</p> + <p style="hp">Студенты приходÑÑ‚ учитьÑÑ Ð² универÑитеты из школ, поÑтому на каждый универÑитет должно приходитьÑÑ Ñ‡ÐµÑ‚Ñ‹Ñ€Ðµ школы.</p> - <p style="hp">Это универÑитет</p> - <img src="images/tiles/university.png" halign="center"/> - <p style="hp">а Ñто его иконка</p> - <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + <p style="hp">Это универÑитет:</p> + <img src="images/tiles/university.png" halign="center"/> - <p style="hsubtitle">См ещё:</p> - <li><a href="market">Магазины</a></li> - <li><a href="transport">ТранÑпорт</a></li> + <p style="hp">а Ñто его иконка:</p> + <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="market">Магазин</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> <li><a href="goods">Товары</a></li> - <li><a href="jobs">Работа</a></li> - <li><a href="schools">Школы</a></li> - <li><a href="tech-level">ТехнологичеÑкий уровень</a></li> -</Document> + <li><a href="jobs">Рабочие</a></li> + <li><a href="school">Школа</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/waterwell.xml lincity-ng-2.9~git20150314/data/help/ru/waterwell.xml --- lincity-ng-2.0/data/help/ru/waterwell.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/waterwell.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,14 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ВодÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°</p> - <p style="hp">Снабжает водой дома в Ñвоей зоне дейÑтвиÑ. ÐедоÑаток воды в поÑледÑвии приводит к недоÑтатку еды. Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ голодании можно увидеть на миникарте.</p> + <p style="htitle">Скважина</p> + <p style="hp">Скважина обеÑпечивает округу водой. Вода течёт по трубам, раÑположенным под Вашей транÑпортной ÑиÑтемой. Ðехватка воды приводит к таким же поÑледÑтвиÑм, как и нехватка еды. Информацию о нехватке воды или еды можно получить, поÑмотрев зоны голоданиÑ.</p> + <p style="hp">Учтите, что Ñильные загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñ€Ñ‚ÑÑ‚ воду, её Ð½ÐµÐ»ÑŒÐ·Ñ Ð±ÑƒÐ´ÐµÑ‚ пить.</p> - <p style="hp">См ещё:</p> + <p style="hsubtitle">См. ещё:</p> <li><a href="food">Еда</a></li> - <li><a href="msb-starve">Зона голоданиÑ.</a></li> -</Document> + <li><a href="water">Вода</a></li> + <li><a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a></li> + <li><a href="msb-starve">Зоны голоданиÑ</a></li> + <li><a href="pollution">ЗагрÑзнение</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/ru/windmill.xml lincity-ng-2.9~git20150314/data/help/ru/windmill.xml --- lincity-ng-2.0/data/help/ru/windmill.xml 2009-01-25 20:21:14.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/ru/windmill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,25 +1,27 @@ <?xml version="1.0"?> +<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) --> <Document style="helpdocument"> - <p style="htitle">ВетрÑные мельницы</p> - <p style="hp">ВетрÑные мельницы вырабатывают ÑлектричеÑтво Ð´Ð»Ñ Ñ€ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ Ð¸ ферм.</p> - <p style="hp">Ð¡Ð½Ð°Ð±Ð¶Ð°Ñ Ñ€ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ð¸ ÑлектричеÑтвом, вы заÑтавлÑете людей иÑпользовать больше товара.</p> - <p style="hp">Ðизкий уровень науки <b>не может</b> запитать индуÑтрии. (ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð²Ñе равно работает от углÑ, а легкой нужен <i>реальный</i> иÑточник Ñнергии, без ÑлектричеÑтва она работает не в полную Ñилу)</p> - <p style="hp">ВетрÑным мельницам нужна Ñ€Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹. Чем меньше рабочий Ñилы, тем менее Ñффективнее работает ветрÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°.</p> - - <p style="hp">Это 2 фермы под ветрÑной мельницей.</p> - <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> - <p style="hp">Это Ð½Ð¸Ð·ÐºÐ¾ÑƒÑ€Ð¾Ð²Ð½ÐµÐ²Ð°Ñ 'деревÑннаÑ' ветрÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°.</p> - <img src="images/tiles/windmill1w.png" halign="center"/> - <p style="hp">Это Ð¼Ð¾Ð´ÐµÑ€Ð½Ð¸Ð·Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð²ÐµÑ‚Ñ€ÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°.</p> - <img src="images/tiles/windmill1g.png" halign="center"/> - <p style="hp">Ð”Ð»Ñ Ð¼Ð¾Ð´ÐµÑ€Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð° вы должны иметь ÑоответÑтвующий научный уровень.</p> - <p style="hp">ÐœÐ¾Ð´ÐµÑ€Ð½Ð¸Ð·Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ð²ÐµÑ‚Ñ€ÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð° может передавать ÑлектричеÑтво по ЛЭП.</p> - - <p style="hsubtitle">См ещё:</p> - <li><a href="substation">ПодÑтанции</a></li> + <p style="htitle">Ветрогенератор</p> + <p style="hp">ДеревÑнные ветрогенераторы обеÑпечивают ÑлектричеÑтвом жилые дома (они ÑтановÑÑ‚ÑÑ Ð±Ð¾Ð»ÐµÐµ привлекательными Ð´Ð»Ñ Ð¶Ð¸Ñ‚ÐµÐ»ÐµÐ¹) и фермы (они ÑтановÑÑ‚ÑÑ Ð±Ð¾Ð»ÐµÐµ Ñффективными).</p> + <p style="hp">Люди, живущие в домах Ñ ÑлектричеÑтвом, потреблÑÑŽÑ‚ больше товаров.</p> + <p style="hp">Ветрогенератору нужны рабочие. Чем меньше рабочей Ñилы, тем менее Ñффективнее он работает.</p> + + <p style="hp">СущеÑтвует два вида ветрогенераторов:</p> + <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> + + <p style="hp">Это низкотехнологичный деревÑнный ветрогенератор, он производит кВт⋅ч Ð´Ð»Ñ ÑоÑедних зданий:</p> + <img src="images/tiles/windmill1w.png" halign="center"/> + + <p style="hp">Это модернизированный ветрогенератор, он производит МВт⋅ч Ð´Ð»Ñ ÑÐ½Ð°Ð±Ð¶ÐµÐ½Ð¸Ñ Ð³Ð¾Ñ€Ð¾Ð´Ð° ÑлектричеÑтвом:</p> + <img src="images/tiles/windmill1g.png" halign="center"/> + <p style="hp">Тип ветрогенератора, которую Ð’Ñ‹ Ñтроите, завиÑит от текущего ÑƒÑ€Ð¾Ð²Ð½Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкого развитиÑ.</p> + + <p style="hsubtitle">См. ещё:</p> + <li><a href="power">ЭнергиÑ</a></li> + <li><a href="substation">ПодÑтанциÑ</a></li> <li><a href="powerline">ЛЭП</a></li> - <li><a href="residential">Резиденции</a></li> - <li><a href="tech-level">Ðаучный уровень</a></li> - <li><a href="msb-power">Зоны ÑлектроÑнергии</a></li> - <li><a href="powersolar">Солнечные ÑлектроÑтанции</a></li> -</Document> + <li><a href="tech-level">Уровень технологичеÑкого развитиÑ</a></li> + <li><a href="msb-power">Зоны ÑлектроÑнабжениÑ</a></li> + <li><a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a></li> + <li><a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a></li> +</Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help/tr/blacksmith.xml lincity-ng-2.9~git20150314/data/help/tr/blacksmith.xml --- lincity-ng-2.0/data/help/tr/blacksmith.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/blacksmith.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Demirciler</p> - <p style="hp">Demirciler ÇeliÄŸi ve Minerali EÅŸyaya çevirir. Oyunda bunları çoÄŸunlukla erkenden kullanacaksınız. Demirciler tabi ki işçide kullanır.</p> - <p style="hp">Çelik iÅŸlemeciliÄŸi edinmeden önce, Komünlerle Çelik saÄŸlamaya itimat etmelisiniz. Her Demirciye gereken 5 yada 6 Komündür.</p> - <p style="hp">Demircilerin ulaşıma baÄŸlanmış olmaları zorunlu deÄŸil. Kapsama alanında oldukları Bakkallardan tüm ihtiyaçlarını karşılayabilirler.</p> - <p style="hp">Bir Demircinin çalıştığını herzamanki gibi üzerine tıklayarak görebilirsin ve sık sık canlandırma hayata geçecek.</p> + <p style="hp">Demirciler ÇeliÄŸi ve Minerali EÅŸyaya çevirir. Oyunda bunları çoÄŸunlukla erkenden kullanacaksınız. Demirciler tabii ki işçi de kullanır.</p> + <p style="hp">Çelik iÅŸlemeciliÄŸi edinmeden önce, Komünlerle Çelik saÄŸlamaya itimat etmelisiniz. Her Demirciye gereken 5 veya 6 Komündür.</p> + <p style="hp">Demircilerin ulaşıma baÄŸlanmış olmaları zorunlu deÄŸildir. Kapsama alanında oldukları Bakkallardan tüm ihtiyaçlarını karşılayabilirler.</p> + <p style="hp">Bir Demircinin çalıştığını her zamanki gibi üzerine tıklayarak sık sık animasyonun hareket etmesinden görebilirsiniz.</p> <p style="hp">Bu bir Demirci</p> <img src="images/tiles/blacksmith0.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/industry/blacksmith.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="ore">Mineral</a></li> <li><a href="commune">Komün</a></li> diff -Nru lincity-ng-2.0/data/help/tr/bulldoze.xml lincity-ng-2.9~git20150314/data/help/tr/bulldoze.xml --- lincity-ng-2.0/data/help/tr/bulldoze.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/bulldoze.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,13 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Dozer</p> - <p style="hp">Bir alanı yıkmak için dozeri seç ve temizlemek istediÄŸin alana tıkla. Yıkım maliyeti olan bir iÅŸtir. Bir alan yaptığınızda, yapım ve yıkım ücretleri ekranın sol-alt kısmında belirecek.</p> + <p style="hp">Bir alanı yıkmak için dozeri seçin ve temizlemek istediÄŸiniz alana tıklayın. Yıkım, maliyeti olan bir iÅŸtir. Bir alan yaptığınızda, yapım ve yıkım ücretleri ekranın sol alt kısmında belirecektir.</p> <p style="hp">Anıt gibi bazı ÅŸeylerin yıkımı çok pahalıdır. Yıkım masrafı sadece fiziksel yıkım masrafıyla sınırlı kalmaz, aynı zamanda politiksel masraflıdır. ÖrneÄŸin; bir Anıtı yıkmak sebebiyle protestocular oluÅŸacak ve tabi ki mahkeme masrafları da.</p> + <p style="hp">EÄŸer yıkım esnasında Ctrl tuÅŸuna basılı tutarsanız, daha geniÅŸ bir alanı yıkabilirsiniz.</p> <p style="hp">Bu bir Dozer simgesi</p> <img src="images/gui/buttonpanel/base/bulldozer.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="evacuate">Tahliye</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="river">Nehir</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/button-index.xml lincity-ng-2.9~git20150314/data/help/tr/button-index.xml --- lincity-ng-2.0/data/help/tr/button-index.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/button-index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,120 +1,129 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Düğme BaÅŸlığını Seç</p> + <p style="htitle">Düğme dizinini seçin</p> - <!--<p style="subtitle">Power</p>--> + <!--<p style="subtitle">Güç</p>--> <img src="images/gui/buttonpanel/power/powerlines.png"/> <p><a href="powerline">Elektrik Hatları</a></p> <img src="images/gui/buttonpanel/power/solarpower.png"/> - <p><a href="powerssolar">GüneÅŸsel Elektrik Ãœreteci</a></p> + <p><a href="powerssolar">GüneÅŸ Paneli</a></p> <img src="images/gui/buttonpanel/power/substation.png"/> <p><a href="substation">Trafo</a></p> - <!--<p style="subtitle">Residences</p>--> + <!--<p style="subtitle">YerleÅŸim alanları</p>--> <img src="images/gui/buttonpanel/residence/residence.png"/> - <p><a href="residential">YerleÅŸim alanı</a></p> + <p><a href="residential">YerleÅŸim alanları</a></p> + + <!--<p style="subtitle">Su Kuyuları</p>--> + <img src="images/gui/buttonpanel/waterwell.png"/> + <p><a href="waterwell">Su Kuyuları</a></p> - <!--<p style="subtitle">Parks</p>--> + <!--<p style="subtitle">Parklar</p>--> <img src="images/gui/buttonpanel/parks/farm.png"/> - <p><a href="farm">Çiflik</a></p> + <p><a href="farm">Çiftlik</a></p> - <!--<p style="subtitle">Industry</p>--> + <!--<p style="subtitle">Endüstri</p>--> <img src="images/gui/buttonpanel/industry/market.png"/> <p><a href="market">Bakkal</a></p> - <!--<p style="subtitle">Base</p>--> + <!--<p style="subtitle">Temel</p>--> <img src="images/gui/buttonpanel/base/bulldozer.png"/> <p><a href="bulldoze">Dozer</a></p> - <!--<p style="subtitle">Transport</p>--> + <!--<p style="subtitle">Temel</p>--> + <img src="images/gui/buttonpanel/base/broom.png"/> + <p><a href="evacuate">Tahliye</a></p> + + + <!--<p style="subtitle">Ulaşım</p>--> <img src="images/gui/buttonpanel/transport/tracks.png"/> <p><a href="track">Tali Yol</a></p> - <!--<p style="subtitle">Mining</p>--> + <!--<p style="subtitle">Madencilik</p>--> <img src="images/gui/buttonpanel/mining/coalmine.png"/> <p><a href="coalmine">Kömür Madeni</a></p> - <!--<p style="subtitle">Transport</p>--> + <!--<p style="subtitle">Ulaşım</p>--> <img src="images/gui/buttonpanel/transport/rails2.png"/> <p><a href="rail">Demiryolu</a></p> - <!--<p style="subtitle">Power</p>--> + <!--<p style="subtitle">Güç</p>--> <img src="images/gui/buttonpanel/power/coalpower.png"/> - <p><a href="powerscoal">Kömürden Elektrik Ãœreteci</a></p> + <p><a href="powerscoal">Termik Santral</a></p> - <!--<p style="subtitle">Transport</p>--> + <!--<p style="subtitle">Ulaşım</p>--> <img src="images/gui/buttonpanel/transport/road.png"/> <p><a href="road">Yol</a></p> - <!--<p style="subtitle">Industry</p>--> + <!--<p style="subtitle">Endüstri</p>--> <img src="images/gui/buttonpanel/industry/lightindustry.png"/> - <p><a href="industryl">Hafif Sanayi alanları</a></p> + <p><a href="industryl">Hafif Sanayi Alanları</a></p> - <!--<p style="subtitle">Misc</p>--> + <!--<p style="subtitle">ÇeÅŸitli</p>--> <img src="images/gui/buttonpanel/misc/university.png"/> <p><a href="university">Ãœniversite</a></p> - <!--<p style="subtitle">Mining</p>--> + <!--<p style="subtitle">Madencilik</p>--> <img src="images/gui/buttonpanel/mining/commune.png"/> <p><a href="commune">Komün</a></p> <img src="images/gui/buttonpanel/mining/oremine.png"/> <p><a href="oremine">Mineral Madeni</a></p> - <!--<p style="subtitle">Trading</p>--> + <!--<p style="subtitle">Ticaret</p>--> <img src="images/gui/buttonpanel/transport/port.png"/> <p><a href="export">Ä°thalat ve Ä°hracat</a></p> - <!--<p style="subtitle">Industry</p>--> + <!--<p style="subtitle">Endüstri</p>--> <img src="images/gui/buttonpanel/industry/heavyindustry2.png"/> <p><a href="industryh">Ağır Sanayi (çelik iÅŸleme)</a></p> - <!--<p style="subtitle">Parks</p>--> + <!--<p style="subtitle">Parklar</p>--> <img src="images/gui/buttonpanel/parks/tree.png"/> <p><a href="park">Bahçe</a></p> - <!--<p style="subtitle">Mining</p>--> + <!--<p style="subtitle">Madencilik</p>--> <img src="images/gui/buttonpanel/mining/recycling.png"/> <p><a href="recycle">Geridönüşüm merkezi</a></p> - <!--<p style="subtitle">Parks</p>--> + <!--<p style="subtitle">Parklar</p>--> <img src="images/gui/buttonpanel/parks/water.png"/> <p><a href="river">Su/Nehir</a></p> - <!--<p style="subtitle">Misc</p>--> + <!--<p style="subtitle">ÇeÅŸitli</p>--> <img src="images/gui/buttonpanel/misc/health.png"/> <p><a href="health">Hastane</a></p> - <!--<p style="subtitle">Transport</p>--> + <!--<p style="subtitle">Ulaşım</p>--> <img src="images/gui/buttonpanel/transport/rocket.png"/> <p><a href="rocket">Füze Rampası</a></p> - <!--<p style="subtitle">Power</p>--> + <!--<p style="subtitle">Güç</p>--> <img src="images/gui/buttonpanel/power/windmills.png"/> - <p><a href="windmill">YeldeÄŸirmeni</a></p> + <p><a href="windmill">Rüzgar DeÄŸirmeni</a></p> - <!--<p style="subtitle">Misc</p>--> + <!--<p style="subtitle">ÇeÅŸitli</p>--> <img src="images/gui/buttonpanel/parks/monument.png"/> <p><a href="monument">Anıt</a></p> - <!--<p style="subtitle">Misc</p>--> + <!--<p style="subtitle">ÇeÅŸitli</p>--> <img src="images/gui/buttonpanel/misc/book.png"/> <p><a href="school">Okul</a></p> - <!--<p style="subtitle">Parks</p>--> + <!--<p style="subtitle">Parklar</p>--> <img src="images/gui/buttonpanel/parks/mills.png"/> <p><a href="mill">Fabrika</a></p> - <!--<p style="subtitle">Industry</p>--> + <!--<p style="subtitle">Endüstri</p>--> <img src="images/gui/buttonpanel/industry/pottery.png"/> <p><a href="pottery">Çömlekçi</a></p> - <!--<p style="subtitle">Misc</p>--> + <!--<p style="subtitle">ÇeÅŸitli</p>--> <img src="images/gui/buttonpanel/misc/fire.png"/> <p><a href="firestation">Ä°tfaiye</a></p> <img src="images/gui/buttonpanel/misc/sports.png"/> <p><a href="cricket">Basketbol Sahası</a></p> - <!--<p style="subtitle">Transport</p>--> + <!--<p style="subtitle">Ulaşım</p>--> <img src="images/gui/buttonpanel/transport/port.png"/> <p><a href="port">Liman</a></p> </Document> diff -Nru lincity-ng-2.0/data/help/tr/coalmine.xml lincity-ng-2.9~git20150314/data/help/tr/coalmine.xml --- lincity-ng-2.0/data/help/tr/coalmine.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/coalmine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Kömür Madeni</p> - <p style="hp">Kömür Madenleri yerin altını kazarak kömür çıkarır. Madene yakınlarda damar olmalı. Damarların nerede olduÄŸunu görmek için küçükekranın altındaki kömür düğmesine tıklayabilirsiniz.</p> - <p style="hp">Bu düğmeyi ilk kullandığınızda size 1 milyona mâl olacak. Bundan sonrası ücretsiz. Bu düğmeyi kullanmaya ihtiyacınız olmayacak, fakat kömür bulmak için deneme ve yanılmalara mecbur kalacaksınız.</p> - <p style="hp">Kömür Madenleri kömür çıkarmak için işçiye ihtiyaç duyar.</p> + <p style="hp">Kömür Madenleri yerin altını kazarak kömür çıkarır. Madenlere yakın kömür damarı olmalıdır. Damarların nerede olduÄŸunu görmek için küçük ekranın altındaki kömür düğmesine tıklayabilirsiniz.</p> + <p style="hp">Bu düğmeyi ilk kullandığınızda size 1 milyona mal olacak. Ancak sonrası ücretsiz. Bu düğmeyi kullanmaya ihtiyacınız olmayacak, fakat kömür bulmak için deneme ve yanılmalara mecbur kalacaksınız.</p> + <p style="hp">Kömür Madenleri, kömür çıkarmak için işçiye ihtiyaç duyar.</p> <p style="hp">Bu bir Kömür Madeni</p> <img src="images/tiles/coalmine-full.png" halign="center"/> @@ -12,10 +12,12 @@ <p style="hp">Grafik halihazırda kazılmış olan kömürün miktarını gösterir, ulaşıma konmuÅŸ olanı deÄŸil. Yukarıda gösterilen Kömür Madeni enüst düzeyde depolanmış.</p> <p style="hp">Bir madenin üzerine tıkladığınızda harita istatistik penceresinde ocaktaki birikimi göreceksiniz ve daha önemlisi, kömür birikimi kazılmaya elveriÅŸli olacak.</p> + <p style="hp">Kömür madenleri <a href="pollution"> kirliliÄŸe </a> sebep olurlar.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="coal">Kömür</a></li> - <li><a href="powerscoal">Kömürden Elektrik Ãœreteci</a></li> + <li><a href="powerscoal">Termik Santral</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="jobs">İşçi</a></li> + <li><a href="pollution">Kirlilik</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/coal.xml lincity-ng-2.9~git20150314/data/help/tr/coal.xml --- lincity-ng-2.0/data/help/tr/coal.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,12 +2,13 @@ <Document style="helpdocument"> <p style="htitle">Kömür</p> <p style="hp">Kömür elektrik üretiminde yakılarak kullanılır. Çömlekçilik, Fabriklar ve Demirciler tarafından eÅŸya yapmak için de kullanılır. Ağır Sanayi (çelik iÅŸleme) elektrik alamadığında Kömür kullanır.</p> - <p style="hp">Kömür, Kömür Madenleri tarafından yerin altından çıkarılır. Kömür Kaynağı düğmesiyle (kömür madenlerine bak) görebileceÄŸiniz gibi sınırlı Kömür kaynakları var.</p> - <p style="hp">Komünler biraz 'kömür' tedarik eder. Aslında bunlar aÄŸaçtan yapılan odun kömürüdür. Onlar yanlızca küçük bir miktar saÄŸlar, birkaç Çömlekçi ve Demirciye yetecek kadar.</p> + <p style="hp">Kömür, Kömür Madenleri tarafından yerin altından çıkarılır. Kömür Kaynağı düğmesiyle (kömür madenlerine bakın) görebileceÄŸiniz gibi sınırlı Kömür kaynakları bulunmaktadır.</p> + <p style="hp">Komünler de biraz 'kömür' saÄŸlarlar. Aslında bunlar aÄŸaçtan yapılan odun kömürüdür. Bunlar sadece birkaç Çömlekçi ve Demirciye yetecek kadar, yalnızca küçük bir miktar saÄŸlar.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="commodities">EÅŸyalar</a></li> <li><a href="coalmine">Kömür Madeni</a></li> - <li><a href="powerscoal">Kömürden Elektrik Ãœreteci </a></li> + <li><a href="powerscoal">Termik Santral</a></li> <li><a href="commune">Komünler</a></li> <li><a href="pottery">Çömlekçiler</a></li> <li><a href="blacksmith">Demirciler</a></li> diff -Nru lincity-ng-2.0/data/help/tr/commune.xml lincity-ng-2.9~git20150314/data/help/tr/commune.xml --- lincity-ng-2.0/data/help/tr/commune.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/commune.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,16 +3,16 @@ <p style="htitle">Komün</p> <p style="hp">Komünler odun kömürü (oyunda Kömürle aynı) yapmak için aÄŸaç parçalarının yakıldığı yerdir. Bunlar aynı zamanda küçük bir miktar Mineral ve Çelik saÄŸlar.</p> <p style="hp">Çömlekçi, Demirci ve Fabrikalar gibi yerlere yeterli Kömürü ve ÇeliÄŸi saÄŸlamak için muhtemelen 'birkaç' Komüne ihtiyacınız olacak.</p> - <p style="hp">EÄŸer bir Komün 10 yıl hiçbir ÅŸey saÄŸlamazsa kapanmıştır ve bölge Millet Bahçesine dönüşür.</p> - <p style="hp">Komüler sadece kapılarından deÄŸil etrafının herhangibir yerinden ulaşıma baÄŸlanabilirler.</p> - <p style="hp">Komünlerin üretimi yeraltı sularına baÄŸlıdır. (sulu döşemeler yeÅŸil, diÄŸerleri çöl gibi saru-kahverengidir)</p> + <p style="hp">EÄŸer bir Komün 10 yıl hiçbir ÅŸey saÄŸlamazsa kapanmıştır ve bölge Parka dönüşür.</p> + <p style="hp">Komüler sadece kapılarından deÄŸil etrafının herhangi bir yerinden ulaşıma baÄŸlanabilirler.</p> + <p style="hp">Komünlerin üretimi yeraltı sularına baÄŸlıdır (sulu döşemeler yeÅŸil, diÄŸerleri çöl gibi sarı kahverengidir).</p> <p style="hp">Bu bir Komün</p> <img src="images/tiles/commune1.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/mining/commune.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="pottery">Çömlekçiler</a></li> <li><a href="blacksmith">Demirciler</a></li> <li><a href="mill">Fabrikalar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/cricket.xml lincity-ng-2.9~git20150314/data/help/tr/cricket.xml --- lincity-ng-2.0/data/help/tr/cricket.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,10 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Basketbol Sahaları</p> - <p style="hp">Basketbol Sahaları konutlarınız için spor ve eÄŸlence saÄŸlar. Çalışmaları için İşçi ve EÅŸyaya ihtiyaçları vardır. Ulaşıma baÄŸlanmak zorunda deÄŸiller, bu durumda İşçi Ve EÅŸya kaynağı olacak bir Bakkalın kapsama alanında olmak zorundalar. Aynı zamanda çalışmalarının bir maliyeti vardır.</p> + <p style="hp">Basketbol Sahaları konutların için spor ve eÄŸlence saÄŸlar. Çalışmaları için İşçi ve EÅŸyaya ihtiyaçları vardır. Ulaşıma baÄŸlanmak zorunda deÄŸiller. Bu durumda İşçi ve EÅŸya kaynağı olacak bir Bakkalın kapsama alanında olmak zorundalar. Aynı zamanda çalışmalarının bir maliyeti bulunmaktadır.</p> <p style="hp">Bir Basketbol Sahası yaptığınızda doÄŸrudan baÅŸlamaz. Potaların kurulmalarından önce genellikle 3 ay beklenir.</p> - <p style="hp">Basketbol Sahalarının kapsama alanını görmek için küçükekran altındaki Spor düğmesine tıklayın. Kapsama alanındaki yerler normal görünür, kapsama alanı dışındaki bölgeler koyu yeÅŸil.</p> - <p style="hp">Basketbol Sahaları, kapsama alanlarındaki konutların cazibesini artırır.</p> + <p style="hp">Basketbol Sahalarının kapsama alanını görmek için küçük ekran altındaki Spor düğmesine tıklayın. Kapsama alanındaki yerler normal görünürken, kapsama alanı dışındaki bölgeler koyu yeÅŸil görünürler.</p> + <p style="hp">Basketbol Sahaları, kapsama alanlarındaki konutların cazibesini arttırır.</p> <p style="hp">Basketbol Sahaları çalıştıklarını her ay deÄŸiÅŸen sıralı canlandırma ile gösterir.</p> <p style="hp">Bu bir Basketbol Sahası</p> @@ -14,12 +14,12 @@ <p style="hp">ve bu da harita kapsama görünümü simgesi</p> <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükekran</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük Ekran</a></li> <li><a href="goods">EÅŸya</a></li> <li><a href="market">Bakkal</a></li> <li><a href="jobs">İşçi</a></li> - <li><a href="msb-cricket">Spor Kapsama alanı</a></li> + <li><a href="msb-cricket">Spor Kapsama Alanı</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/dialogs.xml lincity-ng-2.9~git20150314/data/help/tr/dialogs.xml --- lincity-ng-2.0/data/help/tr/dialogs.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/dialogs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,15 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Bilgi Sekmeleri Yardımı</p> - <p>Hari-Sek</p> - <li><a href="mini-screen">Küçükharita</a></li> - <p>Bakkal-Sek</p> - <li><a href="pbar">Ä°statistikler Durum ÇubuÄŸu</a></li> - <p>YTL-Sek</p> + <p>Hari Sekmesi</p> + <li><a href="mini-screen">Küçük Harita</a></li> + <p>Bakkal Sekmesi</p> + <li><a href="pbar">Kaynaklar Durum ÇubuÄŸu</a></li> + <p>TRY Sekmesi</p> <li><a href="finance">Parasal</a></li> <li><a href="other-costs">DiÄŸer Masraflar</a></li> <li><a href="housing">Nüfus</a></li> - <p>Eko-Sek</p> - <li><a href="economy">Ekonomi Canlandırması</a></li> + <p>Eko Sekmesi</p> + <li><a href="economy">Ekonomi GrafiÄŸi</a></li> <li><a href="sustain">Sürdürülebilir GeliÅŸim Penceresi</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/economy.xml lincity-ng-2.9~git20150314/data/help/tr/economy.xml --- lincity-ng-2.0/data/help/tr/economy.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/economy.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,23 +1,23 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Ekonomi GrafiÄŸi</p> - <p style="hp">Bu canlandırma renklendirilmiÅŸ 4 çizgi içerir. Bunlar en önemli ekonomik göstergeleri belirtir.</p> + <p style="hp">Bu grafik renklendirilmiÅŸ 4 çizgi içerir. Bunlar en önemli ekonomik göstergeleri belirtir.</p> <li> <span color="brown">Nüfus</span> (Kahverengi) Kahverengi çizgi nüfusunuzu gösterir. - Kütük cetvel gibi görünür. + Logaritmik cetvel gibi görünür. </li> <li> <span color="blue">Evsiz</span> (mavi) - Mavi çizgi talep edilen ev miktarını gösterir. Yüksek canlandırma Evsiz nüfusun kare köküne orantılıdır. + Mavi çizgi talep edilen ev miktarını gösterir. GrafiÄŸin yüksekliÄŸi Evsiz nüfusun kare köküne orantılıdır. </li> <li> <span color="yellow">Ä°ÅŸsiz</span> (sarı) - Kesintisiz sarı çubuklar iÅŸsizlik olduÄŸunu gösterir. Canlandırmanın ölçeÄŸi nüfusunuzla deÄŸiÅŸir. Ä°lginizi buna çekmek için bu canlandırma kesintisizdir. + Kesintisiz sarı çubuklar iÅŸsizlik olduÄŸunu gösterir. GrafiÄŸin ölçeÄŸi nüfusunuzla deÄŸiÅŸir. Ä°lginizi buna çekmek için bu grafik kesintisizdir. </li> <li> <span color="red">Açlık</span> (kırmızı) - Kesintisiz kırmızı çubuklar açlığın olduÄŸunu gösterir. Canlandırmanın ölçeÄŸi nüfusunuzla deÄŸiÅŸir. Ä°lginizi buna çekmek için bu canlandırma kesintisizdir. + Kesintisiz kırmızı çubuklar açlığın olduÄŸunu gösterir. GrafiÄŸin ölçeÄŸi nüfusunuzla deÄŸiÅŸir. Ä°lginizi buna çekmek için bu grafik kesintisizdir. Bu çubuklar iÅŸsizlik çubuklarını yukarı çeker. </li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/export.xml lincity-ng-2.9~git20150314/data/help/tr/export.xml --- lincity-ng-2.0/data/help/tr/export.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/export.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Ä°thalat ve Ä°hracat alanları</p> - <p style="hp">Ä°thalat ve Ä°hracat, ilkinin size masraf ikincisinin ise gelir olduÄŸunu hariç tutarsak aynı ÅŸekilde çalışır . Ä°kiside bir Liman gerektirir. Bu durumda, detaylarda yalnızca Ä°hracatla ilgilenilmeli.</p> - <p style="hp">Ä°hracat için Liman bir Yolla baÄŸlantılı olmalı.</p> - <p style="hp">SaÄŸ taraflarından boylu boyunca nehre <b> baÄŸlanmalıdırlar</b>.</p> - <p style="hp">Ä°hracat bölgesi aldığı kadar verecek. Takasa ihtiyacınız varsa, fakat miktarı sınırlamak istiyorsanız, daha düşük kapasiteli bir ulaşım kullanmak isteyebilirsiniz, uzun bir parça kullanın yada ürünü bir market yoluyla geçirin. DoÄŸru ulaşım ÅŸekli için tecrübeye ihtiyacınız olacak.</p> + <p style="hp">Ä°thalat ve Ä°hracat, ilkinin masraf ikincisinin ise gelir olduÄŸunu hariç tutarsak aynı ÅŸekilde çalışır. Ä°kiside bir Liman gerektirir. Bu durumda, yalnızca Ä°hracat ayrıntılı anlatılacaktır.</p> + <p style="hp">Ä°hracat için Liman bir Yolla baÄŸlantılı olmalıdır.</p> + <p style="hp">SaÄŸ taraflarından boylu boyunca nehre <b>baÄŸlanmalıdırlar</b>.</p> + <p style="hp">Ä°hracat bölgesi aldığı kadar verecektir. Takasa ihtiyacınız varsa, fakat miktarı sınırlamak istiyorsanız, daha düşük kapasiteli bir ulaşım kullanmak isteyebilirsiniz, uzun bir parça kullanın veya ürünü bir market yoluyla geçirin. DoÄŸru ulaşım ÅŸekli için tecrübeye ihtiyacınız olacak.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="port">Liman</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="market">Bakkallar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/farm.xml lincity-ng-2.9~git20150314/data/help/tr/farm.xml --- lincity-ng-2.0/data/help/tr/farm.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/farm.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,19 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Çiflikler</p> - <p style="hp">Çiflikler insanların yemesi ve Fabrikaların ham maddeleri için yiyecek yetiÅŸtirir. Çifçiler yiyecekleri Bakkalara satabilirler. Bu iÅŸi traktörle gerçekleÅŸtirirler yani yola ihtiyaçları yoktur. Fakat istersen ulaşımla satabilirler. Kesinlikle Bakkalın Çiflik kapsama alanında olmasını garanti etmelisin.</p> - <p style="hp">Çifliklerin üretimi yeraltı sularına baÄŸlıdır. Sulu döşemeler yeÅŸildir, diÄŸerleri sarı-kahverengi (çöl yada verimsiz toprak gibi).</p> + <p style="htitle">Çiftlikler</p> + <p style="hp">Çiftlikler, insanların yemesi ve Fabrikaların ham maddeleri için yiyecek yetiÅŸtirir. Çiftçiler yiyecekleri Bakkallara satabilirler. Bu iÅŸi traktörle gerçekleÅŸtirirler; yani yola ihtiyaçları yoktur. Fakat isterseniz ulaşımla da satabilirler. Bakkalın Çiftlik kapsama alanında olmasını garanti etmelisiniz.</p> + <p style="hp">Çiftliklerin üretimi yeraltı sularına baÄŸlıdır. Sulu döşemeler yeÅŸildir, diÄŸerleri sarı kahverengi (çöl veya verimsiz toprak gibi).</p> - <p style="hp">Bu bir Çiflik</p> + <p style="hp">Bu bir Çiftlik</p> <img src="images/tiles/farm0.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/parks/farm.png" halign="center"/> - <p style="hp">Küçük bir miktardan daha fazla yiyecek saÄŸlamak için Çifliklerin İşçiye ihtiyacı vardır. ÇifliÄŸe elektrik vermek de yiyecek miktarını artıracaktır. 'Elektrik' aynı zamanda eski tip YeldeÄŸirmenlerini da kapsar, bunlar yiyeceÄŸin iÅŸlenmesine yardımcı olur böylece boÅŸ halden kurtulur.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hp">Küçük bir miktardan daha fazla yiyecek saÄŸlamak için Çiftliklerin İşçiye ihtiyacı vardır. ÇiftliÄŸe elektrik vermek de yiyecek miktarını arttıracaktır. 'Elektrik' aynı zamanda eski tip Rüzgar deÄŸirmenlerini de kapsar. Bunlar yiyeceÄŸin iÅŸlenmesine yardımcı olarak boÅŸ halden kurtulur.</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="tech-level">Teknoloji-Seviyesi</a></li> <li><a href="transport">Ulaşım</a></li> - <li><a href="windmill">YeldeÄŸirmeni</a></li> + <li><a href="windmill">Rüzgar deÄŸirmeni</a></li> <li><a href="food">Yiyecek</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/fast.xml lincity-ng-2.9~git20150314/data/help/tr/fast.xml --- lincity-ng-2.0/data/help/tr/fast.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/fast.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,9 +2,9 @@ <Document style="helpdocument"> <p style="htitle">Yüksek hız</p> <img src="images/gui/speed/fast.png"/> - <p style="hp">Bu yüksek hız düğmesi. Oyunun olabildiÄŸince hızlı çalışmasını saÄŸlar. Hızlı makinelerde hızlı konumu kullanırken 'durumun' çok hızlı geliÅŸebileceÄŸini dikkate alman gerek!</p> + <p style="hp">Bu yüksek hız düğmesi. Oyunun olabildiÄŸince hızlı çalışmasını saÄŸlar. Hızlı bilgisayarlarda hızlı konumu kullanırken 'durumun' çok hızlı geliÅŸebileceÄŸini dikkate almanız gerek!</p> - <p style="hsubtitle">Atrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="medium">Orta</a></li> <li><a href="slow">YavaÅŸ</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/finance.xml lincity-ng-2.9~git20150314/data/help/tr/finance.xml --- lincity-ng-2.0/data/help/tr/finance.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/finance.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,10 +1,10 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Parasal penceresi</p> - <p style="hp">Bu pencereye soltıklamak 'küresel para ayarı', bir öncekinde detayları belirtilen 'diÄŸer masraflar' ve 'nüfus masrafları' pencereleri arasında geçiÅŸ yaptıracak.</p> - <p style="hp">Parasal ekran her Ocak ayının 1'inde güncellenir. Rakamlar önceki yılın gelir yada giderlerine tekabül eder.</p> - <p style="hp">'Toplam' rakam hesabındaki paranın miktarıdır. 'Kırmızıda' iken muhakkak ki yapamayacağın ÅŸeyler var.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hp">Bu pencereye sol tıklamak 'küresel para ayarı', bir öncekinde detayları belirtilen 'diÄŸer masraflar' ve 'nüfus masrafları' pencereleri arasında geçiÅŸ yaptıracaktır.</p> + <p style="hp">Parasal ekran her Ocak ayının 1'inde güncellenir. Rakamlar önceki yılın gelir veya giderlerini gösterir.</p> + <p style="hp">'Toplam' rakam, hesabındaki paranın miktarıdır. 'Kırmızı' iken yapamayacağın ÅŸeyler olacaktır.</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="housing">Åžahıs penceresi</a></li> <li><a href="other-costs">DiÄŸer Masraflar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/firestation.xml lincity-ng-2.9~git20150314/data/help/tr/firestation.xml --- lincity-ng-2.0/data/help/tr/firestation.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/firestation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,11 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Ä°tfaiyeler</p> - <p style="hp">Ä°tfaiyeler kapsama alanlarında yangın çıkmasını yada yayılmalarını engeller. Çalışmaları için İşçi ve EÅŸyaya ihtiyaçları var. Ulaşıma baÄŸlantılı olmak zorunda deÄŸiller, ihtiyaçları olan İşçi ve EÅŸyaları saÄŸlamak için bir Bakkalın kapsama alanında olmak zorundalar. Ayrıca çalışmaları masrafa yol açar.</p> - <p style="hp">Bir Ä°tfaiye yaptığında doÄŸrudan çalışmaz. Hazır olmaları için genellikle 3 ay kadar beklenir.</p> - <p style="hp">Ä°tfaiyelerin kapsama alanlarını görmek için<i> küçük ekranın </i>altındaki Ä°tfaiye düğmesine basın. Korunan bölgeler normal görünür, korunmayan bölgeler koyu yeÅŸil.</p> - <p style="hp">Ä°tfaiyeler kapsama alanlarındaki yerleÅŸim alanlarının cazibesini artırır.</p> - <p style="hp">Ä°tfaiyeler çalıştılarını aylık sıralı deÄŸiÅŸen canlandırmalarla gösterir.</p> + <p style="hp">Ä°tfaiyeler kapsama alanlarında yangın çıkmasını veya yayılmalarını engeller. Çalışmaları için İşçi ve EÅŸyaya ihtiyaçları vardır. Ulaşıma baÄŸlantılı olmak zorunda deÄŸildirler. Ä°htiyaçları olan İşçi ve EÅŸyaları saÄŸlamak için bir Bakkalın kapsama alanında olmaları yeterlidir. Ayrıca çalışmaları masrafa yol açar.</p> + <p style="hp">Bir Ä°tfaiye yaptığınızda doÄŸrudan çalışmaz. Hazır olmaları için genellikle 3 ay kadar beklenir.</p> + <p style="hp">Ä°tfaiyelerin kapsama alanlarını görmek için <i>küçük ekranın</i> altındaki Ä°tfaiye düğmesine basın. Korunan bölgeler normal görünürken, korunmayan bölgeler koyu yeÅŸil görünür.</p> + <p style="hp">Ä°tfaiyeler, kapsama alanlarındaki yerleÅŸim alanlarının cazibesini arttırır.</p> + <p style="hp">Ä°tfaiyeler, çalıştılarını aylık sıralı deÄŸiÅŸen canlandırmalarla gösterir.</p> <p style="hp">Bu bir Ä°tfaiye</p> <img src="images/tiles/firestation1.png" halign="center"/> @@ -14,7 +14,7 @@ <p style="hp">ve bu da kapsama alanı düğmesi</p> <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="mini-screen">Küçük ekran</a></li> <li><a href="goods">EÅŸya</a></li> <li><a href="market">Bakkal</a></li> diff -Nru lincity-ng-2.0/data/help/tr/food.xml lincity-ng-2.9~git20150314/data/help/tr/food.xml --- lincity-ng-2.0/data/help/tr/food.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/food.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,13 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Yiyecek</p> - <p style="hp">Yiyecek Çiflikte üretilebilir yada Liman ile ithal edilebilir.</p> - <p style="hp">Ä°nsanlarının hayatta kalmak için yiyeceÄŸe ihtiyacı var. Onları aç bırakırsan, göç edebilirler ve bir miktar açlıktan ölümler olabilir.</p> - <p style="hp">Fabrikalar da yiyecek kullanır. Çevirilirler, iÅŸlenirler, pamuktan giyisi yapılırlar. Dikkat et çok fazla yiyecek kullanabilirler!.</p> + <p style="hp">Yiyecek Çiftlikte üretilebilir veya Liman ile ithal edilebilir.</p> + <p style="hp">Ä°nsanlarının hayatta kalmak için yiyeceÄŸe ihtiyacı var. Aç bırakırsanız, göç edebilirler ve bir kısmı açlıktan ölebilir.</p> + <p style="hp">Fabrikalar da yiyecek kullanır. Dönüştürülürler, iÅŸlenirler, pamuktan giyisi yapılırlar. Dikkat edin! Çok fazla yiyecek kullanabilirler!</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="farm">Çiflik</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="commodities">EÅŸyalar</a></li> + <li><a href="farm">Çiftlik</a></li> <li><a href="port">Liman</a></li> <li><a href="mill">Fabrika</a></li> <li><a href="steel">Çelik</a></li> diff -Nru lincity-ng-2.0/data/help/tr/goods.xml lincity-ng-2.9~git20150314/data/help/tr/goods.xml --- lincity-ng-2.0/data/help/tr/goods.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/goods.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,13 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">EÅŸya</p> - <p style="hp">EÅŸya çoÄŸu birimin çalışması için gereklidir. Ä°nsanlar da çokca sever ve eÅŸyalarıları saÄŸlayabileceÄŸin mekanlar daha çekicidir.</p> - <p style="hp">EÅŸyalar vergilendirilir böylelikle parasal durumuna çokça yardımcı olacak.</p> + <p style="hp">EÅŸya çoÄŸu birimin çalışması için gereklidir. Ä°nsanlar eÅŸyaları çok sever ve eÅŸya saÄŸlayabileceÄŸiniz mekanlar daha çekicidir.</p> + <p style="hp">EÅŸyalar vergilendirilir ve böylelikle parasal durumunuza çokça yardımcı olurlar.</p> <p style="hp">EÅŸyalar; Çömlekçiler, Demirciler, Fabrikalar ve Hafif Sanayi tarafından saÄŸlanır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="pottery">Çömlekçilik</a></li> + <li><a href="commodities">EÅŸyalar</a></li> <li><a href="blacksmith">Demirciler</a></li> <li><a href="mills">Fabrikalar</a></li> <li><a href="industryl">Hafif Sanayi</a></li> diff -Nru lincity-ng-2.0/data/help/tr/health.xml lincity-ng-2.9~git20150314/data/help/tr/health.xml --- lincity-ng-2.0/data/help/tr/health.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Hastane</p> - <p style="hp">Hastane konutlar için saÄŸlık koruması saÄŸlar. Her yöndeki 4 karelik bir bölgede etkilidirler.</p> + <p style="hp">Hastane, konutlar için saÄŸlık koruması saÄŸlar. Her yöndeki 4 karelik bir bölgede etkilidirler.</p> <p style="hp">SaÄŸlık alanları etraflarındaki konutları yaÅŸamak için daha çekici kılar, kirliliÄŸe baÄŸlı hastalıklardan ölüm daha az olur ve buralarda yaÅŸayan insanlar çevredeki iÅŸlerde daha verimli olurlar (hastalıklarla daha az zaman kaybederler).</p> - <p style="hp">Hastaneler çok pahalıdır, yıllık 60,000. Bununla birlikte, 'doÄŸal olmayan ölümlerin' masrafını azaltır ve vergi geliri saÄŸlayabilir (insanların çalışması için olan bir yer olduÄŸu sürece).</p> - <p style="hp">Bir Hastane yaptığında çalışması 3 ay alır. EÅŸya kullanır. Fakat işçi kullandıkları kadar deÄŸil. Çevrelerindeki bölgelerin hastalıklarındaki azalmayla daha fazla istihdam oluÅŸturdukları hesaplandığında, gelir katkısı saÄŸlarlar.</p> + <p style="hp">Hastaneler çok pahalıdır. Yıllık masraf 60.000. Bununla birlikte, 'doÄŸal olmayan ölümlerin' masrafını azaltır ve vergi geliri saÄŸlayabilir (insanların çalışması için bir yer olduÄŸu sürece).</p> + <p style="hp">Bir Hastane yaptığında çalışması 3 ay alır. Hastane, EÅŸya kullanır, fakat işçi kullandıkları kadar deÄŸil. Çevrelerindeki bölgelerin hastalıklarındaki azalmayla daha fazla istihdam oluÅŸturdukları hesaplandığında, gelir katkısı saÄŸlarlar.</p> <p style="hp">Ulaşıma baÄŸlanmaları gerekmez. BaÄŸlanmazlarsa bir Bakkalın kapsama alanında olmaları gerekir.</p> - <p style="hp">SaÄŸlık kapsama alanlarını görmek için 'küçükekranın' altındaki saÄŸlık düğmesine basın (saÄŸ alt köşede). Kapsama alanındaki bölgeler normal görünür.</p> + <p style="hp">SaÄŸlık kapsama alanlarını görmek için 'küçük ekran'da saÄŸ alt köşedeki saÄŸlık düğmesine basın. Kapsama alanındaki bölgeler normal görünür.</p> <p style="hp">Bu bir Hastane</p> <img src="images/tiles/health.png" halign="center"/> @@ -15,7 +15,7 @@ <p style="hp">ve bu da kapsama alanı düğmesi</p> <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="residential">Konutlar</a></li> <li><a href="pollution">Kirlilik</a></li> <li><a href="jobs">İşçi</a></li> diff -Nru lincity-ng-2.0/data/help/tr/help.xml lincity-ng-2.9~git20150314/data/help/tr/help.xml --- lincity-ng-2.0/data/help/tr/help.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/help.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ <?xml version="1.0" encoding="utf-8"?> <Document style="helpdocument"> <p style="htitle">Lincity Yardım</p> - <p style="hp">Bu Lincity yardım sistemi. Lütfen mavi yazılardan birinin üzerine tıklayarak bir konu seçin. Mavi yazılar genellikle baÅŸka bir dosyaya olan bağı gösterir. Önceki sayfaya dönmek için üst-soldaki ok iÅŸaretini kullanın.</p> - <p style="hp">Oyunu oynarken, Yardım düğmesini kullanarak bir çok yerde yardım alabilirsiniz (F1), yada sol-üstteki menüden belirli bir simgenin üzerine saÄŸtıklayabilirsiniz.</p> + <p style="hp">Bu pencere Lincity'nin yardım sistemidir. Lütfen mavi yazılardan birinin üzerine tıklayarak bir konu seçin. Mavi yazılar genellikle baÅŸka bir dosyaya olan bağı gösterir. Önceki sayfaya dönmek için sol üstteki ok iÅŸaretini kullanın.</p> + <p style="hp">Oyunu oynarken, Yardım düğmesini kullanarak bir çok yerde yardım alabilir, F1 veya sol üstteki menüden belirli bir simgenin üzerine saÄŸ tıklayabilirsiniz.</p> - <li><a href="tutorial">EÄŸitmen</a></li> + <li><a href="tutorial">Öğretici</a></li> <li><a href="keys">Klavye komutları</a></li> <li><a href="button-index">Yapılabilir bütün girdilerin listesi</a></li> - <li><a href="mini-screen">Küçükharitada yardım</a></li> - <li><a href="dialogs">Bilgi sekmelerinde yardım</a></li> + <li><a href="mini-screen">Küçük harita yardımı</a></li> + <li><a href="dialogs">Bilgi sekmeleri yardımı</a></li> <li><a href="index">Anasayfa</a></li> - <p style="htitle">Yansız</p> - <p style="hp">Lincity'yi <a href="sustain"> sürdürülebilir ekonomi </a>inÅŸa ederek yada - bütün ulusu <a href="rocket"> uzaygemisi </a>ile tahliye ederek kazanabilirsiniz .</p> + <p style="htitle">Amaç</p> + <p style="hp">Lincity'yi <a href="sustain"> sürdürülebilir ekonomi </a>inÅŸa ederek veya + bütün ulusu <a href="rocket"> uzaygemisi </a> ile tahliye ederek kazanabilirsiniz.</p> </Document> diff -Nru lincity-ng-2.0/data/help/tr/housing.xml lincity-ng-2.9~git20150314/data/help/tr/housing.xml --- lincity-ng-2.0/data/help/tr/housing.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/housing.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,16 +3,16 @@ <p style="htitle">Ulus penceresi</p> <p style="hp">Bu Ulus penceresi.</p> <p style="hp">Bu pencere 7 istatistik gösterir:</p> - <li>Nüfus - konutlarınızın nüfusunu hösterir. Bu rakam Evsizleri içermez.</li> + <li>Nüfus - konutlarınızın nüfusunu gösterir. Bu rakam Evsizleri içermez.</li> <li>Ev sahibi - konutlarda yaÅŸayan insanların, ÅŸehirdeki toplam sayısı.</li> <li>Ev sahibi % - Åžehirde, konutlarda yaÅŸayanların yüzdesini gösterir.</li> <li>Kulübeler - Åžehrinizdeki gecekondu semtlerinin sayısını gösterir.</li> - <li>DoÄŸal olmayan ölümler - Geçen ay içinde kirlilik yada açlıktan ölenlerin sayısını gösterir.</li> + <li>DoÄŸal olmayan ölümler - Geçen ay içinde kirlilik veya açlıktan ölenlerin sayısını gösterir.</li> <li>Ä°ÅŸsiz % - iÅŸsizliÄŸin, nüfusunuzdaki yüzdesini gösterir.</li> <li>Açlık % - Açlığın, nufusunuzdaki yüzdesini gösterir.</li> - <p style="hp">Bu pencerenin üstüne soltık; Parasal, DiÄŸer masraflar ve Ev edindirme pencereleri arasında dönüşüm yaptırır.</p> + <p style="hp">Bu pencerenin üstüne sol tıklamak; Parasal, DiÄŸer masraflar ve Ev edindirme pencereleri arasında dönüşüm yaptırır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="finance">Parasal ekran</a></li> <li><a href="other-costs">DiÄŸer Masraflar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/index.xml lincity-ng-2.9~git20150314/data/help/tr/index.xml --- lincity-ng-2.0/data/help/tr/index.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/index.xml 2015-05-05 16:32:49.000000000 +0000 @@ -9,7 +9,7 @@ <li><a href="market">Bakkallar</a></li> <li><a href="dialogs">Bilgi sekmeleri yardımı</a></li> <li><a href="steel">Çelik</a></li> -<li><a href="farm">Çiflikler</a></li> +<li><a href="farm">Çiftlikler</a></li> <li><a href="pottery">Çömlekçiler</a></li> <li><a href="tip">Çöp (Atık dökme)</a></li> <li><a href="pbar">Çubuk</a></li> @@ -19,18 +19,19 @@ <li><a href="bulldoze">Dozer</a></li> <li><a href="pause">Duraklat düğmesi</a></li> <li><a href="button-index">Düğme baÅŸlığı seç</a></li> -<li><a href="tutorial">EÄŸitmen</a></li> +<li><a href="tutorial">Öğretici</a></li> <li><a href="tutorial-overview">Ekrana genel bakış</a></li> <li><a href="economy">Ekonomi canlandırması</a></li> <li><a href="powerline">Elektrik Hatları</a></li> <li><a href="goods">EÅŸya</a></li> +<li><a href="commodities">EÅŸyalar</a></li> <li><a href="msb-power">Elektrik kapsama alanı</a></li> <li><a href="mill">Fabrikalar</a></li> <li><a href="keys">Fare</a></li> <li><a href="rocket">Füze Rampaları</a></li> <li><a href="tutorial-advanced">GeliÅŸmiÅŸ</a></li> <li><a href="recycle">Geridönüşüm Merkezleri</a></li> -<li><a href="powerssolar">GüneÅŸsel Elektrik Ãœreteci</a></li> +<li><a href="powerssolar">GüneÅŸ Panelleri</a></li> <li><a href="industryl">Hafif Sanayi alanları</a></li> <li><a href="msb-normal">Harita krokisi</a></li> <li><a href="health">Hastaneler</a></li> @@ -47,13 +48,13 @@ <li><a href="coal">Kömür</a></li> <li><a href="coalmine">Kömür Madeni</a></li> <li><a href="msb-coal">Kömür Örtüsü</a></li> -<li><a href="powerscoal">Kömürden Elektrik Ãœreteci</a></li> -<li><a href="mini-screen">Küçükharita</a></li> +<li><a href="powerscoal">Termik Santral</a></li> +<li><a href="mini-screen">Küçük harita</a></li> <li><a href="port">Limanlar</a></li> <li><a href="help">Lincity Yardım</a></li> <li><a href="ore">Mineral</a></li> <li><a href="oremine">Mineral Madeni</a></li> -<li><a href="park">Millet Bahçeleri</a></li> +<li><a href="park">Parklar</a></li> <li><a href="river">Nehir/Su</a></li> <li><a href="school">Okullar</a></li> <li><a href="medium">Orta hız</a></li> @@ -62,6 +63,7 @@ <li><a href="tutorial-scenario">Senaryo</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="query">Sorgu</a></li> +<li><a href="waterwell">Su kuyuları</a></li> <li><a href="sustain">Sürdürülebilirlik ilerleme penceresi</a></li> <li><a href="track">Tali yollar</a></li> <li><a href="tech-level">Teknoloji Seviyesi</a></li> @@ -72,7 +74,7 @@ <li><a href="university">Ãœniversiteler</a></li> <li><a href="slow">YavaÅŸ hız</a></li> <li><a href="residential">YerleÅŸim alanları</a></li> -<li><a href="windmill">YeldeÄŸirmenleri</a></li> +<li><a href="windmill">Rüzgar deÄŸirmenleri</a></li> <li><a href="food">Yiyecek</a></li> <li><a href="road">Yollar</a></li> <li><a href="fast">Yüksek hız</a></li> diff -Nru lincity-ng-2.0/data/help/tr/industryh.xml lincity-ng-2.9~git20150314/data/help/tr/industryh.xml --- lincity-ng-2.0/data/help/tr/industryh.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/industryh.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Ağır Sanayi (çelik iÅŸleme)</p> - <p style="hp">Çelik iÅŸleme; mineralden, işçiden ve elektrikten çelik saÄŸlar. Mineral doÄŸrudan baÄŸlantılı olan ulaşımdan elde edilir.ÇeliÄŸin ulaşımda olduÄŸu gibi. İşçi yerel bir Bakkaldan saÄŸlanır. Ulaşım sol-üst köşeye baÄŸlanır.</p> - <p style="hp">Çelik iÅŸlemeye Elektrik iki ÅŸekilde saÄŸlanabilir. Ä°lki; baÄŸlantılı bir ulaşımdan doÄŸrudan elde edilen Kömürdür. Ä°kincisi elektriktendir: Çelik iÅŸlemeyi kapsayan bir yada iki Trafo bulundurmanız gerekir (YeldeÄŸirmenleri Çelik iÅŸleme için Elektrik <b> saÄŸlamaz</b>).</p> - <p style="hp">Çelik işçiliÄŸi kirliliÄŸe sebep olur.</p> - <p style="hp">Ağır Sanayinin çalıştığını, herzamanki gibi üzerine tıklayarak görebilirsiniz, böylece canlandırma hareketlenecek.</p> + <p style="hp">Çelik iÅŸleme; mineralden, işçiden ve elektrikten çelik saÄŸlar. Mineral doÄŸrudan baÄŸlantılı olan ulaşımdan elde edilir. + <p style="hp">Çelik iÅŸlemeye elektrik iki yolla saÄŸlanabilir. Ä°lk yol yanan kömürdür. Ä°kinci yol ise, ulaşım ile baÄŸlı etkisiz kilowatt veya elektrik hatları ile doÄŸrudan baÄŸlı megawatt büyüklüğündeki elektrikledir. Rüzgar deÄŸirmenleri, çok az yeterli elektrik saÄŸlar.</p> + <p style="hp">Çelik iÅŸleme <a href="pollution"> kirliliÄŸe </a> sebep olur.</p> + <p style="hp">Ağır Endüstriyi, üzerine tıklarıktan sonra canlandırmanın baÅŸlatılmasından çalıştığını anlayabilirsiniz.</p> + <p style="hp">Bu bir Çelik iÅŸleme</p> <img src="images/tiles/industryhl1.png" halign="center"/> <p style="hp">ve bu da düğmesi</p> <img src="images/gui/buttonpanel/industry/heavyindustry2.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="pollution">Kirlilik</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="power">Elektrik</a></li> diff -Nru lincity-ng-2.0/data/help/tr/industryl.xml lincity-ng-2.9~git20150314/data/help/tr/industryl.xml --- lincity-ng-2.0/data/help/tr/industryl.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/industryl.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Hafif Sanayi Bölgeleri</p> - <p style="hp">Hafif Sanayi; Minerali EÅŸyaya çevirir. Dönüştürme, çelik bulunabilir olduÄŸunda daha verimlidir. Elektrik çeliÄŸin daha uzaÄŸa çıkışını artırır. YeldeÄŸirmenleri bu bölgeler için elektrik <b> saÄŸlamaz</b>.</p> - <p style="hp">Yukarıda bahsedilenlere bir kural gibi göz atın Hafif Sanayi bölgesinin çıktısı, baÅŸta hammaddenin miktarına baÄŸlı olarak çevirebilecek işçi saÄŸlar ve aynı zamanda eÅŸya miktarını artırabilir.</p> - <p style="hp">Bu bölgeler Mineral, Çelik ve eÅŸya takası için doÄŸrudan ulaşıma baÄŸlanır. İşçi saÄŸlamak için bir Bakkala ihtiyaç duyabilirler.</p> - <p style="hp">Bu bölgeler görüldüğü gibi <b> sadece </b> sol üst kenarlarından ulaşıma baÄŸlanır. BaÄŸlandığında ulaşım eÄŸimlenecek.</p> + <p style="hp">Hafif endüstri, minerali eÅŸyaya dönüştürür. Bu dönüşüm çelik kullanılabilir olduÄŸunda daha da önemli olur. Güç, çıktıyı sabit olarak arttırır. Etkisiz kilowatt birimi, ulaşım ile aktarılabilir. Megawatt ise, elektrik hatları ile doÄŸrudan saÄŸlanabilir. Rüzgar deÄŸirmenleri yeterli kilowatt seviyesinde elektrik saÄŸlayacaklardır.</p> + <p style="hp">BaÅŸ parmak kuralı olarak, hafif endüstrinin çıktısı, işçiler de dahil olmak üzere alabileceÄŸi ve <b>atılabilecek</b> hammadde eÅŸyalarının miktarına da baÄŸlıdır. + <p style="hp">Bu alanlar; işçi, mineral, çelik, kilowatt ve eÅŸya deÄŸiÅŸimi için ulaşıma doÄŸrudan baÄŸlanır. Tam kapasitede çalışabilmeleri için bir Bakkala ihtiyaç duyabilirler.</p> + + <p style="hp">Hafif sanayiler <a href="pollution">kirliliÄŸe </a> yol açar.</p> <p style="hp">Bu bir Hafif Sanayi</p> <img src="images/tiles/industryll1.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/industry/lightindustry.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="transport">Ulaşım</a></li> <li><a href="road">Yollar</a></li> <li><a href="rail">Demiryolları</a></li> diff -Nru lincity-ng-2.0/data/help/tr/jobs.xml lincity-ng-2.9~git20150314/data/help/tr/jobs.xml --- lincity-ng-2.0/data/help/tr/jobs.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/jobs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,12 +1,12 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">İçi</p> - <p style="hp">YerleÅŸim bölgelerinde yaÅŸayan insanlardan işçi saÄŸlanır. İşçiler görevlendirilmek üzere bir çok bölgede kullanılırlar. Bazı bölgeler sadece yapı aÅŸamasında işçiye ihtiyaç duyar örn.; Anıtlar.</p> - <p style="hp">İşçi saÄŸlamak istediÄŸin bölgeyi bir Bakkal kapsama alanında yapabilirsin yada Bakkalı o bölgede. Şüphesiz Bakkalda işçileri bir yerden almalı. Bakkallar işçilerini iki yolla alır. Ä°lki; eÄŸer kapsama alanında bir yerleÅŸim alanı varsa nüfusa orantılı olarak işçi saÄŸlar ve işçiler birçok Bakkal arasında paylaşılabilir. Ä°kinci yol ulaşımdır, bir Bakkal İşçilerin gideceÄŸi yere biraz uzak ise, ulaşımdaki işçi miktarı biraz artacak. Ulaşıma baÄŸlanmış, işçilere kısa olacak bir kaç Marketin baÄŸlı olduÄŸu ulaşım, işçilerin Tali yol, Yol yada demiryolu boyunca akışını tutacaktır.</p> - <p style="hp">EÄŸer bir Bakkalın işçisi 'tam' olursa yerleÅŸim bölgesinden kabulü durduracak. EÄŸer bu olduÄŸunda kapsama alanında baÅŸka tam olmayan market yoksa insanlar iÅŸsiz kalacak.</p> - <p style="hp">YerleÅŸim bölgesinin kapsama alanında olduÄŸu bir Hastane, yerel bir kaç Bakkalın işçi saÄŸlama sayısını artıracaktır.</p> + <p style="htitle">İşçi</p> + <p style="hp">YerleÅŸim bölgelerinde yaÅŸayan insanlardan işçi saÄŸlanır. İşçiler görevlendirilmek üzere bir çok bölgede kullanılırlar. Bazı bölgeler sadece yapı aÅŸamasında işçiye ihtiyaç duyar. Örn.; Anıtlar.</p> + <p style="hp">İşçi saÄŸlamak istediÄŸiniz bölgeyi bir Bakkal kapsama alanında yapabilir veya Bakkalı o bölgede inÅŸa edebilirsiniz. Bakkalın da işçileri bir yerden alması gerektiÄŸinden, ÅŸu iki yolla işçi alımı yapılır: Ä°lki; eÄŸer kapsama alanında bir yerleÅŸim alanı varsa nüfusa orantılı olarak işçi saÄŸlar ve işçiler birçok Bakkal arasında paylaşılabilir. Ä°kinci yol ulaşımdır, bir Bakkal İşçilerin gideceÄŸi yere biraz uzak ise, ulaşımdaki işçi miktarı biraz artacak. Ulaşıma baÄŸlanmış, işçilere kısa olacak bir kaç Marketin baÄŸlı olduÄŸu ulaşım, işçilerin Tali yol, Yol veya demiryolu boyunca akışını tutacaktır.</p> + <p style="hp">EÄŸer bir Bakkalın işçisi 'tam' olursa yerleÅŸim bölgesinden kabulü durduracak. Bu olduÄŸunda kapsama alanında baÅŸka tam olmayan bakkal yoksa insanlar iÅŸsiz kalacak.</p> + <p style="hp">YerleÅŸim bölgesinin kapsama alanında olduÄŸu bir Hastane, yerel bir kaç Bakkalın işçi saÄŸlama sayısını arttıracaktır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="residential">Konut</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="market">Bakkallar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/keys.xml lincity-ng-2.9~git20150314/data/help/tr/keys.xml --- lincity-ng-2.0/data/help/tr/keys.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/keys.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,7 +5,10 @@ <p style="hp">'ESC(escape)' Sorgu aracına geçer.</p> <p style="hp">'b' geçerli araç ve Dozer arasında geçiÅŸ.</p> <p style="hp">'h' yüksek yapıları saklar. Yüksek yapıları görmek için tekrar basın.</p> - <p style="hp">'v' Küçükharita kroki konumları arasında geçiÅŸ yapar.</p> + <p style="hp">'v' Küçük harita kroki konumları arasında geçiÅŸ yapar.</p> + <p style="hp">m,n Ulaşım örtü kipleri arasında gezinme</p> + <p style="hp">g, imleç altındaki alan hakkında bilgi gösterir.</p> + <p style="hp">t bilgi göstergesindeki sayfalar arasında geçiÅŸ için</p> <p style="hp">'num_artı' yakınlaÅŸtırır</p> <p style="hp">'num_eksi' uzaklaÅŸtırır</p> <p style="hp">'num_enter' %100 yakınlaÅŸtırır</p> @@ -19,19 +22,19 @@ <p style="hp">'num6' ana ekranı kuzey-doÄŸuya kaydırır</p> <p style="hp">'num8' ana ekranı kuzey-batıya kaydırır</p> <p style="hp">Ä°ÅŸaretçiyle aynıdırlar</p> - <p style="hp">rakamlarla daha hızlı kaydırma için 'shift'e basılı tutun</p> + <p style="hp">rakamlarla daha hızlı kaydırma için 'Ãœst Karakter'e basılı tutun</p> <p style="hp">'F12' hızlı kayıt</p> <p style="hp">'F9' hızlı yükleme</p> <p style="htitle">Fare</p> <p style="hp">saÄŸ:</p> - <p style="hp">Ana ekranı saÄŸ-düğme ile sürükleyin.</p> - <p style="hp">ana ekranda saÄŸ-tık, ana ekranın ortasını fare iÅŸaretçisinin hizasına getirir.</p> + <p style="hp">Ana ekranı saÄŸ düğme ile sürükleyin.</p> + <p style="hp">Ana ekranda saÄŸ tıklamak, ana ekranın ortasını fare iÅŸaretçisinin hizasına getirir.</p> <p style="hp">orta:</p> <p style="hp">iÅŸaretçi altındaki bölge ile ilgili bilgi almak için orta düğmeye tıklayın.</p> <p style="hp">sol:</p> - <p style="hp">Küçük ekranda yıklanılan yeri ana ekranda gösterir.</p> - <p style="hp">Seçili aracın iÅŸlemini uygular. Yıkar yada yapılan yapının bilgisini gösterir.</p> + <p style="hp">Küçük ekranda yıkılan yeri ana ekranda gösterir.</p> + <p style="hp">Seçili aracın iÅŸlemini uygular. Yıkar veya yapılan yapının bilgisini gösterir.</p> <p style="hp">teker:</p> <p style="hp">yukarı: yakınlaÅŸtırır</p> <p style="hp">aÅŸağı: uzaklaÅŸtırır</p> diff -Nru lincity-ng-2.0/data/help/tr/market.xml lincity-ng-2.9~git20150314/data/help/tr/market.xml --- lincity-ng-2.0/data/help/tr/market.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/market.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,18 +2,18 @@ <Document style="helpdocument"> <p style="htitle">Bakkal</p> <p style="hp">Bakkal Lincity'de kilit bir yapıdır.</p> - <p style="hp">Bakkal muhtemelen o bölgele için kötü isim. Daha çok Ä°ÅŸ merkezleri, dükkanlar, ambar ve bakkal gibi bir çok iÅŸlevi içerirler. Etraflarındaki bölgelere Yiyecek, İşçi, Kömür, EÅŸya ve Çelik alıp-satarlar ve ulaşım gibi nakliye ederler.</p> + <p style="hp">Bakkal muhtemelen bu alanlar için kötü bir isim. Daha çok iÅŸ merkezleri, dükkanlar, ambar ve market gibi bir çok iÅŸlevi içerirler. Etraflarındaki bölgelere ve yollar gibi yerlere Yiyecek, İşçi, Kömür, EÅŸya ve Çelik alıp satarlar.</p> - <p style="hp">Özellikle bir yapının yardım dosyasında belirtilmemiÅŸ ise bir Bakkal <b> kapsama alanındaki </b> tüm takaslarını <b> ulaşıma ihtiyacı olmadan </b> gerçekleÅŸtirir. Bir yapının Bakkal kapsama alanında olduÄŸunu kontrol için <a href="msb-transport"> Ulaşım ve Bakkal kapsama alanı</a>'nı kullanın.</p> + <p style="hp">Özellikle bir yapının yardım dosyasında belirtilmemiÅŸ ise bir Bakkal <b> kapsama alanındaki </b> tüm takaslarını <b> ulaşıma ihtiyacı olmadan </b> gerçekleÅŸtirir. Bir yapının Bakkal kapsama alanında olduÄŸunu denetlemek için <a href="msb-transport"> Ulaşım ve Bakkal kapsama alanı</a>'nı kullanın.</p> <li>Ä°nsanlar yaÅŸadıkları yerleÅŸim bölgesine yürüme mesafesindeki Bakkallardan yiyecek, eÅŸya ve iÅŸ elde edebilirler.</li> - <li>Tüm çalışma bölgeleri ihtiyacı olundukları işçileri Bakkallardan saÄŸlarlar.</li> - <li>Çiflikler Bakkallara doÄŸrudan yiyecek satabilirler.</li> + <li>Tüm çalışma bölgeleri ihtiyacı olduÄŸu işçileri Bakkallardan saÄŸlarlar.</li> + <li>Çiftlikler Bakkallara doÄŸrudan yiyecek satabilirler.</li> <li>Fabrika, çömlekçi ve demirciler yakınlarındaki Bakkallara doÄŸrudan eÅŸya satabilir, ayrıca hammaddelerini de aynı Bakkaldan karşılarlar.</li> <p style="hp">EÄŸer hiç bir Bakkal kullanılabilir deÄŸilse o yapıların <a href="transport"> ulaşıma </a> ihtiyacı vardır.</p> - <p style="hp">Küçük penceredeki ikinci sekme <b> toplam bakkal birikimini </b> ve iÅŸlem çubukları nasıl yavaÅŸ yavaÅŸ geliÅŸtiÄŸini gösterir. Küçükharitalarla birleÅŸimde (küçükdüğmeler hemen altında) birkaç belirli kaynağın (yiyecek, istihdam ...) ayrıntılarını kavramanıza da yardımcı olabilir. </p> + <p style="hp">Küçük penceredeki ikinci sekme <b> toplam bakkal birikimini </b> ve iÅŸlem çubukları nasıl yavaÅŸ yavaÅŸ geliÅŸtiÄŸini gösterir. Küçük haritalarla birleÅŸimde (hemen altındaki küçük düğmeler) birkaç belirli kaynağın (yiyecek, istihdam ...) ayrıntılarını kavramanıza da yardımcı olabilir. </p> - <p style="hsubtitle">Bakkalların ne alış-veriÅŸi yapabileceÄŸini kontrol etmek.</p> - <p style="hp">Bir marketi seçerek ulaşım üzerinden yapabileceÄŸi alış-veriÅŸlerin görevini kontrol edebilirsiniz. Bir marketin üzerine çiftıklayın ve ekranın sol üst kenarında seçili ticaretlerin ne olduÄŸunu gösteren pencere belirir. Öntanımlı ayar herÅŸeyin ticaretinin yapılmasıdır.</p> + <p style="hsubtitle">Bakkalların ne alışveriÅŸi yapabileceÄŸini kontrol etmek.</p> + <p style="hp">Bir marketi seçerek ulaşım üzerinden yapabileceÄŸi alışveriÅŸlerin görevini kontrol edebilirsiniz. Bir marketin üzerine çift tıklayın ve ekranın sol üst kenarında seçili ticaretlerin ne olduÄŸunu gösteren pencereye bakın. Öntanımlı ayar her ÅŸeyin ticaretinin yapılmasıdır.</p> <p style="hp">Bu bir Bakkal</p> <img src="images/tiles/market-empty.png" halign="center"/> @@ -21,11 +21,11 @@ <img src="images/gui/buttonpanel/industry/market.png" halign="center"/> <p style="hp">Bu ticarete izin verildiÄŸini belirtir.</p> <img src="images/gui/checkbox/checkbox_checked.png" halign="center"/> - <p style="hp">Bu ticarete izin <b> verilmediÄŸini </b> elirtir.</p> + <p style="hp">Bu ticarete izin <b> verilmediÄŸini </b> belirtir.</p> <img src="images/gui/checkbox/checkbox.png" halign="center"/> - <p style="hp">Alış-satış kelimeleri arasındaki rakamlar o Bakkalın harita ilgisidir.</p> + <p style="hp">Alış ve satış kelimeleri arasındaki rakamlar, o Bakkalın harita ilgisidir.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="food">Yiyecek</a></li> <li><a href="jobs">İşçi</a></li> <li><a href="coal">Kömür</a></li> diff -Nru lincity-ng-2.0/data/help/tr/medium.xml lincity-ng-2.9~git20150314/data/help/tr/medium.xml --- lincity-ng-2.0/data/help/tr/medium.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/medium.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,9 +2,9 @@ <Document style="helpdocument"> <p style="htitle">Orta hız</p> <img src="images/gui/speed/normal.png"/> - <p style="hp">Bu Orta hız düğmesi. Oyunun orta hızda çalışmasını saÄŸlar. YavaÅŸ makinelerde hız düğmeleri etkisiz kalabilir.</p> + <p style="hp">Bu, Orta hız düğmesi. Oyunun orta hızda çalışmasını saÄŸlar. YavaÅŸ bilgisayarlarda hız düğmeleri etkisiz kalabilir.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="slow">YavaÅŸ</a></li> <li><a href="fast">Hızlı</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/mill.xml lincity-ng-2.9~git20150314/data/help/tr/mill.xml --- lincity-ng-2.0/data/help/tr/mill.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/mill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Fabrikalar</p> - <p style="hp">Fabrikalar yiyeceÄŸi, kömürü ve işçiyi EÅŸyaya çevirir. Yiyecek mi?... öyle ya, pamuk ve yün oyunda yiyecek gibi sayılır.</p> - <p style="hp">Fabrikalar çabukça yiyecek kullanır eÄŸer bunu hesaba katmazsan kolayca yiyecek sıkıntısı çekebilirsin. (Çifliklere elektrik saÄŸlayabildiklerinden YeldeÄŸirmenlerin olduÄŸunda bu daha az sorun olur)</p> - <p style="hp">Fabrikaları ulaşıma baÄŸlamak zorunda deÄŸilsin. EÄŸer baÄŸlanmazlarsa kapsama alanında oldukları Bakkallardan kömür, işçi ve yiyecek saÄŸlamak zorundalar. Bacalarından duman ve buhar geldiÄŸinde Fabrikaların çalıştığını söyleyebilirsin.</p> + <p style="hp">Fabrikalar; yiyeceÄŸi, kömürü ve işçiyi EÅŸyaya çevirir. Yiyecek mi?... Öyle ya, pamuk ve yün oyunda yiyecek gibi sayılır.</p> + <p style="hp">Fabrikalar hızlı bir ÅŸekilde yiyecek kullandığından, bu hesaba katılmazsa kolayca yiyecek sıkıntısı çekebilirsiniz (Çiftliklere elektrik saÄŸlayabildiklerinden Rüzgar deÄŸirmenleriniz olduÄŸunda bu daha az sorun olur).</p> + <p style="hp">Fabrikaları ulaşıma baÄŸlamak zorunda deÄŸilsiniz. EÄŸer baÄŸlanmazlarsa, kapsama alanında oldukları Bakkallardan kömür, işçi ve yiyecek saÄŸlamak zorundalardır. Bacalarından duman ve buhar geldiÄŸinde Fabrikaların çalıştığını söyleyebilirsiniz.</p> <p style="hp">Bu bir Fabrika</p> <img src="images/tiles/mill1.png" halign="center"/> @@ -12,11 +12,11 @@ <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/parks/mills.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="goods">EÅŸya</a></li> <li><a href="food">Yiyecek</a></li> <li><a href="coal">Kömür</a></li> <li><a href="jobs">İşçi</a></li> <li><a href="transport">Ulaşım</a></li> - <li><a href="windmill">YeldeÄŸirmenlari</a></li> + <li><a href="windmill">Rüzgar deÄŸirmenleri</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/mini-screen.xml lincity-ng-2.9~git20150314/data/help/tr/mini-screen.xml --- lincity-ng-2.0/data/help/tr/mini-screen.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/mini-screen.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,19 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Küçükharita</p> - <p style="hp">Küçükharita oyun alanını küçültülmüş ölçekte gösterir. Küçükdüğmeler alttadır, onlardan birine tıklandığında oynadığın bölgenin üzerinde kirlilik seviyesi gibi bilgiler gösterir.</p> - <p style="hp">Küçükharitanın altındaki küçükdüğmelerin herbirine tıklandığında o düğmenin yardımı görüntülenir.</p> - <p style="hp">Beyaz çerçeveli kare ana ekrandaki bölgeyi gösterir.</p> - <p style="hp">Büyük kroki düğmesi küçükharita krokisini ana ekrana yansıtır</p> + <p style="htitle">Küçük harita</p> + <p style="hp">Küçük harita oyun alanını küçültülmüş ölçekte gösterir. Küçük düğmeler alttadır, onlardan birine tıklandığında oynadığınız bölgenin üzerinde kirlilik seviyesi gibi bilgiler gösterir.</p> + <p style="hp">Küçük haritanın altındaki küçük düğmelerin herbirine tıklandığında o düğmenin yardımı görüntülenir.</p> + <p style="hp">Beyaz çerçeveli kare, ana ekrandaki bölgeyi gösterir.</p> + <p style="hp">Büyük kroki düğmesi küçük harita krokisini ana ekrana yansıtır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> <li><a href="msb-health">SaÄŸlık kapsama alanı</a></li> <li><a href="msb-normal">Normal örtü</a></li> <li><a href="msb-pol">Kirlilik örtüsü</a></li> - <li><a href="msb-power">Elektirik kapsama alanı</a></li> + <li><a href="msb-power">Elektrik kapsama alanı</a></li> <li><a href="msb-starve">Açlık örtüsü</a></li> <li><a href="msb-transport">Ulaşım örtüsü</a></li> <li><a href="msb-ub40">Ä°ÅŸsizlik örtüsü</a></li> diff -Nru lincity-ng-2.0/data/help/tr/monument.xml lincity-ng-2.9~git20150314/data/help/tr/monument.xml --- lincity-ng-2.0/data/help/tr/monument.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/monument.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Anıtlar</p> - <p style="hp">Anıtlar eÄŸitim için bir odak nokta ve icatlar için ilham kaynağı olur. Yaptığın her anıt teknoloji seviyeni artıracaktır, fakat etkilerini 0'dan %40'a gelince kaybederler .</p> - <p style="hp">Bir anıt yapmak için işçi saÄŸlamalısın. Bir<b> çok </b>işçi. Bu durum iÅŸsizliÄŸi kontrol etmek için kullanılabilir. Anıtlar yapımları tamamlandıktan sonra işçi kullanmadıkları için bu geçici bir çözüm olacaktır.</p> - <p style="hp">Yapım iÅŸlemlerinin tamamlanmalarına ne kadar yaklaÅŸtıklarını anlamak için üzerlerine tıklayabilirsin, istatistik penceresinde belirir (merkezin sol-üstünde). Ayrıca yapıldıkça canlandırma deÄŸiÅŸir. %0'dan %100' kadar ilerlemeyi belirten 6 canlandırma vardır.</p> - <p style="hp"><b>Ä°pucu</b>: Bir anıtın yapımında fazla işçinin diÄŸer bölgeden emilmemesi için ve bu sebeple diÄŸer bölgelerdeki işçilerin açlaÅŸmamaları için: diÄŸer bölgelerden uzakta bir 'anıt çifliÄŸi' yap.</p> + <p style="hp">Anıtlar eÄŸitim için bir odak nokta ve icatlar için ilham kaynağı olur. Yaptığınız her anıt teknoloji seviyenizi arttıracaktır. Fakat etkilerini 0'dan %40'a gelince kaybederler.</p> + <p style="hp">Bir anıt yapmak için <b> birçok </b>işçi saÄŸlamalısınız. Bu durum, iÅŸsizliÄŸi kontrol etmek için kullanılabilir. Anıtlar, yapımları tamamlandıktan sonra işçi kullanmadıkları için bu geçici bir çözüm olacaktır.</p> + <p style="hp">Yapım iÅŸlemlerinin bitmesine ne kadar kaldığını anlamak için üzerlerine tıkladığınızda, istatistik penceresinde görebilirsiniz (merkezde sol üstte). Ayrıca yapıldıkça canlandırma da deÄŸiÅŸir. %0'dan %100'e kadar ilerlemeyi belirten 6 canlandırma vardır.</p> + <p style="hp"><b>Ä°pucu</b>: Bir anıtın yapımında fazla işçinin diÄŸer bölgeden emilmemesi için ve bu sebeple diÄŸer bölgelerdeki işçilerin acıkmamaları için, diÄŸer bölgelerden uzakta bir 'anıt çiftliÄŸi' yapın.</p> <p style="hp">Bu bir Anıt</p> <img src="images/tiles/monument5.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/parks/monument.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="ore">Mineral</a></li> <li><a href="commune">Komün</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-coal.xml lincity-ng-2.9~git20150314/data/help/tr/msb-coal.xml --- lincity-ng-2.0/data/help/tr/msb-coal.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-coal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,12 +2,12 @@ <Document style="helpdocument"> <p style="htitle">Kömür örtüsü</p> <img src="images/gui/mapview/roundbuttons/round_coal.png" halign="center"/> - <p style="hp">Kömür küçük ekranı, ÅŸehrinin altındaki kömür birikimini gösterir. Kömür damarları siyah bir arkaplanda beyaz gibi görünür. Bir madenin kömür çıkarması için o madeni damara yakın kurmak zorundasın.</p> - <p style="hp">Yer altında kömür araÅŸtırması yapmanın ilk denemende sana 1 milyona mâl olduÄŸu bilgisi verilecek. Bu ücret sonrasındaki bilgiler ücretsiz.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hp">Kömür küçük ekranı, ÅŸehrinin altındaki kömür birikimini gösterir. Kömür damarları siyah bir arkaplanda beyaz gibi görünür. Bir madenden kömür çıkarabilmek için o madeni damara yakın kurmak zorundasınız.</p> + <p style="hp">Yer altında kömür araÅŸtırması yapmanın ilk denemenizde size 1 milyona mâl olduÄŸu bilgisi verilecek. Bu ücret sonrasındaki bilgiler ücretsizdir.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-cricket">Spor Kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> <li><a href="msb-health">SaÄŸlık kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-cricket.xml lincity-ng-2.9~git20150314/data/help/tr/msb-cricket.xml --- lincity-ng-2.0/data/help/tr/msb-cricket.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-cricket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,11 +4,11 @@ <img src="images/gui/mapview/roundbuttons/round_sport.png" halign="center"/> <p style="hp">Spor kapsama alanında olan bölgeler koyu yeÅŸil gibi görünür.</p> <p style="hp">Basketbol sahalarının kapsama alanlarının dışında olan bölgeler normal görülür.</p> - <p style="hp">Hatırla, basketbol sahalarının çalılşır hale gelmeleri 3 ay alır.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hp">Basketbol sahalarının çalılşır hale gelmelerinin 3 ay aldığını unutmayın.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> <li><a href="msb-health">SaÄŸlık kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-fire.xml lincity-ng-2.9~git20150314/data/help/tr/msb-fire.xml --- lincity-ng-2.0/data/help/tr/msb-fire.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-fire.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,12 +3,12 @@ <p style="htitle">Ä°tfaiye kapsama alanı</p> <img src="images/gui/mapview/roundbuttons/round_fire.png" halign="center"/> <p style="hp">Bir Ä°tfaiyenin kapsama alanında olan bölgeler koyu yeÅŸil görünür.</p> - <p style="hp">Ä°tfaiye kapsama alanıdışındaki bölgeler normal görünür.</p> - <p style="hp">Hatırla, Ä°tfaiyelerin çalışır hale gelmeleri 3 ay alır.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Ä°tfaiye kapsama alanı dışındaki bölgeler normal görünür.</p> + <p style="hp">Ä°tfaiyelerin çalışır hale gelmelerinin 3 ay aldığını unutmayın.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-health">SaÄŸlık kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-health.xml lincity-ng-2.9~git20150314/data/help/tr/msb-health.xml --- lincity-ng-2.0/data/help/tr/msb-health.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-health.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,11 +4,11 @@ <img src="images/gui/mapview/roundbuttons/round_health.png" halign="center"/> <p style="hp">Bir Hastane kapsama alanında olan bölgeler koyu yeÅŸil görünür.</p> <p style="hp">Hastane kapsama alanı dışındaki bölgeler normal görünür.</p> - <p style="hp">Hatırla, Hastanelerin çalışır hale geçmeleri 3 ay alır.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Hastanelerin çalışır hale geçmelerinin 3 ay sürdüğünü unutmayın.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-normal.xml lincity-ng-2.9~git20150314/data/help/tr/msb-normal.xml --- lincity-ng-2.0/data/help/tr/msb-normal.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-normal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,11 +2,11 @@ <Document style="helpdocument"> <p style="htitle">Harita krokisi</p> <img src="images/gui/mapview/roundbuttons/round_resident.png" halign="center"/> - <p style="hp">Harita krokisi ÅŸehirdeki yolları, suyu ve yeÅŸil boÅŸlukları küçükekranda gösterir.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Harita krokisi ÅŸehirdeki yolları, suyu ve yeÅŸil boÅŸlukları küçük ekranda gösterir.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-pol.xml lincity-ng-2.9~git20150314/data/help/tr/msb-pol.xml --- lincity-ng-2.0/data/help/tr/msb-pol.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-pol.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,10 +5,10 @@ <p style="hp">Uçtan uca ÅŸehirdeki kirlilik seviyesini gösterir.</p> <p style="hp">Açık-yeÅŸil -> Koyu-yeÅŸil -> Daha koyu-yeÅŸil -> Bordo -> Açık-kırmızı -> Parlak-kırmızı renklerinde ilerledikçe kirlilik güçlenmiÅŸtir.</p> <p style="hp">Hastalığa sebep olacak kırmızı gibi görünen yerleÅŸim alanlarının olduÄŸu yerlerin yaÅŸama cazibesi azalacaktır.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-power.xml lincity-ng-2.9~git20150314/data/help/tr/msb-power.xml --- lincity-ng-2.0/data/help/tr/msb-power.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-power.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,14 +2,14 @@ <Document style="helpdocument"> <p style="htitle">Elektrik örtüsü</p> <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> - <p style="hp">Düşük teknoloji YeldeÄŸirmeni elektriÄŸinin olduÄŸu yerler koyu-yeÅŸil görünür.</p> - <p style="hp">Ana elektrik ÅŸebekesinin olduÄŸu yerler açık-yeÅŸil görünür.</p> + <p style="hp">Düşük teknoloji Rüzgar deÄŸirmeni elektriÄŸinin olduÄŸu yerler koyu yeÅŸil görünür.</p> + <p style="hp">Ana elektrik ÅŸebekesinin olduÄŸu yerler açık yeÅŸil görünür.</p> <p style="hp">Elektriksiz bölgeler normal görünür.</p> - <p style="hp">Bu düğme elektiriÄŸi kullanır. Çok uzun süre açık bırakmayı denemeyin.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Bu düğme, elektriÄŸi kullanır. Çok uzun süre açık bırakmayın.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-starve.xml lincity-ng-2.9~git20150314/data/help/tr/msb-starve.xml --- lincity-ng-2.0/data/help/tr/msb-starve.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-starve.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,11 +3,11 @@ <p style="htitle">Açlık örtüsü</p> <img src="images/gui/mapview/roundbuttons/round_food.png" halign="center"/> <p style="hp">Açlık ekranı sadece yerleÅŸim bölgelerini gösterir.</p> - <p style="hp">Parlak-yeÅŸil olması o yerleÅŸim alanında yeterli yiyecek olduÄŸu anlamındadır. Koyu-yeÅŸil ve açık-kırmızı olan yerleÅŸim yerlerinin her ikiside gittikçe artan ÅŸiddetli açlığı gösterir.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Parlak yeÅŸil olması o yerleÅŸim alanında yeterli yiyecek olduÄŸu anlamındadır. Koyu yeÅŸil ve açık kırmızı olan yerleÅŸim yerlerinin her ikisi de gittikçe artan ÅŸiddetli açlığı gösterir.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-transport.xml lincity-ng-2.9~git20150314/data/help/tr/msb-transport.xml --- lincity-ng-2.0/data/help/tr/msb-transport.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,11 +2,11 @@ <Document style="helpdocument"> <p style="htitle">Ulaşım örtüsü</p> <img src="images/gui/mapview/roundbuttons/round_road.png" halign="center"/> - <p style="hp">Ulaşım küçükekranı, ÅŸehirde <a href="track">Tali yollardaki </a>, <a href="road">Yollardaki </a> - ve <a href="rail">Demiryollarındaki </a> eÅŸya yükünün miktarını gösterir.</p> - <p style="hp">Mavimsi renklerde görülen yapılar bir <a href="market"> Bakkal</a>'ın kapsama alanındadır.</p> + <p style="hp">Ulaşım küçük ekranı, ÅŸehirde <a href="track"> Tali yollardaki </a>, <a href="road"> Yollardaki </a> + ve <a href="rail"> Demiryollarındaki </a> eÅŸya yükünün miktarını gösterir.</p> + <p style="hp">Mavimsi renklerde görülen yapılar bir <a href="market"> Bakkal </a>'ın kapsama alanındadır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="mini-screen">Küçük ekran</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/msb-ub40.xml lincity-ng-2.9~git20150314/data/help/tr/msb-ub40.xml --- lincity-ng-2.0/data/help/tr/msb-ub40.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/msb-ub40.xml 2015-05-05 16:32:49.000000000 +0000 @@ -3,11 +3,11 @@ <p style="htitle">Ä°ÅŸsizlik örtüsü</p> <img src="images/gui/mapview/roundbuttons/round_ub40.png" halign="center"/> <p style="hp">Ä°ÅŸsizlik örtüsü sadece yerleÅŸim alanlarında görülür.</p> - <p style="hp">Parlak-yeÅŸil, o yerleÅŸim alanında iÅŸsizliÄŸin olmadığını göstrir. Koyu-yeÅŸil ve açık-kırmızı, o her ikiside yerleÅŸim yerinde gittikçe artan ÅŸiddetli iÅŸsizlik olduÄŸunu gösterir.</p> - <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana soltıklayın. BaÅŸka bir küçükekran görüntüsü için küçükekran üzerindeki baÅŸlığa soltıklayın. Kroki görünümüne geçmek için 'v'ye yada küçükekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> + <p style="hp">Parlak yeÅŸil, o yerleÅŸim alanında iÅŸsizliÄŸin olmadığını gösterir. Koyu yeÅŸil ve açık kırmızı, o yerleÅŸim yerinde gittikçe artan ÅŸiddetli iÅŸsizlik olduÄŸunu gösterir.</p> + <p style="hp">Ana ekranı tekrar konumlandırmak için küçük ekrana sol tıklayın. BaÅŸka bir küçük ekran görüntüsü için küçük ekran üzerindeki baÅŸlığa sol tıklayın. Kroki görünümüne geçmek için 'v'ye veya küçük ekran baÅŸlığı üzerinde farenin orta düğmesine basın.</p> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="mini-screen">Küçükharita</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="mini-screen">Küçük harita</a></li> <li><a href="msb-coal">Kömür örtüsü</a></li> <li><a href="msb-cricket">Spor kapsama alanı</a></li> <li><a href="msb-fire">Ä°tfaiye kapsama alanı</a></li> diff -Nru lincity-ng-2.0/data/help/tr/oremine.xml lincity-ng-2.9~git20150314/data/help/tr/oremine.xml --- lincity-ng-2.0/data/help/tr/oremine.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/oremine.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Mineral madeni</p> - <p style="hp">Mineral madenleri eÅŸya ve çelik yapımı için mineral saÄŸlar. Bir mineral madenini herhangi bir yere yapabilirsiniz. Mineral bölgenin altından yavaşça elde edilir; bu bölgeyi yıkamazsın ve yeni bir tane yapıp daha fazla mineral çıkarmayı umamazsın.</p> - <p style="hp">Bir mineral madeni tükendiÄŸinde göle dönüşür. EÄŸer bu halde iken bölgeyi geri kazanmak istiyorsan 16 su alanını yıkmalısın!</p> - <p style="hp">Canlandırmalar sıkı çalışıp tükenmeye yakın olan mineral madenlerini gösterir.</p> - <p style="hp">Mineral madenlerine ulaşım baÄŸlantısı sol-üst kenarlarından yapılır.</p> + <p style="hp">Mineral madenleri eÅŸya ve çelik yapımı için mineral saÄŸlar. Bir mineral madenini herhangi bir yere yapabilirsiniz. Mineral, bölgenin altından yavaşça elde edilir. Bu bölgeyi yıkamaz ve yeni bir tane yapıp daha fazla mineral çıkarmayı bekleyemezsiniz.</p> + <p style="hp">Bir mineral madeni tükendiÄŸinde göle dönüşür. EÄŸer bu halde iken bölgeyi geri kazanmak istiyorsanız 16 su alanını yıkmalısınız!</p> + <p style="hp">Canlandırmalar, sıkı çalışıp tükenmeye yakın olan mineral madenlerini gösterir.</p> + <p style="hp">Mineral madenlerine ulaşım baÄŸlantısı sol üst kenarlarından yapılır.</p> <p style="hp">Bu bir Mineral madeni</p> <img src="images/tiles/oremine1.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/mining/oremine.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="ore">Mineral</a></li> <li><a href="goods">EÅŸya</a></li> <li><a href="steel">Çelik</a></li> diff -Nru lincity-ng-2.0/data/help/tr/ore.xml lincity-ng-2.9~git20150314/data/help/tr/ore.xml --- lincity-ng-2.0/data/help/tr/ore.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/ore.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,7 +4,7 @@ <p style="hp">Mineral oyunun temel hammadde nesnelerinden biridir. Komünler, mineral madenleri ve geridönüşümcüler mineral saÄŸlar.</p> <p style="hp">Çömlekçiler, Hafif sanayi ve Ağır sanayi mineral kullanır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="commune">Komün</a></li> <li><a href="oremine">Mineral madeni</a></li> <li><a href="recycle">Geridönüşümcüler</a></li> diff -Nru lincity-ng-2.0/data/help/tr/other-costs.xml lincity-ng-2.9~git20150314/data/help/tr/other-costs.xml --- lincity-ng-2.0/data/help/tr/other-costs.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/other-costs.xml 2015-05-05 16:32:49.000000000 +0000 @@ -5,12 +5,13 @@ <p style="hp">Parasal ekranda 'diÄŸer masrafların' bir dökümünü gösterir</p> <p style="hp">Faiz masrafları</p> <p style="hp">Okul masrafları</p> + <p style="hp">Ãœniversite masrafları</p> <p style="hp">DoÄŸal olmayan ölüm masrafları</p> - <p style="hp">YeldeÄŸirmeni masrafları</p> + <p style="hp">Rüzgar deÄŸirmeni masrafları</p> <p style="hp">SaÄŸlık masrafları</p> <p style="hp">Füze masrafları</p> <p style="hp">Ä°tfaiye masrafları</p> <p style="hp">Spor masrafları</p> <p style="hp">Geridönüşüm masrafları</p> - <p style="hp">Bu pencerenin üstüne soltıklamak; parasal, diÄŸer masraflar ve ev edindirme pencereleri arasında dönüşüm yaptırır.</p> + <p style="hp">Bu pencerenin üstüne sol tıklamak; parasal, diÄŸer masraflar ve ev edindirme pencereleri arasında dönüşüm yaptırır.</p> </Document> diff -Nru lincity-ng-2.0/data/help/tr/park.xml lincity-ng-2.9~git20150314/data/help/tr/park.xml --- lincity-ng-2.0/data/help/tr/park.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/park.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,18 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Millet bahçeleri</p> - <p style="hp">Millet pahçeleri çok basittir: kirliliÄŸi temizler.</p> - <p style="hp">Kirlilik oluÅŸturan bölgelerin bir kısmı. Yollar, Demiryolları, Kömür madenleri ve Hafif ve Ağır sanayiler. Bazıları diÄŸerlerinden daha fazla kirliliÄŸe sebeptir.</p> - <p style="hp">Millet bahçelerini yerleÅŸim bölgelerin korumak yada yerel bölgeden kirlilik kaynaklı kaçışları durdurmak için kullanabilirsin.</p> - <p style="hp">Rüzgar kirliliÄŸi güney-batıdan <b> getirir</b>, Millet bahçelerini ona göre inÅŸa et.Millet bahçeleri yeraltı suyuna ihtiyaç duyar, yani sadece "yeÅŸil" döşemelerde yapılabilirler.</p> + <p style="htitle">Parklar</p> + <p style="hp">Parklar çok basittir: kirliliÄŸi temizlerler.</p> + <p style="hp">Kirlilik oluÅŸturan bölgelerin bazıları, Yollar, Demiryolları, Kömür madenleri ve Hafif ve Ağır sanayilerdir. Bunlardan da bazıları diÄŸerlerinden daha fazla kirliliÄŸe sebeptir.</p> + <p style="hp">Parkları, yerleÅŸim bölgelerini korumak veya yerel bölgeden kirlilik kaynaklı kaçışları durdurmak için kullanabilirsiniz.</p> + <p style="hp">Rüzgar, kirliliÄŸi <b>güneybatıdan</b> getirdiÄŸinden, bu durumu göz önüne alıp inÅŸa edin.</p> + <p style="hp">Parklar yeraltı suyuna ihtiyaç duyar. Yani sadece "yeÅŸil" döşemelerde yapılabilirler.</p> - <p style="hp">Bu bir Millet bahçesi</p> + <p style="hp">Bu bir Park</p> <img src="images/tiles/parkland-plane.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/parks/tree.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="pollution">Kirlilik</a></li> <li><a href="road">Yollar</a></li> <li><a href="rail">Demiryolları</a></li> diff -Nru lincity-ng-2.0/data/help/tr/pause.xml lincity-ng-2.9~git20150314/data/help/tr/pause.xml --- lincity-ng-2.0/data/help/tr/pause.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/pause.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,5 +2,5 @@ <Document style="helpdocument"> <p style="htitle">Duraklatma düğmesi</p> <p style="hp">Bu duraklat düğmesidir. Oyunu duraklatır.</p> - <p style="hp">Buna tekrar tıklayarak oyunu yeniden baÅŸlatabilirsin.</p> + <p style="hp">Tekrar tıklayarak oyunu yeniden baÅŸlatabilirsiniz.</p> </Document> diff -Nru lincity-ng-2.0/data/help/tr/pbar.xml lincity-ng-2.9~git20150314/data/help/tr/pbar.xml --- lincity-ng-2.0/data/help/tr/pbar.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/pbar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,8 +1,13 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Ä°statistik</p> - <p style="hp">Küçükekrandaki ikinci sekmedir</p> - <p style="hp">Bütün Bkkallardaki birikimi ve nasıl deÄŸiÅŸtiÄŸini gösterir.</p> + <p style="htitle">Ä°statistikler</p> + <p style="hp">Küçük ekrandaki ikinci sekmedir</p> + <p style="hp">Bütün Bakkallardaki birikimi ve nasıl deÄŸiÅŸtiÄŸini gösterir.</p> <p style="hp">Rakamlar toplam miktarı belirtir.</p> <p style="hp">SaÄŸ tarafta beliren yeÅŸil çubuk artışı belirtir. Sol tarafta beliren kırmızı çubuk düşüşü belirtir. ÇubuÄŸun belirme boyutu deÄŸiÅŸimin boyutudur.</p> + + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="commodities">EÅŸyalar</a></li> + <li><a href="msb-transport">Ulaşım örtüsü</a></li> + </Document> diff -Nru lincity-ng-2.0/data/help/tr/pollution.xml lincity-ng-2.9~git20150314/data/help/tr/pollution.xml --- lincity-ng-2.0/data/help/tr/pollution.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/pollution.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,22 +4,22 @@ <p style="hp">ÇoÄŸu bölge bir miktar kirliliÄŸe sebep olur. Åžiddetli kirliliÄŸe sebep olan bölgeler:</p> <li>Ağır sanayi.</li> <li>Hafif sanayi.</li> - <li>Kömürden Elektirik üreteçleri.</li> + <li>Termik santraller.</li> <li>Kömür madenleri.</li> <li>Döküntüyle dolmuÅŸ Bakkallar.</li> - <li>Yollar ve demiryolları da özellikle döküntüyle dolduklarında.</li> - <p style="hp">Ä°nsanlar kirli yerlerde yaÅŸamayı sevmez. Hastalık ve ölüm geldiÄŸinde oradan çıkacaklar .</p> - <p style="hp">Güney-batıdan gelen rüzgar en sık esendir. Bu durum kirliliÄŸin kuzey-doÄŸuya kaymasına sebep olur.</p> - <p style="hp">Ä°nsanları kirliliÄŸe maruz bırakmamak için genellikle taktiksel olarak yapılanmak isteyebilirsin. Fakat her zaman mümkün olmaz. Böyle bir durumda ise tamamen Millet bahçelerinden güzel bir engel. Daha fazla Millet bahçesi, daha fazla korumadır.</p> + <li>Özellikle döküntüyle dolduklarında Yollar ve demiryolları.</li> + <p style="hp">Ä°nsanlar kirli yerlerde yaÅŸamayı sevmez. Hastalık ve ölüm geldiÄŸinde oradan çıkacaklardır.</p> + <p style="hp">Güneybatıdan gelen rüzgar en sık esendir. Bu durum kirliliÄŸin kuzeydoÄŸuya kaymasına sebep olur.</p> + <p style="hp">Ä°nsanları kirliliÄŸe maruz bırakmamak için genellikle taktiksel olarak yapılanmak isteyebilirsiniz, fakat her zaman mümkün olmaz. Böyle bir durumda, Parklar güzel bir engeldir. Daha fazla Park, daha fazla korumadır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="industryh">Ağır sanayi</a></li> <li><a href="industryl">Hafif sanayi</a></li> - <li><a href="powerscoal">Kömürden elektrik üreteci</a></li> + <li><a href="powerscoal">Termik Santral</a></li> <li><a href="coalmine">Kömür madenleri</a></li> <li><a href="market">Bakkallar</a></li> <li><a href="rail">Demiryolları</a></li> <li><a href="road">Yollar</a></li> - <li><a href="park">Millet bahçesi</a></li> + <li><a href="park">Park</a></li> <li><a href="msb-pol">Kirlilik örtüsü</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/port.xml lincity-ng-2.9~git20150314/data/help/tr/port.xml --- lincity-ng-2.0/data/help/tr/port.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/port.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,11 +1,11 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Limanlar</p> - <p style="hp">Limanlar eÅŸya, çelik, mineral, kömür ve yiyecek ithal ve ihraç etmeni mümkün kılar. Ä°thalat masrafdır, ihracat ise gelirdir.</p> - <p style="hp">Bir limanın kullanılması için ulaşıma baÄŸlanmış olması gerekir. Limanın üzerine çiftıklayarak ne ithal/ihraç edeceÄŸini sen seçersin. Ne ithal/ihraç edeceÄŸini seçeceÄŸin, seçim kutularının olduÄŸu bir pencere açılacak.</p> + <p style="hp">Limanlar; eÅŸya, çelik, mineral, kömür ve yiyecek ithal ve ihraç etmenizi mümkün kılar. Ä°thalat masraftır, ihracat ise gelirdir.</p> + <p style="hp">Bir limanın kullanılması için ulaşıma baÄŸlanmış olması gerekir. Limanın üzerine çift tıklayarak ne ithal/ihraç edeceÄŸinizi siz seçersiniz. Bu seçimi, açılacak seçim kutularının olduÄŸu bir pencereden yapabilirsiniz.</p> <p style="hp">Limanlar saÄŸ kenarlarından 'boylu boyunca' nehre <b> baÄŸlanmalıdırlar</b>.</p> - <p style="hp">Tahsis edilen seçim kutularını iÅŸaretlemediÄŸin sürece hiç bir ÅŸey ithal/ihraç edilmeyecek.</p> - <p style="hp">Ä°hracat alanı verdiÄŸi kadar alacaktır. Ä°hracata ihtiyacın varsa, ama miktarı sınırlamak istiyorsan, daha düşük hacimli bir ulaşım kullanmak isteyebilirsin uzun bir parça kullan yada ürünleri bar Bakkal üzerinden geçir. DoÄŸru ulaşım ÅŸeklini yakalayabilmek için tecrübeye ihtiyacın olacak.</p> + <p style="hp">Tahsis edilen seçim kutularını iÅŸaretlemediÄŸiniz sürece hiç bir ÅŸey ithal/ihraç edilmeyecektir.</p> + <p style="hp">Ä°hracat, alanı verdiÄŸiniz kadar alacaktır. Ä°hracata ihtiyacınız var ama miktarı sınırlamak istiyorsanız, daha düşük hacimli bir ulaşım, uzun bir parça kullanabilir veya ürünleri doÄŸrudan Bakkala götürebilirsiniz. DoÄŸru ulaşım ÅŸeklini yakalayabilmek için tecrübeye ihtiyacınız olacak.</p> <p style="hp">Ek: Ä°hracatçılar büyük ihracatları dikkate alır.</p> <p style="hp">Bu bir Liman</p> @@ -13,10 +13,11 @@ <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/transport/port.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="export">Ä°thalat ve Ä°hracat</a></li> <li><a href="rivers">Nehir</a></li> <li><a href="transport">Ulaşım</a></li> + <li><a href="food">Yiyecek</a></li <li><a href="market">Bakkallar</a></li> <li><a href="coal">Kömür</a></li> <li><a href="ore">Mineral</a></li> diff -Nru lincity-ng-2.0/data/help/tr/pottery.xml lincity-ng-2.9~git20150314/data/help/tr/pottery.xml --- lincity-ng-2.0/data/help/tr/pottery.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/pottery.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,15 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Çömlekçiler</p> - <p style="hp">Çömlekçiler eÅŸya yapmak için mineral, kömür ve işçi kullanır. Ulaşıma baÄŸlı olmak zorunda deÄŸiller ama baÄŸlanmazlarsa, tabi ki; mineral, kömür ve işçi edinmek için bir Bakkalın kapsama alanında olmak zorundalar.</p> - <p style="hp">Fırınlarından duman çıktığında çömlekçilerin çalıştığını söyleyebilirsin. EÄŸer tepesinden duman çıkmıyorsa, o zaman %100'den daha az çıktı alma ihtimalin var.</p> + <p style="hp">Çömlekçiler eÅŸya yapmak için mineral, kömür ve işçi kullanır. Ulaşıma baÄŸlı olmak zorunda deÄŸillerdir. Ancak baÄŸlanmazlarsa, tabi ki; mineral, kömür ve işçi edinmek için bir Bakkalın kapsama alanında olmak zorundalardır.</p> + <p style="hp">Fırınlarından duman çıktığında çömlekçilerin çalıştığını söyleyebilirsiniz. EÄŸer tepesinden duman çıkmıyorsa, o zaman %100'den daha az çıktı alma ihtimaliniz vardır.</p> <p style="hp">Bu bir Çömlekçi</p> <img src="images/tiles/pottery0.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/industry/pottery.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="transport">Ulaşım</a></li> <li><a href="ore">Mineral</a></li> <li><a href="coal">Kömür</a></li> diff -Nru lincity-ng-2.0/data/help/tr/powerline.xml lincity-ng-2.9~git20150314/data/help/tr/powerline.xml --- lincity-ng-2.0/data/help/tr/powerline.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/powerline.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,8 +1,8 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Elektrik hatları</p> - <p style="hp">Elektrik hatları, güneÅŸsel ve kömürden elektrik üreteçlerinden trafolara elektrik iletir. Elektrik hatları her üçününde sol üst köşesine baÄŸlanır; güneÅŸsel, kömürden üreteç ve trafolar.</p> - <p style="hp">Elektrik hatları Tali yolların, Yolların, demiryollarının ve nehirlerin <b> altından </b> geçer (hepsinin 1 parça geniÅŸliÄŸinden). EÄŸer bir elektrik hattı bir ulaşımın yada nehrin her iki tarafına yerleÅŸtirilirlerse, baÄŸlılarmış gibi etki eder. ÇoÄŸu kez karşı tarafına geçmek için bir nehri yıkman gerekir - bu pahalıdır! Elektrik hatları doÄŸru çizgide oldularında baÄŸlanırlar.</p> + <p style="hp">Elektrik hatları, güneÅŸ paneli ve termik santrallerden trafolara elektrik iletir. Elektrik hatları; güneÅŸ paneli, termik santral ve trafoların sol üst köşesine baÄŸlanır.</p> + <p style="hp">Elektrik hatları; Tali yolların, Yolların, demiryollarının ve nehirlerin <b> altından </b> geçer (hepsinin 1 parça geniÅŸliÄŸini kaplar). EÄŸer bir elektrik hattı bir ulaşımın veya nehrin her iki tarafına yerleÅŸtirilirse, baÄŸlılarmış gibi etki eder. ÇoÄŸu kez karşı tarafa geçmek için bir nehri yıkmanız gerekir - bu da pahalıdır! Elektrik hatları doÄŸru çizgide olduklarında baÄŸlanırlar.</p> <p style="hp">Bu bir Elektrik hattı</p> <img src="images/tiles/powerlvd.png" halign="center"/> @@ -11,9 +11,9 @@ <p style="hp">ve bu da kapsama alanı simgesi</p> <img src="images/gui/mapview/roundbuttons/round_electrics.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="substation">Trafo</a></li> - <li><a href="powerssolar">GüneÅŸsel elektrik üreteci</a></li> + <li><a href="powerssolar">GüneÅŸ paneli</a></li> <li><a href="msb-power">Elektrik kapsama alanı</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/powerscoal.xml lincity-ng-2.9~git20150314/data/help/tr/powerscoal.xml --- lincity-ng-2.0/data/help/tr/powerscoal.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/powerscoal.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,20 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">Kömürden elektrik üreteci</p> - <p style="hp">Kömürden elektrik üreteçleri kendilerine baÄŸlı olan elektrik hatlarına elektriÄŸi paketler halinde saÄŸlar.</p> - <p style="hp">Elektrik hatları sol-üst köşelerinden baÄŸlanır, ulaşım ise yanındaki konuma. ÖrneÄŸe bakın.</p> - <p style="hp">Kömürün elektriÄŸe dönüştürme verimliliÄŸi, üretecin <b> yapıldığı </b> zamandaki teknoloji seviyesiyle artar. Teknoloji seviyesi arttığında eski üreteçten kurtulmak, daha yeni ve daha verimli bir tane kullanmak isteyebilirsin.</p> + <p style="htitle">Termik Santral</p> + <p style="hp">Termik santraller, kendilerine baÄŸlı olan elektrik hatlarına elektriÄŸi paketler halinde saÄŸlar.</p> + <p style="hp">Elektrik hatları sol üst köşelerinden baÄŸlanırken elektrik hatları ise yanındaki konuma (Bkz. Örnek).</p> + <p style="hp">Kömürün elektriÄŸe dönüştürme verimliliÄŸi, üretecin <b> yapıldığı </b> zamandaki teknoloji seviyesiyle artar. Teknoloji seviyesi arttığında eski üreteçten kurtulmak, daha yeni ve daha verimli bir tane kullanmak isteyebilirsiniz.</p> - <p style="hp">Bu bir Kömürden elektrik üreteci</p> + <p style="hp">Bu bir Termik Santral</p> <img src="images/tiles/powerscoal-empty.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/power/coalpower.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="transport">Ulaşım</a></li> <li><a href="tech-level">Teknoloji seviyesi</a></li> <li><a href="powerline">Elektrik hatları</a></li> <li><a href="msb-power">Elektrik kapsama alanı</a></li> + <li><a href="pollution">Kirlilik</a></li> + </Document> diff -Nru lincity-ng-2.0/data/help/tr/powerssolar.xml lincity-ng-2.9~git20150314/data/help/tr/powerssolar.xml --- lincity-ng-2.0/data/help/tr/powerssolar.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/powerssolar.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,19 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">GeneÅŸsel elektrik üreteci</p> - <p style="hp">GüneÅŸsel elektrik üreteçleri elektriÄŸi hatlara paketler halinde verir. Elektrik üretim miktarı üretecin <b> yapıldığı </b> zamanki teknoloji seviyesiyle artabilir.</p> - <p style="hp">GüneÅŸsel elektrik üreteçleri elektrik saÄŸlamak için insan gücüne de ihtiyaç duyabilirler. eÄŸer bir güneÅŸsel elektrik üretecinin yeterli işçisi yoksa, daha az elektrik saÄŸlayacak ve eÄŸer hiç işçisi yoksa elektrik saÄŸlamayacaktır.</p> + <p style="htitle">GüneÅŸ paneli</p> + <p style="hp">GüneÅŸ panelleri, elektriÄŸi hatlara paketler halinde verir. Elektrik üretim miktarı üretecin <b> yapıldığı </b> zamanki teknoloji seviyesiyle artabilir.</p> + <p style="hp">GüneÅŸ panelleri elektrik saÄŸlamak için insan gücüne de ihtiyaç duyabilirler. EÄŸer bir güneÅŸ panelinin yeterli işçisi yoksa, daha az elektrik saÄŸlarken; hiç işçisi yoksa elektrik saÄŸlamayacaktır.</p> - <p style="hp">Bu bir GüneÅŸsel elektrik üreteci</p> + <p style="hp">Bu bir Günel paneli</p> <img src="images/tiles/powerssolar.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/power/solarpower.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="substation">Trafo</a></li> <li><a href="powerline">Elektrik hatları</a></li> <li><a href="residential">YerleÅŸim</a></li> <li><a href="tech-level">Teknoloji seviyesi</a></li> <li><a href="msb-power">Elektrik kapsama alanı</a></li> - <li><a href="windmill">YeldeÄŸirmenleri</a></li> + <li><a href="windmill">Rüzgar deÄŸirmenleri</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/query.xml lincity-ng-2.9~git20150314/data/help/tr/query.xml --- lincity-ng-2.0/data/help/tr/query.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/query.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,11 +2,11 @@ <Document style="helpdocument"> <p style="htitle">Sorgu</p> <p style="hp">Bir yapı hakkında bilgi almak için bu aracı kullanın ve merak edilen yapıya tıklayın.</p> - <p style="hp">Bilgi, küçükharita yerinde saÄŸ-alt köşede belirir.</p> + <p style="hp">Bilgi, saÄŸ alttaki küçük haritada belirir.</p> <p style="hp">Bu aracı kullanmak maliyetli deÄŸildir.</p> <img src="images/gui/buttonpanel/base/pointer.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> - <li><a href="keys">Kalavye komutları</a></li> + <p style="hsubtitle">Ayrıca bakınız:</p> + <li><a href="keys">Klavye komutları</a></li> <li><a href="help">Ana sayfa</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/rail.xml lincity-ng-2.9~git20150314/data/help/tr/rail.xml --- lincity-ng-2.0/data/help/tr/rail.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/rail.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,14 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Demiryolları</p> - <p style="hp">Demiryolları yollardan daha düzgün taşıma saÄŸlar. Yollardan biraz daha az kirliliÄŸe sebeptirler. Buna karşın yapımları ve bakımları tamamen pahalıdır. Uzun bir mesafede bir çok ulaşıma sahip olduÄŸunda fiyat deÄŸerleri oldukça iyidir.</p> + <p style="hp">Demiryolları yollardan daha düzgün taşıma saÄŸlar. Yollardan biraz daha az kirliliÄŸe yol açarlar. Buna karşın yapımları ve bakımları tamamen pahalıdır. Uzun bir mesafede birçok ulaşıma sahip olduÄŸunuzda ise fiyat deÄŸerleri oldukça iyidir.</p> <p style="hp">Bu bir Demiryolu</p> <img src="images/tiles/railud.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/transport/rails2.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="transport">Ulaşım</a></li> <li><a href="commune">Komün</a></li> <li><a href="pollution">Kirlilik</a></li> diff -Nru lincity-ng-2.0/data/help/tr/recycle.xml lincity-ng-2.9~git20150314/data/help/tr/recycle.xml --- lincity-ng-2.0/data/help/tr/recycle.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/recycle.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,15 +2,15 @@ <Document style="helpdocument"> <p style="htitle">Geridönüşüm merkezleri</p> <p style="hp">Kullanılmış eÅŸyalar atık oluÅŸturur.</p> - <p style="hp">Geridönüşüm merkezleri kullanılmış eÅŸyaları minerale çevirir. Ãœst-sol köşelerinden ulaşıma baÄŸlanmış olmalılar. Atık eÅŸyaları biriktirmek ve taze minerale çevirmek için para ve işçi kullanılır.</p> - <p style="hp">'Kayıp' hurda eÅŸyaları makyajlamak için bir fabrikaya sahipsen, %100 verimliliÄŸin altında çalışan geridönüşüm merkezleriyle sürdürülebilir bir ekonomiyi saÄŸlamak mümkün (daha fazla mineral çıkarılmamış olması gibi).</p> + <p style="hp">Geridönüşüm merkezleri, kullanılmış eÅŸyaları minerale çevirir. Sol üst köşelerinden ulaşıma baÄŸlanmış olmalıdırlar. Atık eÅŸyaları biriktirmek ve taze minerale çevirmek için para ve işçi kullanılır.</p> + <p style="hp">'Kayıp' hurda eÅŸyaları makyajlamak için bir fabrikaya sahipseniz, %100 verimliliÄŸin altında çalışan geridönüşüm merkezleriyle sürdürülebilir bir ekonomiyi saÄŸlamak (örn. artık mineral çıkarılmıyorsa) mümkündür.</p> <p style="hp">Bu bir Geridönüşüm merkezi</p> <img src="images/tiles/recycle-centre.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/mining/recycling.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="goods">EÅŸya</a></li> <li><a href="ore">Mineral</a></li> <li><a href="transport">Ulaşım</a></li> diff -Nru lincity-ng-2.0/data/help/tr/residential.xml lincity-ng-2.9~git20150314/data/help/tr/residential.xml --- lincity-ng-2.0/data/help/tr/residential.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/residential.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">YerleÅŸim alanı</p> - <p style="hp">Ä°nsanların yaÅŸadığı yer. Ä°nsanların buralarda yaÅŸamalarının teÅŸviki için doymuÅŸ olmalıları gerekir (su kuyusu kapsama alanında ve yiyecek için bakkal kapsama alanı yada yol baÄŸlantısı). Ayrıca çalışmaları ve eÅŸya almaları için de yardımcı olacaktır. Bir Bakkalın kapsama alanında yada ulaşıma baÄŸlanmış olmalılar (birçok yapı gibi).</p> - <p style="hp">3 farklı çeÅŸit yerleÅŸim alanı vardır: Düşük, Orta ve Yüksek yoÄŸunluklu evler. Onlarla iliÅŸkilendirilmiÅŸ farlı doÄŸum ve ölüm oranları vardır. Bu sana nüfusunu kontrol etmen için biraz yetki verir.</p> - <p style="hp">Daha sonra oyunda, eÄŸer yeterli teknolojin varsa, daha geliÅŸmiÅŸ evler yapabilirsin, kule halinde büyük binalar.</p> + <p style="hp">Ä°nsanların yaÅŸadığı yerdir. Ä°nsanların buralarda yaÅŸamalarının teÅŸviki için doymuÅŸ olmaları gerekir (su kuyusu ve yiyecek için bakkal kapsama alanı veya yol baÄŸlantısı). Ayrıca çalışmaları ve eÅŸya almaları için de yardımcı olacaktır. Bir Bakkalın kapsama alanında veya ulaşıma baÄŸlanmış olmalılar (birçok yapı gibi).</p> + <p style="hp">3 farklı çeÅŸit yerleÅŸim alanı vardır: Düşük, Orta ve Yüksek yoÄŸunluklu evler. Her biri ile liÅŸkilendirilmiÅŸ farklı doÄŸum ve ölüm oranları vardır. Bu, nüfusunuzu kontrol etmeniz için biraz yetki verir.</p> + <p style="hp">Ä°leride, eÄŸer yeterli teknolojiniz varsa, kule halindeki büyük binalar gibi daha geliÅŸmiÅŸ evler yapabilirsiniz.</p> <p style="hp">Bu düşük yoÄŸunluklu bir ev (yüksek teknoloji)</p> <img src="images/tiles/reslowhi.png" halign="center"/> @@ -18,7 +18,7 @@ <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/residence/residence-hightec-high.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="waterwell">Su kuyusu</a></li> diff -Nru lincity-ng-2.0/data/help/tr/river.xml lincity-ng-2.9~git20150314/data/help/tr/river.xml --- lincity-ng-2.0/data/help/tr/river.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/river.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Nehir/Su</p> - <p style="hp">Nehirler burada temel olarak yolunu keserler. Köprü yapmak için kazmak ve yıkmak pahalıdır. Nehirler sadece Limanların nehirlere baÄŸlantısında kullanılır.</p> - <p style="hp">Ä°ki ÅŸekil su vardır. Göl suyu; nehir sistemine baÄŸlantılı olmayanlar, nehirler; nehir sistemine baÄŸlı olanlar. Nehir Oyunun baÅŸlangıcında sunulmuÅŸ olan bütün sular gibi tarif edilebilir . ÖrneÄŸin, bir mineral madeni kaynağını bitirir ve su olursa, eÄŸer nehre baÄŸlandıysa nehrin bir parçası olur. DiÄŸer durumda bir göl olur.</p> - <p style="hp">EÄŸer nehrin bir kısmını yol yapmak, ulaşım yapmak için yıkarsan köprü yapmış olursun. Geçidin her iki tarafıda yine nehrin bir parçası sayılır. Bir nehri 'yıkmanın' pahalı olmasının sebeplerinden biri budur.</p> - <p style="hp">Suyun bir parçası birkere nehir sisteminin bir parçası olursa göle geri <b> çevirilemez</b>. Nehrin bir parçası olan bir su <a href="query"> sorgu aracında</a> <b> sefere elveriÅŸli </b> görünür.</p> + <p style="hp">Nehirler burada temel olarak yolu keserler. Köprü yapmak için kazmak ve yıkmak pahalıdır. Nehirler sadece Limanların nehirlere baÄŸlantısında kullanılır.</p> + <p style="hp">Ä°ki ÅŸekil su vardır. Göl suyu; nehir sistemine baÄŸlantılı olmayanlar, nehirler; nehir sistemine baÄŸlı olanlar. Nehir Oyunun baÅŸlangıcında sunulmuÅŸ olan bütün sular gibi tarif edilebilir. ÖrneÄŸin, bir mineral madeni kaynağını bittiÄŸinde su olup nehre baÄŸlandıysa nehrin bir parçası olur. DiÄŸer durumda bir göl olur.</p> + <p style="hp">EÄŸer nehrin bir kısmını yol veya ulaşım yapmak için yıkarsanız köprü yapmış olursunuz. Geçidin her iki tarafı da yine nehrin bir parçası sayılır. Bir nehri 'yıkmanın' pahalı olmasının sebeplerinden biri budur.</p> + <p style="hp">Suyun bir parçası bir kere nehir sisteminin bir parçası olursa göle geri <b> çevrilemez</b>. Nehrin bir parçası olan bir su, <a href="query"> sorgu aracında </a> <b> sefere elveriÅŸli </b> görünür.</p> <p style="hp">Elektrik hatları nehrin <b> 1 </b> parçasının altından iletim yapabilirler, aynı ÅŸekilde ulaşımın altından da geçebilirler .</p> </Document> diff -Nru lincity-ng-2.0/data/help/tr/road.xml lincity-ng-2.9~git20150314/data/help/tr/road.xml --- lincity-ng-2.0/data/help/tr/road.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/road.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,14 +1,14 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Yollar</p> - <p style="hp">Yollar tali yollardan daha çok taşımacılık yapar, ama demiryolları kadar deÄŸil. Demiryollarının saÄŸladığından daha fazla kirliliÄŸe sebeptirler. Alımları ve bakımları demiryollarından daha ucuzdur - olmaları için bir sebeptir!</p> + <p style="hp">Yollar, tali yollardan daha çok ancak demiryollarından daha az taşımacılık yapar. Demiryollarının saÄŸladığından daha fazla kirliliÄŸe yol açarlar ancak alımları ve bakımları, demiryollarından daha ucuzdur - tercih edilmeleri için bir sebep olmalıydı!</p> <p style="hp">Bu bir Yol</p> <img src="images/tiles/roadud.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/transport/road.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="transport">Ulaşım</a></li> <li><a href="commune">Komün</a></li> <li><a href="pollution">Kirlilik</a></li> diff -Nru lincity-ng-2.0/data/help/tr/rocket.xml lincity-ng-2.9~git20150314/data/help/tr/rocket.xml --- lincity-ng-2.0/data/help/tr/rocket.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/rocket.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,18 +1,18 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Füze rampası</p> - <p style="hp">Füzeler insanlarını baÅŸka bir gezegene tahliye etmeni saÄŸlar ve böylece oyun biter.</p> - <p style="hp">Tahliyeye baÅŸlamadan önce 5 baÅŸarılı insansız fırlatma yapman gerekiyor. Her bir baÅŸarılı tahliye füzesi 1000 insan içerir.</p> - <p style="hp">EÄŸer herhangi bir fırlatma baÅŸarısız olursa, daha fazla insan tahliye etmeye baÅŸlamadan önce 5 insansız atış daha yapmalısın.</p> - <p style="hp">Fıratma esnasındaki teknoloji seviyesi baÅŸarılı bir fırlatma ihtimalini artırır. Bu ÅŸu anlama gelir,teknoloji seviyen %80 ise baÅŸarılı olma ihtimalin 5'te 4'dür. %100 yada daha fazlası tüm atışlarda baÅŸarı saÄŸlayacaktır. (<i>ilk 5 </i> atışda yine hata olabilir.) Yaptığın her füze için yeni bir rampa yapmalısın.</p> - <p style="hp">Füze rampaları ulaşıma baÄŸlantı gerektirmez, bütün ihtiyaçlarını yerel bir Bakkaldan karşılayabilirler. Yapımlarında oldukça fazla çelik, işçi, eÅŸya ve para harcarlar. Bir Füze yapıldığında, ÅŸimdi mi sonra mı fırlatacağını soran bir mesaj alırsın. EÄŸer sonrayı seçersen, istediÄŸin zaman üzerine tıklayıp fırlatabilirsin. Fırlatılmayı bekleyen çok sayıda füzen olabilir.</p> - <p style="hp">Bir Füze yapıldığında, fırlatılması bekletilirse artık; çelik, eÅŸya yada işçi kullanmaz ama yinede biraz para harcar.</p> + <p style="hp">Füzeler insanlarınızı baÅŸka bir gezegene tahliye etmenizi saÄŸlar ve böylece oyun biter.</p> + <p style="hp">Tahliyeye baÅŸlamadan önce 5 baÅŸarılı insansız fırlatma yapmanız gerekiyor. Her bir baÅŸarılı tahliye füzesi 1000 insan içerir.</p> + <p style="hp">EÄŸer herhangi bir fırlatma baÅŸarısız olursa, daha fazla insan tahliye etmeye baÅŸlamadan önce 5 insansız atış daha yapmalısınız.</p> + <p style="hp">Fıratma esnasındaki teknoloji seviyesi baÅŸarılı bir fırlatma ihtimalini arttırır. Bu da teknoloji seviyeniz %80 ise baÅŸarılı olma ihtimalinizin 5'te 4 olması demektir. %100 veya daha fazlası tüm atışlarda baÅŸarı saÄŸlayacaktır (<i>ilk 5</i> atışta yine hata olabilir). Yaptığınız her füze için yeni bir rampa yapmalısınız.</p> + <p style="hp">Füze rampaları ulaşıma baÄŸlantı gerektirmez, bütün ihtiyaçlarını yerel bir Bakkaldan karşılayabilirler. Yapımlarında oldukça fazla çelik, işçi, eÅŸya ve para harcarlar. Bir Füze yapıldığında, ÅŸimdi veya sonra fırlatılmasını soran bir ileti alacaksınız. Sonrayı seçtiÄŸinizde, istediÄŸiniz zaman üzerine tıklayıp fırlatabilirsiniz. Fırlatılmayı bekleyen çok sayıda füzeniz olabilir.</p> + <p style="hp">Bir Füze yapıldığında, fırlatılması bekletilirse; beklediÄŸi süre içinde çelik, eÅŸya veya işçi kullanmaz, ancak yine de biraz para harcar.</p> <p style="hp">Bu bir Füze rampası</p> <img src="images/tiles/rocket5.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/transport/rocket.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="ore">Mineral</a></li> <li><a href="commune">Komün</a></li> diff -Nru lincity-ng-2.0/data/help/tr/school.xml lincity-ng-2.9~git20150314/data/help/tr/school.xml --- lincity-ng-2.0/data/help/tr/school.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/school.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,17 +1,17 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Okullar</p> - <p style="hp">Ãœniversitelere benzer bir yolla teknoloji seviyesini artırmak için eÅŸya ve işçi kullanır. Ãœniversitelerden biraz daha az işçi ve eÅŸya kullanırlar, biraz daha az teknoloji saÄŸlarlar. Bir bölgede 4-5 okul yerine tek bir üniversite koymak seçimleri arasında, sıksık (ama herzaman deÄŸil) bir üniversite koymak daha iyidir.</p> + <p style="hp">Ãœniversitelere benzer bir yolla teknoloji seviyesini arttırmak için eÅŸya ve işçi kullanır. Ãœniversitelerden biraz daha az işçi ve eÅŸya kullanırlar ve biraz daha az teknoloji saÄŸlarlar. Bir bölgede 4-5 okul yerine tek bir üniversite koymak seçimleri arasında, sık sık (ama her zaman deÄŸil) bir üniversite koymak daha iyidir.</p> <p style="hp">Okulların ulaşıma baÄŸlanmaları gerekmez, fakat okul iÅŸlerini yaparken kullanılacak bolca işçi ve eÅŸya için bir Bakkalın kapsama alanında olmaya ihtiyaçları vardır.</p> - <p style="hp">Okulların çalışması maliyetlidir. Para düğmesine tıklayarak <b> geçen </b> yılın toplam maliyetlerini görebilirsin. 'okul' deÄŸeri okul masrafıdır.</p> - <p style="hp">Bir okulun çalıştığını, üzerine tıklayarak anlayabilirsin, canlandırma hareketlenecektir.</p> + <p style="hp">Okulların çalışması maliyetlidir. Para düğmesine tıklayarak <b> geçen </b> yılın toplam maliyetlerini görebilirsiniz. 'okul' deÄŸeri okul masrafıdır.</p> + <p style="hp">Bir okulun çalıştığını, üzerine tıklayarak hareketlenen canlandırmadan anlayabilirsiniz.</p> <p style="hp">Bu bir Okul</p> <img src="images/tiles/school0.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/misc/book.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="university">Ãœniversite</a></li> <li><a href="transport">Ulaşım</a></li> diff -Nru lincity-ng-2.0/data/help/tr/slow.xml lincity-ng-2.9~git20150314/data/help/tr/slow.xml --- lincity-ng-2.0/data/help/tr/slow.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/slow.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,9 +2,9 @@ <Document style="helpdocument"> <p style="htitle">YavaÅŸ hız</p> <img src="images/gui/speed/normal.png"/> - <p style="hp">Bu yavaÅŸ hız düğmesi. Oyunun daha yavaÅŸ bir hızda çalışmasını saÄŸlar. YavaÅŸ makinelerde hız düğmeleri etki etmeyebilir.</p> + <p style="hp">Bu yavaÅŸ hız düğmesi. Oyunun daha yavaÅŸ bir hızda çalışmasını saÄŸlar. YavaÅŸ bilgisayarlarda, hız düğmeleri etki etmeyebilir.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="medium">Orta</a></li> <li><a href="fast">Hızlı</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/steel.xml lincity-ng-2.9~git20150314/data/help/tr/steel.xml --- lincity-ng-2.0/data/help/tr/steel.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/steel.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,13 +1,13 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Çelik</p> - <p style="hp">Çelik genellikle Ağır sanayi (çelik iÅŸleme) tarafından yapılır. Bir çelik iÅŸletmesi yapabilmek için yeterli teknoloji seviyesine sahip olmalısın. Bundan öncede, Komünler tek çelik kaynağındır. Komünler küçük bir miktar çelik saÄŸlar (mineralden), ihtiyaçlarını karşılamak için çok sayıda Komüne ihtiyacın olacak.</p> - <p style="hp">Çelik demircilerde eÅŸya yapmak için kullanılır. Çelik eÅŸya yapımı için Hafif sanayide de kullanılır. Hafif sanayi iÅŸlerinin çıktısı çeliksiz çok düşer.</p> - <p style="hp">Füzeler çokça çelik kullanır, rampaların temel yapı malzemesidir.</p> - <p style="hp">Demiryollarıda bakımları için çelik kullanır.</p> + <p style="hp">Çelik genellikle Ağır sanayi (çelik iÅŸleme) tarafından yapılır. Bir çelik iÅŸletmesi yapabilmek için yeterli teknoloji seviyesine sahip olmalısınız. Bundan önce ise Komünler tek çelik kaynağınızdır. Komünler, mineralden küçük bir miktar çelik saÄŸlar. Bu nedenle ihtiyaçlarınızı karşılamak için çok sayıda Komüne ihtiyacınız olacak.</p> + <p style="hp">Çelik, demircilerde eÅŸya yapmak için kullanılır. Çelik, eÅŸya yapımı için Hafif sanayide de kullanılır. Hafif sanayi iÅŸlerinin çıktısı çeliksiz çok düşer.</p> + <p style="hp">Füzeler çok miktarda çelik kullanır. Rampaların temel yapı malzemesidir.</p> + <p style="hp">Demiryollarında da bakımlar için çelik kullanılır.</p> <p style="hp">Çelik üretimi vergilendirilir.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="commune">Komün</a></li> <li><a href="blacksmith">Demirci</a></li> <li><a href="goods">EÅŸya</a></li> diff -Nru lincity-ng-2.0/data/help/tr/substation.xml lincity-ng-2.9~git20150314/data/help/tr/substation.xml --- lincity-ng-2.0/data/help/tr/substation.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/substation.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,16 +1,16 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Trafolar</p> - <p style="hp">Trafolar elektriÄŸi elektrik hatlarından alır ve çevrelerine dağıtır. ÖrneÄŸin; üzerine tıklayarak yerleÅŸim alanına elektrik saÄŸlandığını küçükpencereden kontrol edebilirsin .</p> + <p style="hp">Trafolar, elektriÄŸi elektrik hatlarından alır ve çevrelerine dağıtır. Ãœzerine tıklayarak yerleÅŸim alanında nerelere elektrik saÄŸlandığını küçük pencereden kontrol edebilirsiniz.</p> <p style="hp">Bu bir Trafo</p> <img src="images/tiles/substation-G.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/power/substation.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="powerline">Elektrik hatları</a></li> - <li><a href="powerssolar">GüneÅŸsel Elektrik üreteci</a></li> + <li><a href="powerssolar">GüneÅŸ Paneli</a></li> <li><a href="commune">Komün</a></li> <li><a href="steel">Çelik</a></li> <li><a href="jobs">İşçi</a></li> diff -Nru lincity-ng-2.0/data/help/tr/sustain.xml lincity-ng-2.9~git20150314/data/help/tr/sustain.xml --- lincity-ng-2.0/data/help/tr/sustain.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/sustain.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,24 +1,24 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Sürdürülebilirlik iÅŸlem penceresi</p> - <p style="hp">Bu pencere renklendirilmiÅŸ 6 çizgi içerir. Bunların hepsi pencerenin saÄŸ kenarına yetiÅŸti ise, sürdürülebilir bir ekonomin vardır.</p> + <p style="hp">Bu pencere renklendirilmiÅŸ 6 çizgi içerir. Bunların hepsi pencerenin saÄŸ kenarında ise, sürdürülebilir bir ekonominiz vardır.</p> <li> - <span color="orange">Madencilik</span> (turuncu) hiçbir mineral yada kömür madeni kazmıyorsun yada çöp dökmüyorsun. + <span color="orange">Madencilik</span> (turuncu) hiçbir mineral veya kömür madeni kazmıyorsunuz veya çöp dökmüyorsunuz. </li> <li> - <span color="gray">Ticaret</span> (gri) ithalat yada ihracat yapmıyorsun. + <span color="gray">Ticaret</span> (gri) ithalat veya ihracat yapmıyorsunuz. </li> <li> - <span color="green">Para</span> (yeÅŸil) paran kararlı yada yükseliyor, bunun anlamı; hiç bir ÅŸey yapamazsınız fakat bölgeleriniz daha ucuzlar. + <span color="green">Para</span> (yeÅŸil) paranız kararlı veya yükseliyor. Bunun anlamı; hiç bir ÅŸey yapamazsınız fakat bölgeleriniz daha çok ucuzlar. </li> <li> - <span color="blue">Nüfus</span> (mavi) Yıl sayacı 180'de saymaya baÅŸlamışken nüfusunuz deÄŸerinin %2'sinde kararlı. EÄŸer bu aralığın dışına çıkarsa, yeni nüfusla yeni bir deÄŸer oluÅŸacak ve yıl sayacı 0'a doÄŸru geri gidecek. Ayrıca, nüfusun en az 5000 olmalı. + <span color="blue">Nüfus</span> (mavi) Yıl sayacı 180'de saymaya baÅŸlamışken nüfusunuz deÄŸerinin %2'sinde kararlı. EÄŸer bu aralığın dışına çıkarsa, yeni nüfusla yeni bir deÄŸer oluÅŸacak ve yıl sayacı 0'a doÄŸru geri gidecek. Ayrıca, nüfusunuz en az 5000 olmalı. </li> <li> - <span color="yellow">Teknoloji</span> (sarı) teknolojin artıyor yada çok küçük bir miktarda düşüyor. EÄŸer %1'den daha fazla düşerse yıl 0'a geri döner. Ayrıca teknoloji seviyen en az %50 olmalı. + <span color="yellow">Teknoloji</span> (sarı) teknolojiniz artıyor veya çok küçük bir miktarda düşüyor. EÄŸer %1'den daha fazla düşerse yıl 0'a geri döner. Ayrıca teknoloji seviyeniz en az %50 olmalı. </li> <li> - <span color="red">Ä°tfaiye</span> (kırmızı) yangın koruması olan bütün bölgelerde yangın çıkabilir. Bu bölgeler yangın korumasına sahip olmak zorunda <b> deÄŸil</b>: anıtlar, + <span color="red">Ä°tfaiye</span> (kırmızı) yangın koruması olan bütün bölgelerde yangın çıkabilir. Ancak ÅŸu bölgeler yangın korumasına sahip olmak zorunda <b> deÄŸiller</b>: anıtlar, mineral madenleri, elektrik hatları ve füzeler. </li> <p style="hp">Sürdürülebilirlik için yılların gereksinimi: Madencilik=180 Ticaret=180 Para=60 Nüfus=60 Teknoloji=120 Ä°tfaiye=60</p> diff -Nru lincity-ng-2.0/data/help/tr/tech-level.xml lincity-ng-2.9~git20150314/data/help/tr/tech-level.xml --- lincity-ng-2.0/data/help/tr/tech-level.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tech-level.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,15 +1,15 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Teknoloji seviyesi</p> - <p style="hp">Åžehrinin teknoloji seviyesi, kesin iÅŸlemlerin verimliliÄŸini ve yapabileceÄŸin yapıların miktarını belirtir.</p> - <p style="hp">Teknolojini artırmak için, anıtlar, okullar ve üniversiteler yapmalısın ve uygun olan girdileri saÄŸlamalısın.</p> - <p style="hp">Teknoloji seviyen çok düşük olduÄŸunda sadece anıt yapabilirsin. Çevrede onlardan bir kaç tane edindikten sonra, okulları 'icat' edeceksin . Okullar anıtlardan daha fazla teknoloji saÄŸlar.</p> - <p style="hp">Teknoloji seviyen yüksek bir düzeye ulaÅŸtığında ise Ãœniversiteleri 'icat' edeceksin. Bunlar okullardan daha fazla teknoloji saÄŸlar, fakat <b> çok </b> kaynağın açlığını çekerler.</p> - <p style="hp">Sahip olduÄŸun daha fazla teknoloji daha çok <i> aşındıracaktır</i>. Bu ÅŸu anlama gelir; daha yüksek seviye için daha çok okul ve üniversiten olmalı.</p> - <p style="hp">Bir de; dikkat etmen gereken baÅŸka bir nokta, bir yada iki üniversite (yada aniden kaynak açlığı çekmeleri): teknoloji seviyen için <b> düşüş </b> sebebi olabilir.</p> - <p style="hp">BaÅŸarılı Füze fırlatmaları teknoloji seviyenle orantılıdır.</p> + <p style="hp">Åžehrinin teknoloji seviyesi, kesin iÅŸlemlerin verimliliÄŸini ve yapabileceÄŸiniz yapıların miktarını belirtir.</p> + <p style="hp">Teknolojinizi arttırmak için, anıtlar, okullar ve üniversiteler yapmalı ve uygun olan girdileri saÄŸlamalısınız.</p> + <p style="hp">Teknoloji seviyeniz çok düşük olduÄŸunda sadece anıt yapabilirsiniz. Çevrede bir kaç tane yaptıktan sonra, okulları 'icat' edeceksiniz. Okullar, anıtlardan daha fazla teknoloji saÄŸlar.</p> + <p style="hp">Teknoloji seviyeniz yüksek bir düzeye ulaÅŸtığında ise Ãœniversiteleri 'icat' edeceksiniz. Bunlar, okullardan daha fazla teknoloji saÄŸlar, fakat <b> çok </b> kaynak tüketirler.</p> + <p style="hp">Sahip olduÄŸunuz daha fazla teknoloji, daha çok <i>aşınmaya</i> sebep olacaktır. Bu, daha yüksek seviye için daha çok okul ve üniversitenizin olması gerektiÄŸi anlamına gelir.</p> + <p style="hp">Dikkat etmeniz gereken baÅŸka bir nokta da, bir veya iki üniversiteyi çıkarmanız gerekirse (veya aniden kaynak açlığı çekerlerse) bu, teknoloji seviyenizin <b> düşüş </b> sebebi olabilir.</p> + <p style="hp">BaÅŸarılı Füze fırlatmaları teknoloji seviyenizle orantılıdır.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="monument">Anıtlar</a></li> <li><a href="school">Okullar</a></li> <li><a href="university">Ãœniversiteler</a></li> diff -Nru lincity-ng-2.0/data/help/tr/tip.xml lincity-ng-2.9~git20150314/data/help/tr/tip.xml --- lincity-ng-2.0/data/help/tr/tip.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tip.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,16 +1,16 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Çöplük (atık dökme)</p> - <p style="hp">Çöplükler atıklarını dökmen için sana yer saÄŸlar. EÄŸer bakkallarda çok fazla biriktirirsen, yanma ihtimalleri artar. Bu hızlı bir ÅŸekilde çokça kirlilik yapar yani atık biriktirilmesine izin vermekten kaçınmalısın.</p> - <p style="hp">Bir çöplük bırakıldığında, yavaşça bir tepeye dönüşür, dolduÄŸunda üzeri çimle kaplanır.</p> - <p style="hp">Genelde olduÄŸu gibi çöplüklerin ulaşım baÄŸlantıları sol-üst kenardan yapılır.</p> - <p style="hp">Herzamanki gibi bir çöplüğün çalıştığını üzerine tıklayarak görebilirsin ve herzamanki gibi canlandırma hareketlenecektir.</p> + <p style="hp">Çöplükler atıklarınızı dökmeniz için yer saÄŸlarlar. EÄŸer Bakkallarda çok fazla biriktirirseniz, yanma ihtimalleri artar. Bu, hızlı bir ÅŸekilde kirlilik yaptığından, atık biriktirilmesine izin vermekten kaçınmalısınız.</p> + <p style="hp">Bir çöplük bırakıldığında yavaşça bir tepeye dönüşür, dolduÄŸunda ise üzeri çimle kaplanır.</p> + <p style="hp">Genelde olduÄŸu gibi çöplüklerin ulaşım baÄŸlantıları sol üst kenardan yapılır.</p> + <p style="hp">Her zamanki gibi bir çöplüğün çalıştığını üzerine tıklayarak canlandırma hareketinden görebilirsiniz.</p> <p style="hp">Bu bir Çöplük</p> <img src="images/tiles/tip0.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/mining/trash.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkallar</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/track.xml lincity-ng-2.9~git20150314/data/help/tr/track.xml --- lincity-ng-2.0/data/help/tr/track.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/track.xml 2015-05-05 16:32:49.000000000 +0000 @@ -8,7 +8,7 @@ <p style="hp">bu da simgesi</p> <img src="images/gui/buttonpanel/transport/tracks.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="transport">Ulaşım</a></li> <li><a href="commune">Komünler</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/transport.xml lincity-ng-2.9~git20150314/data/help/tr/transport.xml --- lincity-ng-2.0/data/help/tr/transport.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/transport.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,26 +2,26 @@ <Document style="helpdocument"> <p style="htitle">Ulaşım</p> <p style="hp">Lincity'de 3 çeÅŸit ulaşım vardır: Tali yollar, Yollar ve Demiryolları.</p> - <p style="hp">Bir Bakkalın, alanını bir uçtan bir uca geçilmesinden ibaret olan 4'üncü bir yol vardır. Bu ticaret için çok kısa bir kapsama alanıdır ve tekrar ulaşıma baÅŸvulurmayacaktır. Ancak<a href="market"> Bakkalları </a>tekrar okuman çok önemlidir.</p> + <p style="hp">Bir Bakkalın, alanını bir uçtan bir uca geçilmesinden ibaret olan 4'üncü bir yol vardır. Bu ticaret için çok kısa bir kapsama alanıdır ve tekrar ulaşıma baÅŸvurulmayacaktır. Ancak <a href="market"> Bakkalları </a> tekrar okumanız çok önemlidir.</p> - <p style="hp">Tali yollar, Yollar, Demiryolları bölgeler arasında yiyecek, işçi, eÅŸya, kömür, mineral, çelik ve atık taşımada kullanılır. Bakkallar arası ulaşımla, Bakkalların kapsama alanı dışındaki yapıların ulaşımı (bu genelde kötü bir fikirdir) ve ulaşıma ihtiyacı olan yapılar belirtilmiÅŸtir:</p> - <li>Komünlerin sadece ulaşıma bitiÅŸik olmaları gerekir</li> - <li>Hafif sanayiler, mineral madenleri, çöplükler, limanlar, kömür madenleri, ağır sanayiler ve geridönüşüm merkezleri sol-üst köşelerinden ulaşıma <b> baÄŸlanmalıdırlar</b>. Ulaşımın 'eÄŸildiÄŸini' göreceksin, böylece baÄŸlantı görülür.</li> - <li>Kömürden elektrik üretecinde bir istisna: sol-üst köşe elektrik hattı baÄŸlantısı için kullanılır, yani ulaşım hemen yanında olmalıdır.</li> - <p style="hp">ÖrneÄŸin, bir Ağır sanayi Yol ile bir Kömür madenine baÄŸlanabilir, ve Raylada Bakkal ve Mineral gibi diÄŸer kaynaklara.</p> + <p style="hp">Tali yollar, Yollar, Demiryolları; bölgeler arasında yiyecek, işçi, eÅŸya, kömür, mineral, çelik ve atık taşımada kullanılır. Bakkallar arası ulaşımla, Bakkalların kapsama alanı dışındaki yapıların ulaşımı (bu genelde kötü bir fikirdir) ve ulaşıma ihtiyacı olan yapılar belirtilmiÅŸtir:</p> + <li>Komünlerin sadece ulaşıma bitiÅŸik olmaları gerekir.</li> + <li>Hafif sanayiler, mineral madenleri, çöplükler, limanlar, kömür madenleri, ağır sanayiler ve geridönüşüm merkezleri sol üst köşelerinden ulaşıma <b> baÄŸlanmalıdırlar</b>. Ulaşımın 'eÄŸildiÄŸini' göreceksiniz, böylece baÄŸlantı görülebilir.</li> + <li>Termik Santralnde bir istisna bulunmaktadır: sol üst köşe, elektrik hattı baÄŸlantısı için kullanılır. Yani ulaşım hemen yanında olmalıdır.</li> + <p style="hp">ÖrneÄŸin; bir Ağır sanayi, Yol ile bir Kömür madenine ve Rayla da Bakkal ve Mineral gibi diÄŸer kaynaklara baÄŸlanabilir.</p> - <p style="hp">Ulaşımla nehri geçmek için, basitçe nehri yık ve aralık boyundan bir Tali yol, Yol yada Demiryolu yap. Bunun bir köprü gibi olduÄŸunu düşün. Bu sana masraflı olur çünkü suyu temizlemek pahalıdır.</p> + <p style="hp">Ulaşımla nehri geçmek için, basitçe nehri yıkın ve aralık boyundan bir Tali yol, Yol veya Demiryolu yapın. Bunun bir köprü gibi olduÄŸunu düşünün. Bu size masraflı olacaktır, çünkü suyu temizlemek pahalıdır.</p> - <p style="hp">Yollar ve Demiryolları yıllarca masraf çıkarır (bakım için), ve kirliliÄŸe sebeptirler (eÄŸer çok fazla atık taşırlarsa daha fazla kirliliÄŸe).</p> + <p style="hp">Yollar ve Demiryolları her yıl bakım masrafı çıkarır ve kirliliÄŸe sebeptirler (eÄŸer çok fazla atık taşırlarsa daha fazla kirliliÄŸe).</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="track">Tali yollar</a></li> <li><a href="road">Yollar</a></li> <li><a href="rail">Demiryolları</a></li> <li><a href="commune">Komünler</a></li> <li><a href="coalmine">Kömür madenleri</a></li> - <li><a href="powercoal">Kömürden elektrik üreteçleri</a></li> + <li><a href="powercoal">Termik santraller</a></li> <li><a href="tip">Çöplükler</a></li> <li><a href="recycle">Geridönüşüm merkezleri</a></li> <li><a href="oremine">Mineral madenleri</a></li> diff -Nru lincity-ng-2.0/data/help/tr/tutorial-advanced.xml lincity-ng-2.9~git20150314/data/help/tr/tutorial-advanced.xml --- lincity-ng-2.0/data/help/tr/tutorial-advanced.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tutorial-advanced.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,18 +2,18 @@ <Document style="helpdocument"> <p style="htitle">GeliÅŸmiÅŸ özellikler</p> <p style="hsubtitle">Bakkallar ve Ulaşımlar </p> -<p style="hp">Bir Bakkalın üzerine çiftıklamak ana ekranda bir pencere açar. Bu pencere <b> ulaşımlar ve Bakkallar arsındaki takasları </b> denetler. </p> -<li>satınalmak Bakkalın ulaşımdan ne satın alacağını (yani Bakkal birikimi artacak) </li> -<li>satış karşıtıdır. </li> +<p style="hp">Bir Bakkalın üzerine çift tıklamak ana ekranda bir pencere açar. Bu pencere <b> ulaşımlar ve Bakkallar arsındaki takasları </b> denetler. </p> +<li>Satın almak, Bakkalın ulaşımdan ne satın alacağıdır (Bakkal birikimi artacak) </li> +<li>Satmak ise karşıtıdır. </li> -<p style="hp">Bir ÅŸeylerin olmasını kesinlikle istediÄŸin zamanlar dışında bu özellik nadiren kullanılır. </p> +<p style="hp">Bir ÅŸeylerin olmasını kesinlikle istediÄŸiniz zamanlar dışında bu özellik nadiren kullanılır. </p> <p style="hsubtitle">Sürdürülebilirlik edinme</p> -<p style="hp">Küçükekrandaki 4'üncü sekme sürdürülebilirlik edinmeyi gösterir. </p> -<p style="hp">Sürdürülebilirlik durumunu elde ettiÄŸini görürsen, oyunu uzun bir süre çalışmaya bırakmadan önce kayıt etmen kesinlikle tavsiye edilir. EÄŸer birÅŸeyler çok yanlış giderse (örneÄŸin açlık) kayıt edilen yerden tekrar baÅŸlayabilirsin :-) </p> -<p style="hp">Toplam Bakkal birikimlerini izlemek (küçükpenceredeki iÅŸlem çubuklarıylar) büyük tedirginlikleri engelliyecektir. Ekonomi küçükpenceresini zaman zaman izlemek sürdürülebilir iÅŸlemleri kontrol etmek için yeterli olacaktır. </p> +<p style="hp">Küçük ekrandaki 4'üncü sekme sürdürülebilirlik edinmeyi gösterir. </p> +<p style="hp">Sürdürülebilirlik durumunu elde ettiÄŸinizi görürseniz, oyunu uzun bir süre çalışmaya bırakmadan önce kayıt etmeniz kesinlikle tavsiye edilir. EÄŸer bir ÅŸeyler yanlış giderse (örneÄŸin açlık) kayıt edilen yerden tekrar baÅŸlayabilirsiniz :-) </p> +<p style="hp">Toplam Bakkal birikimlerini izlemek (küçük penceredeki iÅŸlem çubukları yardımıyla) büyük tedirginlikleri engelleyecektir. Ekonomi küçük penceresini zaman zaman izlemek, sürdürülebilir iÅŸlemleri kontrol etmek için yeterli olacaktır. </p> -<li>Ä°pucu: Bakkallardaki atık ve kulübelere dikkat et... </li> +<li>Ä°pucu: Bakkallardaki atık ve kulübelere dikkat edin... </li> <p style="hp"></p> </Document> diff -Nru lincity-ng-2.0/data/help/tr/tutorial-aim.xml lincity-ng-2.9~git20150314/data/help/tr/tutorial-aim.xml --- lincity-ng-2.0/data/help/tr/tutorial-aim.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tutorial-aim.xml 2015-05-05 16:32:49.000000000 +0000 @@ -2,18 +2,18 @@ <Document style="helpdocument"> <p style="htitle">Oyunun amacı </p> <p style="hp">Oyunu 'kazanmanın' iki yolu vardır:</p> -<li><a href="sustain">Sürdürülebilir bir ekonomiye </a>ulaÅŸmak (daha sonrada oynayabilirsin) </li> -<li>Bütün insanlığı <a href="rocket"> uzaygemisi </a> ile baÅŸka bir gezegene tahliye etmek, bu durumda oyun duracaktır. </li> +<li><a href="sustain">Sürdürülebilir bir ekonomiye </a> ulaÅŸmak (daha sonra da oynayabilirsiniz)</li> +<li>Bütün insanlığı <a href="rocket"> uzaygemisi </a> ile baÅŸka bir gezegene tahliye etmek ve ardından oyunun durması. </li> <p style="hp"></p> -<p style="hp">Kaybetmen için geçerli olan (1.1.0) bir yol var:</p> -<li>Herkesin açlık yada kirlilik sebebiyle ölmesi. (nüfus oluÅŸturmak için en az iki insana ihtiyacın olduÄŸunu bilirsin ;-) </li> +<p style="hp">Kaybetmeniz için geçerli olan bir yol var:</p> +<li>Herkesin açlık veya kirlilik sebebiyle ölmesi (nüfus oluÅŸturmak için en az iki insana ihtiyaç olduÄŸunu biliyorsunuz ;-)) </li> <p style="hp"></p> -<p style="hp">Yeni yapılar ve sanayiler yapmanın mümkün olması için teknoloji seviyeni artırmalısın. Nüfusunun geliÅŸimini düzenlemeli ve, ekonomik dengeyi korumalı ve çeÅŸitli ihtyaçları karşılamalısın. </p> +<p style="hp">Yeni yapı ve sanayi yapmanın mümkün olması için teknoloji seviyenizi arttırmalısınız. Nüfusunun geliÅŸimini düzenlemeli ve ekonomik dengeyi koruyarak çeÅŸitli ihtiyaçları karşılamalısınız. </p> <p style="hp"></p> -<p style="hp">Ayrıca bak:</p> +<p style="hp">Ayrıca bakınız:</p> <li><a href="tutorial-basics">Ä°lk adımlar</a></li> <li><a href="tutorial-advanced">GeliÅŸmiÅŸ özellikler</a></li> <li><a href="tutorial-scenario">Önceden tanımlanmış senaryolar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/tutorial-basics.xml lincity-ng-2.9~git20150314/data/help/tr/tutorial-basics.xml --- lincity-ng-2.0/data/help/tr/tutorial-basics.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tutorial-basics.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,43 +1,43 @@ <?xml version="1.0" encoding="UTF-8"?> <Document style="helpdocument"> <p style="htitle">Ä°lk adımlar </p> -<p style="hp">"Yeni oyun"u seç > "Rasgele köy". DiÄŸer senaryolar daha çok yada daha az geliÅŸmiÅŸ oyuncular için. </p> -<p style="hp">Rasgele köy basit yetenekler içerir: </p> -<li>Bakkallara yiyecek saÄŸlayan Çiflikler </li> +<p style="hp">"Yeni oyun"u ve "Rastgele köy"ü seçin. DiÄŸer senaryolar daha çok veya daha az geliÅŸmiÅŸ oyuncular içindir. </p> +<p style="hp">Rastgele köy basit yetenekler içerir: </p> +<li>Bakkallara yiyecek saÄŸlayan Çiftlikler </li> <li>Odun kömürü ve küçük bir miktar mineral ve çelik saÄŸlayan Komünler. </li> <li>YerleÅŸim alanları</li> <li>Çömlekçilik</li> <li>Tali yollar</li> -<p style="hp">Ana ekranda bir yapının üzerine tıklamak, o yapının bilgisini daha aÅŸağıda saÄŸda olan pencerede görüntüler.</p> +<p style="hp">Ana ekranda bir yapının üzerine tıklamak, o yapının bilgisini daha aÅŸağıda, saÄŸda bulunan pencerede görüntüler.</p> <p style="hsubtitle">Bakkal </p> -<p style="hp">Bakkal Lincity'de anahtar bir yapıdır. Hemen hemen tüm yerel ticaret için gereklidir.<a href="market"> Bakkal </a> yardımını <b> okumalısın</b> :-). <i> Şüphesiz ki bir Bakkal boÅŸ olduÄŸunda uygun olan ürünleri satamayacaktır ve tam dolu olduÄŸunda satın alamayacak. Bu, bazı yapıların neden çalışmadığını anlamana yardımcı olabilir (muhtemelen ihtiyaçlarını bulamayacak yada ürettiklerini satamayacaklar)</i> </p> +<p style="hp">Bakkal Lincity'de anahtar bir yapıdır. Hemen hemen tüm yerel ticaret için gereklidir. <a href="market"> Bakkal </a> yardımını <b> okumalısınız</b> :-). <i> Şüphesiz ki bir Bakkal boÅŸ olduÄŸunda uygun olan ürünleri satamayacak ve tam dolu olduÄŸunda da satın alamayacaktır. Bu, bazı yapıların neden çalışmadığını anlamanıza yardımcı olabilir (muhtemelen ihtiyaçlarını bulamayacak veya ürettiklerini satamayacaklar)</i>.</p> <p style="hsubtitle">Ulaşım </p> -<p style="hp"><a href="transport">Ulaşım </a> uzun mesafeli takaslarda ve bazı belirli iÅŸler için ihtiyaçtır (uygun yardım mesajında yazılmıştır, örneÄŸin komünler). Bakkallar gibi sınırlı hacimleri ve alabilecekleri doyum sınırlıdır.</p> +<p style="hp"><a href="transport">Ulaşım </a> uzun mesafeli takaslarda ve bazı belirli iÅŸler için ihtiyaçtır (örneÄŸin komünler gibi ilgili yardım sayfasında yazılmıştır). Örn.: Sınırlı hacimleri olan ve doyumluÄŸa ulaÅŸma sınırları olan Bakkallar gibi.</p> -<p style="hp">EÄŸer 'normal' bir yapı bir Bakkalın kapsama alanında deÄŸilse ozaman ulaşıma baÄŸlanmış olmalı. Fakat ÅŸunu hatırla; Yolların ve Demiryollarının yıllık masrafları vardır, yani sen gerçekten bir yapıyı yalıtmak istemedikçe ihtiyaçları olduÄŸunda Bakkalların kullanılması genelde daha iyidir (ve daha ucuz). </p> +<p style="hp">EÄŸer 'normal' bir yapı, bir Bakkalın kapsama alanında deÄŸilse; ulaşıma baÄŸlanmış olmalıdır. Fakat ÅŸunu göz önünde bulundurun: Yolların ve Demiryollarının yıllık masrafları olduÄŸundan, gerçekten bir yapıyı yalıtmak istemedikçe (örn. bir anıt), ihtiyaç olduÄŸunda Bakkalların kullanılması genelde daha iyi ve daha ucuzdur. </p> -<p style="hp">BaÅŸlangıçtaki köye tali yollar sadece komünlerin üretimi için gereklidir. DiÄŸer çalışmalar sadece Bakkallara itiyaç duyarlar. </p> +<p style="hp">BaÅŸlangıçtaki köye tali yollar gerekli deÄŸildir, fakat köy geliÅŸtikçe ihtiyaç duyulacaktır. </p> <p style="hsubtitle">Para </p> -<p style="hp">Ãœretimler vegilendirilir ve böylece para kazanırsın. Küçükekrandaki üçüncü sekme <a href="finance"> Parasal ekrandır</a>. Çok hızlı, çokça yatırım yapmamaya dikkat et: paran olumsuzsa yeni birÅŸeyler yapamazsın ve borç için her yıl ödemen gereken bir miktar olacaktır. Bu iflasına yol açabilir<a href="tutorial-scenario"> Zor zamanlar senaryosuna </a> bak. </p> +<p style="hp">Ãœretimler vergilendirilir ve böylece para kazanırsınız. Küçük ekrandaki üçüncü sekme <a href="finance"> Parasal ekran</a>dır. Çok hızlı, yüksek miktarda yatırım yapmamaya dikkat edin: paranız eksiye düşerse yeni bir ÅŸeyler yapamazsınız ve borç için her yıl ödemeniz gereken bir miktar olur. Bu da iflasınıza yol açabilir. <a href="tutorial-scenario"> Zor zamanlar senaryosuna </a> bakın. </p> <p style="hsubtitle">Åžehri geliÅŸtirmek </p> -<p style="hp">Hatırla; insanlar beslenir yada ölür. Nüfus artışını kontrol etmek için, yaptığın<a href="residential"> YerleÅŸim alanı </a> çeÅŸitlerinde bir denge bulmak zorundasın (farklı doÄŸum/ölüm oranları var). Yeni nüfus daha fazla işçi saÄŸlayacak, fakat daha fazla yiyecek eÅŸya ve iÅŸe... de ihtiyaçları olacak. </p> -<p style="hp">Ãœretimlerini artırmak zorunda olacaksın (çömlekiçi, demirci ekle) ve aynı zamanda onların ihtiyacı oldukları kaynaklara da dikkat et. Yani uyumlu olarak Komünlere de ihtiyaç olacak. </p> -<p style="hp">Yeni yapılar edinmek için <a href="tech-level"> Teknoloji seviyeni </a> artırmalısın.</p> -<p style="hp"> Bazı noktalarda amacını seçmek zorunda olacaksın: <a href="sustain"> Sürdürülebilir bir ekonomi mi </a> yoksa <a href="rocket"> uzaygemileri </a>mi?.</p> +<p style="hp">Hatırlayın; insanlar beslenir veya ölür. Nüfus artışını kontrol etmek için, yaptığınız <a href="residential"> YerleÅŸim alanı </a> çeÅŸitlerinde bir denge bulmak zorundasınız (farklı doÄŸum/ölüm oranları bulunmaktadır). Yeni nüfus daha fazla işçi saÄŸlayacak, fakat daha fazla yiyecek eÅŸya ve iÅŸe de ihtiyaçları olacak...</p> +<p style="hp">Ãœretimleri arttırmak zorunda olacaksınız (çömlekçi veya demirci ekleyin). Aynı zamanda ihtiyacı oldukları kaynaklara da dikkat etmelisiniz. Yani uyumlu olarak Komünlere de ihtiyacınız olacak. </p> +<p style="hp">Yeni yapılar edinmek için <a href="tech-level"> Teknoloji seviyenizi </a> arttırmalısınız.</p> +<p style="hp"> Bazı noktalarda bir amaç seçmek zorunda olacaksınız: <a href="sustain"> Sürdürülebilir bir ekonomi mi </a> yoksa <a href="rocket"> uzaygemileri </a> mi?</p> -<p style="hp">Çok sık bir ÅŸekilde <a href="pbar"> toplam bakkal birikimini </a>denetlemek zorunda olacaksın. Birde; küçükharitalar ekonominin içyüzü ve tam olarak gözden geçirmen için sana daha iyi bilgi verecektir. Hatırla ana ekranda bir yapının üzerine tıklamak saÄŸ-alt köşedeki pencerede bilgisini görüntüler. </p> +<p style="hp">Çok sık bir ÅŸekilde <a href="pbar"> toplam bakkal birikimini </a> denetlemek zorunda olacaksınız. Küçük haritalar ekonominin iç yüzüdür ve tam olarak gözden geçirmeniz size daha fazla bilgi verecektir. Ana ekranda bir yapının üzerine tıklamanın saÄŸ alt köşedeki pencerede bilgisini görüntülediÄŸini hatırlayın. </p> -<li>Ä°pucu: Bir-iki deÄŸiÅŸiklik olduÄŸunda biraz bekle (yardım dosyalarını oku ;-) yada oyunu daha yüksek bir hıza al ve ekonomik göstergelerin nasıl deÄŸiÅŸtiÄŸini izle. </li> +<li>Ä°pucu: Bir iki deÄŸiÅŸiklik yaptığınızda biraz bekleyin (yardım dosyalarını okuyun ;-)) veya oyunu daha yüksek bir hıza alıp ekonomik göstergelerin nasıl deÄŸiÅŸtiÄŸini izleyin. </li> <p style="hp"></p> -<p style="hp">EÄŸlen.</p> +<p style="hp">Ä°yi eÄŸlenceler.</p> <p style="hp"></p> -<p style="hp">Ayrıca bak:</p> +<p style="hp">Ayrıca bakınız:</p> <li><a href="tutorial-advanced">GeliÅŸmiÅŸ özellikli eÄŸitmen</a></li> <li><a href="tutorial-scenario">Önceden tanımlanmış senaryolar</a></li> <li><a href="msb-starve">Açlık örtüsü</a></li> diff -Nru lincity-ng-2.0/data/help/tr/tutorial-overview.xml lincity-ng-2.9~git20150314/data/help/tr/tutorial-overview.xml --- lincity-ng-2.0/data/help/tr/tutorial-overview.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tutorial-overview.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,22 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> <Document style="helpdocument"> -<p style="htitle">Ekrana genel bakış </p> +<p style="htitle">Ekrana genel bakış</p> -<p style="hp"><b>Sol-üst </b>, araçlarla (sorgu ve dozer) simgelerin birikimi ve oyun sırasında inÅŸa edebileceklerinin bütün simgeleri vardır. </p> -<li>Bir simgenin üzerine sol-tıklandığında çekmece açılır daha fazla madde görülür. </li> -<li>Bir simgenin üzerine saÄŸ-tıkladığında uyumlu olan yardımı alırsın. </li> -<li>Fare iÅŸaretçisi ile biraz beklediÄŸinde küçük bir yardım iletisi açılır. </li> +<p style="hp"><b>Sol üst</b>te, araçlarla (sorgu ve dozer), simgelerin birikimi ve oyun sırasında inÅŸa edebileceklerinizin tüm simgeleri bulunmaktadır. </p> +<li>Bir simgenin üzerine sol tıklandığında çekmece açılır ve daha fazla madde görülür. </li> +<li>Bir simgenin üzerine saÄŸ tıkladığınızda ise ilgili yardım gösterilir. </li> +<li>Fare iÅŸaretçisi ile biraz beklediÄŸinizde küçük bir yardım iletisi açılır. </li> <p style="hp"></p> -<p style="hp"><b>AÅŸağı-sol </b>, oyunun hız kontrolüdür.</p> +<p style="hp"><b>Sol alt</b>taki simgeler, oyunun hız denetleyicileridir.</p> <p style="hp"></p> -<p style="hp"><b>AÅŸağı-saÄŸ </b>, bütün "bilgi araçlarını" içerir: 4 sekmeli küçükekran, ve hemen altında çeÅŸitli bilgiler için küçük simgeler. Ne olduÄŸunu görmek için onlardan birinin üzerine tıklayın. </p> +<p style="hp"><b>SaÄŸ alt</b>ta ise bütün "bilgi araçları" bulunmaktadır: 4 sekmeli küçük ekran ve hemen altında da çeÅŸitli bilgiler için küçük simgeler. Ne olduÄŸunu görmek için birinin üzerine tıklayın. </p> <p style="hp"></p> -<p style="hp">Klavye ve fareyi deneyin (soli orta ve saÄŸ tık ve teker...) , Yardım için ise 'F1'. </p> +<p style="hp">Klavye ve fareyi deneyin (sol, orta ve saÄŸ tıklama ile tekerlek...) , Yardım için 'F1'e basın. </p> -<p style="hp">Ayrıca bak:</p> +<p style="hp">Ayrıca bakınız:</p> <li><a href="tutorial-basics">Ä°lk adımlar</a></li> <li><a href="tutorial-advanced">GeliÅŸmiÅŸ ayarlar</a></li> <li><a href="tutorial-scenario">Önceden tanımlanmış senaryolar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/tutorial-scenario.xml lincity-ng-2.9~git20150314/data/help/tr/tutorial-scenario.xml --- lincity-ng-2.0/data/help/tr/tutorial-scenario.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tutorial-scenario.xml 2015-05-05 16:32:49.000000000 +0000 @@ -4,12 +4,14 @@ <p style="hp">"Yeni oyun" altında </p> <p style="hsubtitle"> Kolay</p> -<li>Ä°yi vakit </li> +<li>Ä°yi zamanlar</li> -<li>Kumsal (hatırla; insanlar beslenir yada ölür ;-) </li> +<li>Kumsal (hatırlayın; insanlar beslenir veya ölür ;-)) </li> -<p style="hsubtitle">Zor </p> -<li>"Zor dönem": iflastan kutulmaya çalışırsın. Åžehrin ihtiyaçlarını belirlemede dikkatli ol ve para kazanmak ve masrafları kısmak için ÅŸiddetli tedbirler al. Zordur fakat sürdürülebilir bir ekonomi için düzeltmek mümkün. </li> +<p style="hsubtitle">Zor</p> +<li>"Zor zamanlar": iflastan kurtulmaya çalışıyorsunuz. Åžehrin ihtiyaçlarını belirlemede dikkatli olun ve para kazanmak ve masrafları kısmak için ÅŸiddetli tedbirler alın. Zordur, fakat sürdürülebilir bir ekonomiyi saÄŸlamak mümkün. </li> <p style="hp"></p> +<li>"aşırı_kurak": toprak oldukça kurak. Bu nedenle çiftlik ve komünler en üst baÅŸarım için dikkatlice yerleÅŸtirilmeli.</li> +<li>"aşırı_nemli": toprak oldukça nemli olduÄŸundan ÅŸehir kurmak çok zor.</li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/tutorial.xml lincity-ng-2.9~git20150314/data/help/tr/tutorial.xml --- lincity-ng-2.0/data/help/tr/tutorial.xml 2009-01-25 20:21:16.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/tutorial.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="UTF-8"?> <Document style="helpdocument"> - <p style="htitle">EÄŸitmen</p> + <p style="htitle">Öğretici</p> <li><a href="tutorial-aim">Oyunun amacı</a></li> - <li><a href="tutorial-overview">Ekranı gözden geçir</a></li> + <li><a href="tutorial-overview">Ekrana genel bakış</a></li> <li><a href="tutorial-basics">Ä°lk adımlar</a></li> <li><a href="tutorial-advanced">GeliÅŸmiÅŸ özellikler</a></li> <li><a href="tutorial-scenario">Önceden tanımlanmış senaryolar</a></li> diff -Nru lincity-ng-2.0/data/help/tr/university.xml lincity-ng-2.9~git20150314/data/help/tr/university.xml --- lincity-ng-2.0/data/help/tr/university.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/university.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,19 +1,19 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Ãœniversite</p> - <p style="hp">Ãœniversiteler teknoloji seviyeni arttırmana yardımcı olur. Çalışırken işçi ve eÅŸya tüketirler. İşçi/eÅŸya girdilerini aldıklarında okullardan daha fazla üretirler. Bununla birlikte biraz daha işçi ve eÅŸya harcarlar ve çalışmalarıda biraz daha masraflıdır, yani onları besleyebilmek için yeterli ekonomi ve sanayin olmalı.</p> - <p style="hp">Teknoloji seviyeni %100'e yaklaÅŸtırmak için bir miktar Ãœniversiteye ihtiyacın olacak</p> - <p style="hp">Ãœniversitelerin ulaşıma baÄŸlanmaları gerekmez; tüm ihtiyaçlarını kapsama alanında oldukları Bakkallardan alırlar, yeterli eÅŸya ve işçiyle birlikte.</p> + <p style="hp">Ãœniversiteler teknoloji seviyenizi arttırmanıza yardımcı olur. Çalışırken işçi ve eÅŸya tüketirler. İşçi/EÅŸya girdilerini aldıklarında okullardan daha fazla üretirler. Bununla birlikte biraz daha işçi ve eÅŸya harcarlar ve çalışmaları da biraz daha masraflıdır. Yani besleyebilmek için yeterli ekonomi ve sanayiniz olmalıdır.</p> + <p style="hp">Teknoloji seviyenizi %100'e yaklaÅŸtırmak için bir miktar Ãœniversiteye ihtiyacınız olacak.</p> + <p style="hp">Ãœniversitelerin ulaşıma baÄŸlanmaları gerekmez; yeterli eÅŸya ve işçiyle birlikte tüm ihtiyaçlarını kapsama alanında oldukları Bakkallardan alırlar.</p> - <p style="hsubtitle">EK</p> - <p style="hp">Ãœniversitenin öğrencisini saÄŸlamak için, herbirine 5 okul düşmeli .</p> + <p style="hsubtitle">Ek</p> + <p style="hp">Ãœniversite öğrencisini saÄŸlamak için, herbirine 5 okul düşmelidir.</p> <p style="hp">Bu bir Ãœniversite</p> <img src="images/tiles/university.png" halign="center"/> <p style="hp">ve bu da simgesi</p> <img src="images/gui/buttonpanel/misc/university.png" halign="center"/> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="market">Bakkal</a></li> <li><a href="transport">Ulaşım</a></li> <li><a href="goods">EÅŸya</a></li> diff -Nru lincity-ng-2.0/data/help/tr/waterwell.xml lincity-ng-2.9~git20150314/data/help/tr/waterwell.xml --- lincity-ng-2.0/data/help/tr/waterwell.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/waterwell.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,9 @@ <?xml version="1.0"?> <Document style="helpdocument"> <p style="htitle">Su kuyusu</p> - <p style="hp">Kapsama alanlarındaki evlere su saÄŸlar. Sudan mahrum olunması yiyecekten mahrum olunması gibi bir sonuç oluÅŸturur. Kroki/küçükharitadaki bilgi açlığı gösterir</p> + <p style="hp">Kapsama alanlarındaki evlere su saÄŸlar. Sudan mahrum olunması, yiyecekten mahrum olunması gibi bir sonuç oluÅŸturur. Kroki/Küçük Haritadaki bilgi açlığı gösterir.</p> - <p style="hp">Ayrıca Bak:</p> + <p style="hp">Ayrıca bakınız:</p> <li><a href="food">Yiyecek</a></li> <li><a href="msb-starve">Açlık örtüsü</a></li> </Document> diff -Nru lincity-ng-2.0/data/help/tr/windmill.xml lincity-ng-2.9~git20150314/data/help/tr/windmill.xml --- lincity-ng-2.0/data/help/tr/windmill.xml 2009-01-25 20:21:17.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help/tr/windmill.xml 2015-05-05 16:32:49.000000000 +0000 @@ -1,24 +1,24 @@ <?xml version="1.0"?> <Document style="helpdocument"> - <p style="htitle">YeldeÄŸirmenleri</p> - <p style="hp">YeldeÄŸirmenleri konutlar ve çiflikler için elektrik saÄŸlar. Çifçilerin yiyecekleri daha verimli iÅŸlemelerini saÄŸlar ve konutları daha çekici kılar.</p> + <p style="htitle">Rüzgar deÄŸirmenleri</p> + <p style="hp">Rüzgar deÄŸirmenleri konutlar ve Çiftlikler için elektrik saÄŸlar. Çiftçilerin yiyecekleri daha verimli iÅŸlemelerini saÄŸlar ve konutları daha çekici kılar.</p> <p style="hp">Konutlara elektrik saÄŸlamak insanların daha fazla eÅŸya tüketmesine yol açar.</p> - <p style="hp">Düşük teknoloji YeldeÄŸirmenleri sanayiye elektrik <b> saÄŸlamaz</b>. (Ağır sanayi elektriÄŸini kömürden alabilir, hafif sanayinin ihtiyacı 'gerçek' elektrik almaktır, yine de elektriksiz az bir miktar çıktı verirler)</p> - <p style="hp">YeldeÄŸirmenlerinin elektrik üretmek için insan gücüne de ihtiyaçları vardır. EÄŸer bir yeldeÄŸirmeninin yeterli işçisi yoksa, daha az elektrik üretir ve hiç işçisi yoksa hiç elektrik üretmez.</p> - <p style="hp">Ä°ki çeÅŸit yeldeÄŸirmeni vardır.</p> + <p style="hp">Düşük teknoloji, Rüzgar deÄŸirmenleri sanayiye elektrik <b>saÄŸlamaz</b>. (Ağır sanayi elektriÄŸini kömürden alabilir. Hafif sanayinin ihtiyacı 'gerçek' elektrik almaktır, yine de elektriksiz az bir miktar çıktı verirler)</p> + <p style="hp">Rüzgar deÄŸirmenlerinin elektrik üretmek için insan gücüne de ihtiyaçları vardır. EÄŸer bir Rüzgar deÄŸirmeninin yeterli işçisi yoksa, daha az elektrik üretir. Hiç işçisi yoksa hiç elektrik üretmez.</p> + <p style="hp">Ä°ki çeÅŸit Rüzgar deÄŸirmeni vardır.</p> <img src="images/gui/buttonpanel/power/windmills.png" halign="center"/> <p style="hp">Ä°lki, düşük teknoloji 'odundan'.</p> <img src="images/tiles/windmill1w.png" halign="center"/> - <p style="hp">Ä°kincisi geliÅŸmiÅŸ yeldeÄŸirmeni.</p> + <p style="hp">Ä°kincisi geliÅŸmiÅŸ Rüzgar deÄŸirmenidir.</p> <img src="images/tiles/windmill1g.png" halign="center"/> - <p style="hp">Hangi çeÅŸit olacağı, yeldeÄŸirmenini yaptığındaki teknoloji seviyene baÄŸlıdır.</p> - <p style="hp">Yüksek teknoloji yeldeÄŸirmenleri elektrik hatlarını besleyebilirler.</p> + <p style="hp">Hangi çeÅŸit olacağı, Rüzgar deÄŸirmenini yaptığınızdaki teknoloji seviyesine baÄŸlıdır.</p> + <p style="hp">Yüksek teknoloji Rüzgar deÄŸirmenleri elektrik hatlarını besleyebilirler.</p> - <p style="hsubtitle">Ayrıca bak:</p> + <p style="hsubtitle">Ayrıca bakınız:</p> <li><a href="substation">Trafo</a></li> <li><a href="powerline">Elektrik hatları</a></li> <li><a href="residential">YerleÅŸim</a></li> <li><a href="tech-level">Teknoloji seviyesi</a></li> <li><a href="msb-power">Elektrik örtüsü</a></li> - <li><a href="powerssolar">GüneÅŸsel Elekrtik üreteci</a></li> + <li><a href="powerssolar">GüneÅŸ Paneli</a></li> </Document> \ No newline at end of file diff -Nru lincity-ng-2.0/data/help_templates/convert.py lincity-ng-2.9~git20150314/data/help_templates/convert.py --- lincity-ng-2.0/data/help_templates/convert.py 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/convert.py 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,179 @@ +#!/usr/bin/env /usr/bin/python3 + +import re + + +class HelpObject: + def __init__(s,fname,langs): + s.parce_image=re.compile("IMG_([0-9]+)\[(.*?)\]:?(.*)") + s.parce_also =re.compile("ALSO\[(.*?)\]:?(.*)") + s.name={} # Name of file + s.body={} # Array of paragraph + s.images={} + s.also=[] + s.tile="" + for i in ["orig"] + langs: + s.body[i] =[] + s.name[i] ="" + s.parce(fname,i) + + def info(s): + print("Name: '%s'\n"%s.name) + + def AppendToBody(s,body,title,link): + if title.strip() != "": + body.append("\n <p style=\"hp\">%s</p>"%title) + body.append(" <img src=\"%s\" halign=\"center\"/>"%link) + + def use_image(s,line,typeof): + res=s.parce_image.match(line) + number=res.group(1).strip() + title =res.group(2).strip() + #link =res.group(3).strip() + link =s.images[number] + s.AppendToBody(s.body[typeof],title,link) + + def add_image(s,line): + res=s.parce_image.match(line) + number=res.group(1).strip() + title =res.group(2).strip() + link =res.group(3).strip() + s.images[number]=link + s.AppendToBody(s.body["orig"],title,link) + + def add_also(s,line): + res =s.parce_also.match(line) + title =res.group(1).strip() + string =res.group(2).strip() + res=string.split(",") + for i in res: + ii=i.strip() + if ii != "": + s.also+=[ii] + if len(s.also) == 0: + print("NO ALSO") + else: + if title.strip() != "": + s.body["orig"].append("\n <p style=\"hsubtitle\">%s</p>"%title) + s.body["orig"].append("ALSO") + + def use_also(s,line,typeof): + res=s.parce_also.match(line) + title =res.group(1).strip() + if title.strip() != "": + s.body[typeof].append("\n <p style=\"hsubtitle\">%s</p>"%title) + s.body[typeof].append("ALSO") + + def parce(s,fname,typeof): + """ + fname -- file than needed parce + typeof -- orig or native language: example: "orig", "ru"... + """ + fd = open(typeof + "/" + fname + ".tml","r") + s.name[typeof]=fd.readline().strip() + empty=fd.readline().strip() + + if empty != "": + raise "Second line of file MUST be empty" + + #s.info() + + par="" + alsomode=0 + listmode=0 + for i in fd: + line=i.strip() + + if line == "": + if par != "": + if listmode == 1: s.body[typeof].append("\t<li>%s</li>"%par.strip()) + else: s.body[typeof].append("\t<p style=\"hp\">%s</p>"%par.strip()) + par="" + listmode=0 + elif line[0:4] == "SUBH": + if par != "": + raise "Before SUBH need empty line!" + s.body[typeof].append("\n\t<p style=\"hsubtitle\">%s</p>"%line[5:].strip()) + elif line[0:4] == "IMG_": + if typeof == "orig": + s.add_image(line) + else: + s.use_image(line,typeof) + elif line[0:4] == "ALSO": + if typeof == "orig": + s.add_also(line) + else: + s.use_also(line,typeof) + elif line[0] == "*": + if par != "": + if listmode == 1: s.body[typeof].append("\t<li>%s</li>"%par.strip()) + else: s.body[typeof].append("\t<p style=\"hp\">%s</p>"%par.strip()) + par="" + listmode=1 + par+=line[1:] + " " + + else: + par+=line + " " + + #print("<%s>"%line) + + +def find_strname(s,fname,lang): + res="" + try: + res=s[fname].name[lang] + except: + res="No info from file %s/%s.xml"%(lang,fname) + return res + +def AlsoBody(s,fname,lang): + obj=s[fname] + + string="" + for i in obj.also: + string+="\t<li><a href=\"%s\">%s</a></li>\n"%(i,find_strname(s,i,lang)) + #string+="\n\n\n" + return string + +def xml(base, fname, lang): + obj=base[fname] + string="" + string+="<?xml version=\"1.0\"?>\n" + string+="<!-- DO NOT CHANGE THIS FILE!! IT WAS GENERATED AUTOMATICALLY! (you must edit files in help_template directory) -->\n" + string+="<Document style=\"helpdocument\">\n" + string+="\t<p style=\"htitle\">%s</p>\n"%obj.name[lang] + for i in obj.body[lang]: + if i == "ALSO": + string+=AlsoBody(base,fname,lang) + else: + string+="%s\n"%i + + string+="</Document>" + return string + + +LANG=["ru"] +#LANG=[] + +FILES=["blacksmith","bulldoze","button-index","coalmine","coal","commodities","commune","cricket","dialogs","economy","evacuate","export","farm","fast","finance","firestation","food","goods","health","help","housing","index","industryh","industryl","jobs","keys","market","medium","mill","mini-screen","monument","msb-coal","msb-cricket","msb-fire","msb-health","msb-normal","msb-pol","msb-power","msb-starve","msb-transport","msb-ub40","oremine","ore","other-costs","park","pause","pbar","pollution","port","pottery","powerline","powerscoal","powerssolar","power","query","rail","recycle","residential","river","road","rocket","school","slow","steel","substation","sustain","tech-level","tip","track","transport","tutorial-advanced","tutorial-aim","tutorial-basics","tutorial-overview","tutorial-scenario","tutorial","university","waste","water","waterwell","windmill"] + +#FILES=["tutorial-aim"] +BASE={} + +# Parse all files... +for i in FILES: + BASE[i]=HelpObject(i,LANG) + +# Generate XML files +for l in ["orig"] + LANG: + for f in FILES: + if l != "orig" or True: + if l == "orig": + wfile="../help/en/%s.xml"%(f) + else: + wfile="../help/%s/%s.xml"%(l,f) + fdw =open(wfile,"w"); + print("FILE: ../help/%s/%s.xml:"%(l,f)) + res=xml(BASE,f,l) + fdw.write(res) + #print(res) diff -Nru lincity-ng-2.0/data/help_templates/orig/blacksmith.tml lincity-ng-2.9~git20150314/data/help_templates/orig/blacksmith.tml --- lincity-ng-2.0/data/help_templates/orig/blacksmith.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/blacksmith.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +Blacksmiths + +Blacksmiths turn steel and coal into goods. You will use them mostly early on in the game. They also use jobs, of course. + +Before you have steel works, you must rely on the steel produced by communes. +5 or 6 communes per blacksmith is recommended. + +Blacksmiths do not have to be connected to transport. +They can get all they need from markets that are within range. + +You can see when a blacksmith is working in the usual way, by clicking on it, and every so often the animation will come to life. + +IMG_1[This is a blacksmith] images/tiles/blacksmith0.png +IMG_2[and this its icon] images/gui/buttonpanel/industry/blacksmith.png + +ALSO[See also:]: market, ore, commune, steel, jobs diff -Nru lincity-ng-2.0/data/help_templates/orig/bulldoze.tml lincity-ng-2.9~git20150314/data/help_templates/orig/bulldoze.tml --- lincity-ng-2.0/data/help_templates/orig/bulldoze.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/bulldoze.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Bulldoze + +To demolish an area you select the bulldoze button then click on the area you wish to get rid of. Demolition costs money. When you build an area, the cost to build it and demolish it are shown at the botton left of the screen. + +Some things, such as monuments, are very expensive to demolish. The cost of demolition takes acount not only of the physical cost of disposal, but also the political cost. For example, to demolish a monument, you will have protesters and court costs as well. + +If you hold down the ctrl-key while bulldozing you can bulldoze a larger area. + +IMG_1[This is the bulldozer icon]: images/gui/buttonpanel/base/bulldozer.png + +ALSO[See also:] evacuate, transport, river diff -Nru lincity-ng-2.0/data/help_templates/orig/button-index.tml lincity-ng-2.9~git20150314/data/help_templates/orig/button-index.tml --- lincity-ng-2.0/data/help_templates/orig/button-index.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/button-index.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,101 @@ +Select button index + +IMG_1[]: images/gui/buttonpanel/power/powerlines.png +<a href="powerline">Power lines</a> + +IMG_2[]: images/gui/buttonpanel/power/solarpower.png +<a href="powerssolar">Solar Power station</a> + +IMG_3[]: images/gui/buttonpanel/power/substation.png +<a href="substation">Substation</a> + +IMG_4[]: images/gui/buttonpanel/residence/residence.png +<a href="residential">Residential area</a> + +IMG_5[]: images/gui/buttonpanel/waterwell.png +<a href="waterwell">Water well</a> + +IMG_6[]: images/gui/buttonpanel/parks/farm.png +<a href="farm">Farm</a> + +IMG_7[]: images/gui/buttonpanel/industry/market.png +<a href="market">Market</a> + +IMG_8[]: images/gui/buttonpanel/base/bulldozer.png +<a href="bulldoze">Bulldoze</a> + +IMG_9[]: images/gui/buttonpanel/base/broom.png +<a href="evacuate">Evacuate</a> + +IMG_10[]: images/gui/buttonpanel/transport/tracks.png +<a href="track">Track</a> + +IMG_11[]: images/gui/buttonpanel/mining/coalmine.png +<a href="coalmine">Coalmine</a> + +IMG_12[]: images/gui/buttonpanel/transport/rails2.png +<a href="rail">Railway</a> + +IMG_13[]: images/gui/buttonpanel/power/coalpower.png +<a href="powerscoal">Coal fired power station</a> + +IMG_14[]: images/gui/buttonpanel/transport/road.png +<a href="road">Road</a> + +IMG_15[]: images/gui/buttonpanel/industry/lightindustry.png +<a href="industryl">Light industrial areas</a> + +IMG_16[]: images/gui/buttonpanel/misc/university.png +<a href="university">University</a> + +IMG_17[]: images/gui/buttonpanel/mining/commune.png +<a href="commune">Commune</a> + +IMG_18[]: images/gui/buttonpanel/mining/oremine.png +<a href="oremine">Ore mine</a> + +IMG_19[]: images/gui/buttonpanel/transport/port.png +<a href="export">Import and Export</a> + +IMG_20[]: images/gui/buttonpanel/industry/heavyindustry2.png +<a href="industryh">Heavy industry (steel works)</a> + +IMG_21[]: images/gui/buttonpanel/parks/tree.png +<a href="park">Parkland</a> + +IMG_22[]: images/gui/buttonpanel/mining/recycling.png +<a href="recycle">Recycle centre</a> + +IMG_23[]: images/gui/buttonpanel/parks/water.png +<a href="river">Water/Rivers</a> + +IMG_24[]: images/gui/buttonpanel/misc/health.png +<a href="health">Health Centre</a> + +IMG_25[]: images/gui/buttonpanel/transport/rocket.png +<a href="rocket">Rocket Launch Pad</a> + +IMG_26[]: images/gui/buttonpanel/power/windmills.png +<a href="windmill">Windmill</a> + +IMG_27[]: images/gui/buttonpanel/parks/monument.png +<a href="monument">Monument</a> + +IMG_28[]: images/gui/buttonpanel/misc/book.png +<a href="school">School</a> + +IMG_29[]: images/gui/buttonpanel/parks/mills.png +<a href="mill">Mill</a> + +IMG_30[]: images/gui/buttonpanel/industry/pottery.png +<a href="pottery">Pottery</a> + +IMG_31[]: images/gui/buttonpanel/misc/fire.png +<a href="firestation">Fire station</a> + +IMG_32[]: images/gui/buttonpanel/misc/sports.png +<a href="cricket">Basketball grounds</a> + +IMG_33[]: images/gui/buttonpanel/transport/port.png +<a href="port">Port</a> + diff -Nru lincity-ng-2.0/data/help_templates/orig/coalmine.tml lincity-ng-2.9~git20150314/data/help_templates/orig/coalmine.tml --- lincity-ng-2.0/data/help_templates/orig/coalmine.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/coalmine.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +Coal mine + +Coal mines dig coal from under the ground. There must be a coal seam close to the mine. To see where the seams are you can click on the coal button below the mini map. + +The first time you use this button, it will cost you 1 million. After that it is free. You don't need to use this button, but you will have to find the coal by trial and error. + +Coal mines need jobs to mine coal. + +If your economy provides coal in excess your coal mines can put the coal in new underground seams + +IMG_1[This is a coalmine]: images/tiles/coalmine-full.png +IMG_2[and this its icon]: images/gui/buttonpanel/mining/coalmine.png + +The graphics show the amount of coal already dug but not put onto transport. The above coal mine has maximum stock. + +Clicking on a coal mine will show you, in the mappoint stats window, the coal stock at the pit, and, more importantly, the coal reserve available to be dug. + +Coal mines produce <a href="pollution">pollution</a>. + +ALSO[See also:]: coal, powerscoal, transport, jobs, pollution diff -Nru lincity-ng-2.0/data/help_templates/orig/coal.tml lincity-ng-2.9~git20150314/data/help_templates/orig/coal.tml --- lincity-ng-2.0/data/help_templates/orig/coal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/coal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Coal + +Coal is used by coal fired power stations to make electricity (power). It is also used by potteries, mills and blacksmiths in the process of making goods. Heavy industry (steel works) use coal when they cannot get electricity. + +Coal is dug from under the ground by coal mines. There is a finite coal reserve which you can see with use of the coal reserve button (see coal mines). + +Communes provide a little 'coal' as well. Really this is charcoal from coppiced woods. They only provide small amounts, enough for a few potteries and blacksmiths. + +ALSO[See also:] commodities, coalmine, powerscoal, commune, pottery, blacksmith, msb-coal diff -Nru lincity-ng-2.0/data/help_templates/orig/commodities.tml lincity-ng-2.9~git20150314/data/help_templates/orig/commodities.tml --- lincity-ng-2.0/data/help_templates/orig/commodities.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/commodities.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Commodities + +Commodities are the stuff that can be produced, transfered, stored, processed and consumed in your city. The status display of every building or transport tile always lists the relevant commodities. The arrows at the start of the lines indicate raw materials, products and transferables + +In most cases, at least 5% of rawmaterial must be present in order to turn them into 5% of products. + +The second tab of the minimap shows city wide statistics, and their recent changes with progress bars. In conjunction with the tranportation overlay these can tell you a lot about your economic development. + +ALSO[See also:] pbar, msb-transport, food, jobs, goods, waste, ore, steel, coal, water, power diff -Nru lincity-ng-2.0/data/help_templates/orig/commune.tml lincity-ng-2.9~git20150314/data/help_templates/orig/commune.tml --- lincity-ng-2.0/data/help_templates/orig/commune.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/commune.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +Forests + +Forests (aka Communes) are areas where charcoal burners + coppice woods to make charcoal (the same as coal here). + They also produce small amounts of ore and steel. + +You will probably need a 'few' communes to +provide enough coal and steel for areas such as potteries, blacksmiths and mills. + +If a commune is not producing anything for 10 years +it is closed and the area turns in parks. + +Communes can connect to transport at any point around it, not only to the gate. + +Communes' coal production depends on underground water unless they receive fresh water +via transport. (tiles with water are green, others are yellow-brown like desert) + +IMG_1[This is a commune] images/tiles/commune1.png +IMG_2[and this its icon] images/gui/buttonpanel/mining/commune.png + +ALSO[See also:] pottery, blacksmith, mill, oremine, steel diff -Nru lincity-ng-2.0/data/help_templates/orig/cricket.tml lincity-ng-2.9~git20150314/data/help_templates/orig/cricket.tml --- lincity-ng-2.0/data/help_templates/orig/cricket.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/cricket.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +Basketball courts + +Basketball courts provide sport and entertainment for your residents. They need goods and jobs to work. They do not have to be connected to transport, though if not, they do have to be within range of a market that can supply the jobs and goods. They also cost money to run. + +When you build a basketball court, it does not start straight away. There is usually a three month wait before baskets are installed. + +To see the range that your basketball courts cover, click on the sports button below the 'mini screen'. Areas that have cover are displayed as normal, areas not covered are just dark green. + +Basketball courts increase the desirability of residential areas within their range. + +Basketball courts go through an animation sequence every three month to show that they are working. + +IMG_1[This is a basketball court]: images/tiles/cricket1.png +IMG_2[and this its icon]: images/gui/buttonpanel/misc/sports.png +IMG_3[and this its mapview overlay icon]: images/gui/mapview/roundbuttons/round_sport.png + + +ALSO[See also:]: mini-screen, goods, market, jobs, msb-cricket \ No newline at end of file diff -Nru lincity-ng-2.0/data/help_templates/orig/dialogs.tml lincity-ng-2.9~git20150314/data/help_templates/orig/dialogs.tml --- lincity-ng-2.0/data/help_templates/orig/dialogs.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/dialogs.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +Information Tabs Help + +Map-Tab + +* <a href="mini-screen">Minimap</a> + +Markets-Tab + +* <a href="pbar">Ressources Status Bar</a> + +$-Tab + +* <a href="finance">Finance</a> +* <a href="other-costs">Other costs</a> +* <a href="housing">Population</a> + +Eco-Tab + +* <a href="economy">Economy Graph</a> +* <a href="sustain">Sustainability progress window</a> + +ALSO[See also:]: diff -Nru lincity-ng-2.0/data/help_templates/orig/economy.tml lincity-ng-2.9~git20150314/data/help_templates/orig/economy.tml --- lincity-ng-2.0/data/help_templates/orig/economy.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/economy.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +Economy Graph + +This graphs contains four coloured lines. They show the most important economic factors. + +* <span color="brown">Population</span> (brown) + The brown line represents your population. + It is shown as a log scale. +* <span color="blue">Unhoused</span> (blue) + The blue line represents the demand for + housing. The height of the graph is + proportional to the square root of the + 'unhoused' population. +* <span color="yellow">Unemployment</span> (yellow) + The solid yellow 'bars' show that there is + unemployment. The scale of this graph + changes with your population. This graph + is solid to draw your attention to it. +* <span color="red">Starvation</span> (red) + The solid red 'bars' show that there is + starvation. The scale of this graph + changes with your population. This graph + is solid to draw your attention to it. + This bar is drawn over the unemployment bar. + +ALSO[See also:]: diff -Nru lincity-ng-2.0/data/help_templates/orig/evacuate.tml lincity-ng-2.9~git20150314/data/help_templates/orig/evacuate.tml --- lincity-ng-2.0/data/help_templates/orig/evacuate.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/evacuate.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Evacuate + +To evacuate an building you select the evacuate button then use the broom to evacuate all the precious commodities. Evacuation is for free und pushs out all the stored stuff to adjoining transport tiles and markets in the neighborhood. + +The consequences range from the halt of production and or pollution to starvation of the local residence + +Some buildings, like tracks, roads, rails, land fills, and others cannot be evacuated. + +Depleted oremines and coalmines are automatically evacuated before they collapse + +IMG_1[This is the evacuation icon]: images/gui/buttonpanel/base/broom.png + + +ALSO[See also:]: bulldoze \ No newline at end of file diff -Nru lincity-ng-2.0/data/help_templates/orig/export.tml lincity-ng-2.9~git20150314/data/help_templates/orig/export.tml --- lincity-ng-2.0/data/help_templates/orig/export.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/export.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Import and export areas + +Importing and exporting work in the same way except that the first costs you money and the second makes you money. Both requires a Port. For this reason, only exporting will be dealt with in detail. + +To export, the port must be connected with a road. + +They <b>must</b> be connected to rivers all along the right hand side. + +The export area will take as much as it is given. If you need to export, but want to restrict the amount, you may want to use a type of transport with less capacity, use a long piece or pass the product through a market. You will need to experiment to get the right transport configuration. + + + +ALSO[See also:]: port, transport, market, coal, ore, goods, steel \ No newline at end of file diff -Nru lincity-ng-2.0/data/help_templates/orig/farm.tml lincity-ng-2.9~git20150314/data/help_templates/orig/farm.tml --- lincity-ng-2.0/data/help_templates/orig/farm.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/farm.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Farms + +Farms grow food for people to eat, and to supply the raw materials for mills. Farmers can sell food to markets. They deliver it by tractor so they do not need transport. However they can sell to transport if you wish. Of course you need to ensure that the market is in range of the farm. + +Production of farm depends on underground water. Tiles with water are green, others are yellow-brown (like desert or bare ground). + +IMG_1[This is a farm]: images/tiles/farm0.png +IMG_2[and this its icon]: images/gui/buttonpanel/parks/farm.png + +Farms need jobs to produce more than a minimal amount of food. Providing elecricity (kWH) boosts the output. Powered farms can irregate dry soil and also consume wastes. Beware of agricultural water consumption. + +ALSO[See also:]: market, tech-level, transport, commodities, power diff -Nru lincity-ng-2.0/data/help_templates/orig/fast.tml lincity-ng-2.9~git20150314/data/help_templates/orig/fast.tml --- lincity-ng-2.0/data/help_templates/orig/fast.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/fast.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Fast speed + +IMG_1[]: images/gui/speed/faster.png + +This is the fast speed button. It causes the game to run as fast as possible. Care should be taken when using fast mode on fast machines; 'situations' can develop very quickly! + +The command line option "-q 1" or "--quick 1" will give the fastest possible speed (less than 10s par year), but can heat your hardware. Default is -q 9 (near 25s per year). This option has no effect on other game speed. + + + +ALSO[See also:]: pause, medium, slow diff -Nru lincity-ng-2.0/data/help_templates/orig/finance.tml lincity-ng-2.9~git20150314/data/help_templates/orig/finance.tml --- lincity-ng-2.0/data/help_templates/orig/finance.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/finance.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Finance window + +Left clicking on this window will open windows for 'global finance balance', detail what is called 'other costs' in the previous one, and 'population cost' Use the scroll up and down buttons to switch between those. + +The finance window is updated every January 1st. The figures correspond to income or expenditure for the previous year. + +The 'Total' figure is the amount of money in your account. There are certain things you cannot do when you are 'in the red'. + +ALSO[See also:]: housing, other-costs diff -Nru lincity-ng-2.0/data/help_templates/orig/firestation.tml lincity-ng-2.9~git20150314/data/help_templates/orig/firestation.tml --- lincity-ng-2.0/data/help_templates/orig/firestation.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/firestation.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,26 @@ +Fire stations + +Fire stations prevent the start and spread of fire within +the range that they cover. They need to be supplied with goods and jobs +to work. They do not have to be connected to transport, they do though have +to be within range of a market that can supply the jobs and goods. They also cost money to run. + +When you build a fire station, it does not start straight away. +There is usually a three month wait before fire cover is provided. + +To see the area that your fire stations cover, click on the +fire station button under the mini screen. Areas that have fire cover are +displayed as normal, areas not covered are just dark green. + +Fire stations increase the desirability of residential +areas within their range. + +Fire stations go through an animation sequence +every three month to show that they are working. + +IMG_1[This is a fire station]: images/tiles/firestation1.png +IMG_2[and this its icon]: images/gui/buttonpanel/misc/fire.png +IMG_3[and this its mapview overlay icon]: images/gui/mapview/roundbuttons/round_fire.png + + +ALSO[See also:]: mini-screen, goods, market, jobs, msb-fire diff -Nru lincity-ng-2.0/data/help_templates/orig/food.tml lincity-ng-2.9~git20150314/data/help_templates/orig/food.tml --- lincity-ng-2.0/data/help_templates/orig/food.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/food.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Food + +Food is grown in farms or can be imported through a port. + +Your people need food in order to survive. If you starve them, they will move away from that area and some may starve to death. + +Mills also use food. They turn, say, cotton into cloths. They can use a lot of food - beware. + + + +ALSO[See also:]: commodities, farm, residential, mill, port diff -Nru lincity-ng-2.0/data/help_templates/orig/goods.tml lincity-ng-2.9~git20150314/data/help_templates/orig/goods.tml --- lincity-ng-2.0/data/help_templates/orig/goods.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/goods.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Goods + +Goods are needed for most areas to work. People also like lots of them and are attracted to areas where you can get them. + +Goods are taxed, so making lots will help your finances. + +Goods are produced by Potteries, Blacksmiths, Mills and Light industry. + +ALSO[See also:] commodities, pottery, blacksmith, mill, industryl diff -Nru lincity-ng-2.0/data/help_templates/orig/health.tml lincity-ng-2.9~git20150314/data/help_templates/orig/health.tml --- lincity-ng-2.0/data/help_templates/orig/health.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/health.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,29 @@ +Health Centre + +Health centres provide health cover for residences. + +Health cover makes the residence a more desirable place to +live, less people die from pollution related illness and the people +living there are more efficient at providing jobs to the surrounding +areas (they spend less time off sick). + +Running health centres is expensive. However, they reduce +the cost of 'unnatural deaths' and can provide extra income tax +(as long as there are places for the people to work). + +After you put a health centre in, it takes three months for +it to become active. They use goods. + +Health centres need to be connected to transport or within +range of a market. + +To see the range of health cover, click on the health icon +above the 'mini screen' (bottom right of centre on the display). +The areas that show up as normal have health cover. + +IMG_1[This is a Health Centre]: images/tiles/health.png +IMG_2[and this its icon]: images/gui/buttonpanel/misc/health.png +IMG_3[and this its mapview overlay icon]: images/gui/mapview/roundbuttons/round_health.png + + +ALSO[See also:]: residential, pollution, jobs, goods, transport, msb-health diff -Nru lincity-ng-2.0/data/help_templates/orig/help.tml lincity-ng-2.9~git20150314/data/help_templates/orig/help.tml --- lincity-ng-2.0/data/help_templates/orig/help.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/help.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Lincity Help + +This is the Lincity help system. Please choose a topic by clicking on one of the blue words below. Blue words generally indicate a link to another document. Use arrow on top left to go back to previous help. + +While playing the game, you can get help with most things using the help button, or right-click on a specific building icon in the top-left dock. + +ALSO[See also:] tutorial, keys, button-index, commodities, mini-screen, dialogs, index + +SUBH: Objective + +You can win Lincity either by building a <a href="sustain">sustainable economy </a> or +by evacuating all citizens with <a href="rocket">spaceships</a>. + diff -Nru lincity-ng-2.0/data/help_templates/orig/housing.tml lincity-ng-2.9~git20150314/data/help_templates/orig/housing.tml --- lincity-ng-2.0/data/help_templates/orig/housing.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/housing.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Population window + +This is the population window. + +The window shows 9 statistics: + +* Total - this shows the population of your city. +* Housed - this shows the total number of people in your city that live in residences. +* Homeless - this shows the number of people that are homeless or live in a shanty. +* Shanties - this shows the number of shanty towns in your city. +* Unn Dths - this shows the number of people that died through starvation or from pollution in the last month. +* Unemployment Claims - this shows the number of people that were unemployed in the last month. +* Rate - this shows the percentage of your population that is unemployed. +* Starvation Cases - this shows the number of people that were starving in the last month. +* Rate - this shows the percentage of your population that is starving. + +Left clicking on this window's title will cycle through windows for finance, other costs and housing. + +ALSO[See also:]: finance, other-costs diff -Nru lincity-ng-2.0/data/help_templates/orig/index.tml lincity-ng-2.9~git20150314/data/help_templates/orig/index.tml --- lincity-ng-2.0/data/help_templates/orig/index.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/index.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,3 @@ +Index + +ALSO[]: blacksmith, bulldoze, button-index, coal, coalmine, commodities, commune, cricket, dialogs, economy, evacuate, export, farm, fast, finance, firestation, food, goods, health, help, housing, industryh, industryl, jobs, keys, market, medium, mill, mini-screen, monument, msb-coal, msb-cricket, msb-fire, msb-health, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40, ore, oremine, other-costs, park, pause, pbar, pollution, port, pottery, power, powerline, powerscoal, powerssolar, query, rail, recycle, residential, river, road, rocket, school, slow, steel, substation, sustain, tech-level, tip, track, transport, tutorial, tutorial-aim, tutorial-overview, tutorial-basics, tutorial-advanced, tutorial-scenario, university, waterwell, windmill diff -Nru lincity-ng-2.0/data/help_templates/orig/industryh.tml lincity-ng-2.9~git20150314/data/help_templates/orig/industryh.tml --- lincity-ng-2.0/data/help_templates/orig/industryh.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/industryh.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Heavy industry (Steel Works) + +Steel works produce steel from ore, power and jobs. Ore and jobs is obtained from the connected transport or markets. + +Power can be provided to the steel works in two ways. The first is burning coal. The second is from electricity, either inefficient kWh from connected transport or MWh directly from powerlines. Burning coal on site is more laborious. Windmills will barely provide enough power. + +Steel works cause heavy pollution. You can see when Heavy Industry is working in the usual way, by clicking on it, and every so often the animation will come to life. + +IMG_1[This is a Steel Works]: images/tiles/industryhl1.png +IMG_2[and this its icon]: images/gui/buttonpanel/industry/heavyindustry2.png + + +ALSO[See also:]: pollution, transport, power, coal, ore diff -Nru lincity-ng-2.0/data/help_templates/orig/industryl.tml lincity-ng-2.9~git20150314/data/help_templates/orig/industryl.tml --- lincity-ng-2.0/data/help_templates/orig/industryl.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/industryl.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +Light industrial areas + +Light industry converts ore into goods. +The conversion becomes more efficient if steel is also available. +Power increases the output further still. Inefficient kWh may +be delivered by transport. MWh can be directly supplied by powerlines. +Windmills will barely provide enough kWH + +As a rule of thumb, the output of a light industrial +area is mainly dependent on the amount of raw materials, +including jobs, that it can receive, and also the amount +of goods that can be taken away. + +These areas connect directly to transport to exchange +jobs, ore, steel, kWh and goods. They may need a market to run at full capacity. + +Light industries produce heavy pollution. + +IMG_1[This is Light Industry]: images/tiles/industryll1.png +IMG_2[and this its icon]: images/gui/buttonpanel/industry/lightindustry.png + + +ALSO[See also:]: transport, market, commodities, pollution diff -Nru lincity-ng-2.0/data/help_templates/orig/jobs.tml lincity-ng-2.9~git20150314/data/help_templates/orig/jobs.tml --- lincity-ng-2.0/data/help_templates/orig/jobs.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/jobs.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Jobs + +People living in residential areas provide jobs. Jobs are used by most areas for them to function. Some areas only need jobs when they are under construction, for example monuments. + +Jobs can be supplied by markets; you can have a market within range of the area you wish to supply. The market, of course, must get its jobs from somewhere. Markets get their jobs in two ways. First, if there is a residential area within range, it will be supplying jobs to the market in proportion to its population and how many markets the jobs must be shared between. The second way is by transport. A market some distance away that has a surplus of jobs will put some on transport. Any markets that are short of jobs that are connected to that transport will grab the jobs flowing along the track, road or rail. + +If a market becomes 'full' of jobs, it will stop accepting them from residential areas. When this happens, if there are no other non-full markets within range, the people will become unemployed. + +A health centre within range of a residential area, will increase the number of jobs provided to any local markets. + + + +ALSO[See also:]: commodities, residential, transport, market diff -Nru lincity-ng-2.0/data/help_templates/orig/keys.tml lincity-ng-2.9~git20150314/data/help_templates/orig/keys.tml --- lincity-ng-2.0/data/help_templates/orig/keys.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/keys.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,71 @@ +Keyboard + +ESCAPE: switch to query tool + +b toggles between current tool and bulldoze mode + +h to hide high buildings. Press h again to show them. + +v to cycle through MiniMap-overlay modes + +m,n to cycle through Transportation-overlay modes + +g to show information about under ground. + +KP_PLUS: zoom in + +KP_MINUS zoom out + +KP_ENTER zoom 100% + +KP5 put middle of the map in the center of the main screen + +KP9 scroll main screen north + +KP1 scroll main screen south + +KP7 scroll main screen west + +KP3 scroll main screen east + +KP2 scroll main screen se + +KP4 scroll main screen sw + +KP6 scroll main screen ne + +KP8 scroll main screen nw + +same with cursor + +use shift + direction to scroll faster + +F12 quick save + +F9 quick load + +SUBH: Mouse + +right: + +Drag mainscreen with right mousebutton. + +right click on mainscreen centers to tile under cursor. + +middle: + +middle click on mainscreen to show information about area under cursor. + +left: + +Click on Minimap shows the selected Area on mainscreen. + +Perform action depending on selected tool. Bulldoze, show Information, +construct building. + +wheel: + + up: zoom in + +down: zoom out + diff -Nru lincity-ng-2.0/data/help_templates/orig/market.tml lincity-ng-2.9~git20150314/data/help_templates/orig/market.tml --- lincity-ng-2.0/data/help_templates/orig/market.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/market.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,33 @@ +Market + +Markets are key buildings in Lincity. + +Market is probably a bad name for these areas. They are more like job centres, shops, +warehouses and markets all rolled into one. They buy and sell food, jobs, coal, goods, ore and steel to +surrounding areas, and to adjacent transports such as roads. + +Within the range of a market all exchanges are done remotely. +Use the Transportation overlay to check if a building is within the range of a market. +People can obtain food, goods and employment from markets that are within walking distance of their residential area. +All areas that require jobs (employees) get them from markets. +Farms can sell their food directly to markets. +Mills, Potteries and blacksmiths sell goods directly to nearby markets, +they also get their raw materials from the same markets. + +If no market is available, these buildings need connection to transport. + +SUBH: Controlling what markets can buy and sell + +You can control the function of a market by selecting what may be bought and sold from transport. +Click twice on a market (not the select button) and towards the top left hand side a window will +appear allowing you to select what is traded. The default is to trade in everything. + +IMG_1[This is a market]: images/tiles/market-empty.png +IMG_2[and this its icon]: images/gui/buttonpanel/industry/market.png +IMG_3[This means the trade is allowed.]: images/gui/checkbox/checkbox_checked.png +IMG_4[This means the trade is <b>not</b> allowed.]: images/gui/checkbox/checkbox.png +The numbers between the words Buy and Sell are the map reference for that market. + + + +ALSO[See also:]: commodities, transport, msb-transport diff -Nru lincity-ng-2.0/data/help_templates/orig/medium.tml lincity-ng-2.9~git20150314/data/help_templates/orig/medium.tml --- lincity-ng-2.0/data/help_templates/orig/medium.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/medium.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +Medium speed + +IMG_1[]: images/gui/speed/fast.png + +This is the medium speed button. It causes the game to run at medium speed. On slow machines the speed buttons may have no effect. + +ALSO[See also:]: pause, slow, fast diff -Nru lincity-ng-2.0/data/help_templates/orig/mill.tml lincity-ng-2.9~git20150314/data/help_templates/orig/mill.tml --- lincity-ng-2.0/data/help_templates/orig/mill.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/mill.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Mills + +Mills convert food, coal and jobs into goods. Food?... well, cotton and wool are counted as food in this game. + +Mills use quite a lot of food, so you can easily get into food shortages if you don't take this into account. (It is less of a problem when you have windmills, as they can power farms which makes them more efficient) + +Mills do not have to be connected to transport. If not, they do have to be in range of a market with coal, jobs and food. You can tell when mills are working by the smoke and steam coming from the building. + +IMG_1[This is a mill]: images/tiles/mill1.png +IMG_2[This is a nonworking mill]: images/tiles/mill0.png +IMG_3[and this its icon]: images/gui/buttonpanel/parks/mills.png + + +ALSO[See also:]: goods, food, coal, jobs, transport, windmill diff -Nru lincity-ng-2.0/data/help_templates/orig/mini-screen.tml lincity-ng-2.9~git20150314/data/help_templates/orig/mini-screen.tml --- lincity-ng-2.0/data/help_templates/orig/mini-screen.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/mini-screen.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Minimap + +The minimap shows, in reduced scale, the whole of your playing area. The mini-buttons below, when you click on them, show information such as pollution levels over the whole of your playing area. + +Right-click on each of the buttons below the minimap to activate their help pages. + +The white bordered square shows the area covered by the main screen. + +The big overlay button does overlay the minimap content on the main screen + + + +ALSO[See also:]: msb-coal, msb-cricket, msb-fire, msb-health, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/monument.tml lincity-ng-2.9~git20150314/data/help_templates/orig/monument.tml --- lincity-ng-2.0/data/help_templates/orig/monument.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/monument.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,23 @@ +Monuments + +Monuments provide a focal point for the teaching and inspiration of inventers. +Every monument you build will increase the rate of technology growth, but their effectiveness +drops to zero as you get toward 40% tech level. + +To build a monument you need to provide jobs. A lot of jobs. +For this reason they are useful for controlling unemployment. This is only a short +term solution to an unemployment problem as monuments don't use any jobs after they are fully built. + +You can tell how far building has progressed by clicking on the monument and +looking at the stats window (top left of centre). Also the graphic changes as it is built. +There are 6 graphics that show the stages of construction from 0% to 100% + +Hint: How to stop monument building sucking too many jobs out of an area and +therefore starving other areas of jobs: either build a monument far away from other areas or use the evacuate +tool in emergencies. + +IMG_1[This is a monument]: images/tiles/monument5.png +IMG_2[and this its icon]: images/gui/buttonpanel/parks/monument.png + + +ALSO[See also:]: jobs, evacuate diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-coal.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-coal.tml --- lincity-ng-2.0/data/help_templates/orig/msb-coal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-coal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Coal overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_coal.png + +The coal mini screen shows the coal reserves beneath your city. The coal seams are shown as red and green on a grey background. You will have to build a coal mine close to one of these seams to extract its coal. + +The first time you ask for this information, you will have to undertake a coal survey which will cost you one million currency units. After that the information is free to look at again. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-cricket, msb-fire, msb-health, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-cricket.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-cricket.tml --- lincity-ng-2.0/data/help_templates/orig/msb-cricket.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-cricket.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Sports overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_sport.png + +Areas that have sport areas within range are shown as dark green. + +Areas that are out of range of a basketball court are displayed as normal. + +Remember, basketball courts take three months to become active. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-fire, msb-health, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-fire.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-fire.tml --- lincity-ng-2.0/data/help_templates/orig/msb-fire.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-fire.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Fire overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_fire.png + +Areas that have a fire station within range are shown as dark green. + +The areas out of range of a fire station are displayed as normal. + +Remember, fire stations take three months to become active. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-health, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-health.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-health.tml --- lincity-ng-2.0/data/help_templates/orig/msb-health.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-health.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Health overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_health.png + +Areas that have a health centre within range are shown as dark green. + +The areas out of range of a health centre are displayed as normal. + +Remember, health centres take three months to become active. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-fire, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-normal.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-normal.tml --- lincity-ng-2.0/data/help_templates/orig/msb-normal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-normal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Land use overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_resident.png + +The land use mini screen shows buildings, roads, water and green space in the city. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-fire, msb-health, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-pol.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-pol.tml --- lincity-ng-2.0/data/help_templates/orig/msb-pol.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-pol.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Pollution overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_pollution.png + +The pollution mini screen shows the pollution levels across the city. + +Pollution gets stronger as you go from: Light-green -> Dark-green -> Darker-green -> Dark-red -> Lighter-red -> Bright-red. + +Places with residential areas that show as red will cause sickness and make the area less desirable to live in. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-fire, msb-health, msb-normal, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-power.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-power.tml --- lincity-ng-2.0/data/help_templates/orig/msb-power.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-power.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Power overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_electrics.png + +Buildings that have low tech windmill power are shown as dark green. + +The buildings within the main power grid are shown as light green. + +The buildings which have no power are displayed as red. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-fire, msb-health, msb-normal, msb-pol, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-starve.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-starve.tml --- lincity-ng-2.0/data/help_templates/orig/msb-starve.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-starve.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Starvation overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_food.png + +The starvation mini screen shows only residential areas. + +Bright green means that there is enough food (from market) and water (in the range of a water well) in that residential area. Bright red shows starvation in each residential area shown. + +Waterwell cover is shown in dark blue + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-fire, msb-health, msb-normal, msb-pol, msb-power, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-transport.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-transport.tml --- lincity-ng-2.0/data/help_templates/orig/msb-transport.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-transport.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +Transportation overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_road.png + +The transportation mini screen shows the amount of goods on the +city's <a href="track">tracks</a>, <a href="road">roads </a> +and <a href="rail">railways</a>. + +Click the icon to toggle between flows and levels. Use the scroll up and down buttons to run through the various commodities. You may also hit the 'm'/'n' keys, or simply use the mousewheel when hovering over minimap + +The bluish colors indicate buildings that are inside the range of a <a href="market">market</a>. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + +ALSO[See also:]: mini-screen, msb-coal, msb-cricket, msb-fire, msb-health, msb-normal, msb-pol, msb-power, msb-starve, msb-transport, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/msb-ub40.tml lincity-ng-2.9~git20150314/data/help_templates/orig/msb-ub40.tml --- lincity-ng-2.0/data/help_templates/orig/msb-ub40.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/msb-ub40.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Unemployment overlay + +IMG_1[]: images/gui/mapview/roundbuttons/round_ub40.png + +The unemployment mini screen shows residential areas (red or green) and building (yellow or grey) + +Bright green means that there is no unemployment in that residential area. Darker green and bright red show increasingly severe unemployment in each residential area shown.(too many people here compared to the number of jobs) + +Bright yellow means that a building asked for jobs, but could not get them (too few people here). Buildings are displayed in grey in this minimap when they have no problem with jobs. + +Left click on the mini screen to reposition the main window. Toggle overlay mode by pressing 'v' or clicking on the large overlay button. + + + +ALSO[See also:]: mini-screen, transport, market, msb-normal, msb-transport diff -Nru lincity-ng-2.0/data/help_templates/orig/oremine.tml lincity-ng-2.9~git20150314/data/help_templates/orig/oremine.tml --- lincity-ng-2.0/data/help_templates/orig/oremine.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/oremine.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Ore mine + +Ore mines provide ore to make goods and steel. You may build an ore mine anywhere. The ore under the area is slowly consumed; you cannot bulldoze it and build another one and hope to get more ore. + +If your economy provides ore in excess your ore mines can store up to 150% of the natural ore deposits + +When an ore mine is exhausted it turns into a lake. If you then want to reclaim this land you will have to bulldoze 16 water areas! + +The speed of the animation shows the activity in the ore mines. + +IMG_1[This is a ore mine]: images/tiles/oremine1.png +IMG_2[and this its icon]: images/gui/buttonpanel/mining/oremine.png + + +ALSO[See also:]: ore, goods, steel diff -Nru lincity-ng-2.0/data/help_templates/orig/ore.tml lincity-ng-2.9~git20150314/data/help_templates/orig/ore.tml --- lincity-ng-2.0/data/help_templates/orig/ore.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/ore.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Ore + +Ore is one of the game's basic raw materials. Communes, oremines and recyclers produce ore. + +Potteries, light industry and heavy industry use ore. + + + +ALSO[See also:]: commodities, commune, oremine, recycle, pottery, industryl, industryh diff -Nru lincity-ng-2.0/data/help_templates/orig/other-costs.tml lincity-ng-2.9~git20150314/data/help_templates/orig/other-costs.tml --- lincity-ng-2.0/data/help_templates/orig/other-costs.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/other-costs.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,29 @@ +Other costs + +This is the other costs window. + +This shows a breakdown of the 'other costs' that are shown in the finance window. + +Interest costs + +School costs + +University costs + +Unnatural deaths costs + +Windmill costs + +Health costs + +Rocket costs + +Fire station costs + +Sport costs + +Recycling costs + +Left clicking on this window's title will cycle through windows for finance, other costs and housing. + +ALSO[See also:]: diff -Nru lincity-ng-2.0/data/help_templates/orig/park.tml lincity-ng-2.9~git20150314/data/help_templates/orig/park.tml --- lincity-ng-2.0/data/help_templates/orig/park.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/park.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +Parks + +Parks are very simple: they clear pollution. + +A number of areas produce pollution. These are roads, railways, coal mines and light and heavy industry. +Some produce more than others. + +You can use parks to shield residential areas or to stop pollution +escaping from the local area of the source. + +The wind comes from the south west, so build your parks accordingly. + +Parks are much more effective then forests or farms but require underground water, +so they can only be built on "green" tiles. + +Hint: hold the 'w' key pressed while building a park to get a small pond. + +IMG_1[This is a park]: images/tiles/parkland-plane.png +IMG_2[and this its icon]: images/gui/buttonpanel/parks/tree.png + + +ALSO[See also:]: pollution, farm, commune, industryh, industryl, powerscoal diff -Nru lincity-ng-2.0/data/help_templates/orig/pause.tml lincity-ng-2.9~git20150314/data/help_templates/orig/pause.tml --- lincity-ng-2.0/data/help_templates/orig/pause.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/pause.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +Pause Button + +This is the pause button. It pauses the game. + +You can restart the game by clicking on it again. + +ALSO[See also:]: slow, medium, fast diff -Nru lincity-ng-2.0/data/help_templates/orig/pbar.tml lincity-ng-2.9~git20150314/data/help_templates/orig/pbar.tml --- lincity-ng-2.0/data/help_templates/orig/pbar.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/pbar.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Stats + +This is the second tab of the miniwindow + +It shows some city wide statistics and their recent development. + +A bar on the right side indicates an increase. A bar on the left side indicates a decrease. The size of the bar indicates the amount of change. Good changes are green bad ones red. But beaware that too much of a good thing is not always good. + +Use the scroll up and down buttons to see different bars. + + + +ALSO[See also:]: commodities, msb-transport diff -Nru lincity-ng-2.0/data/help_templates/orig/pollution.tml lincity-ng-2.9~git20150314/data/help_templates/orig/pollution.tml --- lincity-ng-2.0/data/help_templates/orig/pollution.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/pollution.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +Pollution + +Most areas produce some pollution. The following are areas that can cause heavy pollution: +* Heavy industry. +* Light industry. +* Coal fired power stations. +* Coal mines. +* Markets that are full of waste. +* Roads/Rail, particularly when full of waste. + +People do not like living in polluted areas. They will move out, or even become ill and die. + +The prevailing wind is from the South West. Therefore the pollution tends to drift towards the North East. + +Generally you would build strategically so people are not exposed to pollution. This is not always possible however. If this is the case then parks form quite a nice barrier. The more parks, the greater the protection. + + +ALSO[See also:]: industryh, industryl, powerscoal, coalmine, market, rail, road, park, msb-pol diff -Nru lincity-ng-2.0/data/help_templates/orig/port.tml lincity-ng-2.9~git20150314/data/help_templates/orig/port.tml --- lincity-ng-2.0/data/help_templates/orig/port.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/port.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,24 @@ +Ports + +Ports let you import and export goods, steel, ore, coal and food. +Importing costs you money and exporting makes you money. + +You choose what to import by double clicking on the +port. This brings up a menu with boxes to select what to import and what to export. + +They must be connected to rivers all along the right hand side. + +Nothing will be imported or exported until you have checked the appropriate box. + +The export area will take as much as it is given. If you need to export, +but want to restrict the amount, you may want to use a type of transport with less capacity, +use a long piece or pass the product through a market. You will need to experiment +to get the right transport configuration. + +An active Port provides some technology. Note: Exporters discount large exports. + +IMG_1[This is a port]: images/tiles/ex_port.png +IMG_2[and this its icon]: images/gui/buttonpanel/transport/port.png + + +ALSO[See also:]: export, river, transport, market, food, coal, ore, goods, steel diff -Nru lincity-ng-2.0/data/help_templates/orig/pottery.tml lincity-ng-2.9~git20150314/data/help_templates/orig/pottery.tml --- lincity-ng-2.0/data/help_templates/orig/pottery.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/pottery.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Potteries + +Potteries use ore, coal and jobs to make goods. They do not have to be connected to transport but they do, of course, have to be within range of a market with ore, coal and jobs and be able to receive goods. + +You can tell when potteries are working by the kilns producing smoke. + +IMG_1[This is a pottery]: images/tiles/pottery0.png +IMG_2[and this its icon]: images/gui/buttonpanel/industry/pottery.png + + +ALSO[See also:]: transport, ore, coal, jobs, market diff -Nru lincity-ng-2.0/data/help_templates/orig/powerline.tml lincity-ng-2.9~git20150314/data/help_templates/orig/powerline.tml --- lincity-ng-2.0/data/help_templates/orig/powerline.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/powerline.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Power lines + +Power lines carry power from solar and coal +power stations and modern windmills to substations or industrial areas. + +Power lines cross under tracks, roads, railways and rivers (all of the width of 1). +If a power line is placed on either side of a transport or river area, +they act as if they are joined. Often you will have to bulldoze a bit +of river to cross a river - it's expensive! The power lines are joined when they are aligned and +power packtes hop from one side to another + +IMG_1[This is a powerline]: images/tiles/powerlvd.png +IMG_2[and this its icon]: images/gui/buttonpanel/power/powerlines.png +IMG_3[and this its mapview overlay icon]: images/gui/mapview/roundbuttons/round_electrics.png + + +ALSO[See also:]: power, substation, windmill, powerscoal, powerssolar, msb-power diff -Nru lincity-ng-2.0/data/help_templates/orig/powerscoal.tml lincity-ng-2.9~git20150314/data/help_templates/orig/powerscoal.tml --- lincity-ng-2.0/data/help_templates/orig/powerscoal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/powerscoal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Coal fired power station + +Coal fired power stations produce packets of electricity which are placed onto connected power lines. + +The efficiency of the conversion of coal to electricity increases with the tech level +- when the station is built. You may want to demolish an old station and replace it with a newer, +more efficient one, when your tech level has increased by a significant amount. + +Coal power stations produce a lot of pollution. Make sure not to build them where +the wind will blow the pollution to your residence areas. Windmills and solar power are clean +alternatives + +IMG_1[This is a coal fired power station]: images/tiles/powerscoal-empty.png +IMG_2[and this its icon]: images/gui/buttonpanel/power/coalpower.png + + +ALSO[See also:]: tech-level, power, powerline, windmill, powerssolar, msb-power, pollution diff -Nru lincity-ng-2.0/data/help_templates/orig/powerssolar.tml lincity-ng-2.9~git20150314/data/help_templates/orig/powerssolar.tml --- lincity-ng-2.0/data/help_templates/orig/powerssolar.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/powerssolar.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Solar power station + +Solar power stations output their power to power lines in packets. +The amount of power that it can produce increases with the tech-level when it was built. + +Solar power stations need also manpower for producing power. +If a solar power station has no jobs, it will produce no power. + +IMG_1[This is a Solar power station]: images/tiles/powerssolar.png +IMG_2[and this its icon]: images/gui/buttonpanel/power/solarpower.png + + +ALSO[See also:]: substation, power, powerline, tech-level, msb-power, windmill diff -Nru lincity-ng-2.0/data/help_templates/orig/power.tml lincity-ng-2.9~git20150314/data/help_templates/orig/power.tml --- lincity-ng-2.0/data/help_templates/orig/power.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/power.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Power + + Power commes in two different flavours kWh and MWh. kWh flow in underground cables along your cities transportation network and MWh flow over power lines. + + kWH are produced by low-tech wind mills or provided by a substation. They can power residental areas, farms, textile mills, light industries and heavy industries (aka steel works). + + MWH are produced by coal, solar or wind power plant and may either be delivered to substation or directly to light industries or heavy industries (aka steel works). + + + +ALSO[See also:]: commodities, windmill, residential, commune, farm, powerline, powerscoal, powerssolar, substation, industryl, industryh diff -Nru lincity-ng-2.0/data/help_templates/orig/query.tml lincity-ng-2.9~git20150314/data/help_templates/orig/query.tml --- lincity-ng-2.0/data/help_templates/orig/query.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/query.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Query + +To show informations about a building use this tool and click on the Building in question. + +The information is shown int the lower right corner, instead of the minimap. + +Press 'g' to show underground information. 'm' and 'n' cylcle through optional pages + +There are no costs to use this tool. the Alternatively use the middle mouse key or press 'g' +display information on the ground. + +IMG_1[Query:]: images/gui/buttonpanel/base/pointer.png + +ALSO[See also:]: keys, help diff -Nru lincity-ng-2.0/data/help_templates/orig/rail.tml lincity-ng-2.9~git20150314/data/help_templates/orig/rail.tml --- lincity-ng-2.0/data/help_templates/orig/rail.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/rail.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Railways + +Railways carry even more than roads. They produce slightly less pollution than roads. They are quite expensive to buy and maintain though. They are well worth the expense when you have a lot to transport over a long distance. + +IMG_1[This is a railway]: images/tiles/railud.png +IMG_2[and this its icon]: images/gui/buttonpanel/transport/rails2.png + + +ALSO[See also:]: transport, pollution diff -Nru lincity-ng-2.0/data/help_templates/orig/recycle.tml lincity-ng-2.9~git20150314/data/help_templates/orig/recycle.tml --- lincity-ng-2.0/data/help_templates/orig/recycle.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/recycle.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Recycle centres + +Recycle centres convert waste into ore. Jobs, electric power (kWH) and money are used to collect the waste and convert it into raw ore. They can be used to empty previously filled tips. + +It is possible to run a sustainable economy, (i.e. no more ore extracted, etc) with less than 100% efficient recycle centres if you have some mills to make up for the losses. + +IMG_1[This is a recycle center]: images/tiles/recycle-centre.png +IMG_2[and this is its icon]: images/gui/buttonpanel/mining/recycling.png + + +ALSO[See also:]: commodities, power, transport diff -Nru lincity-ng-2.0/data/help_templates/orig/residential.tml lincity-ng-2.9~git20150314/data/help_templates/orig/residential.tml --- lincity-ng-2.0/data/help_templates/orig/residential.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/residential.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Residential area + +This is where people live. To encourage people to live in this area they must have water and food. It also helps to provide them workplaces, electricity and goods. They must be connected to transport. Beeing in range of a market is benefitial. Sports fields increase desirability. Keep your people away from pollution + +There are 3 different types of residential areas: Low, Medium and High density housing. These have different birth and death rates associated with them. This gives you some control over your population. Health centers also affect birth and death rates. + +Later in the game, if you have sufficient technology, you can build more 'modern' housing, even tower blocks. + +IMG_1[This is a low density housing (hightech)]: images/tiles/reslowhi.png +IMG_2[and this is its icon]: images/gui/buttonpanel/residence/residence-hightec-lo.png +IMG_3[This is a medium density housing (hightech)]: images/tiles/resmedhi.png +IMG_4[and this is its icon]: images/gui/buttonpanel/residence/residence-hightec-med.png +IMG_5[This is a high density housing (hightech)]: images/tiles/reshihi.png +IMG_6[and this is its icon]: images/gui/buttonpanel/residence/residence-hightec-high.png + + +ALSO[See also:]: market, transport, waterwell, pollution, farm, commodities, health, cricket diff -Nru lincity-ng-2.0/data/help_templates/orig/river.tml lincity-ng-2.9~git20150314/data/help_templates/orig/river.tml --- lincity-ng-2.0/data/help_templates/orig/river.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/river.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Rivers/Water + +Rivers are here mainly to get in your way. They are expensive to bridge, dig and demolish. +Their only use is that ports must be connected to rivers. + +There are two types of water. Lakes are water that is not connected to the river system; +rivers are water that is connected to the river system. The river is defined as all the water +that is present at the start of the game. For example, when an ore mine exhausts its supply and becomes water, +it becomes a piece of river if connected to the river. Otherwise it becomes a lake. + +If you demolish some river both sides of your gap are still part of the river system. + +You can build a brige by building transport on the river. + +Once a piece of water is part of the river system it cannot revert to being a lake. +Water which is part of the river is indicated as navigatable by the query tool. + +Power lines can transfer power under one piece of river in the same way that it can pass under transport. + diff -Nru lincity-ng-2.0/data/help_templates/orig/road.tml lincity-ng-2.9~git20150314/data/help_templates/orig/road.tml --- lincity-ng-2.0/data/help_templates/orig/road.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/road.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Roads + +Roads carry more than tracks, but not as much as railways. They produce more pollution than railways as well. They are cheaper to buy and maintain than railways - there had to be a reason for them! + +IMG_1[This is a road]: images/tiles/roadud.png +IMG_2[and this its icon]: images/gui/buttonpanel/transport/road.png + + +ALSO[See also:]: transport, pollution diff -Nru lincity-ng-2.0/data/help_templates/orig/rocket.tml lincity-ng-2.9~git20150314/data/help_templates/orig/rocket.tml --- lincity-ng-2.0/data/help_templates/orig/rocket.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/rocket.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,27 @@ +Rocket Launch Pad + +Rockets enable you to evacuate your population to another world, and thus end the game. + +You must have five successful unmanned launches before you can start evacuating. +Each successful evacuation rocket holds 1000 people. + +The tech level at the time of launch is the probability of a successful launch. +This means that if your tech level is, say, 80%, then you have only a four in five chance of success. +100% or more means that a launch will always succeed. You must build a new launch pad for each rocket you build. + +Rocket Launch Pads do not need to be connected to transport, +they can get all they need from local markets. They use large quantities of steel, goods, jobs and money to build. +When the rocket is built you will get a message asking you if you want to launch now or later. +If you choose later, then you can launch it when you wish by clicking on the area. You can have any +number of rockets waiting to launch. + +When a rocket is built, but waiting to be launched, it no longer uses steel, +goods or jobs, but still continues to cost a lot of money. + +Hint, use the evacuate tool to recover the unused resources before you demolish a used lunch pad. + +IMG_1[This is a Rocket Launch Pad]: images/tiles/rocket5.png +IMG_2[and this its icon]: images/gui/buttonpanel/transport/rocket.png + + +ALSO[See also:]: market, commodities, evacuate diff -Nru lincity-ng-2.0/data/help_templates/orig/school.tml lincity-ng-2.9~git20150314/data/help_templates/orig/school.tml --- lincity-ng-2.0/data/help_templates/orig/school.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/school.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Schools + +Schools use jobs and goods to produce technology in a similar way to universities. +They use far fewer jobs and goods than universities, but produce far fewer tech points. +Given the choice between putting four or five schools in a given area, or a single university, +it is often (but not always) better to put a university in. + +Schools do not need to connect to transport, but do need to be within +range of a market than can supply the quantity of jobs and goods to make the school work. + +Schools cost money to run. You can see the total cost for the last year by clicking on the money button. + +You can see when a school is working in the usual way, by clicking on it. + +IMG_1[This is a school]: images/tiles/school0.png +IMG_2[and this its icon]: images/gui/buttonpanel/misc/book.png + + +ALSO[See also:]: tech-level, market, university, transport, goods, jobs diff -Nru lincity-ng-2.0/data/help_templates/orig/slow.tml lincity-ng-2.9~git20150314/data/help_templates/orig/slow.tml --- lincity-ng-2.0/data/help_templates/orig/slow.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/slow.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +Slow speed + +IMG_1[Slow button:] images/gui/speed/normal.png + +This is the slow button. It causes the to game run at its slowest speed. On slow machines the speed buttons may have no effect. + +ALSO[See also:]: pause, medium, fast diff -Nru lincity-ng-2.0/data/help_templates/orig/steel.tml lincity-ng-2.9~git20150314/data/help_templates/orig/steel.tml --- lincity-ng-2.0/data/help_templates/orig/steel.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/steel.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +Steel + +Steel is generally made by heavy industry (steel works). You must have attained a sufficient tech level to build a steel works. Before this, communes are your only source of steel. Communes produce a small amount of steel (from ore), so you will usually need a number of communes to provide enough steel for your needs. + +Steel is used by blacksmiths to make goods. Steel is used by light industry for tools and products (goods). Light industry works without steel, though its output is much reduced. + +Rockets use a lot of steel, mainly to build the launch site. + +Railways also use steel for maintenance + + + +ALSO[See also:]: commodities, commune, blacksmith, industryh, industryl, rail diff -Nru lincity-ng-2.0/data/help_templates/orig/substation.tml lincity-ng-2.9~git20150314/data/help_templates/orig/substation.tml --- lincity-ng-2.0/data/help_templates/orig/substation.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/substation.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Substations + +Substations take power packets from power lines (MWH) and distribute the power to +adjacent transport (kWH). Check the power overlay to see where you need more power. The transformators +dont require any jobs to function. + +IMG_1[This is a substation]: images/tiles/substation-G.png +IMG_2[and this is its icon]: images/gui/buttonpanel/power/substation.png + + +ALSO[See also:]: msb-power, power, powerline, windmill, powerscoal, powerssolar diff -Nru lincity-ng-2.0/data/help_templates/orig/sustain.tml lincity-ng-2.9~git20150314/data/help_templates/orig/sustain.tml --- lincity-ng-2.0/data/help_templates/orig/sustain.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/sustain.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +Sustainability progress window + +This window contains six coloured lines. When they all reach the right hand side of the window, you have a sustainable economy. + +* <span color="orange">Mining</span> (orange) you are not digging any ore or coal, and are not dumping waste on a tip. +* <span color="gray">Trade</span> (black) you are not importing or exporting. +* <span color="green">Money</span> (green) your money is stable or rising, this means you cannot build anything but the cheapest of areas. +* <span color="blue">Population</span> (blue) your population is stable + to within 2% of the value when the 180 year count started. If it goes + outside of this band, the new population will be the new value and the + year count will be set back to zero. Also, your population must be at least 5000. +* <span color="yellow">Technology</span> (yellow) your technology is + increasing or falling by only a very small amount. If it falls by more + than 1%, the year is set back to zero. Also, your tech level must be at least 50%. +* <span color="red">Fire</span> (red) all areas that can catch fire + have fire cover. The following areas do *not* have to have fire cover: monuments, ore mines, power lines, tracks, roads, rails and rockets. + +Years required for sustainability: Mining=180 Trade=180 Money=60 Population=60 Technology=120 Fire=60 + +ALSO[See also:]: diff -Nru lincity-ng-2.0/data/help_templates/orig/tech-level.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tech-level.tml --- lincity-ng-2.0/data/help_templates/orig/tech-level.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tech-level.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Tech Level + +Your city's technology level determines a number of things, such as what you can build and the efficiency of certain processes. + +To increase your technology, you must build (and supply with the appropriate inputs) Monuments, Schools and Universities. + +When your tech level is very low you can only build monuments. When a few of these have been around for a while, you will then invent schools. Schools produce more technology than monuments. + +When your tech level reaches a higher value still, you will invent universities. These produce even more technology than schools, but are very resource hungry. + +The more technology you have, the faster it erodes. This means that the higher you want your tech level to be, the more schools and universities you will need. + +Also, be aware that if for some reason you need to take out, say, a university or two (or they are suddenly starved of resources) your tech level is likely to start falling. + +Percentage of chance for a successful rocket launch is equal to your tech-level. + + + +ALSO[See also:]: monument, school, university, rocket diff -Nru lincity-ng-2.0/data/help_templates/orig/tip.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tip.tml --- lincity-ng-2.0/data/help_templates/orig/tip.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tip.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Tips (rubbish dumps) + +Tips provide a place to put your rubbish. If you accumulate too much at markets, they are forced to burn some. +This makes quite a lot of pollution so you should be wary of letting rubbish accumulate. + +As the tip is filled, it slowly turns into a hill, which is grassed over when it is full. + +If you clean up your city the trash from the tip can be re-excavated and processed +in forests, electrified farms and recycling centers. + +You can see when a tip is working in the usual way, by clicking on it + +IMG_1[This is a tip]: images/tiles/tip0.png +IMG_2[and this is its icon]: images/gui/buttonpanel/mining/recycling.png + + +ALSO[See also:]: waste, market, commune, farm, recycle diff -Nru lincity-ng-2.0/data/help_templates/orig/track.tml lincity-ng-2.9~git20150314/data/help_templates/orig/track.tml --- lincity-ng-2.0/data/help_templates/orig/track.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/track.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Tracks + +Tracks are the simplest, and cheapest, form of transport. They also have the lowest capacity. On the other hand, they produce no pollution. + +IMG_1[This is a track]: images/tiles/trackud.png +IMG_2[and this is its icon]: images/gui/buttonpanel/transport/tracks.png + + +ALSO[See also:]: transport diff -Nru lincity-ng-2.0/data/help_templates/orig/transport.tml lincity-ng-2.9~git20150314/data/help_templates/orig/transport.tml --- lincity-ng-2.0/data/help_templates/orig/transport.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/transport.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Transport + +There are three types of transport in Lincity: tracks, roads and railways. + +There is a fourth form that consists of 'hopping across a field' to reach a market. This is a very short range form of trading and will not be referred to as transport again. However, it is very important, so you should read again <a href="market"> markets</a>. + +Tracks, roads and railways are used to carry food, jobs, goods, coal, ore, steel and wastes between areas. Transport between markets, transport for buildings out of range of a market (this is generally a bad idea) and transport for building that explicitely need it: + +The transportation network can pick up, distribute and deliever any kind of commodity, except for MWh which are flowing in power lines. All steps to, inside and from the transportation network require direct adjacency. The market behaves differently. + +To cross a river with transport, simply build the transport over the river and you will create a bridge. Bridges are much more expensive than normal transport. + +Roads and Rail causes yearly costs (for maintenance) and pollution (and more pollution if they carry lots of wastes). + + + +ALSO[See also:]: track, road, rail, market, powerline, commodities, finance, msb-transport diff -Nru lincity-ng-2.0/data/help_templates/orig/tutorial-advanced.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-advanced.tml --- lincity-ng-2.0/data/help_templates/orig/tutorial-advanced.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-advanced.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +Advanced features + +SUBH: Markets and Transports + +Double click on a market in the main screen opens a windows. This is to control the <b> exchanges between markets and transports</b>. + +* buy is what the market buys from the transport (so market stock will increase) +* sell is the opposite. + +This feature is rarely used, except when you want to precisely prevent something to happen. + +SUBH: Sustainable development + +The fourth tab of the miniwindow shows progress bars for sustainable development. + +It is strongly recommended to save the game before you let it run for a long time and see if you have reached a sustainable state. If something goes very wrong (starvation for example) you can restart from the saved game :-) + +Watching at the total markets stocks (the miniwindow with progress bars) should prevent big troubles. From time to time check the sustainable progression in the ECO miniwindow should be enough. + +* Hint: Beware of shanties and wastes in markets... + diff -Nru lincity-ng-2.0/data/help_templates/orig/tutorial-aim.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-aim.tml --- lincity-ng-2.0/data/help_templates/orig/tutorial-aim.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-aim.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Aim of the game + +There are 2 ways to "win" the game: + +* Reach <a href="sustain">sustainable economy </a> (you can still play after) +* Evacuate all the population with <a href="rocket">spaceships </a> to another planet, then the game stops. + + +Currently there is only one way to lose: +* Everybody is dead because of starvation or pollution. (you know that you need at least 2 people to create a population ;-) + +You will need to increase your tech-level to get new possible buildings and industries. You have to manage the growth of population, and take care of various needs and economical balance. + + +ALSO[See also:]: tutorial-basics, tutorial-advanced, tutorial-scenario diff -Nru lincity-ng-2.0/data/help_templates/orig/tutorial-basics.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-basics.tml --- lincity-ng-2.0/data/help_templates/orig/tutorial-basics.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-basics.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,47 @@ +First steps + +Choose "new game " > "random village". Other scenarii are for more or less experienced players. + +Notice that the random village contains basic resources: +* Farms for feeding markets with foods +* A Water well for people +* Communes which produces charcoal and small amount of ore and steel +* Residential areas +* Pottery +* Tracks + +Clicking on a building (in the main screen) displays information about it in the information window in lower right. + +SUBH: Market + +Market is a key building in Lincity. They are mandatory for nearly all local trades. You <b> must </b> read the help on <a href="market">market </a> :-). <i>Of course, when a market is empty it cannot sell the corresponding item, and when it is full it cannot buy more. This may help you to understand why some building does not work (probably they cannot find what they need, or they cannot sell their production)</i> + +SUBH: Transport + +<a href="transport">Transport </a> is needed for long distance exchanges, and for some specific activities (it is then written in the corresponding help message, for example communes). Like markets they have a limited capacity and can get saturated. + +If a 'normal' building is not in the range of a market, then it must be connected to transport. But remember that roads and rails have a yearly cost, so unless you really want to isolate one building (e.g. a monument) it is generally better (and cheaper) to use markets when needed. + +In the initial village tracks are not needed. But they will be useful when the village develops. + +SUBH: Money + +Productions are taxed and thus earn you money. In the miniwindow, the third tab is <a href="finance"> Finance window </a>. Take care of not investing too much too quickly: when your money is negative, you cannot build some things, and you have per year cost due to the debt. This can lead to bankruptcy (see <a href="tutorial-scenario"> Hard-time scenario </a>. + +SUBH: Developing the city + +Remember people eat food and drink water, or die. To control population growth, you have to find a balance in the kind of <a href="residential"> Residential area </a> you build (they have different rate of birth/death). The new population will allow more jobs, but also need more food, goods, jobs ... + +You will have to augment your production (add potteries, blacksmith) and at the same time take care that they are supplied. So you will also need to add communes accordingly. + +To get new buildings you must raise your <a href="tech-level"> Tech Level </a>. + + At some point you will have to choose your aim: either <a href="sustain"> Sustainable economy </a> or evacuation with <a href="rocket"> spaceships </a>. + +You'll have to check very often the <a href="pbar"> total market stocks </a>. Also minimaps can give you better insight on your economy, and for precise investigation remember that clicking on a building (in the main screen) displays information about it in the information window in lower right. + +* Hint: Make one or two changes then wait a little (read help files ;-) or put the game at a faster speed, and watch how your economic indicators vary. + +Enjoy. + +ALSO[See also:]: tutorial-advanced, tutorial-scenario, msb-starve, msb-ub40 diff -Nru lincity-ng-2.0/data/help_templates/orig/tutorial-overview.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-overview.tml --- lincity-ng-2.0/data/help_templates/orig/tutorial-overview.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-overview.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +Overview of the screen + +<b>Top left </b>contains icons dock with tools (query and bulldoze) and all the building you can get during the game. + +* Left-Click on an icon to open the drawer and see more stuff. +* Right-click on an icon to get related help. +*Just wait with mouse pointer will popup a mini help message. + +<b>Lower left </b>is game speed control + +<b>Lower right </b>contains all the "information tools": miniscreen with 4 tabs and 2 scroll buttons, and below mini-icons for various informations. Click on them to see what happens. + +Try keyboard and mouse (left, middle and right click and wheel...) , F1 for Help. + + +ALSO[See also:]: tutorial-basics, tutorial-advanced, tutorial-scenario diff -Nru lincity-ng-2.0/data/help_templates/orig/tutorial-scenario.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-scenario.tml --- lincity-ng-2.0/data/help_templates/orig/tutorial-scenario.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial-scenario.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Pre-defined scenarii + +Under "new game" + +SUBH: Easy + +* Good time +* Beach (remember that people eat food or die ;-) + +SUBH: Hard + +* "hard-time": try to avoid bankruptcy. Careful analysis of the whole city is needed, and drastic measures are needed to cut costs and make money. It is hard but possible, even possible to reach sustainable development. +* "extreme_arid": the land is very poor in water, so farms and communes ned to be carefully placed for maximum efficiency. +* "extrem_wetland": the land is nearly flooded, so it is very difficult to build the city. diff -Nru lincity-ng-2.0/data/help_templates/orig/tutorial.tml lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial.tml --- lincity-ng-2.0/data/help_templates/orig/tutorial.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/tutorial.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,3 @@ +Tutorial + +ALSO[]: tutorial-aim, tutorial-overview, tutorial-basics, tutorial-advanced, tutorial-scenario diff -Nru lincity-ng-2.0/data/help_templates/orig/university.tml lincity-ng-2.9~git20150314/data/help_templates/orig/university.tml --- lincity-ng-2.0/data/help_templates/orig/university.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/university.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +University + +Universities help to increase your technology level. +In the process they consume goods and jobs. They produce more than schools for a given goods/jobs input. +However they consume a lot of goods and jobs and also cost quite a lot of money to run, so you should +have the economic and industrial capacity to supply them. + +You will need a number of universities to achieve a tech level close to 100% + +Universities do not need to be connected to transport; they can get all their +requirements from markets within range and with enough jobs and goods available. + +SUBH: NOTE + +You must have 4 schools per university to supply them with students. + +IMG_1[This is a University]: images/tiles/university.png +IMG_2[and this is its icon]: images/gui/buttonpanel/misc/university.png + + +ALSO[See also:]: tech-level, market, transport, goods, jobs, school diff -Nru lincity-ng-2.0/data/help_templates/orig/waste.tml lincity-ng-2.9~git20150314/data/help_templates/orig/waste.tml --- lincity-ng-2.0/data/help_templates/orig/waste.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/waste.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +Waste + +Waste is produced whenever goods are consumed. It may be put to a landfill, processed at recycle centres or +simply pile up on transport and markets. However, if to much waste piles up it catches fire and causes heavy air pollution. + +Electricified farms and forests (aka communes) can bio-degrade a little waste. + + + +ALSO[See also:]: commodities, tip, recycle, commune, farm diff -Nru lincity-ng-2.0/data/help_templates/orig/water.tml lincity-ng-2.9~git20150314/data/help_templates/orig/water.tml --- lincity-ng-2.0/data/help_templates/orig/water.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/water.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Water + +Water is provided by water wells and flows in pipes underneath your cities transportation network. Residential area must be connected to waterpipes. Forests (aka communes) and electrified farms may use water to max out their fertiliy by irrigation. + +Electricified farms and forests (aka communes) can bio-degrade a little waste. + + + +ALSO[See also:]: commodities, waterwell, residential, commune, farm diff -Nru lincity-ng-2.0/data/help_templates/orig/waterwell.tml lincity-ng-2.9~git20150314/data/help_templates/orig/waterwell.tml --- lincity-ng-2.0/data/help_templates/orig/waterwell.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/waterwell.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +Water well + +Water wells provide frash water. Water flows in underground pipes along transport. +Lack of water will have the same consequences as lack of food. +Informations is shown in starvation overlay/minimap. Beware, too heavy pollution will +render the water not drinkable. + + + +ALSO[See also:]: food, water, transport, msb-starve, pollution diff -Nru lincity-ng-2.0/data/help_templates/orig/windmill.tml lincity-ng-2.9~git20150314/data/help_templates/orig/windmill.tml --- lincity-ng-2.0/data/help_templates/orig/windmill.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/orig/windmill.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +Windmills + +Wooden windmills provide power for residences and farms. They enable the farmer to process food more efficiently and make residences more desirable. + +Providing power to residences makes the people there use more goods. + +Windmills also need manpower for producing power. If a windmill does not have enough jobs, it will produce less power and it will produce no power at all if it has no jobs. + +There are two forms of windmills. + +IMG_1[There are two forms of windmills:]: images/gui/buttonpanel/power/windmills.png +IMG_2[The first is a low-tech 'wooden' windmill. It provides kWh for the local neighborhood:] images/tiles/windmill1w.png +IMG_3[The second is a 'modern' wind-farm type. It provides MWh to the cities power grid:] images/tiles/windmill1g.png + +The type you get depends on your tech-level when you build it. + +ALSO[See also:]: power, substation, powerline, tech-level, msb-power, powerscoal, powerssolar + diff -Nru lincity-ng-2.0/data/help_templates/ru/blacksmith.tml lincity-ng-2.9~git20150314/data/help_templates/ru/blacksmith.tml --- lincity-ng-2.0/data/help_templates/ru/blacksmith.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/blacksmith.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Кузница + +Кузница Ñоздаёт товары из ÑƒÐ³Ð»Ñ Ð¸ Ñтали, а также предоÑтавлÑет рабочие меÑта. + +Пока у Ð’Ð°Ñ Ð½ÐµÑ‚ производÑтва Ñтали, Ð’Ñ‹ можете Ñтроить коммуны. Ðа одну кузницу рекомендуетÑÑ Ð¿Ð¾Ñтроить 5 или 6 коммун. + +Кузницу не обÑзательно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли она находитÑÑ Ð² зоне доÑÑгаемоÑти магазина. + +Чтобы увидеть, какую пользу приноÑÑÑ‚ кузницы, можно нажать на неё и поÑмотреть ÑтатуÑ. Также по анимации можно понÑÑ‚ÑŒ, работает она или нет. + +IMG_1[Это кузница:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/bulldoze.tml lincity-ng-2.9~git20150314/data/help_templates/ru/bulldoze.tml --- lincity-ng-2.0/data/help_templates/ru/bulldoze.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/bulldoze.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Бульдозер + +Уничтожает выбранные Вами поÑтройки. Ðажмите на поÑтройку, еÑли желаете от неё избавитьÑÑ. Уничтожение Ñтоит денег. Когда Ð’Ñ‹ Ñтроите и уничтожаете поÑтройки, Ð’Ñ‹ можете увидеть ÑтоимоÑÑ‚ÑŒ внизу Ñкрана. + +Ðекоторые думают, что уничтожение монумента Ñтоит очень больших денег, на Ñамом деле так и еÑÑ‚ÑŒ :-). СтоимоÑÑ‚ÑŒ Ñ€Ð°Ð·Ñ€ÑƒÑˆÐµÐ½Ð¸Ñ ÑкладываетÑÑ Ð½Ðµ только из физичеÑких затрат, но и из политичеÑких Ñоображений. Ðапример, в ÑтоимоÑÑ‚ÑŒ ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð½ÑƒÐ¼ÐµÐ½Ñ‚Ð° закладываютÑÑ Ñ€Ð°Ñходы на Ñудебные Ñ‚Ñжбы, ÑвÑзанные Ñ Ð¿Ñ€Ð¾Ñ‚ÐµÑтами. + +Уничтожение воды также очень дорого. + +Ðажатие клавиши Ctrl позволит увеличить количеÑтво уничтожаемых поÑтроек. + +IMG_1[Это иконка бульдозера:] + +ALSO[См. ещё:] + + diff -Nru lincity-ng-2.0/data/help_templates/ru/button-index.tml lincity-ng-2.9~git20150314/data/help_templates/ru/button-index.tml --- lincity-ng-2.0/data/help_templates/ru/button-index.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/button-index.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,100 @@ +Выберите интереÑующую Ð’Ð°Ñ Ñ‚ÐµÐ¼Ñƒ + +IMG_1[] +<a href="powerline">Линии Ñлектропередач (ЛЭП)</a> + +IMG_2[] +<a href="powerssolar">Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ</a> + +IMG_3[] +<a href="substation">ПодÑтанциÑ</a> + +IMG_4[] +<a href="residential">Жилой дом</a> + +IMG_5[] +<a href="waterwell">Колодец</a> + +IMG_6[] +<a href="farm">Ферма</a> + +IMG_7[] +<a href="market">Магазин</a> + +IMG_8[] +<a href="bulldoze">Бульдозер</a> + +IMG_9[] +<a href="evacuate">ОпуÑтошение</a> + +IMG_10[] +<a href="track">Грунтовка</a> + +IMG_11[] +<a href="coalmine">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°</a> + +IMG_12[] +<a href="rail">Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°</a> + +IMG_13[] +<a href="powerscoal">Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ</a> + +IMG_14[] +<a href="road">Дорога</a> + +IMG_15[] +<a href="industryl">Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ</a> + +IMG_16[] +<a href="university">УниверÑитет</a> + +IMG_17[] +<a href="commune">Коммуна</a> + +IMG_18[] +<a href="oremine">Рудник</a> + +IMG_19[] + <a href="export">Импорт, ÑкÑпорт</a> + +IMG_20[] +<a href="industryh">ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (металлургичеÑкий завод)</a> + +IMG_21[] +<a href="park">Парк</a> + +IMG_22[] +<a href="recycle">Центр по переработке отходов</a> + +IMG_23[] +<a href="river">Река/Озеро</a> + +IMG_24[] +<a href="health">Больница</a> + +IMG_25[] +<a href="rocket">Ð¡Ñ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей</a> + +IMG_26[] +<a href="windmill">Ветрогенератр</a> + +IMG_27[] +<a href="monument">Монумент</a> + +IMG_28[] +<a href="school">Школа</a> + +IMG_29[] +<a href="mill">ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°</a> + +IMG_30[] +<a href="pottery">Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ</a> + +IMG_31[] +<a href="firestation">ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ</a> + +IMG_32[] +<a href="cricket">БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°</a> + +IMG_33[] +<a href="port">Порт</a> diff -Nru lincity-ng-2.0/data/help_templates/ru/coalmine.tml lincity-ng-2.9~git20150314/data/help_templates/ru/coalmine.tml --- lincity-ng-2.0/data/help_templates/ru/coalmine.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/coalmine.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,25 @@ +Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° + +Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° должна быть поÑтроена на меÑторождениÑÑ… углÑ. +МеÑÑ‚Ð¾Ñ€Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð’Ñ‹ можете увидеть, нажав ÑоответÑтвующую кнопку под миникартой. + +Первое нажатие будет Ñтоить Вам 1 миллион рублей. +ПоÑледующее иÑпользование беÑплатно. +Строить вы можете и без иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñтой кнопки. + +Угольной шахте требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ. + +ЕÑли Ваша Ñкономика производит избыточное количеÑтво углÑ, Ваши угольные шахты могут перемещать уголь на новые подземные Ñлои. + +IMG_1[Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°:] +IMG_2[а Ñто иконка:] + +Графики отображают количеÑтво углÑ, который добыли, но не отправили Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы. Верхние угольные шахты имеют наибольшый Ð·Ð°Ð¿Ð°Ñ ÑƒÐ³Ð»Ñ. + +Ðажав на угольную шахту, Ð’Ñ‹ Ñможете увидеть количеÑтво добытого ÑƒÐ³Ð»Ñ Ð² шахте и, что более важно, доÑтупные запаÑÑ‹ углÑ. + +За добычу ÑƒÐ³Ð»Ñ Ð’Ñ‹ получаете деньги. + +Также угольные шахты -- иÑточники <a href="pollution">загрÑзнениÑ</a>. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/coal.tml lincity-ng-2.9~git20150314/data/help_templates/ru/coal.tml --- lincity-ng-2.0/data/help_templates/ru/coal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/coal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Уголь + +Уголь иÑпользуетÑÑ ÑƒÐ³Ð¾Ð»ÑŒÐ½Ñ‹Ð¼Ð¸ ÑлектроÑтанциÑми Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ñтва ÑлектричеÑтва. Также иÑпользуетÑÑ Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ñ‹Ð¼Ð¸ маÑтерÑкими, текÑтильными фабриками и кузницами в процеÑÑе производÑтва товаров. ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (металлугричеÑкие заводы) иÑпользует уголь, еÑли нет ÑлектричеÑтва. + +Уголь добываетÑÑ Ð¸Ð·-под земли Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ угольных шахт. ЗапаÑÑ‹ ÑƒÐ³Ð»Ñ Ð½Ð° карте ограничены, Ð’Ñ‹ можете запроÑить информацию о запаÑах углÑ, нажав на ÑоответÑтвующую кнопку (на миникарте). + +Коммуны могут вырабатывать очень малое количеÑтво углÑ. Ð’ дейÑтвительноÑти Ñто древеÑный уголь. ЕÑтеÑтвенно, коммуны могут Ñнабжать углём лишь небольшие поÑтройки. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/commodities.tml lincity-ng-2.9~git20150314/data/help_templates/ru/commodities.tml --- lincity-ng-2.0/data/help_templates/ru/commodities.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/commodities.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Товары Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ + +Товары Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ -- Ñто товары, которые могут быть произведены, транÑпортированы, Ñкладированы, обработаны и иÑпользованы в Вашем горде. ДиÑплей ÑтатуÑа каждого ÑÑ‚Ñ€Ð¾ÐµÐ½Ð¸Ñ Ð¸Ð»Ð¸ учаÑтка дороги вÑегда выдаёт релевантный ÑпиÑок товаров потреблениÑ. Стрелки в начале линий показывают Ñырьё, продукцию и транÑпортабельноÑÑ‚ÑŒ. + +Ð’ большинÑтве Ñлучаев должно быть как минимум 5% ÑÑ‹Ñ€ÑŒÑ (Ð´Ð»Ñ Ð¿Ñ€ÐµÐ²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ð¸Ñ… в 5% товаров). + +Ð’Ñ‚Ð¾Ñ€Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° на миникарте показывает раÑширенную ÑтатиÑтику и процеÑÑ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹. ВмеÑте Ñ Ð·Ð¾Ð½Ð¾Ð¹ транÑпорта можно получить много информации о Вашей Ñкономике. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/commune.tml lincity-ng-2.9~git20150314/data/help_templates/ru/commune.tml --- lincity-ng-2.0/data/help_templates/ru/commune.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/commune.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +Коммуна + +Ð”Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка включает в ÑÐµÐ±Ñ Ð´Ñ€ÐµÐ²ÐµÑную топку, леÑной учаÑток и Ñарай Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð´Ñ€ÐµÐ²ÐµÑного ÑƒÐ³Ð»Ñ (может быть заменой каменного углÑ). Также она вырабатывает небольшое количеÑтво руды и Ñтали. + +ВероÑтно, Вам потребуетÑÑ "неÑколько" коммун, чтобы получать доÑтаточное количеÑтво углÑ, руды и Ñтали Ð´Ð»Ñ ÑÐ½Ð°Ð±Ð¶ÐµÐ½Ð¸Ñ Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ñ‹Ñ… маÑтерÑких, кузниц и других поÑтроек. + +ЕÑли коммуна ничего не вырабатывает больше 10 лет, то она закрываетÑÑ Ð¸ превращаетÑÑ Ð² парк. + +Коммуны можно ÑоединÑÑ‚ÑŒ c транÑпортной ÑиÑтемой в любой точке. + +ПроизводÑтво ÑƒÐ³Ð»Ñ Ð² коммунах завиÑит от Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ñ… вод, еÑли они не получают Ñвежую воду Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемой (учаÑтки Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ð¼Ð¸ водами отображаютÑÑ Ð·ÐµÐ»Ñ‘Ð½Ñ‹Ð¼ цветом). + +IMG_1[Это коммуна:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/cricket.tml lincity-ng-2.9~git20150314/data/help_templates/ru/cricket.tml --- lincity-ng-2.0/data/help_templates/ru/cricket.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/cricket.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° + +БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° приобщает ваше наÑеление к Ñпорту и развлечениÑм. Ð”Ð»Ñ Ð½ÐµÑ‘ нужны товары и рабочие. Площадку не обÑзательно должна быть Ñоединена Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, однако, еÑли она не Ñоединена, то должна раÑполагатьÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°, который Ñможет обеÑпечить её товарами и рабочими. Ещё она требует ежемеÑÑчных инвеÑтиций. + +Когда Ð’Ñ‹ Ñтроите баÑкетбольную площадку, она начинает работать не Ñразу. Обычно проходит около трёх меÑÑцев до начала её функционированиÑ. + +Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾ чтобы поÑмотреть, кому доÑтупна площадка, нажмите на ÑоответÑтвующую кнопку на миникарте. МеÑта в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ¸ отображаютÑÑ Ñ‚Ñ‘Ð¼Ð½Ð¾-зелёным цветом, не попадающие в зону дейÑÑ‚Ð²Ð¸Ñ -- Ñерым. + +БаÑкетбол увеличивает привлекательноÑÑ‚ÑŒ раÑположенных Ñ€Ñдом домов. + +С помощью анимации Ð’Ñ‹ можете увидеть, работает площадка или нет. + +IMG_1[Это баÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°:] +IMG_2[а Ñто иконка:] +IMG_3[а Ñто иконка под миникартой:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/dialogs.tml lincity-ng-2.9~git20150314/data/help_templates/ru/dialogs.tml --- lincity-ng-2.0/data/help_templates/ru/dialogs.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/dialogs.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,22 @@ +Информационные окна + +Крт + +* <a href="mini-screen">Миникарта</a> + +Стат + +* <a href="pbar">Окно ÑтатиÑтики</a> + +Фин + +* <a href="finance">Окно финанÑов</a> +* <a href="other-costs">Другие затраты</a> +* <a href="housing">Окно наÑелениÑ</a> + +ЭКО + +* <a href="economy">График Ñкономики</a> +* <a href="sustain">Окно доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑƒÑтойчивой Ñкономики</a> + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/economy.tml lincity-ng-2.9~git20150314/data/help_templates/ru/economy.tml --- lincity-ng-2.0/data/help_templates/ru/economy.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/economy.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +График Ñкономики + +График Ñкономики Ñодержит четыре цветных линии. Они показывают наиболее значимые ÑкономичеÑкие факторы. + +* <span color="brown">ÐаÑеление</span> (коричневый) + ÐšÐ¾Ñ€Ð¸Ñ‡Ð½ÐµÐ²Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ наÑеление. + Ð”Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¸ÑпользуетÑÑ Ð»Ð¾Ð³Ð°Ñ€Ð¸Ñ„Ð¼Ð¸Ñ‡ÐµÑÐºÐ°Ñ ÑˆÐºÐ°Ð»Ð°. +* <span color="blue">Бездомные</span> (Ñиний) + СинÑÑ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ потребноÑÑ‚ÑŒ в жилье. Ð’Ñ‹Ñота графика пропорциональна квадратному корню бездомных жителей. +* <span color="yellow">Безработица</span> (желтый) + Ярко-жёлтый цвет показывает количеÑтв безработного наÑелениÑ. Шкала Ñтого графика изменÑетÑÑ Ñ Ð’Ð°ÑˆÐ¸Ð¼ наÑелением. График отображаетÑÑ Ñплошным Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ вниманиÑ. +* <span color="red">Голодание</span> (краÑный) + Ð¡Ð¿Ð»Ð¾ÑˆÐ½Ð°Ñ ÐºÑ€Ð°ÑÐ½Ð°Ñ Ð»Ð¸Ð½Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ уровень Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð»ÑŽÐ´ÐµÐ¹. Как и любой другой фактор, он ÑвлÑетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ важным. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/evacuate.tml lincity-ng-2.9~git20150314/data/help_templates/ru/evacuate.tml --- lincity-ng-2.0/data/help_templates/ru/evacuate.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/evacuate.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,13 @@ +ОпуÑтошение + +Ð”Ð»Ñ Ð¾Ð¿ÑƒÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ñтроений нажмите кнопку опуÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ð¸ выберите желаемые поÑтройки Ñ Ñ‚Ð¾Ð²Ð°Ñ€Ð°Ð¼Ð¸ потреблениÑ. ОпуÑтошение производитÑÑ Ð±ÐµÑплатно, вÑе товары перемещаютÑÑ Ð² близлежащие магазины и на дорогу. + +ПоÑледÑÑ‚Ð²Ð¸Ñ Ð¾Ð¿ÑƒÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ быть опаÑными (от оÑтановки производÑтва до Ð¾Ð±Ñ€ÐµÑ‡ÐµÐ½Ð¸Ñ Ð¶Ð¸Ñ‚ÐµÐ»ÐµÐ¹ на голодную Ñмерть). + +Ðекоторые ÑтроениÑ, такие как дороги, рельÑÑ‹, Ñвалки и другие, Ð½ÐµÐ»ÑŒÐ·Ñ Ð¾Ð¿ÑƒÑтошить. + +ИÑтощённые рудники и угольные шахты перед разрушением опуÑтошаютÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑки. + +IMG_1[Это кнопка опуÑтошениÑ:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/export.tml lincity-ng-2.9~git20150314/data/help_templates/ru/export.tml --- lincity-ng-2.0/data/help_templates/ru/export.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/export.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Импорт и ÑкÑпорт + +Импорт и ÑкÑпорт очень похожи, за иÑключением того, что в первом Ñлучае Ð’Ñ‹ тратите деньги, а во втором зарабатываете. Оба Ñтих дейÑÑ‚Ð²Ð¸Ñ Ñ‚Ñ€ÐµÐ±ÑƒÑŽÑ‚ наличие порта. +Сначала логичнее будет иÑключительно ÑкÑпортировать излишки товаров. + +Порт должен ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. + +Порт <b>должен</b> ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ€ÐµÐºÐ¾Ð¹, раÑположенной Ñ Ð¿Ñ€Ð°Ð²Ð¾Ð¹ Ñтороны от него. + +ЭкÑпорт иÑпользует вÑе доÑтупные товары. ЕÑли Вам надо ÑкÑпортировать только ограниченное количеÑтво товаров, Ð’Ñ‹ можете иÑпользовать более медленный вид транÑпортной ÑиÑтемы, более длинные дороги и Ñ‚.д. Вам придётÑÑ Ð¿Ð¾ÑкÑпериментировать Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ð¹ транÑпортной ÑиÑтемы. + +ЭкÑпортируемый товар дешевле, чем импортированный. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/farm.tml lincity-ng-2.9~git20150314/data/help_templates/ru/farm.tml --- lincity-ng-2.0/data/help_templates/ru/farm.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/farm.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Ферма + +Фермы выращивают еду Ð´Ð»Ñ Ð»ÑŽÐ´ÐµÐ¹ и Ñнабжают Ñырьём текÑтильные фабрики. Фермеры продают еду в магазины. Они перевозÑÑ‚ eÑ‘ на тракторах, поÑтому им не нужна дорога. Однако Ð’Ñ‹ можете иÑпользовать транÑпортную ÑиÑтему Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð´Ð°Ð¶, еÑли пожелаете. ЕÑтеÑтвенно, магазины должны находитьÑÑ Ð½Ðµ очень далеко от ферм. + +Работа ферм завиÑит от Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ñ… вод. УчаÑтки Ñ Ð¿Ð¾Ð´Ð·ÐµÐ¼Ð½Ñ‹Ð¼Ð¸ водами Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶Ð°ÑŽÑ‚Ñ Ð·ÐµÐ»Ñ‘Ð½Ñ‹Ð¼ цветом. + +IMG_1[Это ферма:] +IMG_2[а Ñто её иконка:] + +При наличии рабочих фермы производÑÑ‚ больше еды. ЕÑли же к ним подвеÑти ÑлектричеÑтво, то КПД значительно увеличитÑÑ. Также такие фермы могут орошать Ñухие земли и уничтожать отходы. ОÑтерегайтеÑÑŒ Ñлишком большого Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ Ð²Ð¾Ð´Ñ‹ фермами. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/fast.tml lincity-ng-2.9~git20150314/data/help_templates/ru/fast.tml --- lincity-ng-2.0/data/help_templates/ru/fast.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/fast.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Ð’Ñ‹ÑÐ¾ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ + +IMG_1[] + +Это кнопка выÑокой ÑкороÑти. Она запуÑкает игру на макÑимальной ÑкороÑти. Будьте внимательны, ÑÐ¾Ð±Ñ‹Ñ‚Ð¸Ñ Ð±ÑƒÐ´ÑƒÑ‚ проиÑходить очень быÑтро. + +ÐžÐ¿Ñ†Ð¸Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð½Ð¾Ð¹ Ñтроки "-q 1" или "--quick 1" запуÑтит игру Ñ Ð¼Ð°ÐºÑимально возможной ÑкороÑтью (менее 10 Ñекунд на год), но может нагреть Вашу аппаратуру. По умолчанию иÑпользуетÑÑ Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ðµ "-q 9" (около 25 Ñекунд на год). + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/finance.tml lincity-ng-2.9~git20150314/data/help_templates/ru/finance.tml --- lincity-ng-2.0/data/help_templates/ru/finance.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/finance.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Окно финанÑов + +Левое нажатие на Ñтом окне открывает окна Ñ 'глобальным финанÑовым баланÑом', ещё одно нажатие открывает 'другие затраты' и ещё одно нажатие открывает 'затраты наÑелениÑ'. + +ФинанÑовое окно обновлÑетÑÑ ÐºÐ°Ð¶Ð´Ñ‹Ð¹ год 1-ого ÑнварÑ. Данные отражают приход и траты за прошедший год. + +'Итог' -- Ñто ваш баланÑ. Ðекоторые вещи Ð’Ñ‹ не Ñможете делать, находÑÑÑŒ 'в краÑном'. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/firestation.tml lincity-ng-2.9~git20150314/data/help_templates/ru/firestation.tml --- lincity-ng-2.0/data/help_templates/ru/firestation.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/firestation.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ + +ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰Ð°ÐµÑ‚ возникновение и раÑпроÑÑ‚Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð° в зоне дейÑтвиÑ. Она требует доÑтупа к товарам и рабочей Ñиле. Она <b>не обÑзательно</b> должна быть Ñоединенина Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, рабочих и товары она может получать в магазинах, в зоне дейÑÑ‚Ð²Ð¸Ñ ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… находитÑÑ. Также Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ñ‚Ñ€ÐµÐ±ÑƒÐµÑ‚ финанÑированиÑ. + +ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð¾Ð±Ñ‹Ñ‡Ð½Ð¾ начинает работать через три меÑÑца поÑле поÑтройки. + +Ð”Ð»Ñ Ñ‚Ð¾Ð³Ð¾ чтобы поÑмотреть зону дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций, нужно нажать на кнопку пожарной Ñтанции под миникартой. Зоны, которые покрывают пожарные Ñтанции, отмечены тёмно-зелёным цветом, не попадающие в зону дейÑÑ‚Ð²Ð¸Ñ -- Ñерым. + +ЖителÑм больше нравитÑÑ Ð¶Ð¸Ñ‚ÑŒ в меÑтах, попадающих в зону дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций. + +ЕÑли Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ñ Ð½Ð° пожарной Ñтанции менÑетÑÑ, значит, ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ð°ÐµÑ‚. + +IMG_1[Это Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ:] +IMG_2[а Ñто иконка:] +IMG_3[Ñто иконка миникарты:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/food.tml lincity-ng-2.9~git20150314/data/help_templates/ru/food.tml --- lincity-ng-2.0/data/help_templates/ru/food.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/food.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Еда + +Еда раÑÑ‚Ñ‘Ñ‚ на фермах или импортируетÑÑ Ñ‡ÐµÑ€ÐµÐ· порт. + +ЛюдÑм нужна еда Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾, чтобы выжить. ЕÑли люди начинают умирать от голода, их ÑоÑеди уезжают из Вашего города. + +Также еда нужна текÑтильным фабрикам. Ðапример, они перерабатывают хлопок в одежду (товар). Они могут иÑпользовать <i>Ñлишком</i> много еды. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/goods.tml lincity-ng-2.9~git20150314/data/help_templates/ru/goods.tml --- lincity-ng-2.0/data/help_templates/ru/goods.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/goods.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Товары + +Товары нужны большинÑтву поÑтроек. У людей товары тоже пользуютÑÑ ÑпроÑом. + +Товары облагаютÑÑ Ð½Ð°Ð»Ð¾Ð³Ð¾Ð¼, что может помочь поправить Ваше финанÑовое положение. + +Товары умеют делать: гончарные маÑтерÑкие, кузницы, текÑтильные фабрики и Ð»Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/health.tml lincity-ng-2.9~git20150314/data/help_templates/ru/health.tml --- lincity-ng-2.0/data/help_templates/ru/health.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/health.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Больница + +Больница обеÑпечивает потребноÑти наÑÐµÐ»ÐµÐ½Ð¸Ñ Ð² медицинÑкой помощи в радиуÑе четырёх учаÑтков. + +Больница помогает людÑм жить дольше, люди начинают меньше умирать из-за болезней, вызванных загрÑзнениÑми, и более производительно работать (они проводÑÑ‚ меньше времени на больничном). + +Больницы очень дорогие. Однако они понижают затраты на нееÑтеÑтвенные Ñмерти (погибшие) и могут приноÑить дополнительную прибыль от налогов. + +Больницы начинают работать через три меÑÑца поÑле поÑтройки. Ð”Ð»Ñ Ð¸Ñ… работы требуютÑÑ Ñ‚Ð¾Ð²Ð°Ñ€Ñ‹. + +Больницу нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли она не находитÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°. + +ОблаÑÑ‚ÑŒ дейÑÑ‚Ð²Ð¸Ñ Ð±Ð¾Ð»ÑŒÐ½Ð¸Ñ†Ñ‹ Ð’Ñ‹ можете увидеть, нажав на миникарте ÑоответÑтвующую кнопку. + +IMG_1[Это больница:] +IMG_2[Ñто его иконка:] +IMG_3[Ñто иконка на миникарте:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/help.tml lincity-ng-2.9~git20150314/data/help_templates/ru/help.tml --- lincity-ng-2.0/data/help_templates/ru/help.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/help.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Помощь по Lincity + +Это опиÑание игры Lincity. ПожалуйÑта, выберите тему, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð’Ð°Ð¼ будет интереÑна, и нажмите на неё. СÑылки выделены Ñиним цветом. + +Ð’ игровом цикле Ð’Ñ‹ можете получать помощь по многим объектам, Ð½Ð°Ð¶Ð¸Ð¼Ð°Ñ Ð½Ð° них правой кнопкой мыши. Также внизу Ñкрана еÑÑ‚ÑŒ кнопка помощи. + +Выиграть в Lincity можно Ð´Ð²ÑƒÐ¼Ñ Ð¿ÑƒÑ‚Ñми. Первый ÑпоÑоб -- Ñто <a href="sustain">Ñтабилизировать Ñкономику</a>, второй -- Ñвакуировать вÑех жителей на <a href="rocket">коÑмичеÑких кораблÑÑ…</a>. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/housing.tml lincity-ng-2.9~git20150314/data/help_templates/ru/housing.tml --- lincity-ng-2.0/data/help_templates/ru/housing.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/housing.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +Окно наÑÐµÐ»ÐµÐ½Ð¸Ñ + +Это окно наÑелениÑ. + +Оно показывает 7 значений: + +* ÐаÑел - показывает количеÑтво людей в Вашем городе. + Данное значение не учитывает бездомных. +* Дома - показывает количеÑтво людей, живущих в жилых домах. +* Бездомные - показывает количеÑтво бездомных. +* Трущобы - количеÑтво людей, живущих в трущобах. +* Погибшие - показывает количеÑтво людей, умерших от голода или болезни в прошлом меÑÑце. +* Безработица - показывает количеÑтво безработных. +* Безработица % - показывает количеÑтво безработных в %. +* Голод - показывает количеÑтво голодающих людей. +* Голод % - показывает количеÑтво голодающих людей в %. + +Ðажатие левой кнопкой мыши на Ñтом окне позволÑет переключатьÑÑ Ð¼ÐµÐ¶Ð´Ñƒ окнами финанÑов, других затрат и наÑелениÑ. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/index.tml lincity-ng-2.9~git20150314/data/help_templates/ru/index.tml --- lincity-ng-2.0/data/help_templates/ru/index.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/index.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,3 @@ +Содержание + +ALSO[] diff -Nru lincity-ng-2.0/data/help_templates/ru/industryh.tml lincity-ng-2.9~git20150314/data/help_templates/ru/industryh.tml --- lincity-ng-2.0/data/help_templates/ru/industryh.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/industryh.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,16 @@ +ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ (МеталлургичеÑкий завод) + +МеталлургичеÑкий завод производит Ñталь из руды Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ рабочей Ñилы и Ñнергии. Завод должен раÑполагатьÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð° Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñ€ÑƒÐ´Ñ‹ и рабочей Ñилы, в ином Ñлучае завод должен быть Ñоединён Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. Её нужно ÑоединÑÑ‚ÑŒ Ñ Ð²ÐµÑ€Ñ…Ð½Ð¸Ð¼ левым углом завода. + +Ð­Ð½ÐµÑ€Ð³Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ быть получена Ð´Ð²ÑƒÐ¼Ñ Ð¿ÑƒÑ‚Ñми -- либо путём ÑÐ¾Ð¶Ð¶ÐµÐ½Ð¸Ñ ÑƒÐ³Ð»Ñ Ð¿Ñ€Ñмо на заводе, либо Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ÑлектричеÑтва. ИÑпользование ÑƒÐ³Ð»Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±ÑƒÐµÑ‚ большее количеÑтво рабочих. +Ðе очень Ñффективные кВт⋅ч могут доÑтавлÑÑ‚ÑŒÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы, куда более Ñффективные МВт⋅ч -- Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ прÑмого подключении к ЛЭП. +Ветрогенераторы Ñ Ñ‚Ñ€ÑƒÐ´Ð¾Ð¼ могут обеÑпечить данную поÑтройку должным количеÑтвом Ñнергии. + +МеталлургичеÑкий завод ÑвлÑетÑÑ Ð²Ð°Ð¶Ð½Ñ‹Ð¼ иÑточником загрÑзнений. + +ПонÑÑ‚ÑŒ, что Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ работает, можно или нажав на неё курÑором, или поÑмотрев на Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð°Ð½Ð¸Ð¼Ð°Ñ†Ð¸Ð¸ зданиÑ. + +IMG_1[Это Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ:] +IMG_2[Ñто её иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/industryl.tml lincity-ng-2.9~git20150314/data/help_templates/ru/industryl.tml --- lincity-ng-2.0/data/help_templates/ru/industryl.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/industryl.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ + +Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ перерабатывает руду в товары. +Переработка более Ñффективна при наличии Ñтали. +Ð­Ð½ÐµÑ€Ð³Ð¸Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡Ð¸Ð²Ð°ÐµÑ‚ КПД. Ðе очень Ñффективные кВт⋅ч могут доÑтавлÑÑ‚ÑŒÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы, куда более Ñффективные МВт⋅ч -- Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ прÑмого подключении к ЛЭП. +Ветрогенераторы Ñ Ñ‚Ñ€ÑƒÐ´Ð¾Ð¼ могут обеÑпечить данную поÑтройку ÑлектричеÑтвом. + +КоличеÑтво товаров, вырабатываемого лёгкой промышленноÑтью, завиÑит от количеÑтва ÑÑ‹Ñ€ÑŒÑ Ð¸ рабочей Ñилы, которые она может получить, а также от количеÑтва товаров, которое могут увезти. + +Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ должна быть подÑоединена к транÑпортной ÑиÑтеме Ð´Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ñ‹Ñ… Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ руды, Ñтали, рабочей Ñилы, а также продажи товаров. БлизкораÑположенный магазин поможет ей работать на полную мощноÑÑ‚ÑŒ. + +СоединÑÑ‚ÑŒ транÑпортную ÑиÑтему нужно <b>Ñ Ð²ÐµÑ€Ñ…Ð½Ð¸Ð¼ левым углом</b> зданиÑ. ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема закруглÑетÑÑ Ð½Ð° здание, еÑли правильно подÑоединена. + +Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ ÑвлÑетÑÑ Ð²Ð°Ð¶Ð½Ñ‹Ð¼ иÑточником загрÑзнений. + +IMG_1[Это Ð»Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ:] +IMG_2[Ñто её иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/jobs.tml lincity-ng-2.9~git20150314/data/help_templates/ru/jobs.tml --- lincity-ng-2.0/data/help_templates/ru/jobs.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/jobs.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Рабочие + +Рабочей Ñилой в Lincity ÑвлÑÑŽÑ‚ÑÑ Ð»ÑŽÐ´Ð¸, живущие в жилых домах. Рабочие нужны почти каждой поÑтройке, например, Ð´Ð»Ñ Ð¿Ð¾Ñтройки монумента нужны иÑключительно они. + +ПредприÑÑ‚Ð¸Ñ Ð½Ð°Ð½Ð¸Ð¼Ð°ÑŽÑ‚ рабочих в магазинах. ЕÑтеÑтвенно, магазины должны откуда-то брать рабочую Ñилу. У них еÑÑ‚ÑŒ два пути: первый -- Ñто раÑположенные в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð° жилые дома. Второй -- Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы. Магазины, имеющие избыток рабочих, могут отправить их Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы в другие магазины. Магазины, в которых не хватает рабочих, Ñмогут найти и привезти их Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы. + +ЕÑли в магазине избыток рабочей Ñилы, то они переÑтанут принимать новых людей из ближайших жилых домов. Ð’ такой Ñитуации, еÑли нет других Ñвободных магазинов в округе, оÑтавшиеÑÑ Ð»ÑŽÐ´Ð¸ ÑтановÑÑ‚Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð½Ñ‹Ð¼Ð¸. + +Больница, раÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ð°Ñ Ð¾ÐºÐ¾Ð»Ð¾ жилых домов, увеличивает количеÑтво рабочих, принимаемых на работу во вÑех ÑоÑедних магазинах. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/keys.tml lincity-ng-2.9~git20150314/data/help_templates/ru/keys.tml --- lincity-ng-2.0/data/help_templates/ru/keys.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/keys.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,64 @@ +Клавиатура + +ESCAPE: возвращает курÑор + +b переключает бульдозер и курÑор + +h прÑчет выÑокие поÑтройки. Повторное нажатие h Ñнова покажет их + +v переключает зоны миникарты + +m,n переключают отображение информации о транÑпортной ÑиÑтеме + +g отображает информацию о типе земли и вÑех её параметрах + +KP_PLUS: приближение + +KP_MINUS отдаление + +KP_ENTER маÑштаб 100% + +KP5 перемеÑтить обзор на Ñередину карты + +KP9 перемеÑтитьÑÑ Ñевернее + +KP1 перемеÑтитьÑÑ ÑŽÐ¶Ð½ÐµÐµ + +KP7 перемеÑтитьÑÑ Ð·Ð°Ð¿Ð°Ð´Ð½ÐµÐµ + +KP3 перемеÑтитьÑÑ Ð²Ð¾Ñточнее + +KP2 перемеÑтитьÑÑ ÑŽÐ² + +KP4 перемеÑтитьÑÑ ÑŽÐ· + +KP6 перемеÑтитьÑÑ cв + +KP8 перемеÑтитьÑÑ Ñз + +иÑпользуйте shift + направление Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ быÑтрого Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ + +F12 быÑтрое Ñохранение + +F9 быÑÑ‚Ñ€Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ° + +SUBH: Мышка + +Ð¿Ñ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°: + +нажатие правой кнопки позволит перемещатьÑÑ Ð¿Ð¾ карте + +ÑреднÑÑ ÐºÐ½Ð¾Ð¿ÐºÐ°: + +нажатие Ñредней кнопки отобразит информацию об учаÑтке земли под курÑором + +Ð»ÐµÐ²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°: + +нажатие на миникарте перемеÑтит в указанную зону оÑновную карту + +колёÑико: + +вверх: приближение + +вниз: удаление + diff -Nru lincity-ng-2.0/data/help_templates/ru/market.tml lincity-ng-2.9~git20150314/data/help_templates/ru/market.tml --- lincity-ng-2.0/data/help_templates/ru/market.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/market.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,30 @@ +Магазин + +Это ключевое здание в Lincity. + +Магазин -- Ñто не ÑовÑем правильное название. Магазин выполнÑет функцию Ð±Ð¸Ð·Ð½ÐµÑ Ñ†ÐµÐ½Ñ‚Ñ€Ð°, торгового центра, биржи труда, продовольÑтвенного магазина, Ñклада. Он может покупать и продавать вÑевозможные реÑурÑÑ‹ объектам, которые находÑÑ‚ÑÑ Ð² пешей доÑтупноÑти (радиуÑе дейÑтвиÑ). + +Магазины могут обмениватьÑÑ Ñ Ð´Ñ€ÑƒÐ³Ð¸Ð¼Ð¸ магазинами и ÑтроениÑми товарами Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ транÑпортной ÑиÑтемы. + +ИÑпользуйте проÑмотр зоны транÑпорта Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð´Ð¾ÑтупноÑти магазина другим объектам. + +Люди могут покупать еду и товары, уÑтраиватьÑÑ Ð½Ð° работу. +Ð’Ñе зданиÑ, которые требуют рабочую Ñилу, могут найти её только через магазин. +Фермы могут продавать еду непоÑредÑтвенно в магазин. +ТекÑтильные фабрики, гончарные маÑтерÑкие и кузницы продают товар в ближайший магазин, так же как и берут товар оттуда. + +ЕÑли Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð°Ñ…Ð¾Ð´ÑÑ‚ÑÑ Ð²Ð½Ðµ зоны дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°, то их необходимо ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. + +Ð’ первой закладке миникарты показано <b>общее количеÑтво товаров</b> и то, как они изменÑÑŽÑ‚ÑÑ. Это может помочь Вам управлÑÑ‚ÑŒ реÑурÑами. + +SUBH: Контроль того, что может продавать и покупать магазин. + +Ð’Ñ‹ можете контролировать, какие функции выполнÑет магазин, что он покупает и продаёт. +Кликните дважды на магазине и в выпадающем окне выберите то, чем должен заниматьÑÑ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½. + +IMG_1[Это магазин:] +IMG_2[Это иконка:] +IMG_3[Это означает, что магазин работает:] +IMG_4[Это означает, что продажи запрещены:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/medium.tml lincity-ng-2.9~git20150314/data/help_templates/ru/medium.tml --- lincity-ng-2.0/data/help_templates/ru/medium.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/medium.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +СреднÑÑ ÑкороÑÑ‚ÑŒ + +IMG_1[] + +Это кнопка Ñредней ÑкороÑти игры. Ðа Ñлабых машинах кнопки ÑкороÑти могут не работать. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/mill.tml lincity-ng-2.9~git20150314/data/help_templates/ru/mill.tml --- lincity-ng-2.0/data/help_templates/ru/mill.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/mill.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ° + +ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ° из еды и ÑƒÐ³Ð»Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ рабочих делает товары. Еда?... ну, да, в Ñтой игре хлопок и шерÑÑ‚ÑŒ ÑчитаютÑÑ ÐµÐ´Ð¾Ð¹. + +ТекÑтильные фабрики иÑпользуют много еды, поÑтому Ð’Ñ‹ легко можете ÑтолкнутьÑÑ Ñ Ð½ÐµÑ…Ð²Ð°Ñ‚ÐºÐ¾Ð¹ еды, еÑли не будете учитывать Ñто. При ветрогенераторах проблем меньше, так как они могут Ñнабжать фермы ÑлектричеÑтвом, из-за чего те будут производить больше еды. + +ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ð½Ðµ обÑзательно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли они раÑположены в зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°. + +Увидеть, что фабрика работает, Ð’Ñ‹ можете по дыму, иÑходÑщему из зданиÑ. + +IMG_1[Это текÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°:] +IMG_2[Это Ð½ÐµÑ€Ð°Ð±Ð¾Ñ‚Ð°ÑŽÑ‰Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°:] +IMG_3[Это её иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/mini-screen.tml lincity-ng-2.9~git20150314/data/help_templates/ru/mini-screen.tml --- lincity-ng-2.0/data/help_templates/ru/mini-screen.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/mini-screen.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Миникарта + +Миникарта показывает вÑÑŽ игровую карту в уменьшенном варианте. Кнопки внизу показывают информацию о различных игровых зонах -- транÑпотра, загрÑзнений и Ñ‚.д. + +Правый клик на какой-либо кнопке под миникартой показывает Ñправочную информацию об Ñтой кнопке. + +Ð‘ÐµÐ»Ð°Ñ Ñ€Ð°Ð¼ÐºÐ° указывает на облаÑÑ‚ÑŒ, отображаемую в данный момент на оÑновной карте. + +Ð‘Ð¾Ð»ÑŒÑˆÐ°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° "зоны" переноÑит Ñодержимое миникарты на главную карту. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/monument.tml lincity-ng-2.9~git20150314/data/help_templates/ru/monument.tml --- lincity-ng-2.0/data/help_templates/ru/monument.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/monument.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Монумент + +Монументы помогают наÑелению развиватьÑÑ Ð¸ вдохновлÑÑŽÑ‚ на новые изобретениÑ. +Каждый монумент, который Ð’Ñ‹ Ñтроите, увеличивает технологичеÑкий уровень, однако Ð’Ñ‹ не Ñможете поднÑÑ‚ÑŒ его выше 40% таким образом. + +Ð”Ð»Ñ Ð¿Ð¾Ñтройки монумента нужна Ñ€Ð°Ð±Ð¾Ñ‡Ð°Ñ Ñила. <b>Много</b> рабочей Ñилы. +По Ñтой причине монументы можно иÑпользовать Ð´Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ ÑƒÑ€Ð¾Ð²Ð½Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†Ñ‹. +Правда, Ñто лишь кратковременное решение проблемы безработицы, так как поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва монументу не требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ. + +Ð’Ñ‹ можете увидеть, как идёт ÑтроительÑтво, нажав на монумент и поÑмотрев на окно ÑтатиÑтики. Также по мере ÑтроительÑтва изменÑетÑÑ ÐµÐ³Ð¾ иконка. 6 различных иконок отображают веÑÑŒ процеÑÑ Ñтроительтва, от Ð·Ð°Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ ÐºÐ°Ð¼Ð½Ñ Ð´Ð¾ церемонии открытиÑ. + +<b>ПодÑказка</b>: Как избежать Ñитуации, когда на ÑтроительÑтве монумента занÑто Ñлишком много людей, в то Ð²Ñ€ÐµÐ¼Ñ ÐºÐ°Ðº окружающим поÑтройкам не хватает рабочей Ñилы: Ñтроить монумент подальше от оÑтальных поÑтроек либо иÑпользовать опуÑтошение в чрезвычайных ÑитуациÑÑ…. + +IMG_1[Это монумент:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-coal.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-coal.tml --- lincity-ng-2.0/data/help_templates/ru/msb-coal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-coal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Зоны ÑƒÐ³Ð»Ñ + +IMG_1[] + +Зоны ÑƒÐ³Ð»Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÑŽÑ‚, где находÑÑ‚ÑÑ Ð·Ð°Ð¿Ð°ÑÑ‹ ÑƒÐ³Ð»Ñ Ð² Вашем городе. МеÑÑ‚Ð¾Ñ€Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶Ð°ÑŽÑ‚ÑÑ ÐºÑ€Ð°Ñным и зелёным цветом на Ñерой земле. Ð’Ñ‹ должны Ñтроить угольные шахты Ñ€Ñдом Ñ Ð¼ÐµÑторождениÑми углÑ. + +Ð”Ð»Ñ Ð¿ÐµÑ€Ð²Ð¾Ð³Ð¾ запроÑа данной информации Вам нужно будет заплатить 1 миллион рублей. Это Ñ€Ð°Ð·Ð¾Ð²Ð°Ñ Ð¿Ð»Ð°Ñ‚Ð° за иÑÑледование территории, поÑледующий доÑтуп к данной информации беÑплатен. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-cricket.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-cricket.tml --- lincity-ng-2.0/data/help_templates/ru/msb-cricket.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-cricket.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Зоны Ñпорта + +IMG_1[] + +Зоны, которые имеют доÑтуп к Ñпортивным площадкам, окрашены в тёмно-зелёный цвет. ОÑтальные учаÑтки карты отображаютÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ цветом. + +Помните, Ñпортивные площадки ÑтановÑÑ‚ÑÑ Ð´Ð¾Ñтупны только через три меÑÑца поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-fire.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-fire.tml --- lincity-ng-2.0/data/help_templates/ru/msb-fire.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-fire.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Зоны дейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ñ‹Ñ… Ñтанций + +IMG_1[] + +Зоны, которые защищены пожарными ÑтанциÑми, окрашены в тёмно-зелёный цвет. ОÑтальные учаÑтки карты отображаютÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ цветом. + +Помните, Ñтанции начинают работать только через три меÑÑца поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-health.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-health.tml --- lincity-ng-2.0/data/help_templates/ru/msb-health.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-health.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Зоны доÑтупа к больницам + +IMG_1[] + +Зоны, которые имеют доÑтуп к больницам, окрашены в тёмно-зелёный цвет. ОÑтальные учаÑтки карты отображаютÑÑ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ñ‹Ð¼ цветом. + +Помните, больница начинает работать только через три меÑÑца поÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-normal.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-normal.tml --- lincity-ng-2.0/data/help_templates/ru/msb-normal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-normal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +Зоны иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸ + +IMG_1[] + +Показывает на миникарте зданиÑ, дороги, воду и зелёные наÑÐ°Ð¶Ð´ÐµÐ½Ð¸Ñ Ð² городе. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-pol.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-pol.tml --- lincity-ng-2.0/data/help_templates/ru/msb-pol.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-pol.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Зоны загрÑзнений + +IMG_1[] + +Зоны загрÑзнений на миникарте показывают уровень загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ города. + +Ð’ завиÑимоÑти от Ñтепени загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð³ÑƒÑ‚ отображатьÑÑ Ñледующими цветами (в порÑдке ÑƒÑ…ÑƒÐ´ÑˆÐµÐ½Ð¸Ñ Ñитуации): Ñветло-зелёный -> зелёный -> тёмно-зелёный -> тёмно-краÑный -> Ñветло-краÑный -> Ñрко-краÑный. + +Ð’ жилых домах, которые попадают в краÑные зоны, отмечаетÑÑ Ð¿Ð¾Ð²Ñ‹ÑˆÐµÐ½Ð½Ñ‹Ð¹ уровень заболеваемоÑти. Люди предпочитают жить в ÑкологичеÑки чиÑÑ‚Ñ‹Ñ… районах. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-power.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-power.tml --- lincity-ng-2.0/data/help_templates/ru/msb-power.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-power.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Зоны ÑлектроÑÐ½Ð°Ð±Ð¶ÐµÐ½Ð¸Ñ + +IMG_1[] + +Зоны, в которых ÑÐ½ÐµÑ€Ð³Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ÑÑ Ð¼Ð°Ð»Ð¾Ð¼Ð¾Ñ‰Ð½Ñ‹Ð¼Ð¸ ветрогенераторами, окрашены в тёмно-зелёный цвет. +Зоны, подключенные непоÑредÑтвенно к ЛЭП, окрашены в Ñветло-зелёный цвет. +Зоны, не имеющие доÑтупа к Ñнергии, окрашены в краÑный цвет. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-starve.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-starve.tml --- lincity-ng-2.0/data/help_templates/ru/msb-starve.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-starve.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Зоны Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ + +IMG_1[] + +Зоны Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð¾Ñ‚Ð½Ð¾ÑÑÑ‚ÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ к жилым домам. + +Ярко-зелёным цветом отмечены зоны, в которых доÑтаточно еды (из магазинов) и воды (из Ñкважин). Ярко-краÑные же означают, что в данных зонах люди голодают. + +Зона доÑтупноÑти Ñкважины окрашена в тёмно-Ñиний цвет. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-transport.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-transport.tml --- lincity-ng-2.0/data/help_templates/ru/msb-transport.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-transport.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +Зоны транÑпорта + +IMG_1[] + +Зоны транÑпорта отображают количеÑтво товаров на городÑких <a href="track">грунтовках</a>, <a href="road">дорогах</a> и <a href="rail">железных дорогах</a>. + +Ðажмите на иконке Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð¼ÐµÐ¶Ð´Ñƒ потоками и уровнÑми. ИÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ¸ вверх и вниз, Ð’Ñ‹ можете переключатьÑÑ Ð¼ÐµÐ¶Ð´Ñƒ различными товарами потреблениÑ. + +Синими цветами отображаютÑÑ Ð¿Ð¾Ñтройки, находÑщиеÑÑ Ð² зоне доÑтупноÑти <a href="market">магазина</a>. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/msb-ub40.tml lincity-ng-2.9~git20150314/data/help_templates/ru/msb-ub40.tml --- lincity-ng-2.0/data/help_templates/ru/msb-ub40.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/msb-ub40.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Зоны безработицы + +IMG_1[] + +Зоны безработицы отображают жилые дома краÑным или зелёным цветами, а оÑтальные поÑтройки -- жёлтым или Ñерым. + +Ярко-зелёный цвет означает, что в данных жилых домах нет проблем Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†ÐµÐ¹. Тёмно-зелёный и Ñрко-краÑный цвета показывают нараÑтающие проблемы Ñ Ð±ÐµÐ·Ñ€Ð°Ð±Ð¾Ñ‚Ð¸Ñ†ÐµÐ¹. + +Ярко-жёлтый цвет означает, что данной поÑтройке не хватает рабочей Ñилы. +Объекты, отмеченые Ñерым цветом, полноÑтью обеÑпечены рабочей Ñилой. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/oremine.tml lincity-ng-2.9~git20150314/data/help_templates/ru/oremine.tml --- lincity-ng-2.0/data/help_templates/ru/oremine.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/oremine.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Рудник + +Ð”Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка позволÑет добывать руду, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð° Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð¸Ð·Ð²Ð¾Ð´Ñтва товаров и Ñтали. Рудники можно Ñтроить в любом меÑте карты. Ð’ процеÑÑе добычи запаÑÑ‹ руды иÑÑÑкают -- еÑли Ð’Ñ‹ уничтожите рудник бульдозером и поÑтроите нa его меÑте новый, не раÑÑчитывайте, что руды прибавитÑÑ. + +ПоÑле того, как запаÑÑ‹ руды иÑÑÑкнут, рудник превратитÑÑ Ð² реку или озеро. ЕÑли Ð’Ñ‹ захотите воÑÑтановить землю на Ñтом учаÑтке Ð´Ð»Ñ Ð´Ð°Ð»ÑŒÐ½ÐµÐ¹ÑˆÐµÐ³Ð¾ иÑпользованиÑ, учтите, что Вам придётÑÑ Ð·Ð°ÐºÐ¾Ð¿Ð°Ñ‚ÑŒ 16 учаÑтков воды! + +СкороÑÑ‚ÑŒ анимации показывает активноÑÑ‚ÑŒ на руднике. + +IMG_1[Это рудник:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/ore.tml lincity-ng-2.9~git20150314/data/help_templates/ru/ore.tml --- lincity-ng-2.0/data/help_templates/ru/ore.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/ore.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +Руда + +Руда -- один из оÑновных видов ÑÑ‹Ñ€ÑŒÑ Ð² игре. Коммуны, рудники и центры по переработке отходов могут добывать руду. + +Руда необходима Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ гончарных маÑтерÑких, а также лёгкой и Ñ‚Ñжёлой промышленноÑти. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/other-costs.tml lincity-ng-2.9~git20150314/data/help_templates/ru/other-costs.tml --- lincity-ng-2.0/data/help_templates/ru/other-costs.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/other-costs.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Другие затраты + +Это окно других затрат. +Оно показывает раÑпределение "других затрат", которые отображаютÑÑ Ð² окне финанÑов. + +* Выплата процентов +* Школы +* УниверÑитеты +* ÐееÑтеÑтвенные Ñмерти +* Ветрогенераторы +* Больницы +* КоÑмичеÑкие корабли +* Пожарные Ñтанции +* Спортивные площадки +* Центры по переработке отходов + +Ðажатие левой кнопкой на заголовке Ñтого окна позволит переключатьÑÑ Ð¼ÐµÐ¶Ð´Ñƒ окнами финанÑов, других затрат и наÑелениÑ. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/park.tml lincity-ng-2.9~git20150314/data/help_templates/ru/park.tml --- lincity-ng-2.0/data/help_templates/ru/park.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/park.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,19 @@ +Парк + +Парки имеют очень проÑтое назначение: они уменьшают загрÑзнениÑ. + +Очень многие объекты загрÑзнÑÑŽÑ‚ город: Ñто и дороги, и угольные шахты, и промышленноÑÑ‚ÑŒ, и Ñ‚.д. +Какие-то объекты загрÑзнÑÑŽÑ‚ город больше, какие-то меньше. + +Ð’Ñ‹ можете Ñтроить парки Ð´Ð»Ñ ÑƒÐ»ÑƒÑ‡ÑˆÐµÐ½Ð¸Ñ Ñкологии возле жилых домов или около иÑточников загрÑзнений. + +Ð’ городе преобладает юго-западный ветер, учитывайте Ñто при Ñоздании парков. + +Парки более Ñффективны, чем леÑа или фермы, однако Ð´Ð»Ñ Ð¸Ñ… ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾ наличие подземных вод. ПоÑтому они могут раÑполагатьÑÑ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ на зелёных учаÑтках карты. + +<b>ПодÑказка:</b> Ðажав клавишу 'w' при Ñоздании парка, Ð’Ñ‹ увидите маленький пруд. + +IMG_1[Это парк:] +IMG_2[а Ñто его иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/pause.tml lincity-ng-2.9~git20150314/data/help_templates/ru/pause.tml --- lincity-ng-2.0/data/help_templates/ru/pause.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/pause.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +Пауза + +Ð”Ð°Ð½Ð½Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° приоÑтанавливает ход игры. + +Повторное нажатие продолжает игру. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/pbar.tml lincity-ng-2.9~git20150314/data/help_templates/ru/pbar.tml --- lincity-ng-2.0/data/help_templates/ru/pbar.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/pbar.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Окно ÑтатиÑтики + +Это Ð²Ñ‚Ð¾Ñ€Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° на миникарте. + +Она показывает раÑширенную ÑтатиÑтику объектов города и их недавнее развитие. + +ПолоÑа Ñ Ð¿Ñ€Ð°Ð²Ð¾Ð¹ Ñтороны указывает на увеличение Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð°Ð¼ÐµÑ‚Ñ€Ð°, полоÑа Ñ Ð»ÐµÐ²Ð¾Ð¹ Ñтороны -- на уменьшение. По размеру полоÑÑ‹ можно Ñудить о размере изменений. Зелёной полоÑой обозначены хорошие изменениÑ, краÑной -- плохие. Будьте внимательны, Ñлишком большое чиÑло хороших изменений не вÑегда полезно. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/pollution.tml lincity-ng-2.9~git20150314/data/help_templates/ru/pollution.tml --- lincity-ng-2.0/data/help_templates/ru/pollution.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/pollution.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,18 @@ +ЗагрÑзнение + +БольшинÑтво объектов загрÑзнÑÑŽÑ‚ окружающую Ñреду. +Ðаиболее опаÑные: +* ТÑÐ¶Ñ‘Ð»Ð°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ. +* Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ. +* Угольные ÑлектроÑтанции. +* Угольные шахты. +* Магазины, заполненные муÑором. +* РельÑÑ‹ и дороги, оÑобенно когда заполнены муÑором. + +ЛюдÑм не нравитÑÑ Ð¶Ð¸Ñ‚ÑŒ в грÑзи. Они захотÑÑ‚ уехать, потому что иначе могут заболеть или даже умереть. + +Ð’ городе преобладает юго-западный ветер, поÑтому загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰Ð°ÑŽÑ‚ÑÑ Ð½Ð° Ñеверо-воÑток. + +Чаще вÑего при правильной Ñтратегии заÑтройки города Ваши люди не будут Ñтрадать от загрÑзнений. Однако Ñто не вÑегда возможно. Ð’ таких ÑлучаÑÑ… иÑпользуйте парки -- они помогут улучшить Ñкологию. Чем больше парков, тем лучше защита от загрÑзнений. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/port.tml lincity-ng-2.9~git20150314/data/help_templates/ru/port.tml --- lincity-ng-2.0/data/help_templates/ru/port.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/port.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +Порт + +Порты позволÑÑŽÑ‚ Вам импортировать и ÑкÑпортировать товары, Ñталь, руду, уголь и еду. За импорт платите Ð’Ñ‹, за ÑкÑпорт платÑÑ‚ Вам. + +Выберите, что Ð’Ñ‹ хотите импортировать, двойным нажатием на порте. Ð’ меню Ð’Ñ‹ Ñможете +Двойное нажатие на порте откроет меню, в котором Ð’Ñ‹ Ñможете выбрать, какие товары необходимо импортировать и/или ÑкÑпортировать. + +Порт должен ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. + +Порт <b>должен</b> ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ€ÐµÐºÐ¾Ð¹, раÑположенной Ñ Ð¿Ñ€Ð°Ð²Ð¾Ð¹ Ñтороны от него. + +ЭкÑпорт иÑпользует вÑе доÑтупные товары. ЕÑли Вам надо ÑкÑпортировать только ограниченное количеÑтво товаров, Ð’Ñ‹ можете иÑпользовать более медленный вид транÑпортной ÑиÑтемы, более длинные дороги и Ñ‚.д. Вам придётÑÑ Ð¿Ð¾ÑкÑпериментировать Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¿Ñ€Ð°Ð²Ð¸Ð»ÑŒÐ½Ð¾Ð¹ транÑпортной ÑиÑтемы. + +ДейÑтвующий порт развивает технологии. Примечание: ÑкÑпортёры получают Ñкидку на большие партии товаров. + + +IMG_1[Это порт:] +IMG_2[Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/pottery.tml lincity-ng-2.9~git20150314/data/help_templates/ru/pottery.tml --- lincity-ng-2.0/data/help_templates/ru/pottery.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/pottery.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑÐºÐ°Ñ + +Гончарные маÑтерÑкие Ñоздают товары из руды и ÑƒÐ³Ð»Ñ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ рабочих. Они не обÑзательно должны быть Ñоединены Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, однако их надо Ñтроить в зоне доÑтупа к магазину. + +Ð’Ñ‹ можете увидеть, что Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑÐºÐ°Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ð°ÐµÑ‚, по дыму, выходÑщему из трубы печи. + +IMG_1[Это Ð³Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ Ð¼Ð°ÑтерÑкаÑ:] +IMG_2[Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/powerline.tml lincity-ng-2.9~git20150314/data/help_templates/ru/powerline.tml --- lincity-ng-2.0/data/help_templates/ru/powerline.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/powerline.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,11 @@ +ЛЭП + +Линии Ñлектропередач (ЛЭП) передают ÑлектроÑнергию от Ñолнечных и угольных ÑлектроÑтанций, а также продвинутых ветрогенераторов, подÑтанциÑм и в промзоны. ЛЭП должны подÑоединÑÑ‚ÑŒÑÑ Ðº верхнему левому углу поÑтроек, которым необходима ÑнергиÑ. + +ЛЭП могут проходить <b>над</b> грунтовками, дорогами, рельÑами и реками (но не более одного учаÑтка). ЕÑли они раÑположены по обе Ñтороны транÑпортной ÑиÑтемы или реки, они дейÑтвуют как будто они Ñоединены. Вам иногда придётÑÑ Ð·Ð°ÐºÐ°Ð¿Ñ‹Ð²Ð°Ñ‚ÑŒ небольшие учаÑтки рек, чтобы Ñоединить ЛЭП -- но помните, Ñто очень дорого. ЛЭП Ñоединены между Ñобой, когда они выровнены и видна передача ÑлектроÑнергии по проводам. + +IMG_1[Это ЛЭП:] +IMG_2[Это иконка:] +IMG_3[так выглÑдит на миникарте:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/powerscoal.tml lincity-ng-2.9~git20150314/data/help_templates/ru/powerscoal.tml --- lincity-ng-2.0/data/help_templates/ru/powerscoal.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/powerscoal.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ + +Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ Ñнергию путём ÑÐ¶Ð¸Ð³Ð°Ð½Ð¸Ñ ÑƒÐ³Ð»Ñ Ð¸ передаёт её по <a href="powerline">ЛЭП</a>. + +ЭффективноÑÑ‚ÑŒ ÑÐ¶Ð¸Ð³Ð°Ð½Ð¸Ñ ÑƒÐ³Ð»Ñ Ð²Ð¾Ð·Ñ€Ð°Ñтает Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸ÐµÐ¼ технологичеÑкого уровнÑ, но только Ð´Ð»Ñ Ð²Ð½Ð¾Ð²ÑŒ поÑтроенных Ñтанций. ПоÑтому Ð’Ñ‹, вероÑтно, захотите ÑнеÑти Ñтарую Ñтанцию и поÑтроить на её меÑте новую, более Ñффективную, когда Ваш технологичеÑкий уровень значительно увеличитÑÑ. + +Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ ÑвлÑетÑÑ Ð²Ð°Ð¶Ð½Ñ‹Ð¼ иÑточником загрÑзнений. УбедитеÑÑŒ, что работа Ваших угольных ÑлектроÑтанций не загрÑзнÑет окружающую Ñреду возле жилых домов. Ветрогенераторы и Ñолнечные ÑлектроÑтанции куда менее Ñффективные, но более Ñкологичные решениÑ. + +IMG_1[Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ:] +IMG_2[Ñто её иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/powerssolar.tml lincity-ng-2.9~git20150314/data/help_templates/ru/powerssolar.tml --- lincity-ng-2.0/data/help_templates/ru/powerssolar.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/powerssolar.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ + +Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð²Ñ‹Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°ÐµÑ‚ Ñнергию Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñолнечных батарей и передаёт её по <a href="powerline">ЛЭП</a>. + +ЭффективноÑÑ‚ÑŒ Ñолнечных батарей возраÑтает Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸ÐµÐ¼ технологичеÑкого уровнÑ. + +Без рабочих ÑÐ¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð½Ðµ будет функционировать. + +IMG_1[Это ÑÐ¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ:] +IMG_2[а Ñто её иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/power.tml lincity-ng-2.9~git20150314/data/help_templates/ru/power.tml --- lincity-ng-2.0/data/help_templates/ru/power.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/power.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +Ð­Ð½ÐµÑ€Ð³Ð¸Ñ + +Ð­Ð½ÐµÑ€Ð³Ð¸Ñ Ð¼Ð¾Ð¶ÐµÑ‚ вырабатыватьÑÑ Ð² кВт⋅ч или МВт⋅ч. кВт⋅ч передаютÑÑ Ð¿Ð¾ подземным кабелÑм вдоль Вашей городÑкой транÑпортной ÑиÑтемы, а МВт⋅ч -- по ЛЭП. + +кВт⋅ч производÑÑ‚ÑÑ Ð½Ð¸Ð·ÐºÐ¾Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡Ð½Ñ‹Ð¼Ð¸ ветрогенераторами или передаютÑÑ Ð¿Ð¾Ð´ÑтанциÑми. Они могут обеÑпечивать Ñнергией жилые дома, фермы, текÑтильные фабрики, лёгкую промышленноÑÑ‚ÑŒ и Ñ‚Ñжёлую промышленноÑÑ‚ÑŒ (металлургичеÑкие заводы). + +МВт⋅ч производÑÑ‚ÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ угольных и Ñолнечных ÑлектроÑтанций и могут передаватьÑÑ Ð¿Ð¾Ð´ÑтанциÑм или напрÑмую обеÑпечивать Ñнергией лёгкую и Ñ‚Ñжёлую промышленноÑÑ‚ÑŒ (металлургиеÑкие заводы). + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/query.tml lincity-ng-2.9~git20150314/data/help_templates/ru/query.tml --- lincity-ng-2.0/data/help_templates/ru/query.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/query.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,9 @@ +КурÑор + +Показывает информацию о поÑтройках. Ð”Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½Ð°Ð²ÐµÐ´Ð¸Ñ‚Ðµ на поÑтройку и нажмите клавишу мыши. + +Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¿Ð¾ÐºÐ°Ð·Ñ‹Ð²Ð°ÐµÑ‚ÑÑ Ð² правом нижнем углу (вмеÑто миникарты). + +IMG_1[Это курÑор:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/rail.tml lincity-ng-2.9~git20150314/data/help_templates/ru/rail.tml --- lincity-ng-2.0/data/help_templates/ru/rail.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/rail.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +Ð–ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð° + +Железные дороги обладают большей пропуÑкной ÑпоÑобноÑтью, чем обычные. Также они производÑÑ‚ чуть меньше загрÑзнений. Однако их ÑтроительÑтво и обÑуживание доÑтаточно дорого. Они оправдывают ÑебÑ, когда Вам надо перевозить большое количеÑтво товаров на дальние раÑÑтоÑниÑ. + +IMG_1[Это рельÑÑ‹:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/recycle.tml lincity-ng-2.9~git20150314/data/help_templates/ru/recycle.tml --- lincity-ng-2.0/data/help_templates/ru/recycle.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/recycle.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,10 @@ +Центр по переработке отходов + +Ð”Ð°Ð½Ð½Ð°Ñ Ð¿Ð¾Ñтройка перерабатывает отходы в руду. Ð”Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ центра необходимы рабочие, ÑÐ½ÐµÑ€Ð³Ð¸Ñ (доÑтаточно кВт⋅ч) и деньги. Также он может иÑпользоватьÑÑ Ð´Ð»Ñ Ð¾Ð¿ÑƒÑÑ‚Ð¾ÑˆÐµÐ½Ð¸Ñ Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð»Ð½ÐµÐ½Ð½Ñ‹Ñ… Ñвалок. + +Ð’Ñ‹ можете получить Ñтабильную Ñкономику (когда больше не надо добывать руду и Ñ‚.д.) и при центрах по переработке, работающих не Ñо 100% ÑффективноÑтью, еÑли у Ð’Ð°Ñ ÐµÑÑ‚ÑŒ ветрогенераторы Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿ÐµÐ½Ñации потерь. + +IMG_1[Это центр по переработке отходов:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/residential.tml lincity-ng-2.9~git20150314/data/help_templates/ru/residential.tml --- lincity-ng-2.0/data/help_templates/ru/residential.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/residential.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Жилой дом + +Это то меÑто, где живут люди. Чтобы люди хотели жить в доме, он должен иметь доÑтуп к еде (магазину) и воде (Ñкважине). Также людÑм нужна работа, ÑлектричеÑтво и товары. Дома должны быть Ñоединены Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. +Спортивные площадки повышают привлекательноÑÑ‚ÑŒ жилого района, а вот из-за загрÑзнений люди могут уехать. + +Ð’ игре еÑÑ‚ÑŒ 3 вида жилых домов, которые отличаютÑÑ ÐºÐ¾Ð»Ð¸Ñ‡ÐµÑтвом проживающих в них людей. Они имеют разный уровень рождаемоÑти и ÑмертноÑти, что позволит Вам как-то контролировать Ваше наÑеление. Ðаличие больницы неподалёку также влиÑет на рождаемоÑÑ‚ÑŒ и ÑмертноÑÑ‚ÑŒ. + +При доÑтижении некоторого ÑƒÑ€Ð¾Ð²Ð½Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¹, Ð’Ñ‹ Ñможете Ñтроить более Ñовременные дома, даже многоÑтажки. + +IMG_1[Так выглÑдит маленький дом (Ñовременный):] +IMG_2[а Ñто её иконка:] +IMG_3[Это обычный дом (Ñовременный):] +IMG_4[а Ñто иконка:] +IMG_5[Это большой дом (Ñовременный):] +IMG_6[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/river.tml lincity-ng-2.9~git20150314/data/help_templates/ru/river.tml --- lincity-ng-2.0/data/help_templates/ru/river.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/river.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Река/Озеро + +Реки довольно чаÑто будут мешать Вам развивать город. Их уничтожение (закапывание), равно как и поÑтройка моÑтов, очень дороги. ЕдинÑÑ‚Ð²ÐµÐ½Ð½Ð°Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ð¾ÑÑ‚ÑŒ их Ð½Ð°Ð»Ð¸Ñ‡Ð¸Ñ -- порты должны иметь доÑтуп к реке Ð´Ð»Ñ Ñ‚Ð¾Ñ€Ð³Ð¾Ð²Ð»Ð¸. + +Помимо рек ÑущеÑтвуют ещё и озёра. Ð’ начале игры на карте еÑÑ‚ÑŒ только реки. Затем, когда, например, когда рудник иÑтощит Ñвои запаÑÑ‹, то при доÑтупе к реке он превратитÑÑ Ð² реку, а иначе -- в озеро. + +ЕÑли Ð’Ñ‹ уничтожите какой-то учаÑток реки, обе Ñтороны, которые были её берегами, вÑÑ‘ равно оÑтанутÑÑ Ñ‡Ð°Ñтью речной ÑиÑтемы. + +ЕÑли Ð’Ñ‹ Ñтроите транÑпортную ÑиÑтему через реку, там поÑвитÑÑ Ð¼Ð¾ÑÑ‚. + +УчаÑток реки, который однажды был Ñоединён Ñ Ñ€ÐµÑ‡Ð½Ð¾Ð¹ ÑиÑтемой, никогда не превратитÑÑ Ð² озеро. +Узнать, что чаÑÑ‚ÑŒ воды ÑвлÑетÑÑ Ñ€ÐµÐºÐ¾Ð¹, можно по отметке <b>ÑудоходÑтво</b>, которую покажет <a href="query">курÑор</a>. + +ЛЭП могут передавать Ñнергию через один учаÑток реки. + +ALSO[См. ещё:] + diff -Nru lincity-ng-2.0/data/help_templates/ru/road.tml lincity-ng-2.9~git20150314/data/help_templates/ru/road.tml --- lincity-ng-2.0/data/help_templates/ru/road.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/road.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +Дорога + +Дороги перевозÑÑ‚ больше товаров, чем грунтовки, но не так много, как железные дороги. Также они производÑÑ‚ больше загрÑзнений, чем железные дороги, однако их ÑтроительÑтво и обÑлуживание дешевле -- должен же быть зоть какой-то повод иÑпользовать их. + +IMG_1[Это дорога:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/rocket.tml lincity-ng-2.9~git20150314/data/help_templates/ru/rocket.tml --- lincity-ng-2.0/data/help_templates/ru/rocket.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/rocket.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Ð¡Ñ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей + +КоÑмичеÑкие корабли могут отправить Ваше наÑеление в другой мир, и игра закончитÑÑ. + +Перед началом Ñвакуации людей Вам потребуетÑÑ Ñовершить пÑÑ‚ÑŒ уÑпешных Ñтартов без людей. Каждое уÑпешное отправление Ñ Ð»ÑŽÐ´ÑŒÐ¼Ð¸ позволÑет отправить в коÑÐ¼Ð¾Ñ 1000 человек. + +ВероÑтноÑÑ‚ÑŒ уÑпешного запуÑка коÑмичеÑкого ÐºÐ¾Ñ€Ð°Ð±Ð»Ñ Ð½Ð°Ð¿Ñ€Ñмую завиÑит от ÑƒÑ€Ð¾Ð²Ð½Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкого развитиÑ. Это означает, что еÑли Ваш технологичеÑкий уровень 80%, то ÑˆÐ°Ð½Ñ Ð½Ð° уÑпех -- 4 к 5. ЕÑли же технологичеÑкий уровень 100% или больше, каждый запуÑк будет уÑпешным. Ð”Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ коÑмичеÑкого ÐºÐ¾Ñ€Ð°Ð±Ð»Ñ Ð’Ð°Ð¼ придётÑÑ Ñтроить отдельную Ñтартовую площадку. + +Стартовую площадку не требуетÑÑ ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, еÑли она находитÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°. Ð”Ð»Ñ ÐµÑ‘ ÑтроительÑтва требуетÑÑ Ð±Ð¾Ð»ÑŒÑˆÐ¾Ðµ количеÑтво Ñтали, товаров, рабочей Ñилы и денег. +ПоÑле Ð·Ð°Ð²ÐµÑ€ÑˆÐµÐ½Ð¸Ñ ÑтроительÑтва Ð’Ñ‹ получите Ñообщение Ñ Ð²Ð¾Ð¿Ñ€Ð¾Ñом, когда Ð’Ñ‹ хотите запуÑтить коÑмичеÑкий корабль. ЕÑли Ð’Ñ‹ решите отложить запуÑк, потом Ð’Ñ‹ Ñможете Ñовершить его, нажав на поÑтроенной площадке. Ð’ городе может быть Ñколько угодно коÑмичеÑких кораблей, ожидающих запуÑк. + +Когда коÑмичеÑкий корабль на Ñтартовой площадке поÑтроен, но не запущен, Ð´Ð»Ñ ÐµÑ‘ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð±Ð¾Ð»ÑŒÑˆÐµ не требуютÑÑ Ñталь, товары или рабочие, однако Ñодержание такой площадки вÑÑ‘ ещё будет Ñтоить Вам денег. + +IMG_1[Это ÑÑ‚Ð°Ñ€Ñ‚Ð¾Ð²Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° Ð´Ð»Ñ ÐºÐ¾ÑмичеÑких кораблей:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/school.tml lincity-ng-2.9~git20150314/data/help_templates/ru/school.tml --- lincity-ng-2.0/data/help_templates/ru/school.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/school.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Школа + +Ðналогично универÑитетам, школам требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ и товары Ð´Ð»Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ð¹, Ñ…Ð¾Ñ‚Ñ Ð¸ в гораздо меньшем количеÑтве. СоответÑтвенно, технологии также развиваютÑÑ Ð½Ðµ так быÑтро. +У Ð’Ð°Ñ ÐµÑÑ‚ÑŒ выбор: поÑтроить четыре-пÑÑ‚ÑŒ школ или же один универÑитет. Чаще (но не вÑегда!) выгоднее Ñтроить универÑитет. + +Школы не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой, однако они должны раÑполагатьÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°. + +Содержание школы Ñтоит денег. Ð’Ñ‹ можете увидеть общую Ñумму затрат на школы за прошлый год в окне финанÑов. + +Ðажав на школу, Ð’Ñ‹ можете получить информацию о её работе. + +IMG_1[Это школа:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/slow.tml lincity-ng-2.9~git20150314/data/help_templates/ru/slow.tml --- lincity-ng-2.0/data/help_templates/ru/slow.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/slow.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +ÐÐ¸Ð·ÐºÐ°Ñ ÑкороÑÑ‚ÑŒ + +IMG_1[] + +Это кнопка низкой ÑкороÑти. Она запуÑкает игру на минимальной ÑкороÑти. +Ðа Ñлабых машинах Ð’Ñ‹ можете не заметить Ñффекта. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/steel.tml lincity-ng-2.9~git20150314/data/help_templates/ru/steel.tml --- lincity-ng-2.0/data/help_templates/ru/steel.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/steel.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Сталь + +Сталь производитÑÑ Ð² оÑновном Ñ‚Ñжёлой промышленноÑтью (металлургичеÑкими заводами). +ПоÑтроить их Ð’Ñ‹ Ñможете, только доÑтигнув определённого технологичеÑкого уровнÑ. До Ñтого единÑтвенным иÑточником Ñтали (в небольшом количеÑтве) ÑвлÑÑŽÑ‚ÑÑ ÐºÐ¾Ð¼Ð¼ÑƒÐ½Ñ‹, которые производÑÑ‚ Ñталь из руды. + +Сталь иÑпользуетÑÑ ÐºÑƒÐ·Ð½Ð¸Ñ†Ð°Ð¼Ð¸ и лёгкой промышленноÑтью Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñ‚Ð¾Ð²Ð°Ñ€Ð¾Ð². Ð›Ñ‘Ð³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼Ñ‹ÑˆÐ»ÐµÐ½Ð½Ð¾ÑÑ‚ÑŒ может обойтиÑÑŒ и без Ñтали, однако в таком Ñлучае её производительноÑÑ‚ÑŒ будет куда меньше. + +Ð”Ð»Ñ Ð¿Ð¾Ñтройки коÑмичеÑких кораблей и Ñтартовых площадок требуетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ много Ñтали. + +Железные дороги также иÑпользуют Ñталь Ð´Ð»Ñ Ð¾Ð±ÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ñ Ð¿ÑƒÑ‚ÐµÐ¹. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/substation.tml lincity-ng-2.9~git20150314/data/help_templates/ru/substation.tml --- lincity-ng-2.0/data/help_templates/ru/substation.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/substation.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +ПодÑÑ‚Ð°Ð½Ñ†Ð¸Ñ + +ПодÑтанции получают ÑлектричеÑтво Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ ЛЭП и раÑпределÑÑŽÑ‚ его по округе. Зоны Ñнергетики позволÑÑŽÑ‚ увидеть, каким облаÑÑ‚Ñм требуетÑÑ Ð±Ð¾Ð»ÑŒÑˆÐµ Ñнергии. Ð”Ð»Ñ Ñвоего Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ð¾Ð´ÑтанциÑм не требуютÑÑ Ñ€Ð°Ð±Ð¾Ñ‡Ð¸Ðµ. + +IMG_1[Это подÑтанциÑ:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/sustain.tml lincity-ng-2.9~git20150314/data/help_templates/ru/sustain.tml --- lincity-ng-2.0/data/help_templates/ru/sustain.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/sustain.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,20 @@ +Окно доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑƒÑтойчивой Ñкономики + +Это окно показывает шеÑÑ‚ÑŒ цветных линий. Когда вÑе линии дотÑнутÑÑ Ð´Ð¾ правого краÑ, Ð’Ñ‹ получите уÑтойчивую Ñкономику и выиграете игру! + +* <span color="orange">Доб</span> (оранжевый) Ð’Ñ‹ не занимаетеÑÑŒ добычей руды или ÑƒÐ³Ð»Ñ Ð¸ не накапливаете муÑор на Ñвалках. +* <span color="gray">Торг</span> (Ñерый) Ð’Ñ‹ не ÑкÑпортируете и не импортируете товары. +* <span color="green">Денег</span> (зелёный) Ð‘Ð°Ð»Ð°Ð½Ñ Ð’Ð°ÑˆÐµÐ³Ð¾ города Ñтабильный или раÑтущий, Ñто означает, что Ð’Ñ‹ не можете Ñтроить ничего, кроме Ñамых дешёвых зданий. +* <span color="blue">ÐаÑел</span> (Ñиний) Ваше наÑеление поÑтоÑнно в пределах 2% за 180 лет. ЕÑли Ð’Ñ‹ выйдите за Ñти границы, за иÑходное количеÑтво людей будет взÑто текущее, а отÑчёт времени начнётÑÑ Ñ Ð½Ð°Ñ‡Ð°Ð»Ð°. Также в городе должно проживать не менее 5000 человек. +* <span color="yellow">Ðаука</span> (жёлтый) Ваш технологичеÑкий уровень изменÑетÑÑ Ð¾Ñ‡ÐµÐ½ÑŒ незначительно. ЕÑли он упал более чем на 1%, отÑчёт времени начнётÑÑ Ñ Ð½Ð°Ñ‡Ð°Ð»Ð°. Уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð´Ð¾Ð»Ð¶ÐµÐ½ быть не менее 50%. +* <span color="red">Огонь</span> (краÑный) ВеÑÑŒ Ð·Ð´Ð°Ð½Ð¸Ñ Ð² городе должны быть покрыты пожарными ÑтанциÑми, кроме Ñледующих: монументы, рудники, ЛЭП, транÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема и площадки Ð´Ð»Ñ Ð·Ð°Ð¿ÑƒÑка коÑмичеÑких кораблей. + +Каждый параметр должен оÑтаватьÑÑ Ñтабильным на протÑжении некоторого времени (в годах): +* Доб =180 +* Торг =180 +* Денег=60 +* ÐаÑел=60 +* Ðаука=120 +* Огонь=60 + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/tech-level.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tech-level.tml --- lincity-ng-2.0/data/help_templates/ru/tech-level.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tech-level.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ + +ТехнологичеÑкий уровень определÑет, какие Ð·Ð´Ð°Ð½Ð¸Ñ Ð’Ñ‹ можете Ñтроить, а также влиÑет на ÑффективноÑÑ‚ÑŒ некоторых процеÑÑов. + +Ð”Ð»Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ðµ ÑƒÑ€Ð¾Ð²Ð½Ñ Ð’Ñ‹ должны Ñтроить (и Ñнабжать необходимыми реÑурÑами) монументы, школы и универÑитеты. + +Пока Ваш технологичеÑкий уровень очень низкий, Ð’Ñ‹ можете Ñтроить только монументы. Через некоторое Ð²Ñ€ÐµÐ¼Ñ Ð¿Ð¾Ñле поÑтройки неÑкольких монументов Вам Ñтанут доÑтупны школы. Школы позволÑÑŽÑ‚ развивать технологии быÑтрее, чем монументы. + +Когда Ваш технологичеÑкий уровень Ñтанет ещё выше, Ð’Ñ‹ Ñможете Ñтроить универÑитеты. Они ÑпоÑобны развивать технологии ещё быÑтрее, однако требуют значительное количеÑтво реÑурÑов. + +Чем больше технологий, тем проще их потерÑÑ‚ÑŒ. ИмеетÑÑ Ð² виду, что чем более выÑокий уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð’Ñ‹ хотите, тем больше школ и универÑитетов Вам придётÑÑ Ð¿Ð¾Ñтроить. + +Также знайте, что еÑли по какой-то причине Вам придётÑÑ Ð¿Ñ€Ð¸Ð¾Ñтановить работу одного-двух универÑитетов (или они вдруг недополучат реÑурÑов Ð´Ð»Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹), Выш технологичеÑкий уровень начнёт падать. + +ВероÑтноÑÑ‚ÑŒ уÑпешного запуÑка коÑмичеÑкого ÐºÐ¾Ñ€Ð°Ð±Ð»Ñ Ð½Ð°Ð¿Ñ€Ñмую завиÑит от технологичеÑкого уровнÑ. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/tip.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tip.tml --- lincity-ng-2.0/data/help_templates/ru/tip.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tip.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,12 @@ +Свалка + +Свалка ÑвлÑетÑÑ Ð¼ÐµÑтом, куда ÑкладируетÑÑ Ð¼ÑƒÑор. ЕÑли в магазине его будет Ñлишком много, Ñотрудники могут его Ñжечь. Это Ñильно загрÑзнит окружающую Ñреду, поÑтому Ð’Ñ‹ должны ответÑтвенно отноÑитьÑÑ Ðº Ñборке и переработке муÑора. + +По мере Ð½Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¼ÑƒÑором Ñвалка превращаетÑÑ Ð² холм, который зараÑÑ‚Ñ‘Ñ‚ травой поÑле полного Ð·Ð°Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ñвалки. + +МуÑор Ñо Ñвалок может быть иÑпользован в коммунах, Ñлектрифицированных фермах и центрах по переработке отходов. + +IMG_1[Это Ñвалка:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/track.tml lincity-ng-2.9~git20150314/data/help_templates/ru/track.tml --- lincity-ng-2.0/data/help_templates/ru/track.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/track.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +Грунтовка + +Грунтовки -- проÑтейший и Ñамый дешёвый вид транÑпортной ÑиÑтемы. Они обладают Ñамой малой пропуÑкной ÑпоÑобноÑтью, зато Ñовершенно не загрÑзнÑÑŽÑ‚ окружающую Ñреду. + +IMG_1[Это грунтовка:] +IMG_2[а Ñто иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/transport.tml lincity-ng-2.9~git20150314/data/help_templates/ru/transport.tml --- lincity-ng-2.0/data/help_templates/ru/transport.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/transport.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема + +СущеÑтвует три типа транÑпортных ÑиÑтем: грунтовка, дорога и Ð¶ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°. + +Так же еÑÑ‚ÑŒ четвертый тип, Ñто "зона дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð²". ОблаÑÑ‚ÑŒ дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð² очень небольшаÑ, в Ñправочной информации она обычно фигурирует отдельно от транÑпортных ÑиÑтем. Однако то очень важное понÑтие, поÑтому перечитайте Ñправку про <a href="market">магазины</a>. + +Грунтовки, дороги и железные дороги иÑпользуютÑÑ Ð´Ð»Ñ Ñ‚Ñ€Ð°Ð½Ñпортировки еды, рабочих, товаров, углÑ, руды, Ñтали и муÑора; в общем, любые виды товаров Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð»ÐµÐ½Ð¸Ñ Ð·Ð° иÑключением МВт⋅ч (которые передаютÑÑ Ð¿Ð¾ ЛЭП). ОбÑзательно должна ÑущеÑтвовать ÑвÑзь между магазинами, ÑвÑзь Ñо зданиÑми, раÑположенными вне зоны дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð¾Ð² (Ñ…Ð¾Ñ‚Ñ Ð² оÑновном такой план Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð³Ð¾Ñ€Ð¾Ð´Ð° -- Ð¿Ð»Ð¾Ñ…Ð°Ñ Ð·Ð°Ñ‚ÐµÑ). + +Ð”Ð»Ñ Ð¿ÐµÑ€ÐµÑÐµÑ‡ÐµÐ½Ð¸Ñ Ñ€ÐµÐºÐ¸ проÑто Ñтройте транÑпортную ÑиÑтему через реку -- так Ð’Ñ‹ поÑтроите моÑÑ‚. СтроительÑтво моÑтов обходитÑÑ Ð´Ð¾Ñ€Ð¾Ð¶Ðµ, чем ÑтроительÑтво обычной транÑпортной ÑиÑтемы. + +ОбÑлуживание дорог и железных дорог требует ежегодных вложений, также они загрÑзнÑÑŽÑ‚ окружающую Ñреду (оÑобенно еÑли транÑпортируют много муÑора). + +ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема закруглÑетÑÑ Ð½Ð° здание, еÑли правильно подÑоединена. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/tutorial-advanced.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-advanced.tml --- lincity-ng-2.0/data/help_templates/ru/tutorial-advanced.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-advanced.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,21 @@ +Продвинутые функции + +SUBH: Магазины и транÑпортные ÑиÑтемы + +Двойное нажатие на магазине открывает окно ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ <b>обмена магазина Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой</b>. + +* покупка -- что покупает магазин через транÑпортную ÑиÑтему +* продажа -- что продаёт магазин через транÑпортную ÑиÑтему + +Эта Ñ„ÑƒÐ½ÐºÑ†Ð¸Ñ Ð¸ÑпользуетÑÑ Ñ€ÐµÐ´ÐºÐ¾, обычно Ð´Ð»Ñ Ð¿Ñ€ÐµÐ´Ð¾Ñ‚Ð²Ñ€Ð°Ñ‰ÐµÐ½Ð¸Ñ ÐºÐ°ÐºÐ¸Ñ…-либо Ñобытий. + +SUBH: УÑтойчивое развитие + +Ð§ÐµÑ‚Ð²ÐµÑ€Ñ‚Ð°Ñ Ð²ÐºÐ»Ð°Ð´ÐºÐ° миниокна показывает ÑоÑтоÑние уÑтойчивого развитиÑ. + +ÐаÑтоÑтельно рекомендуетÑÑ ÑохранÑÑ‚ÑŒ игру перед тем, как Ð’Ñ‹ оÑтавлÑете игру на долгое Ð²Ñ€ÐµÐ¼Ñ Ð² ожидании доÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ ÑоÑтоÑÐ½Ð¸Ñ ÑƒÑтойчивого развитиÑ. ЕÑли в процеÑÑе Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ ÑлучитÑÑ Ñ‡Ñ‚Ð¾-нибудь плохое (например, вÑеобщее голодание), Ð’Ñ‹ Ñможете перезапуÑтитьÑÑ Ñ Ð¼ÐµÑта ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¸ предпринÑÑ‚ÑŒ какие-либо дейÑтвиÑ. :-) + +Следите за запаÑами в магазинах (миниокно) и Ñможете избежать больших проблем. ПериодичеÑкого проÑмотра ECO миниокна должно быть доÑтаточно. + +<b>ПодÑказка:</b> ОÑтерегайтеÑÑŒ хибар и муÑора в магазинах... + diff -Nru lincity-ng-2.0/data/help_templates/ru/tutorial-aim.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-aim.tml --- lincity-ng-2.0/data/help_templates/ru/tutorial-aim.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-aim.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,14 @@ +Цель игры + +Игру можно выиграть двум ÑпоÑобами: + +* ДобитьÑÑ <a href="sustain">уÑтойчивого ÑоÑтоÑниÑ</a> Ñкономики (поÑле Ñтого Ð’Ñ‹ можете продолжить игру) +* Эвакуировать вÑех жителей на <a href="rocket">коÑмичеÑких кораблÑÑ…</a> в другой мир + (поÑле Ñтого игра оÑтановитÑÑ) + +Проиграть Ð’Ñ‹ можете только в одном Ñлучае: +* Ð’ÑÑ‘ Ваше наÑеление погибнет в результате голода или от болезней (Ð´Ð»Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð½Ð°ÑелениÑ, как извеÑтно, нужно минимум двое человек ;-) + +Вам придётÑÑ Ð¿Ð¾Ð²Ñ‹ÑˆÐ°Ñ‚ÑŒ уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð´Ð»Ñ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾Ñти ÑтроительÑтва более Ñовременные объекты. Также Вам придётÑÑ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÑÑ‚ÑŒ роÑтом наÑелениÑ, обеÑпечивать нужды города и ÑкономичеÑкий баланÑ. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/tutorial-basics.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-basics.tml --- lincity-ng-2.0/data/help_templates/ru/tutorial-basics.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-basics.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,51 @@ +Первые шаги + +Выберите "Ð½Ð¾Ð²Ð°Ñ Ð¸Ð³Ñ€Ð°" > "Река". +УÑтановите галочки "С поÑелением", "Без деревьев". +Другие Ñценарии Ñозданы Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ опытных игроков. + +ПоÑеление Ñодержит Ñледующие оÑновные реÑурÑÑ‹: + +* Фермы, которые доÑтавлÑÑŽÑ‚ еду в магазины +* Скважины, которые Ñнабжают округу водой +* Коммуны, которые добывают древеÑный уголь и небольшое количеÑтво руды и Ñтали. +* Жилые дома +* Гончарные маÑтерÑкие, где производитÑÑ Ñ‚Ð¾Ð²Ð°Ñ€ +* Грунтовки +* Магазины + +Ðажатие на любом здании (на оÑновной карте) отобразит информацию о нём в информационном окне в правом нижнем углу. + +SUBH: Магазин + +Магазин -- Ñто ключевое здание в Lincity. Они необходимы почти вÑем поÑтройкам Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ½Ð° товарами потреблениÑ. Вам <b>обÑзательно </b>нужно прочеÑÑ‚ÑŒ Ñправочную информацию про <a href="market">магазин</a> :-). +<i>Конечно, когда магазин пуÑÑ‚, он не может никому ничего продать, а когда переполнен -- не может получить новые товары. Это может помочь Вам понÑÑ‚ÑŒ, почему некоторые объекты не работают (возможно, они не могут купить то, что им требуетÑÑ, или продать Ñвою продукцию).</i> + +SUBH: ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема + +<a href="transport">ТранÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема</a> необходима Ð´Ð»Ñ Ð¾Ð±Ð¼ÐµÐ½Ð° товарами на больших раÑÑтоÑниÑÑ…, а также Ð´Ð»Ñ Ð½ÐµÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ñ… ÑпецифичеÑких дейÑтвий. Как и магазины, транÑÐ¿Ð¾Ñ€Ñ‚Ð½Ð°Ñ ÑиÑтема обладает ограниченной пропуÑкной ÑпоÑобноÑтью и может быть перегружена. + +ЕÑли объект находитÑÑ Ð²Ð½Ðµ зоны дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð°, его необходимо ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемой. Помните, что на обÑлуживание дорог и железных дорог ежегодно требуютÑÑ Ð´ÐµÐ½ÑŒÐ³Ð¸, поÑтому в начале игры обычно лучше (и дешевле) Ñтроить объекты в зоне доÑтупа магазина (еÑли Ð’Ñ‹ не хотите изолировать какое-либо Ñтроение). Однако Ñ Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸ÐµÐ¼ города Вам обÑзательно понадобитÑÑ Ñ€Ð°Ð·Ð²Ð¸Ð²Ð°Ñ‚ÑŒ транÑпортную ÑиÑтему. + +SUBH: Деньги + +Производимые товары облагаютÑÑ Ð½Ð°Ð»Ð¾Ð³Ð¾Ð¼, что помогает Вашему городу зарабатывать деньги. Ð¢Ñ€ÐµÑ‚ÑŒÑ Ð²ÐºÐ»Ð°Ð´ÐºÐ° миниокна -- <a href="finance">ФИÐ</a>. ПозаботьтеÑÑŒ о том, чтобы не тратить Ñлишком много денег Ñлишком быÑтро: когда Ð’Ñ‹ влезаете в долги, Ð’Ñ‹ не можете Ñтроить некоторые зданиÑ, а также каждый год должны платить проценты по кредиту. Это может привеÑти к банкротÑтву города (Ñм. <a href="tutorial-scenario">Сценарий "Ñ‚Ñжёлые времена"</a>. + +SUBH: Развитие города + +Помните, что Вашим людÑм Ð´Ð»Ñ Ð¶Ð¸Ð·Ð½Ð¸ необходимы еда и вода, иначе они умрут. Ð”Ð»Ñ ÐºÐ¾Ð½Ñ‚Ñ€Ð¾Ð»Ñ Ð½Ð°ÑÐµÐ»ÐµÐ½Ð¸Ñ Ð’Ñ‹ можете Ñтроить различные <a href="residential">жилые дома</a> (Ñ Ñ€Ð°Ð·Ð½Ñ‹Ð¼Ð¸ уровнÑми рождаемоÑти и ÑмертноÑти). Ðовым людÑм также требуютÑÑ ÐµÐ´Ð°, вода, рабочие меÑта и Ñ‚.п. + +Вам придётÑÑ Ñ€Ð°Ð·Ð²Ð¸Ð²Ð°Ñ‚ÑŒ производÑтво (Ñтроить новые кузницы, гончарные маÑтерÑкие) и в то же Ð²Ñ€ÐµÐ¼Ñ Ñледить, что они обеÑпечены вÑем необходимым. Возможно, Ð´Ð»Ñ Ñтого потребуетÑÑ Ð¿Ð¾Ñтроить ещё что-нибудь. + +Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ñ‹Ñ… зданий и новых возможноÑтей уже ÑущеÑтвующих зданий Вам необходимо поднимать <a href="tech-level">уровень технологичеÑкого развитиÑ</a>. +Первое, что Ð’Ð°Ñ Ñледует поÑтроить, Ñто Монумент, он поднимет уровень технологичеÑкого Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð´Ð¾ возможноÑти Ñтроить школы. + +Ð’ какой-то момент Вам придётÑÑ Ð²Ñ‹Ð±Ñ€Ð°Ñ‚ÑŒ Ñтратегию выигрыша: либо добиватьÑÑ ÑƒÑтойчивого <a href="sustain">уÑтойчивого ÑоÑтоÑÐ½Ð¸Ñ Ñкономики</a>, либо Ñвакуировать вÑÑ‘ наÑеление на <a href="rocket">коÑмичеÑких кораблÑÑ…</a>. + +Ð’Ñ‹ должны регулÑрно проверÑÑ‚ÑŒ <a href="pbar">ÑтатиÑтику объектов города (Стат)</a>, миникарты могут дать дополнительную информацию о ÑоÑтоÑнии Вашей Ñкономики. Также помните, что нажатие на здании (на оÑновной карте) отображает информацию о нём в информационном окне в правом нижнем углу. + +<b>ПодÑказка:</b> Сделайте одно или два изменениÑ, затем немного подождите (например, почитайте Ñправочную информацию ;-) или увеличьте ÑкороÑÑ‚ÑŒ игры, и Ð’Ñ‹ увидите, как Ñти Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð²Ð»Ð¸Ñли на Ñитуацию в городе. + +ÐаÑлаждайтеÑÑŒ! + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/tutorial-overview.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-overview.tml --- lincity-ng-2.0/data/help_templates/ru/tutorial-overview.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-overview.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ Ñкрану + +Ð’ <b>верхнем левом углу</b> находÑÑ‚ÑÑ Ð¸ÐºÐ¾Ð½ÐºÐ¸ курÑора, бульдозера и вÑех зданий, которые Ð’Ñ‹ Ñожете Ñтроить в ходе игры. + +* Ð›ÐµÐ²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши на иконке открывает группу объектов. +* ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши на иконке показывает Ñправочную информацию о выбранном объекте. +* ЕÑли задержать мышь на иконке, поÑвитÑÑ Ð¾ÐºÐ½Ð¾ подÑказки + +Ð’ <b>левом нижнем углу</b> находитÑÑ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ ÑкороÑтью игры. + +<b>Правый нижний угол</b> Ñодержит вÑе информационные окна: миникарту, окна ÑтатиÑтики и финанÑов, зоны Ð¿Ð¾ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ð¸ прочие информационные окна, которые можно переключать нажатием мыши. + +Пожимайте разные клавиши на клавиатуре и мыши, клавиша F1 откроет Ñправочную информацию. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/tutorial-scenario.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-scenario.tml --- lincity-ng-2.0/data/help_templates/ru/tutorial-scenario.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial-scenario.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +Сценарии игры + +Различные предопределённые Ñценарии игры Ð’Ñ‹ можете увидеть под кнопкой "Ð½Ð¾Ð²Ð°Ñ Ð¸Ð³Ñ€Ð°". + +SUBH: ПроÑтые + +* Хорошие времена +* ПлÑжи (помните, людÑм нужна еда, иначе они умрут ;-) + +SUBH: Сложные + +* ТÑжёлые времена: попробуйте избежать банкротÑтва. ОÑторожно анализируйте потребноÑти города, Вам придётÑÑ Ð¿Ñ€Ð¸Ð½Ð¸Ð¼Ð°Ñ‚ÑŒ решительные меры Ð´Ð»Ñ ÑÐ¾ÐºÑ€Ð°Ñ‰ÐµÐ½Ð¸Ñ Ð·Ð°Ñ‚Ñ€Ð°Ñ‚ и ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð±Ñ‹Ð»Ð¸. Это Ñложно, но возможно; еÑÑ‚ÑŒ шанÑÑ‹ даже добитьÑÑ ÑƒÑтойчивой Ñкономики. +* ПуÑтынÑ: в данной меÑтноÑти очень мало воды, поÑтому необходимо тщательно продумывать иÑпользование Ñтих учаÑтков Ð´Ð»Ñ ÑтроительÑтва ферм и коммун. +* Болото: название говорит Ñамо за ÑÐµÐ±Ñ :-), здеÑÑŒ очень Ñложно Ñтроить город. + +ALSO[См. ещё:] + diff -Nru lincity-ng-2.0/data/help_templates/ru/tutorial.tml lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial.tml --- lincity-ng-2.0/data/help_templates/ru/tutorial.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/tutorial.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,3 @@ +Обучение + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/university.tml lincity-ng-2.9~git20150314/data/help_templates/ru/university.tml --- lincity-ng-2.0/data/help_templates/ru/university.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/university.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,17 @@ +УниверÑитет + +Помогают повыÑить уровень технологичеÑкого развитиÑ. +Ð”Ð»Ñ Ð¸Ñ… Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð½ÐµÐ¾Ð±Ñ…Ð¾Ð´Ð¸Ð¼Ñ‹ товары и рабочие. Они повышают технологичеÑкий уровень Ñильнее, чем школы, однако тратÑÑ‚ на Ñто большие реÑурÑÑ‹ и дорого ÑтоÑÑ‚, поÑтому их рекомендуетÑÑ Ñтроить при доÑтаточно развитой Ñкономике и промышленноÑти. + +Ð”Ð»Ñ Ð´Ð¾ÑÑ‚Ð¸Ð¶ÐµÐ½Ð¸Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкого ÑƒÑ€Ð¾Ð²Ð½Ñ Ð²Ñ‹ÑˆÐµ 100% Вам потребуетÑÑ Ð½ÐµÑколько дейÑтвующих универÑитетов. + +УниверÑитеты не нужно ÑоединÑÑ‚ÑŒ Ñ Ñ‚Ñ€Ð°Ð½Ñпортной ÑиÑтемы, еÑли они находÑÑ‚ÑÑ Ð² зоне дейÑÑ‚Ð²Ð¸Ñ Ð¼Ð°Ð³Ð°Ð·Ð¸Ð½Ð° и имеют доÑтуп к необходимому количеÑтву товаров и рабочей Ñилы. + +SUBH: Примечание + +Студенты приходÑÑ‚ учитьÑÑ Ð² универÑитеты из школ, поÑтому на каждый универÑитет должно приходитьÑÑ Ñ‡ÐµÑ‚Ñ‹Ñ€Ðµ школы. + +IMG_1[Это универÑитет:] +IMG_2[а Ñто его иконка:] + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/waste.tml lincity-ng-2.9~git20150314/data/help_templates/ru/waste.tml --- lincity-ng-2.0/data/help_templates/ru/waste.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/waste.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,7 @@ +МуÑор + +МуÑор поÑвлÑетÑÑ Ð¿Ñ€Ð¸ Ñоздании товаров. Его можно Ñобирать на Ñвалках, перерабатывать в Ñпециальных центрах или проÑто накапливать в магазинах или на дорогах. Однако большое количеÑтво неубранного муÑора может Ñтать причиной пожаров или Ñильных загрÑзнений. + +Электрифицированные фермы и коммуны могут обезвреживать небольшое количеÑтво муÑора. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/water.tml lincity-ng-2.9~git20150314/data/help_templates/ru/water.tml --- lincity-ng-2.0/data/help_templates/ru/water.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/water.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,5 @@ +Вода + +Вода добываетÑÑ Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñкважин и передаётÑÑ Ð¿Ð¾ трубопроводу, раÑположенному под Вашей транÑпортной ÑиÑтемой. Жилые дома должны быть обеÑпечены водой. Коммуны и Ñлектрифицированные фермы могут иÑпользовать воду Ð´Ð»Ñ ÑƒÐ²ÐµÐ»Ð¸Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð»Ð¾Ð´Ð¾Ñ€Ð¾Ð´Ð½Ð¾Ñти почвы при помощи ирригации. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/waterwell.tml lincity-ng-2.9~git20150314/data/help_templates/ru/waterwell.tml --- lincity-ng-2.0/data/help_templates/ru/waterwell.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/waterwell.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,8 @@ +Скважина + +Скважина обеÑпечивает округу водой. Вода течёт по трубам, раÑположенным под Вашей транÑпортной ÑиÑтемой. Ðехватка воды приводит к таким же поÑледÑтвиÑм, как и нехватка еды. +Информацию о нехватке воды или еды можно получить, поÑмотрев зоны голоданиÑ. + +Учтите, что Ñильные загрÑÐ·Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñ€Ñ‚ÑÑ‚ воду, её Ð½ÐµÐ»ÑŒÐ·Ñ Ð±ÑƒÐ´ÐµÑ‚ пить. + +ALSO[См. ещё:] diff -Nru lincity-ng-2.0/data/help_templates/ru/windmill.tml lincity-ng-2.9~git20150314/data/help_templates/ru/windmill.tml --- lincity-ng-2.0/data/help_templates/ru/windmill.tml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/help_templates/ru/windmill.tml 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,15 @@ +Ветрогенератор + +ДеревÑнные ветрогенераторы обеÑпечивают ÑлектричеÑтвом жилые дома (они ÑтановÑÑ‚ÑÑ Ð±Ð¾Ð»ÐµÐµ привлекательными Ð´Ð»Ñ Ð¶Ð¸Ñ‚ÐµÐ»ÐµÐ¹) и фермы (они ÑтановÑÑ‚ÑÑ Ð±Ð¾Ð»ÐµÐµ Ñффективными). + +Люди, живущие в домах Ñ ÑлектричеÑтвом, потреблÑÑŽÑ‚ больше товаров. + +Ветрогенератору нужны рабочие. Чем меньше рабочей Ñилы, тем менее Ñффективнее он работает. + +IMG_1[СущеÑтвует два вида ветрогенераторов:] +IMG_2[Это низкотехнологичный деревÑнный ветрогенератор, он производит кВт⋅ч Ð´Ð»Ñ ÑоÑедних зданий:] +IMG_3[Это модернизированный ветрогенератор, он производит МВт⋅ч Ð´Ð»Ñ ÑÐ½Ð°Ð±Ð¶ÐµÐ½Ð¸Ñ Ð³Ð¾Ñ€Ð¾Ð´Ð° ÑлектричеÑтвом:] + +Тип ветрогенератора, которую Ð’Ñ‹ Ñтроите, завиÑит от текущего ÑƒÑ€Ð¾Ð²Ð½Ñ Ñ‚ÐµÑ…Ð½Ð¾Ð»Ð¾Ð³Ð¸Ñ‡ÐµÑкого развитиÑ. + +ALSO[См. ещё:] Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttonpanel/base/broom.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/broom.png differ diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/base/broom.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/broom.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/base/broom.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/broom.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,114 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" width="48px" height="48px" id="svg1306" sodipodi:version="0.32" inkscape:version="0.46" sodipodi:docbase="/home/tigert/cvs/freedesktop.org/tango-icon-theme/scalable/actions" sodipodi:docname="edit-clear.svg" inkscape:export-filename="/home/andreas/projekt/bild/tango/clear2.png" inkscape:export-xdpi="90.000000" inkscape:export-ydpi="90.000000" inkscape:output_extension="org.inkscape.output.svg.inkscape"> + <defs id="defs1308"> + <inkscape:perspective sodipodi:type="inkscape:persp3d" inkscape:vp_x="0 : 24 : 1" inkscape:vp_y="0 : 1000 : 0" inkscape:vp_z="48 : 24 : 1" inkscape:persp3d-origin="24 : 16 : 1" id="perspective62"/> + <linearGradient inkscape:collect="always" id="linearGradient2243"> + <stop style="stop-color:#ffffff;stop-opacity:1;" offset="0" id="stop2245"/> + <stop style="stop-color:#ffffff;stop-opacity:0;" offset="1" id="stop2247"/> + </linearGradient> + <linearGradient id="linearGradient9320"> + <stop id="stop9322" offset="0.0000000" style="stop-color:#fef088;stop-opacity:1.0000000;"/> + <stop style="stop-color:#fde63a;stop-opacity:1.0000000;" offset="0.50000000" id="stop9324"/> + <stop id="stop9326" offset="1.0000000" style="stop-color:#dac203;stop-opacity:1.0000000;"/> + </linearGradient> + <linearGradient id="linearGradient8576"> + <stop style="stop-color:#dac203;stop-opacity:1.0000000;" offset="0.0000000" id="stop8578"/> + <stop id="stop8584" offset="0.50000000" style="stop-color:#fdec69;stop-opacity:1.0000000;"/> + <stop style="stop-color:#fdef7e;stop-opacity:1.0000000;" offset="1.0000000" id="stop8580"/> + </linearGradient> + <linearGradient id="linearGradient3558"> + <stop style="stop-color:#000000;stop-opacity:1;" offset="0" id="stop3560"/> + <stop style="stop-color:#000000;stop-opacity:0;" offset="1" id="stop3562"/> + </linearGradient> + <radialGradient inkscape:collect="always" xlink:href="#linearGradient3558" id="radialGradient3564" cx="22.571428" cy="30.857143" fx="22.571428" fy="30.857143" r="15.571428" gradientTransform="matrix(1.000000,0.000000,0.000000,0.651376,4.792388e-15,10.75754)" gradientUnits="userSpaceOnUse"/> + <linearGradient id="linearGradient15303"> + <stop style="stop-color:#b30000;stop-opacity:1;" offset="0" id="stop15305"/> + <stop id="stop15311" offset="0.5" style="stop-color:#ff5c5c;stop-opacity:1;"/> + <stop style="stop-color:#c30000;stop-opacity:1;" offset="1" id="stop15307"/> + </linearGradient> + <linearGradient id="linearGradient11647"> + <stop style="stop-color:#c17d10;stop-opacity:1;" offset="0" id="stop11649"/> + <stop style="stop-color:#9b650c;stop-opacity:1.0000000;" offset="1.0000000" id="stop11651"/> + </linearGradient> + <linearGradient inkscape:collect="always" id="linearGradient5739"> + <stop style="stop-color:#c4a000;stop-opacity:1;" offset="0" id="stop5741"/> + <stop style="stop-color:#c4a000;stop-opacity:0;" offset="1" id="stop5743"/> + </linearGradient> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient5739" id="linearGradient7988" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.866026,-0.500000,0.797491,1.381294,-15.69909,-9.225099)" x1="9.1053896" y1="38.828144" x2="10.146956" y2="30.140831"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient5739" id="linearGradient7990" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.866026,-0.500000,0.797961,1.382110,-15.72934,-9.277499)" x1="19.616243" y1="39.252983" x2="18.485983" y2="29.909071"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient5739" id="linearGradient7992" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.866026,-0.500000,0.843479,1.460948,-19.74053,-11.13423)" x1="15.096997" y1="36.96777" x2="14.045431" y2="29.000000"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient5739" id="linearGradient7994" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.866026,-0.500000,0.801305,1.387900,-12.81830,-11.14456)" x1="14.045431" y1="37.575890" x2="14.045431" y2="29.000000"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient5739" id="linearGradient7996" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.866026,-0.500000,0.861487,1.492140,-17.87951,-13.91085)" x1="16.92873" y1="34.010502" x2="14.045431" y2="29.000000"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient11647" id="linearGradient11653" x1="12.233433" y1="12.363223" x2="16.870909" y2="17.110941" gradientUnits="userSpaceOnUse" gradientTransform="matrix(0.965926,0.262102,-0.258819,0.978177,2.957072,-5.939741)"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient15303" id="linearGradient15309" x1="10.615304" y1="28.122555" x2="2.0069747" y2="27.234833" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.176700,2.237102e-17,2.319843e-17,1.176702,-0.819769,-5.307055)"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient8576" id="linearGradient8582" x1="11.996646" y1="19.591736" x2="17.774033" y2="16.234594" gradientUnits="userSpaceOnUse" gradientTransform="matrix(1.014891,0.000000,0.000000,1.005920,-0.331699,-0.140188)"/> + <radialGradient inkscape:collect="always" xlink:href="#linearGradient9320" id="radialGradient9318" cx="20.764477" cy="19.540945" fx="20.764477" fy="19.540945" r="14.799585" gradientTransform="matrix(0.449398,-0.216492,0.564416,1.171617,-1.432288,2.546108)" gradientUnits="userSpaceOnUse"/> + <linearGradient inkscape:collect="always" xlink:href="#linearGradient2243" id="linearGradient2249" x1="9.5621576" y1="6.952559" x2="14.766725" y2="14.200403" gradientUnits="userSpaceOnUse"/> + </defs> + <sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="0.17254902" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="4" inkscape:cx="9.561293" inkscape:cy="43.364823" inkscape:current-layer="layer1" showgrid="false" inkscape:grid-bbox="true" inkscape:document-units="px" inkscape:window-width="916" inkscape:window-height="818" inkscape:window-x="518" inkscape:window-y="30" inkscape:showpageshadow="false"/> + <g id="layer1" inkscape:label="Layer 1" inkscape:groupmode="layer"> + <path sodipodi:type="arc" style="opacity:0.47368421;color:#000000;fill:url(#radialGradient3564);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible" id="path3556" sodipodi:cx="22.571428" sodipodi:cy="30.857143" sodipodi:rx="15.571428" sodipodi:ry="10.142858" d="M 38.142857 30.857143 A 15.571428 10.142858 0 1 1 7,30.857143 A 15.571428 10.142858 0 1 1 38.142857 30.857143 z" transform="matrix(1.435780,0.000000,0.000000,0.825704,-5.050460,13.43182)"/> + <path style="fill:url(#linearGradient11653);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f5902;stroke-width:1.0063211;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" d="M 6.9163118,1.7780186 C 8.6460876,0.8999591 11.042237,1.7815151 11.928102,3.3353385 L 16.098341,12.820053 C 16.984206,14.373873 16.731757,16.189357 15.532312,16.890639 C 14.332867,17.591922 12.654079,16.90558 11.768213,15.351758 L 5.8497502,6.9960305 C 4.9638854,5.4422066 5.2207536,2.6387087 6.9163118,1.7780186 z " id="path7966" sodipodi:nodetypes="cccsccz"/> + <path style="opacity:0.42307691;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2249);stroke-width:1.00569046;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1" d="M 7.4462701,2.7359104 C 8.8682231,1.9500906 10.266975,2.5431693 11.141568,4.0752981 L 15.589706,14.162023 L 13.158185,15.581885 L 6.8615741,6.7615491 C 5.9869811,5.2294205 5.9853271,3.5432766 7.4462701,2.7359104 z " id="path14575" sodipodi:nodetypes="cccccz"/> + <path style="fill:url(#radialGradient9318);fill-opacity:1;fill-rule:evenodd;stroke:#c4a000;stroke-width:1.00000048;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="M 14.780848,22.793567 C 13.985353,27.080402 15.414814,36.746068 21.040081,42.487564 C 25.386835,42.628855 35.030172,39.069883 41.571176,32.290526 C 32.335,27.773816 26.034647,16.567549 21.135869,19.007852 L 14.780848,22.793567 z " id="path7968" sodipodi:nodetypes="ccccc"/> + <path style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:url(#linearGradient7988);stroke-width:0.99999988;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 16.338359,24.367274 C 18.687375,30.637545 18.827802,37.155576 23.522142,42.287158" id="path7972" sodipodi:nodetypes="cc"/> + <path style="opacity:0.46153846;fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 15.91878,23.414124 C 15.006687,23.922228 15.758401,35.934338 21.503034,41.414491 C 28.88902,41.227594 37.02675,35.018304 39.895986,32.576645 C 30.39657,26.592523 24.971183,17.814876 21.415196,20.003061 L 15.91878,23.414124 z " id="path7970" sodipodi:nodetypes="ccccc"/> + <path style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:url(#linearGradient7990);stroke-width:0.99999970;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 23.848485,22.273332 C 24.714846,21.524332 29.598505,28.360999 38.846986,34.655133" id="path7974" sodipodi:nodetypes="cc"/> + <path style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:url(#linearGradient7992);stroke-width:1.0000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 18.012893,22.863921 C 21.725203,28.211416 20.975883,35.288176 26.853709,40.945031" id="path7976" sodipodi:nodetypes="cc"/> + <path style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:url(#linearGradient7994);stroke-width:1.0000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 22.983898,22.775821 C 22.983898,22.775821 31.160628,35.84745 34.165832,37.880382" id="path7978" sodipodi:nodetypes="cc"/> + <path style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:url(#linearGradient7996);stroke-width:1.0000001;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 19.300308,22.200695 C 22.747454,25.11751 28.002865,36.363883 30.610322,39.678445" id="path7980" sodipodi:nodetypes="cc"/> + <path style="fill:url(#linearGradient8582);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#c4a000;stroke-width:1.0103954;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-dashoffset:0.0000000;stroke-opacity:1.0000000" d="M 8.5089452,18.061866 L 19.970616,11.502960 C 20.569266,13.885531 19.628776,14.743545 21.766566,18.650673 L 13.856274,23.177313 C 12.402846,19.699893 10.291388,19.767015 8.5089452,18.061866 z " id="path7982" sodipodi:nodetypes="ccccc"/> + <path style="opacity:0.24725272;fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000" d="M 14.043449,21.245689 C 13.229488,19.824472 11.481136,19.009347 10.364130,18.118460 L 19.121552,13.184722 C 19.101959,14.665690 19.688457,16.272928 19.997163,17.703389 L 14.043449,21.245689 z " id="path11655" sodipodi:nodetypes="ccccc"/> + <rect style="opacity:1;fill:url(#linearGradient15309);fill-opacity:1;fill-rule:evenodd;stroke:#690000;stroke-width:0.99999803;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect7984" width="13.015023" height="3.4598906" x="-1.4127867" y="24.174778" rx="0.99999738" ry="0.99999803" transform="matrix(0.866025,-0.500001,0.500000,0.866026,0.000000,0.000000)"/> + <path sodipodi:type="arc" style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#8f5902;stroke-width:1.65524161;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="path10193" sodipodi:cx="-19.319168" sodipodi:cy="4.0836182" sodipodi:rx="2.1465743" sodipodi:ry="2.1465743" d="M -17.172594 4.0836182 A 2.1465743 2.1465743 0 1 1 -21.465742,4.0836182 A 2.1465743 2.1465743 0 1 1 -17.172594 4.0836182 z" transform="matrix(0.583557,0.156364,-0.156364,0.583557,20.45782,5.158782)"/> + <path style="opacity:0.31730769;fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" d="M 27.734834,40.555239 C 27.734834,40.555239 29.241418,40.054591 29.910932,39.613484 C 28.673495,37.66894 26.507591,33.717819 24.507806,30.737564 C 25.701049,37.278302 27.734834,40.555239 27.734834,40.555239 z " id="path3558" sodipodi:nodetypes="cccc"/> + <path style="opacity:0.31730769;fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" d="M 31.141805,39.05827 L 33.167803,37.9731 C 31.223259,36.116945 25.699306,27.857202 25.699306,27.857202 L 31.141805,39.05827 z " id="path3560" sodipodi:nodetypes="cccc"/> + <path style="opacity:0.31730769;fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" d="M 35.658522,36.387809 L 38.094893,34.644057 C 34.912912,33.318232 26.508353,24.763608 26.508353,24.763608 C 28.891288,27.775503 33.275587,33.375914 35.658522,36.387809 z " id="path3562" sodipodi:nodetypes="cccc"/> + <path style="opacity:0.31730769;fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" d="M 39.153689,33.917208 L 40.846002,32.5077 C 37.531439,31.005098 28.350325,22.595683 28.350325,22.595683 C 28.350325,22.595683 34.424912,31.795888 39.153689,33.917208 z " id="path3565" sodipodi:nodetypes="cccc"/> + <path sodipodi:nodetypes="cccc" id="path2265" d="M 24.376076,41.571705 C 24.376076,41.571705 25.573301,41.292028 26.419592,41.116086 C 24.961184,39.878649 22.618503,36.678829 21.325825,32.505331 C 21.856156,39.399623 24.376076,41.571705 24.376076,41.571705 z " style="opacity:0.31730766;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.25pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"/> + <path style="opacity:0.31730766;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.25pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" d="M 21.370872,41.969452 C 21.370872,41.969452 22.618892,41.955776 22.618892,41.955776 C 20.320795,39.436707 19.480717,36.590441 18.188038,32.549526 C 18.055457,37.234109 21.370872,41.969452 21.370872,41.969452 z " id="path2267" sodipodi:nodetypes="cccc"/> + </g> + <metadata> + <rdf:RDF> + <cc:Work> + <dc:format>image/svg+xml</dc:format> + <dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/> + <cc:license rdf:resource="http://creativecommons.org/licenses/publicdomain/"/> + <dc:publisher> + <cc:Agent rdf:about="http://openclipart.org/"> + <dc:title>Open Clip Art Library</dc:title> + </cc:Agent> + </dc:publisher> + <dc:title>tango edit clear</dc:title> + <dc:date>2010-03-18T17:13:35</dc:date> + <dc:description>"Clear" icon from <A href="http://tango.freedesktop.org/Tango_Desktop_Project"> Tango Project </A> \n<BR><BR> \nSince version 0.8.90 Tango Project icons are Public Domain: <A href="http://tango.freedesktop.org/Frequently_Asked_Questions#Terms_of_Use.3F"> Tango Project FAQ </A></dc:description> + <dc:source>http://openclipart.org/detail/32329/tango-edit-clear-by-warszawianka</dc:source> + <dc:creator> + <cc:Agent> + <dc:title>warszawianka</dc:title> + </cc:Agent> + </dc:creator> + <dc:subject> + <rdf:Bag> + <rdf:li>broom</rdf:li> + <rdf:li>clear</rdf:li> + <rdf:li>clip art</rdf:li> + <rdf:li>clipart</rdf:li> + <rdf:li>edit</rdf:li> + <rdf:li>externalsource</rdf:li> + <rdf:li>household</rdf:li> + <rdf:li>icon</rdf:li> + <rdf:li>sweep</rdf:li> + <rdf:li>tango</rdf:li> + </rdf:Bag> + </dc:subject> + </cc:Work> + <cc:License rdf:about="http://creativecommons.org/licenses/publicdomain/"> + <cc:permits rdf:resource="http://creativecommons.org/ns#Reproduction"/> + <cc:permits rdf:resource="http://creativecommons.org/ns#Distribution"/> + <cc:permits rdf:resource="http://creativecommons.org/ns#DerivativeWorks"/> + </cc:License> + </rdf:RDF> + </metadata> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/base/bulldozer.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/bulldozer.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/base/bulldozer.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/bulldozer.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,489 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="Bulldozer.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/Bulldozer.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient17367"> + <stop + style="stop-color:#ffe400;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop17368" /> + <stop + style="stop-color:#cd8911;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop17369" /> + </linearGradient> + <linearGradient + id="linearGradient17364"> + <stop + style="stop-color:#ffffff;stop-opacity:0.50196081;" + offset="0.0000000" + id="stop17365" /> + <stop + style="stop-color:#cfffff;stop-opacity:0.50196081;" + offset="1.0000000" + id="stop17366" /> + </linearGradient> + <linearGradient + id="linearGradient14226"> + <stop + style="stop-color:#666666;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14227" /> + <stop + style="stop-color:#222222;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14228" /> + </linearGradient> + <linearGradient + id="linearGradient11720"> + <stop + style="stop-color:#000000;stop-opacity:0.71764708;" + offset="0.0000000" + id="stop11721" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop11722" /> + </linearGradient> + <linearGradient + id="linearGradient11095"> + <stop + style="stop-color:#cd8911;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11096" /> + <stop + style="stop-color:#b05a0e;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11097" /> + </linearGradient> + <linearGradient + id="linearGradient9841"> + <stop + style="stop-color:#ffe400;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9842" /> + <stop + style="stop-color:#cd8911;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9843" /> + </linearGradient> + <linearGradient + id="linearGradient9203"> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9204" /> + <stop + style="stop-color:#373737;stop-opacity:1.0000000;" + offset="0.10582010" + id="stop9207" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.22000000" + id="stop9212" /> + <stop + style="stop-color:#373737;stop-opacity:1.0000000;" + offset="0.32656085" + id="stop9213" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.43973082" + id="stop9208" /> + <stop + style="stop-color:#373737;stop-opacity:1.0000000;" + offset="0.54771250" + id="stop9209" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.66132581" + id="stop9210" /> + <stop + style="stop-color:#373737;stop-opacity:1.0000000;" + offset="0.76884145" + id="stop9211" /> + <stop + style="stop-color:#030303;stop-opacity:1.0000000;" + offset="0.88442075" + id="stop9214" /> + <stop + style="stop-color:#373737;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9205" /> + </linearGradient> + <linearGradient + id="linearGradient2320"> + <stop + style="stop-color:#969696;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2321" /> + <stop + style="stop-color:#4a4a4a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2322" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2320" + id="linearGradient2323" + gradientTransform="matrix(1.218960,0.000000,0.000000,0.820372,-1.183233,-39.04670)" + x1="247.12822" + y1="563.75610" + x2="210.00189" + y2="736.07086" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2320" + id="linearGradient2965" + gradientTransform="matrix(0.768754,0.000000,0.000000,1.300807,-1.183233,-39.04670)" + x1="709.48663" + y1="363.77808" + x2="701.62396" + y2="424.07828" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2320" + id="linearGradient3590" + gradientTransform="matrix(1.422452,0.000000,0.000000,0.703011,-1.183233,-39.04670)" + x1="404.20160" + y1="566.80695" + x2="485.22031" + y2="643.75391" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2320" + id="linearGradient7322" + gradientTransform="matrix(0.731235,0.000000,0.000000,1.367549,-1.183233,-39.04670)" + x1="761.83807" + y1="373.49493" + x2="972.38501" + y2="373.49493" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2320" + id="linearGradient7947" + gradientTransform="matrix(0.725618,0.000000,0.000000,1.378135,-0.974065,-40.92921)" + x1="1075.6812" + y1="387.38293" + x2="861.03107" + y2="339.71054" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2320" + id="linearGradient8572" + gradientTransform="matrix(0.727101,0.000000,0.000000,1.375325,-1.183233,-39.04670)" + x1="629.79877" + y1="298.96579" + x2="768.10712" + y2="340.89505" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9203" + id="linearGradient9206" + gradientTransform="matrix(1.589769,0.000000,0.000000,0.629022,-1.183233,-39.04670)" + x1="185.07631" + y1="576.82794" + x2="198.24542" + y2="577.75757" + gradientUnits="userSpaceOnUse" + spreadMethod="reflect" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9841" + id="radialGradient9844" + gradientTransform="matrix(1.688849,0.000000,0.000000,0.592119,-1.183233,-39.04670)" + cx="150.92609" + cy="545.84650" + fx="150.92609" + fy="545.84650" + r="77.315002" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9841" + id="linearGradient10469" + gradientTransform="matrix(2.543798,0.000000,0.000000,0.393113,-1.183233,-39.04670)" + x1="76.316566" + y1="751.30988" + x2="191.04752" + y2="751.30988" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11095" + id="linearGradient11094" + gradientTransform="matrix(1.054488,0.000000,0.000000,0.948327,-1.183233,-39.04670)" + x1="410.30252" + y1="316.61371" + x2="461.41412" + y2="348.12613" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient11720" + id="radialGradient11723" + gradientTransform="scale(1.632993,0.612372)" + cx="271.71728" + cy="479.03287" + fx="271.71728" + fy="479.03287" + r="249.25532" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9841" + id="linearGradient12349" + gradientTransform="scale(2.770051,0.361004)" + x1="128.77412" + y1="189.07399" + x2="230.70795" + y2="189.07399" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11095" + id="linearGradient12974" + gradientTransform="scale(0.592858,1.686744)" + x1="406.84921" + y1="81.489868" + x2="1017.0111" + y2="169.89478" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11095" + id="linearGradient13599" + gradientTransform="scale(0.886459,1.128084)" + x1="548.99054" + y1="50.306061" + x2="644.28192" + y2="87.613159" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14226" + id="radialGradient14229" + gradientTransform="matrix(1.296978,0.000000,0.000000,1.025184,-58.96025,-65.33387)" + cx="510.37234" + cy="354.30307" + fx="510.37234" + fy="354.30307" + r="107.97445" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9841" + id="linearGradient16113" + gradientTransform="scale(1.277462,0.782802)" + x1="276.20502" + y1="148.00191" + x2="360.05032" + y2="204.86974" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11095" + id="linearGradient16115" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.592858,0.000000,0.000000,1.686744,-21.60256,17.39440)" + x1="406.84921" + y1="81.489868" + x2="1017.0111" + y2="169.89478" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11095" + id="linearGradient16117" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.543798,0.000000,0.000000,0.393113,-71.07002,-153.5337)" + x1="76.316566" + y1="751.30988" + x2="191.04752" + y2="751.30988" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11095" + id="linearGradient16740" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.543798,0.000000,0.000000,0.393113,-26.73055,-194.4288)" + x1="76.316566" + y1="751.30988" + x2="191.04752" + y2="751.30988" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17364" + id="linearGradient16742" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.543798,0.000000,0.000000,0.393113,105.4679,-87.43658)" + x1="76.316566" + y1="751.30988" + x2="191.04752" + y2="751.30988" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4940140" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1274" + inkscape:window-height="1001" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient11723);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path11098" + sodipodi:cx="443.71246" + sodipodi:cy="293.34653" + sodipodi:rx="407.03223" + sodipodi:ry="152.63708" + d="M 850.74469 293.34653 A 407.03223 152.63708 0 1 1 36.680237,293.34653 A 407.03223 152.63708 0 1 1 850.74469 293.34653 z" + transform="matrix(0.934376,-0.158201,0.166936,0.985968,-64.81488,332.2567)" /> + <path + style="fill:url(#radialGradient9844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 194.70146,268.75823 L 398.42754,277.17570 L 389.51125,341.59946 L 183.72322,323.58999 L 194.70146,268.75823 z " + id="path1062" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient7322);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 593.69072,417.77634 L 682.37798,334.94578 C 720.08699,299.72698 713.25267,449.69318 680.70463,489.73015 L 586.16067,606.02759 C 546.54588,654.75729 547.79442,460.64176 593.69072,417.77634 z " + id="path1068" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient7947);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 680.19966,344.82744 L 599.75659,421.33220 C 562.77350,456.50469 554.78981,636.79463 586.78818,597.03337 L 677.88395,483.83755 C 706.91410,447.76461 713.75214,312.91761 680.19966,344.82744 z " + id="path3591" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient8572);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 668.90395,355.68013 L 603.64351,416.75721 C 566.94795,452.22958 565.38195,546.75765 567.24827,572.37824 L 652.17051,479.71678 C 681.56944,443.94375 684.83462,352.15425 668.90395,355.68013 z " + id="path6076" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient14229);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.3241243;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 624.99998,299.32349 L 495.26209,292.70441 L 503.08282,378.10781 L 624.99998,299.32349 z " + id="path13600" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient16115);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 621.75634,65.821993 L 617.32793,302.76331 L 457.89596,297.37208 L 462.59917,69.223044 L 621.75634,65.821993 z " + id="path16114" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16117);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 367.23350,101.02381 L 363.47463,93.947983 L 292.48256,222.16800 L 300.51758,222.52328 L 367.23350,101.02381 z " + id="path16116" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient12974);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 638.03435,52.568913 L 633.01432,323.23237 L 515.04353,409.40961 L 521.73691,360.88262 L 617.95422,303.15224 L 620.88258,65.537336 L 638.03435,52.568913 z " + id="path1072" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient11094);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 397.75716,276.82679 L 484.18307,243.40196 L 494.69133,248.71127 L 504.88094,348.72476 L 390.37937,333.79589 L 397.75716,276.82679 z " + id="path1063" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient10469);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 482.92806,243.74851 L 275.23034,235.62684 L 194.82571,268.25706 L 397.59619,276.97906 L 482.92806,243.74851 z " + id="path1064" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient12349);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 540.56203,83.525776 L 637.19768,51.732241 L 471.95490,55.497265 L 359.00416,83.525784 L 540.56203,83.525776 z " + id="path1066" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient2965);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 502.49345,412.33796 L 592.85405,418.61301 C 551.53418,481.21117 556.06459,590.25123 573.61058,614.39431 L 474.46492,601.00755 L 502.49345,412.33796 z " + id="path1067" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16740);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 524.27593,101.83773 L 527.02485,94.170284 L 363.14897,93.713692 L 367.63429,100.87256 L 524.27593,101.83773 z " + id="path16739" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16742);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0c006b;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;stroke-dasharray:none;" + d="M 529.33873,97.886295 L 365.98464,97.713012 L 298.96676,221.12217 L 477.89208,233.19086 L 529.33873,97.886295 z " + id="path16741" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13599);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 540.38875,84.239934 L 637.42479,52.612237 L 619.42736,66.500252 L 546.62791,95.448367 L 494.96340,248.76855 L 484.08666,243.33017 L 540.38875,84.239934 z " + id="path1075" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient3590);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 688.65302,330.13491 L 618.37256,328.04324 L 502.91179,411.91963 L 592.43572,419.03134 L 688.65302,330.13491 z " + id="path1077" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient9206);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 201.80086,284.73188 L 383.63713,294.33258 L 374.72084,358.75634 L 190.82262,339.56364 L 201.80086,284.73188 z " + id="path8574" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient2323);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 68.260559,307.33560 C 54.037133,407.73627 42.323724,504.79025 0.49011499,593.47750 L 481.57665,659.57461 C 506.95570,556.66393 518.11133,449.56988 525.08360,338.29247 L 68.260559,307.33560 z " + id="path1061" + sodipodi:nodetypes="ccccc" /> + <path + id="path1065" + style="fill:url(#linearGradient16113);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 483.41816,243.82028 L 540.56203,83.107450 L 358.58582,83.944124 L 275.92346,235.03522 L 483.41816,243.82028 z M 477.47472,230.53171 L 526.92757,94.075167 L 363.29147,93.728608 L 291.86983,222.33827 L 477.47472,230.53171 z " /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/base/pointer.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/pointer.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/base/pointer.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/base/pointer.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1408" + height="200.00000mm" + width="200.00000mm" + sodipodi:docname="pointer.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/pointer.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2192" + inkscape:collect="always"> + <stop + id="stop2194" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop2196" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2180"> + <stop + id="stop2182" + offset="0.0000000" + style="stop-color:#3326ff;stop-opacity:1.0000000;" /> + <stop + id="stop2184" + offset="1.0000000" + style="stop-color:#140f66;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="449.05411" + fy="73.590805" + fx="323.06348" + cy="73.590805" + cx="323.06348" + gradientTransform="matrix(0.825606,0.000000,0.000000,0.883405,71.85562,54.96818)" + id="radialGradient2188" + xlink:href="#linearGradient2180" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="300.52786" + x2="252.70598" + y1="64.480942" + x1="106.03597" + gradientTransform="matrix(1.187613,0.000000,0.000000,0.614127,71.85562,54.96817)" + id="linearGradient2198" + xlink:href="#linearGradient2192" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="98.179583" + inkscape:cx="401.10770" + inkscape:zoom="0.17500000" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" + inkscape:window-width="640" + inkscape:window-height="546" + inkscape:window-x="632" + inkscape:window-y="420" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:nodetypes="cccccccc" + id="path2204" + d="M 91.068616,94.192044 C 152.44343,237.75575 201.00959,368.51080 217.55410,553.70264 C 246.37358,509.40603 276.79414,460.30618 321.62445,427.21714 C 380.33079,507.80495 424.62740,565.97761 456.11535,656.17191 C 511.08584,597.99924 551.64659,565.44391 616.22357,534.48965 C 567.65741,469.37897 509.48475,404.26830 420.89154,347.16304 C 473.19356,313.00662 501.47934,310.87185 540.97271,300.73166 C 429.43064,195.06023 188.20093,95.793130 91.068616,94.192044 z " + style="fill:#000000;fill-opacity:0.58554214;fill-rule:evenodd;stroke:none;stroke-width:4.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccc" + id="path1418" + d="M 99.074027,77.383321 C 160.44884,220.94703 209.01500,351.70208 225.55952,536.89392 C 254.37899,492.59731 284.79956,443.49745 329.62986,410.40842 C 388.33621,490.99622 432.63282,549.16889 464.12076,639.36318 C 519.09126,581.19052 559.65200,548.63519 624.22898,517.68092 C 575.66283,452.57025 517.49016,387.45957 428.89695,330.35431 C 481.19897,296.19789 509.48475,294.06312 548.97812,283.92293 C 437.43606,178.25150 196.20634,78.984406 99.074027,77.383321 z " + style="fill:url(#radialGradient2188);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#7387e4;stroke-width:3.4160688;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssssss" + id="path2190" + d="M 121.66962,89.580661 C 109.32909,84.895043 139.27142,124.03338 157.75226,167.55820 C 176.23311,211.08301 174.19538,229.55876 183.93710,237.89048 C 193.13445,245.75665 171.70289,147.21447 191.86205,143.92319 C 245.66912,135.13836 442.30512,224.00449 430.74276,214.11563 C 422.18356,206.79525 350.65791,167.53778 281.23108,140.39902 C 211.80425,113.26025 144.47625,98.240194 121.66962,89.580661 z " + style="opacity:0.89841986;fill:url(#linearGradient2198);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/industry/blacksmith.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/blacksmith.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/industry/blacksmith.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/blacksmith.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,371 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0639997" + inkscape:export-xdpi="4.0639997" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/blacksmith.png" + sodipodi:docname="blacksmith.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient4368"> + <stop + id="stop4370" + offset="0.00000000" + style="stop-color:#7a7a7a;stop-opacity:1.0000000;" /> + <stop + id="stop4372" + offset="1.0000000" + style="stop-color:#464646;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2052"> + <stop + id="stop2054" + offset="0.00000000" + style="stop-color:#cfcfcf;stop-opacity:1.0000000;" /> + <stop + id="stop2056" + offset="1.0000000" + style="stop-color:#787878;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="253.23238" + fy="682.91156" + fx="479.24689" + cy="682.91156" + cx="479.24689" + gradientTransform="matrix(1.675950,0.000000,0.000000,1.979532,-337.4826,-791.6353)" + id="radialGradient2062" + xlink:href="#linearGradient2052" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="618.52570" + x2="215.09486" + y1="584.62213" + x1="349.33640" + gradientTransform="matrix(1.807910,0.000000,0.000000,1.835044,-337.4826,-791.6353)" + id="linearGradient2836" + xlink:href="#linearGradient2052" + inkscape:collect="always" /> + <linearGradient + y2="618.52570" + x2="215.09486" + y1="584.62213" + x1="349.33640" + gradientTransform="matrix(1.807910,0.000000,0.000000,1.835044,-53.79871,-900.4146)" + gradientUnits="userSpaceOnUse" + id="linearGradient2840" + xlink:href="#linearGradient2052" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(1.463365,0.000000,0.000000,2.267099,-337.4826,-791.6353)" + id="linearGradient4366" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(1.463365,0.000000,0.000000,2.267099,-301.6186,-680.1910)" + gradientUnits="userSpaceOnUse" + id="linearGradient5902" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(1.463365,0.000000,0.000000,2.267099,3.377330,-939.2682)" + gradientUnits="userSpaceOnUse" + id="linearGradient5916" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(0.803417,0.000000,0.000000,1.244683,178.7471,-95.71363)" + gradientUnits="userSpaceOnUse" + id="linearGradient5918" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(1.463365,0.000000,0.000000,2.267099,67.88597,-843.1224)" + gradientUnits="userSpaceOnUse" + id="linearGradient5926" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(1.435851,-0.282432,0.437554,2.224474,-447.0569,-458.9964)" + gradientUnits="userSpaceOnUse" + id="linearGradient1325" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + y2="485.26382" + x2="308.09442" + y1="455.46826" + x1="330.10397" + gradientTransform="matrix(1.441312,0.253096,-0.392106,2.232933,301.3718,-796.6505)" + gradientUnits="userSpaceOnUse" + id="linearGradient1333" + xlink:href="#linearGradient4368" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="915.31030" + x2="308.76828" + y1="1029.3702" + x1="368.92606" + gradientTransform="scale(1.492018,0.670233)" + id="linearGradient3619" + xlink:href="#linearGradient2052" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="994" + inkscape:window-width="1270" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="283.46455" + inkscape:cx="283.46455" + inkscape:zoom="1.4552084" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:nodetypes="csssscsc" + id="path2070" + d="M 104.09789,142.64869 C 77.850256,155.33813 62.323959,130.99221 61.779753,196.00635 C 61.368676,245.11668 86.090773,373.94206 129.51317,466.94915 C 163.62554,540.01501 234.87164,624.28636 299.12928,668.86549 C 461.38028,781.42812 628.47476,582.38929 622.95498,490.39336 C 620.58924,450.96430 634.36673,433.52934 604.55581,435.19578 C 559.54336,554.96399 410.48825,638.38257 348.80707,602.62840 C 229.56290,533.50720 141.07883,285.28439 104.09789,142.64869 z " + style="fill:url(#linearGradient2836);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="csscsc" + id="path2838" + d="M 409.86077,28.349626 C 383.61314,41.039068 340.60652,25.839153 362.02289,87.227044 C 370.81140,112.41843 441.40029,173.20314 488.63369,264.33399 C 550.34485,383.39781 534.96905,500.06437 538.65509,582.16521 C 568.43194,508.89612 607.69593,395.28918 586.49297,313.53705 C 551.89085,180.12187 446.84171,170.98532 409.86077,28.349626 z " + style="fill:url(#linearGradient2840);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="cssssssss" + id="path1291" + d="M 69.139428,186.80675 C 92.459883,329.09434 113.69725,436.23445 214.49302,565.83004 C 364.18635,758.29443 590.03142,696.95898 633.99451,470.15426 C 656.23790,355.40101 582.47678,153.68821 450.00263,28.573716 C 387.31856,-30.627881 328.56798,46.972912 376.40588,87.451135 C 402.30484,109.36565 565.59844,297.96490 541.99858,440.71555 C 518.46385,583.07212 412.70848,613.93662 306.48896,521.67199 C 226.42369,452.12553 188.59480,323.19941 161.13538,164.72773 C 149.91584,99.978379 56.235877,108.07686 69.139428,186.80675 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.8200000;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#radialGradient2062)" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2842" + d="M 111.45756,246.60411 L 124.33700,311.00127 L 156.53558,301.80169 C 151.01582,282.17589 146.41603,259.79020 140.89627,240.16440 L 111.45756,246.60411 z " + style="fill:url(#linearGradient4366);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path4378" + d="M 116.28735,269.60310 L 131.69668,265.92326 L 141.12626,306.17149 L 123.87702,311.00127 L 116.28735,269.60310 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + id="path4374" + d="M 139.05635,240.16440 L 131.69668,266.84322" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5896" + d="M 144.56178,359.42835 L 163.88094,422.44558 L 195.61954,413.24599 C 190.09978,393.62019 179.52024,370.77453 174.00048,351.14873 L 144.56178,359.42835 z " + style="fill:url(#linearGradient5902);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5898" + d="M 151.61256,381.83265 L 168.48074,376.44762 L 182.97010,416.69583 L 164.34091,422.44558 L 151.61256,381.83265 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="cc" + id="path5900" + d="M 173.82313,351.66412 L 168.30894,376.71087" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5910" + d="M 446.79311,108.15741 L 478.14671,159.14021 L 503.54283,146.36283 L 471.84088,94.673711 L 446.79311,108.15741 z " + style="fill:url(#linearGradient5916);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5912" + d="M 456.60854,123.89399 L 464.53224,119.80998 L 485.36406,155.66725 L 477.95616,159.30285 L 456.60854,123.89399 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="cc" + id="path5914" + d="M 471.43672,95.649467 L 464.69486,119.72625" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5920" + d="M 511.95203,202.02637 L 538.75207,256.58699 L 564.47344,244.78536 L 538.30083,189.84370 L 511.95203,202.02637 z " + style="fill:url(#linearGradient5926);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5922" + d="M 520.79171,220.36498 L 531.64270,215.30522 L 549.87248,251.81299 L 538.88677,256.74960 L 520.79171,220.36498 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="cc" + id="path5924" + d="M 537.57142,191.14471 L 531.48006,214.57097" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1319" + d="M 191.38315,474.96266 L 222.50153,533.06643 L 251.86785,517.91420 C 242.66405,499.72272 227.87417,479.34846 218.67037,461.15699 L 191.38315,474.96266 z " + style="fill:url(#linearGradient1325);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1321" + d="M 200.22029,491.28999 L 218.82434,481.54804 L 243.21441,522.53796 L 222.95285,532.97765 L 200.22029,491.28999 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="cc" + id="path1323" + d="M 218.43307,461.25151 L 218.91887,481.26996" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1327" + d="M 557.98198,309.55102 L 574.94160,367.92460 L 602.31649,360.74946 L 586.04075,302.10910 L 557.98198,309.55102 z " + style="fill:url(#linearGradient1333);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1329" + d="M 562.48591,324.67542 L 579.20238,320.19427 L 591.87401,363.77150 L 575.04615,368.10805 L 562.48591,324.67542 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="cc" + id="path1331" + d="M 585.09731,303.26435 L 579.51277,321.16092" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.8214267px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\blacksmith.png" + inkscape:export-xdpi="15.030000" + inkscape:export-ydpi="15.030000" /> + <path + sodipodi:nodetypes="csscc" + id="path2095" + d="M 405.65182,678.43733 C 415.28029,665.87845 422.53104,651.18974 437.67696,648.92396 C 464.15979,644.96221 515.80876,617.91222 550.07893,598.06049 C 558.62277,593.11129 561.17261,599.10708 570.80109,603.08406 C 526.00775,648.71466 451.07310,682.41430 405.65182,678.43733 z " + style="fill:#000000;fill-opacity:0.57394367;fill-rule:evenodd;stroke:none;stroke-width:1.8200001;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csscc" + id="path1335" + d="M 411.30332,680.40396 C 420.93179,667.84508 428.18254,656.92403 443.32846,654.65825 C 469.81129,650.69650 515.80877,622.39063 550.07894,602.53890 C 558.62278,597.58970 565.56822,598.56192 575.19670,602.53890 C 524.75186,664.49605 456.72460,684.38093 411.30332,680.40396 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:butt;stroke-width:1.8200000;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient3619)" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/industry/heavyindustry2.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/heavyindustry2.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/industry/heavyindustry2.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/heavyindustry2.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,272 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="heavyindustry2.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/heavyindustry2.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient7396"> + <stop + style="stop-color:#ffaf0a;stop-opacity:1.0000000;" + offset="0.00000000" + id="stop7398" /> + <stop + style="stop-color:#ff6531;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7400" /> + </linearGradient> + <linearGradient + id="linearGradient4338"> + <stop + style="stop-color:#b1b1b1;stop-opacity:1.0000000;" + offset="0.00000000" + id="stop4340" /> + <stop + style="stop-color:#919191;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4342" /> + </linearGradient> + <linearGradient + id="linearGradient4330"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop4332" /> + <stop + style="stop-color:#b9b9b9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4334" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4330" + id="linearGradient4336" + gradientTransform="matrix(1.778063,0.000000,0.000000,1.650390,-343.6541,-557.8846)" + x1="418.83426" + y1="525.82507" + x2="303.76831" + y2="411.14093" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4338" + id="linearGradient4344" + gradientTransform="matrix(1.780288,0.000000,0.000000,1.648328,-343.6541,-557.8846)" + x1="197.93294" + y1="510.53204" + x2="435.65090" + y2="510.53204" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4338" + id="linearGradient5110" + gradientTransform="matrix(1.758216,0.000000,0.000000,1.669021,-343.6541,-557.8846)" + x1="350.35837" + y1="604.22913" + x2="472.42654" + y2="486.44214" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7396" + id="radialGradient7402" + gradientTransform="matrix(1.589168,0.000000,0.000000,1.846562,-343.6541,-557.8846)" + cx="487.75507" + cy="463.29721" + fx="487.75507" + fy="463.29721" + r="275.56195" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7396" + id="radialGradient7410" + gradientTransform="matrix(1.589168,0.000000,0.000000,1.846562,-343.6541,-557.8846)" + cx="514.59076" + cy="452.85464" + fx="514.59076" + fy="452.85464" + r="242.91891" + gradientUnits="userSpaceOnUse" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="250.45515" + x2="1045.4753" + y1="250.45515" + x1="916.88531" + gradientTransform="matrix(0.901210,0.000000,0.000000,3.256177,-343.6541,-557.8846)" + id="linearGradient2844" + xlink:href="#linearGradient4338" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="127.23561" + x2="1973.0482" + y1="126.23365" + x1="1687.3988" + gradientTransform="matrix(0.457933,0.000000,0.000000,6.408145,-343.6541,-557.8846)" + id="linearGradient3624" + xlink:href="#linearGradient4338" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4338" + id="linearGradient1086" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.901210,0.000000,0.000000,3.256177,-644.3774,-576.0482)" + x1="916.88531" + y1="250.45515" + x2="1045.4753" + y2="250.45515" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4338" + id="linearGradient1088" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.901210,0.000000,0.000000,3.256177,-343.9310,-713.9946)" + x1="916.88531" + y1="250.45515" + x2="1045.4753" + y2="250.45515" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient1086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 185.39129,201.62161 L 258.63880,182.72509 L 257.74594,37.156010 L 184.49843,44.804720 L 185.39129,201.62161 z " + id="path1085" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + style="fill:url(#linearGradient5110);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 418.29383,114.84055 C 527.94692,224.39757 657.81738,314.65191 688.41844,410.63344 C 719.41494,507.85523 677.61448,579.30545 625.84895,625.74409 C 566.10244,679.34243 524.39074,697.25327 432.62044,694.65244 C 314.81956,691.31388 208.87836,468.42457 87.697339,475.64319 C 99.759406,290.78408 355.99836,241.16194 418.29383,114.84055 z " + id="path1291" + sodipodi:nodetypes="cssscc" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + style="fill:url(#linearGradient4344);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 386.58726,90.655240 C 436.40152,92.914066 453.39294,205.92755 378.44704,273.44774 C 307.84564,337.05391 172.21854,374.48205 146.27384,422.03255 C 115.85485,477.78336 57.304804,509.15048 28.388291,426.35864 C -1.5885757,340.53088 -7.0733133,292.81479 139.39364,208.38940 C 296.07080,118.07872 293.98436,86.456155 386.58726,90.655240 z " + id="path2810" + sodipodi:nodetypes="csssss" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + style="fill:url(#linearGradient4336);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 323.20956,115.96077 C 411.73280,64.583963 447.96623,183.23423 368.71267,258.95342 C 295.77512,328.63825 155.56244,368.63987 131.34819,412.72952 C 100.77570,468.39629 61.456609,474.51259 48.071219,432.62947 C 28.843513,372.46570 5.4609020,327.98798 73.633912,270.60758 C 141.80694,213.22719 297.66629,130.78549 323.20956,115.96077 z " + id="path3570" + sodipodi:nodetypes="csssss" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + style="fill:url(#radialGradient7402);fill-opacity:1.0000000;fill-rule:evenodd;stroke:url(#radialGradient7410);stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 409.08286,173.71586 C 232.84369,291.55343 138.26021,271.39129 64.727313,350.21973 C 34.992601,382.09580 73.316966,450.23498 64.727313,497.30626 C 58.896713,529.25795 42.466570,547.12985 49.153448,578.63648 C 52.590557,594.83115 93.533883,602.18183 99.335909,583.82776 C 110.00027,550.09224 86.347893,528.27550 88.953339,499.03670 C 91.539187,470.01769 124.45549,399.84877 147.78794,384.82832 C 248.54684,319.96399 393.48529,282.56604 409.08286,173.71586 z " + id="path5870" + sodipodi:nodetypes="cssssssc" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient2844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 485.22177,464.42809 L 595.96928,441.06728 L 595.96928,50.855349 L 485.22177,62.968345 L 485.22177,464.42809 z " + id="path7412" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + sodipodi:nodetypes="ccccccccc" + style="fill:url(#linearGradient3624);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 485.22177,463.56288 L 460.99577,456.64116 L 461.42837,79.530546 L 184.25030,47.347076 L 186.28627,175.45177 L 176.71510,182.12790 L 176.03853,31.072581 L 485.22177,62.968362 L 485.22177,463.56288 z " + id="path7414" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + sodipodi:type="arc" + style="fill:none;fill-opacity:1.0000000;stroke:#000000;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path7418" + sodipodi:cx="522.50140" + sodipodi:cy="545.77069" + sodipodi:rx="11.869292" + sodipodi:ry="24.243662" + d="M 534.37070 545.77069 A 11.869292 24.243662 0 1 1 510.63211,545.77069 A 11.869292 24.243662 0 1 1 534.37070 545.77069 z" + transform="matrix(1.713038,0.000000,0.000000,1.713038,-348.8455,-552.6933)" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 544.92160,340.70236 L 526.75209,342.43278 C 509.44778,363.19794 507.71736,396.07611 526.75209,425.49342 L 545.78681,423.76299 L 544.92160,340.70236 z " + id="path8180" + sodipodi:nodetypes="ccccc" /> + <path + inkscape:export-ydpi="14.240000" + inkscape:export-xdpi="14.240000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\heavyindustry2.png" + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient1088);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1391144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 485.83772,63.675174 L 594.79952,51.028654 L 250.15665,22.423869 L 177.80200,30.072579 L 485.83772,63.675174 z " + id="path1087" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/industry/heavyindustry.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/heavyindustry.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/industry/heavyindustry.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/heavyindustry.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,262 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg5455" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="heavyindustry.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/heavyindustry.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient6087"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6088" /> + <stop + style="stop-color:#7c7c7c;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6089" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="linearGradient6719" + gradientTransform="matrix(1.597988,0.000000,0.000000,0.483547,75.74886,-80.15818)" + x1="-28.593918" + y1="1032.4681" + x2="414.24335" + y2="1032.4681" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="linearGradient7360" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.071152,0.000000,0.000000,0.933574,-2.879215,-1.439633)" + x1="36.541126" + y1="416.25647" + x2="177.80095" + y2="486.88641" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="radialGradient7361" + gradientUnits="userSpaceOnUse" + cx="50.236916" + cy="444.20038" + fx="50.236916" + fy="444.20038" + r="197.76036" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="linearGradient7368" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.071152,0.000000,0.000000,0.933574,-2.879215,-1.439633)" + x1="36.541126" + y1="416.25647" + x2="177.80095" + y2="486.88641" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="radialGradient7369" + gradientUnits="userSpaceOnUse" + cx="50.236916" + cy="444.20038" + fx="50.236916" + fy="444.20038" + r="197.76036" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="linearGradient7370" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.071152,0.000000,0.000000,0.933574,-2.879215,-1.439633)" + x1="36.541126" + y1="416.25647" + x2="177.80095" + y2="486.88641" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="radialGradient7371" + gradientUnits="userSpaceOnUse" + cx="50.236916" + cy="444.20038" + fx="50.236916" + fy="444.20038" + r="197.76036" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="linearGradient7372" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.071152,0.000000,0.000000,0.933574,-2.879215,-1.439633)" + x1="36.541126" + y1="416.25647" + x2="177.80095" + y2="486.88641" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6087" + id="radialGradient7373" + gradientUnits="userSpaceOnUse" + cx="50.236916" + cy="444.20038" + fx="50.236916" + fy="444.20038" + r="197.76036" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <g + id="g7357" + transform="matrix(0.879034,0.000000,0.000000,0.879034,35.59795,93.95665)" + style="stroke-width:5.5796266;stroke-miterlimit:4.0000000" + inkscape:export-filename="/home/egore/workspace/heavyindustry.png" + inkscape:export-xdpi="11.410000" + inkscape:export-ydpi="11.410000"> + <path + style="fill:url(#linearGradient7360);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 25.912204,535.55765 L 143.95668,325.38089 C 190.02283,215.01409 332.53994,257.24139 321.02342,361.37006 L 208.73719,611.85470 L 25.912204,535.55765 z " + id="path7358" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient7361);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + id="path7359" + sodipodi:cx="156.91280" + sodipodi:cy="508.20590" + sodipodi:rx="99.330116" + sodipodi:ry="99.330116" + d="M 256.24291 508.20590 A 99.330116 99.330116 0 1 1 57.582680,508.20590 A 99.330116 99.330116 0 1 1 256.24291 508.20590 z" + transform="translate(-34.54961,54.70354)" /> + </g> + <g + id="g7362" + transform="matrix(0.879034,0.000000,0.000000,0.879034,363.8636,-26.23722)" + style="stroke-width:5.5796266;stroke-miterlimit:4.0000000" + inkscape:export-filename="/home/egore/workspace/heavyindustry.png" + inkscape:export-xdpi="11.410000" + inkscape:export-ydpi="11.410000"> + <path + style="fill:url(#linearGradient7370);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 25.912204,535.55765 L 143.95668,325.38089 C 190.02283,215.01409 332.53994,257.24139 321.02342,361.37006 L 208.73719,611.85470 L 25.912204,535.55765 z " + id="path7363" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient7371);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + id="path7364" + sodipodi:cx="156.91280" + sodipodi:cy="508.20590" + sodipodi:rx="99.330116" + sodipodi:ry="99.330116" + d="M 256.24291 508.20590 A 99.330116 99.330116 0 1 1 57.582680,508.20590 A 99.330116 99.330116 0 1 1 256.24291 508.20590 z" + transform="translate(-34.54961,54.70354)" /> + </g> + <path + style="fill:url(#linearGradient6719);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5c5c5c;stroke-width:4.9046793;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 30.193413,493.11489 C 385.30248,514.15891 256.31065,329.75098 601.34275,355.11369 L 668.41045,190.60801 C 310.64284,181.15406 410.71565,325.93130 126.36596,312.15865 L 30.193413,493.11489 z " + id="path6094" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/heavyindustry.png" + inkscape:export-xdpi="11.410000" + inkscape:export-ydpi="11.410000" /> + <g + id="g7354" + transform="matrix(0.879034,0.000000,0.000000,0.879034,35.25514,-80.15821)" + style="stroke-width:5.5796266;stroke-miterlimit:4.0000000" + inkscape:export-filename="/home/egore/workspace/heavyindustry.png" + inkscape:export-xdpi="11.410000" + inkscape:export-ydpi="11.410000"> + <path + style="fill:url(#linearGradient7372);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 25.912204,535.55765 L 143.95668,325.38089 C 190.02283,215.01409 332.53994,257.24139 321.02342,361.37006 L 208.73719,611.85470 L 25.912204,535.55765 z " + id="path6724" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient7373);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + id="path5465" + sodipodi:cx="156.91280" + sodipodi:cy="508.20590" + sodipodi:rx="99.330116" + sodipodi:ry="99.330116" + d="M 256.24291 508.20590 A 99.330116 99.330116 0 1 1 57.582680,508.20590 A 99.330116 99.330116 0 1 1 256.24291 508.20590 z" + transform="translate(-34.54961,54.70354)" /> + </g> + <g + id="g7365" + transform="matrix(0.879034,0.000000,0.000000,0.879034,363.5207,-200.3522)" + style="stroke-width:5.5796266;stroke-miterlimit:4.0000000" + inkscape:export-filename="/home/egore/workspace/heavyindustry.png" + inkscape:export-xdpi="11.410000" + inkscape:export-ydpi="11.410000"> + <path + style="fill:url(#linearGradient7368);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 25.912204,535.55765 L 143.95668,325.38089 C 190.02283,215.01409 332.53994,257.24139 321.02342,361.37006 L 208.73719,611.85470 L 25.912204,535.55765 z " + id="path7366" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient7369);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#5c5c5c;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + id="path7367" + sodipodi:cx="156.91280" + sodipodi:cy="508.20590" + sodipodi:rx="99.330116" + sodipodi:ry="99.330116" + d="M 256.24291 508.20590 A 99.330116 99.330116 0 1 1 57.582680,508.20590 A 99.330116 99.330116 0 1 1 256.24291 508.20590 z" + transform="translate(-34.54961,54.70354)" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/industry/lightindustry.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/lightindustry.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/industry/lightindustry.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/lightindustry.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,386 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="lightindustry.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/lightindustry.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient9836"> + <stop + style="stop-color:#aa5218;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9837" /> + <stop + style="stop-color:#e77800;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9838" /> + </linearGradient> + <linearGradient + id="linearGradient2960"> + <stop + style="stop-color:#434343;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2961" /> + <stop + style="stop-color:#1e1e1e;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2962" /> + </linearGradient> + <linearGradient + id="linearGradient2952"> + <stop + style="stop-color:#373737;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2953" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2954" /> + </linearGradient> + <linearGradient + id="linearGradient2944"> + <stop + style="stop-color:#2a2a2a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2945" /> + <stop + style="stop-color:#505050;stop-opacity:0.97254902;" + offset="1.0000000" + id="stop2946" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2944" + id="linearGradient2947" + gradientTransform="matrix(1.829598,0.000000,0.000000,2.102157,-369.3494,-681.6072)" + x1="567.88922" + y1="570.47388" + x2="312.86325" + y2="467.67075" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2952" + id="linearGradient2951" + gradientTransform="matrix(1.959475,0.000000,0.000000,1.962822,-369.3494,-681.6072)" + x1="400.56808" + y1="526.90326" + x2="576.81567" + y2="612.51868" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2960" + id="radialGradient2959" + gradientTransform="matrix(1.967208,0.000000,0.000000,1.955106,-369.3494,-681.6072)" + cx="414.84171" + cy="560.67798" + fx="414.84171" + fy="560.67798" + r="101.87887" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2952" + id="radialGradient6081" + gradientTransform="matrix(2.221115,0.000000,0.000000,1.731607,-369.3494,-681.6072)" + cx="342.48828" + cy="752.74274" + fx="342.48828" + fy="752.74274" + r="9.1700525" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2952" + id="radialGradient7328" + gradientTransform="matrix(2.077876,0.000000,0.000000,1.850978,-369.3494,-681.6072)" + cx="314.61295" + cy="717.93939" + fx="314.61295" + fy="717.93939" + r="8.4776039" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2952" + id="linearGradient7333" + gradientTransform="matrix(1.385812,0.000000,0.000000,2.775342,-369.3494,-681.6072)" + x1="467.27203" + y1="475.98328" + x2="454.49875" + y2="480.79538" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2960" + id="linearGradient7959" + gradientTransform="matrix(1.020356,0.000000,0.000000,3.769373,-369.3494,-681.6072)" + x1="670.23108" + y1="275.91122" + x2="269.76031" + y2="364.49463" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2952" + id="linearGradient8584" + gradientTransform="matrix(0.874733,0.000000,0.000000,4.396885,-369.3494,-681.6072)" + x1="348.72751" + y1="267.84894" + x2="739.19989" + y2="262.54541" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2960" + id="linearGradient9209" + gradientTransform="matrix(5.351870,0.000000,0.000000,0.718646,-369.3494,-681.6072)" + x1="88.990822" + y1="1252.3165" + x2="195.47275" + y2="1252.3165" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9836" + id="linearGradient9834" + gradientTransform="matrix(2.889865,0.000000,0.000000,1.330894,-369.3494,-681.6072)" + x1="275.75467" + y1="668.32159" + x2="252.77122" + y2="631.77289" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9836" + id="linearGradient9835" + gradientTransform="matrix(2.889865,0.000000,0.000000,1.330894,-369.3494,-681.6072)" + x1="275.75467" + y1="668.32159" + x2="252.77122" + y2="631.77289" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.86831672" + inkscape:cx="365.87271" + inkscape:cy="295.84042" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient2947);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 226.34669,255.06674 L 229.16989,702.54474 L 672.41306,600.20354 L 673.82468,187.30985 L 226.34669,255.06674 z " + id="path1061" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient7959);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 226.34669,253.65514 L 110.59529,247.30293 L 113.41853,672.19527 L 228.46410,702.54472 L 226.34669,253.65514 z " + id="path1062" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient8584);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 58.365995,360.93693 L 110.59529,317.88304 L 112.71270,620.67177 L 62.600802,599.49774 L 58.365995,360.93693 z " + id="path1063" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient9209);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 110.59529,247.30293 L 229.16989,252.94935 L 673.11888,186.60404 L 515.72519,183.78081 L 110.59529,247.30293 z " + id="path1064" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient2951);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 249.63814,277.65240 L 252.46136,622.78918 L 652.65065,538.09306 L 655.47383,216.24768 L 249.63814,277.65240 z " + id="path1065" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient9834);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 347.03871,226.12890 L 505.84396,202.13165 L 445.14505,156.96038 L 361.86053,167.54738 L 347.03871,226.12890 z " + id="path1066" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient9835);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 346.68580,226.12888 L 275.04698,224.71728 L 318.80665,164.72419 L 361.15472,167.54738 L 346.68580,226.12888 z " + id="path1067" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 379.50556,161.90098 L 194.27127,91.436008 L 379.50556,161.90098 z " + id="path1068" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" + sodipodi:nodetypes="ccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 250.07558,184.06473 L 300.18745,66.195944 L 250.07558,184.06473 z " + id="path1069" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 390.09257,162.60679 L 486.34229,7.5992055 L 390.09257,162.60679 z " + id="path1071" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" + sodipodi:nodetypes="ccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 411.06709,16.697876 L 511.99666,78.102562 L 411.06709,16.697876 z " + id="path1073" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#radialGradient7328);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 272.92958,639.72842 L 273.63537,673.60689 L 323.74726,661.60827 L 323.74726,629.14139 L 272.92958,639.72842 z " + id="path1074" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#radialGradient2959);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 249.99102,277.65238 L 252.10844,610.08475 C 387.85755,588.91072 513.01963,559.26707 636.06431,527.50602 C 644.29865,425.40011 646.88660,321.88260 637.47591,219.07088 L 249.99102,277.65238 z " + id="path1696" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#linearGradient7333);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 259.51936,638.31680 L 260.22515,670.78367 L 273.28247,673.25398 L 272.92958,639.72840 L 259.51936,638.31680 z " + id="path1697" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 259.51936,637.61100 L 272.57667,640.08132 L 323.74726,629.14141 L 311.04284,626.67106 L 259.51936,637.61100 z " + id="path1698" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 360.80182,167.54738 L 318.45375,164.01837 L 386.91648,157.66617 L 443.38055,156.25456 L 360.80182,167.54738 z " + id="path1699" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 390.95176,50.223417 L 491.88131,111.62810 L 390.95176,50.223417 z " + id="path2321" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 208.78621,165.36100 L 258.89809,47.492225 L 208.78621,165.36100 z " + id="path2322" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:url(#radialGradient6081);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:7.3543081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 370.32642,607.24757 L 370.03406,660.59003 L 466.56008,638.11080 L 467.55822,586.17992 L 370.32642,607.24757 z " + id="path2963" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#24ff00;stroke-width:4.9028726;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 434.10180,601.30082 L 455.37492,596.43482 L 454.43916,633.11696 L 433.60270,638.17015 L 434.10180,601.30082 z " + id="path2970" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#24ff00;stroke-width:4.9028726;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 425.24314,602.92285 L 424.55691,640.16643" + id="path2971" + sodipodi:nodetypes="cc" + inkscape:export-filename="/home/egore/lightindustry.png" + inkscape:export-xdpi="14.450000" + inkscape:export-ydpi="14.450000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/industry/market.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/market.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/industry/market.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/market.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,1151 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg21600" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="market.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/market.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient35545"> + <stop + style="stop-color:#d1ca59;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop35546" /> + <stop + style="stop-color:#8e893c;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop35547" /> + </linearGradient> + <linearGradient + id="linearGradient31133"> + <stop + style="stop-color:#c05600;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop31134" /> + <stop + style="stop-color:#a62300;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop31135" /> + </linearGradient> + <linearGradient + id="linearGradient29870"> + <stop + style="stop-color:#814b00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop29871" /> + <stop + style="stop-color:#522f00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop29872" /> + </linearGradient> + <linearGradient + id="linearGradient24748"> + <stop + style="stop-color:#fff829;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop24749" /> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop24750" /> + </linearGradient> + <linearGradient + id="linearGradient22868"> + <stop + style="stop-color:#814b00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop22869" /> + <stop + style="stop-color:#271600;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop22870" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22868" + id="linearGradient22867" + gradientTransform="matrix(1.229568,0.000000,0.000000,0.813294,103.8746,-265.1376)" + x1="126.09978" + y1="755.06970" + x2="167.12018" + y2="824.35400" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24747" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,178.5618,38.66635)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24752" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.303126,0.259536,-0.236846,0.276626,427.2771,67.79779)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24754" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,201.5487,73.42119)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24756" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,180.6812,73.42119)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24758" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,154.7240,69.34949)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24760" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.354482,-0.183266,0.167244,0.323493,55.83294,122.3859)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24762" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,240.2300,51.53579)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24764" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.234698,-0.322740,0.294525,0.214180,-49.29799,247.9476)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24766" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,145.5628,87.16319)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24768" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,158.7958,87.16319)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24770" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,206.1294,95.30659)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24772" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355150,0.181969,-0.166061,0.324102,334.3444,84.77909)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24774" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,215.2908,55.09849)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24776" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,214.7818,85.63629)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24778" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,233.6135,69.85839)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24780" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,221.3983,93.77969)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24782" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,213.2549,110.0666)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24784" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,193.9143,103.4500)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24786" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,173.5558,98.86939)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24788" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,241.2479,80.03769)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24790" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,254.4810,60.69709)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient24748" + id="radialGradient24792" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.399054,0.000000,0.000000,0.364168,217.8356,69.34949)" + cx="190.50755" + cy="843.12421" + fx="190.50755" + fy="843.12421" + r="30.240061" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22868" + id="linearGradient24797" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.229568,0.000000,0.000000,0.813294,229.5115,-238.2125)" + x1="126.09978" + y1="755.06970" + x2="167.12018" + y2="824.35400" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient29869" + gradientTransform="matrix(0.335747,0.000000,0.000000,2.978435,98.83613,-264.4178)" + x1="1255.6571" + y1="214.57027" + x2="1360.8130" + y2="214.57027" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient29874" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.335747,0.000000,0.000000,2.978435,-247.0642,-326.6181)" + x1="1255.6571" + y1="214.57027" + x2="1360.8130" + y2="214.57027" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient30511" + gradientTransform="matrix(1.710594,0.000000,0.000000,0.584592,103.8746,-265.1376)" + x1="119.49046" + y1="1257.9601" + x2="194.44608" + y2="1185.1256" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient31133" + id="radialGradient31137" + gradientTransform="matrix(1.701662,0.000000,0.000000,0.587661,8.143420,-197.4779)" + cx="104.18872" + cy="748.38446" + fx="104.18872" + fy="748.38446" + r="236.48529" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient31133" + id="linearGradient31141" + gradientTransform="matrix(2.037585,0.000000,0.000000,0.490777,8.143420,-197.4779)" + x1="140.69582" + y1="862.76190" + x2="171.54303" + y2="968.93262" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient31133" + id="linearGradient31152" + gradientTransform="matrix(0.938191,0.000000,0.000000,1.065881,8.143420,-197.4779)" + x1="712.77899" + y1="441.78259" + x2="673.93335" + y2="426.68445" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient31778" + gradientTransform="matrix(0.268160,0.000000,0.000000,3.729116,8.143420,-197.4779)" + x1="1733.0663" + y1="114.17023" + x2="2606.5078" + y2="171.63344" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient32403" + gradientTransform="matrix(0.452414,0.000000,0.000000,2.210364,8.143420,-197.4779)" + x1="996.07922" + y1="161.88004" + x2="1675.9376" + y2="302.63120" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient32405" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.268160,0.000000,0.000000,3.729116,-345.8409,-265.1701)" + x1="1733.0663" + y1="114.17023" + x2="2606.5078" + y2="171.63344" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22868" + id="linearGradient33030" + gradientTransform="matrix(0.652722,0.000000,0.000000,1.532045,8.143420,-197.4779)" + x1="205.16707" + y1="302.02100" + x2="473.85638" + y2="338.27576" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22868" + id="linearGradient33034" + gradientTransform="matrix(1.066862,0.000000,0.000000,0.937329,8.143420,-197.4779)" + x1="682.99231" + y1="487.96497" + x2="273.88907" + y2="483.08322" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient33660" + gradientTransform="matrix(2.081785,0.000000,0.000000,0.480357,103.1548,-249.3023)" + x1="27.412315" + y1="1495.8926" + x2="187.64610" + y2="1495.8926" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22868" + id="linearGradient34297" + gradientTransform="matrix(0.926396,0.000000,0.000000,1.079452,103.1548,-249.3023)" + x1="375.92917" + y1="639.63617" + x2="507.89175" + y2="699.89502" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient35545" + id="linearGradient35544" + gradientTransform="matrix(0.789069,0.000000,0.000000,1.267316,106.6981,-249.3023)" + x1="47.358120" + y1="603.53503" + x2="193.40268" + y2="603.53503" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient2446" + gradientTransform="scale(1.553203,0.643831)" + x1="195.54054" + y1="185.01144" + x2="326.13574" + y2="301.95178" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22868" + id="linearGradient3071" + gradientTransform="scale(0.603005,1.658361)" + x1="688.69116" + y1="79.793205" + x2="861.91229" + y2="119.48524" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient29870" + id="linearGradient3696" + gradientTransform="scale(2.732988,0.365900)" + x1="134.41707" + y1="257.43463" + x2="112.62836" + y2="521.82166" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1266" + inkscape:window-height="994" + inkscape:window-x="4" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient32405);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 247.10189,136.22742 L 244.04812,411.57681 L 257.79013,414.12163 L 260.84392,132.15571 L 247.10189,136.22742 z " + id="path32404" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient33034);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 334.38919,354.06391 L 669.79630,409.03200 L 673.86801,148.44255 L 333.88023,110.77923 L 334.38919,354.06391 z " + id="path21617" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient31778);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 601.08618,203.91960 L 598.03241,479.26899 L 611.77442,481.81381 L 614.82821,199.84789 L 601.08618,203.91960 z " + id="path31153" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient29874);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 174.70715,173.62695 L 178.55306,483.57090 C 186.91229,495.38558 205.34848,491.36502 207.22967,483.74555 L 204.05239,178.61428 L 174.70715,173.62695 z " + id="path29873" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient30511);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 160.73751,430.21200 L 230.55650,358.23366 L 568.13493,417.25590 L 493.27745,494.99251 L 160.73751,430.21200 z " + id="path29885" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient33030);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 259.57151,208.53024 L 258.55359,410.04992 L 334.89815,355.08184 L 334.89815,219.72744 L 259.57151,208.53024 z " + id="path21616" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient32403);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 613.30132,205.44649 C 610.24754,276.70141 610.75651,482.32277 610.75651,482.32277 L 669.28734,409.03199 L 674.88594,142.33499 L 613.30132,205.44649 z " + id="path21613" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient31152);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 685.06521,125.53918 L 684.04728,141.82603 L 558.49034,272.05098 L 558.49034,248.57689 L 685.06521,125.53918 z " + id="path21611" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient22867);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 196.50602,400.41214 L 248.42032,322.03172 L 359.37442,344.42613 L 298.29876,428.91411 L 196.50602,400.41214 z " + id="path21619" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 248.92928,322.03172 L 254.52788,381.58048" + id="path22872" + sodipodi:nodetypes="cc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24747);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 258.59739,363.86901 C 250.94831,370.12425 228.00105,330.57504 258.22427,338.24274 C 285.46248,331.58395 268.48524,367.50108 258.59739,363.86901 z " + id="path23494" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24752);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 276.56872,366.87856 C 266.69013,366.65533 274.98102,321.68892 292.95203,347.16988 C 317.97322,359.82689 281.71743,376.06835 276.56872,366.87856 z " + id="path24751" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24754);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 281.58430,398.62380 C 273.93522,404.87904 250.98796,365.32983 281.21118,372.99753 C 308.44939,366.33874 291.47215,402.25587 281.58430,398.62380 z " + id="path24753" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24756);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 260.71680,398.62380 C 253.06772,404.87904 230.12046,365.32983 260.34368,372.99753 C 287.58189,366.33874 270.60465,402.25587 260.71680,398.62380 z " + id="path24755" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24758);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 234.75965,394.55209 C 227.11057,400.80733 204.16331,361.25812 234.38653,368.92582 C 261.62474,362.26703 244.64750,398.18416 234.75965,394.55209 z " + id="path24757" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24760);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 276.27838,374.50945 C 272.35636,383.57887 233.80918,358.98555 264.17807,351.91681 C 285.31592,333.49262 286.72985,373.19485 276.27838,374.50945 z " + id="path24759" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24762);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 320.26555,376.73836 C 312.61647,382.99360 289.66921,343.44439 319.89243,351.11209 C 347.13064,344.45330 330.15340,380.37043 320.26555,376.73836 z " + id="path24761" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24764);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 260.78534,374.48114 C 261.34564,384.34636 215.86363,379.64492 239.84034,359.71118 C 250.47473,333.76567 269.53822,368.62038 260.78534,374.48114 z " + id="path24763" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24766);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 225.59829,412.36582 C 217.94921,418.62106 195.00196,379.07185 225.22517,386.73955 C 252.46338,380.08076 235.48614,415.99789 225.59829,412.36582 z " + id="path24765" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24768);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 238.83135,412.36582 C 231.18227,418.62106 208.23501,379.07185 238.45823,386.73955 C 265.69644,380.08076 248.71920,415.99789 238.83135,412.36582 z " + id="path24767" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24770);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 286.16498,420.50924 C 278.51590,426.76448 255.56864,387.21527 285.79186,394.88297 C 313.03007,388.22418 296.05283,424.14131 286.16498,420.50924 z " + id="path24769" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24772);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 257.28160,410.69889 C 247.62168,412.77794 245.23358,367.11599 268.63513,387.72190 C 295.91299,394.21637 264.42535,418.44023 257.28160,410.69889 z " + id="path24771" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24774);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 295.32633,380.30110 C 287.67725,386.55634 264.72999,347.00713 294.95321,354.67483 C 322.19142,348.01604 305.21418,383.93317 295.32633,380.30110 z " + id="path24773" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24776);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 294.81736,410.83893 C 287.16828,417.09417 264.22102,377.54496 294.44424,385.21266 C 321.68245,378.55387 304.70521,414.47100 294.81736,410.83893 z " + id="path24775" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24778);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 313.64902,395.06105 C 305.99994,401.31629 283.05268,361.76708 313.27590,369.43478 C 340.51411,362.77599 323.53687,398.69312 313.64902,395.06105 z " + id="path24777" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24780);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 301.43389,418.98235 C 293.78481,425.23759 270.83755,385.68838 301.06077,393.35608 C 328.29898,386.69729 311.32174,422.61442 301.43389,418.98235 z " + id="path24779" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24782);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 293.29047,435.26919 C 285.64139,441.52443 262.69413,401.97522 292.91735,409.64292 C 320.15556,402.98413 303.17832,438.90126 293.29047,435.26919 z " + id="path24781" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24784);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 273.94985,428.65266 C 266.30077,434.90790 243.35351,395.35869 273.57673,403.02639 C 300.81494,396.36760 283.83770,432.28473 273.94985,428.65266 z " + id="path24783" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24786);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 253.59130,424.07199 C 245.94222,430.32723 222.99496,390.77802 253.21818,398.44572 C 280.45639,391.78693 263.47915,427.70406 253.59130,424.07199 z " + id="path24785" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:#814b00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 196.50602,399.39421 L 198.54187,422.80654 L 297.78980,448.76369 L 295.75395,426.87825 L 196.50602,399.39421 z " + id="path21621" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24788);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 321.28348,405.24033 C 313.63440,411.49557 290.68714,371.94636 320.91036,379.61406 C 348.14857,372.95527 331.17133,408.87240 321.28348,405.24033 z " + id="path24787" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24790);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 334.51653,385.89971 C 326.86745,392.15495 303.92020,352.60574 334.14341,360.27344 C 361.38162,353.61465 344.40438,389.53178 334.51653,385.89971 z " + id="path24789" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:#814b00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 358.35649,343.40820 L 362.42820,397.35836 L 298.29876,449.27266 L 296.26291,427.89618 L 358.35649,343.40820 z " + id="path21620" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient24792);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.095303059pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 297.87114,394.55209 C 290.22206,400.80733 267.27481,361.25812 297.49802,368.92582 C 324.73623,362.26703 307.75899,398.18416 297.87114,394.55209 z " + id="path24791" + sodipodi:nodetypes="ccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient24797);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 322.14289,427.33726 L 374.05719,348.95684 L 524.71046,376.18641 L 463.38032,459.40198 L 322.14289,427.33726 z " + id="path24793" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 374.56615,348.95684 L 380.16475,408.50560" + id="path24794" + sodipodi:nodetypes="cc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <g + id="g27920" + transform="matrix(0.970148,-0.242513,0.242513,0.970148,12.91598,-315.4097)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path24798" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path26664" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path27286" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path24799" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g27925" + transform="matrix(0.909194,0.416373,-0.416373,0.909194,564.1118,-383.1900)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path27926" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path27927" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path27928" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path27929" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g27930" + transform="matrix(0.591640,-0.806202,0.806202,0.591640,-298.3302,96.74619)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path27931" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path27932" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path27933" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path27934" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g27935" + transform="matrix(0.751611,0.659607,-0.659607,0.751611,734.5958,-286.1513)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path27936" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path27937" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path27938" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path27939" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g27940" + transform="matrix(0.970148,-0.242513,0.242513,0.970148,27.34044,-279.6156)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path27941" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path27942" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path27943" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path27944" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g27945" + transform="matrix(0.967668,0.252227,-0.252227,0.967668,439.2859,-357.2958)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path27946" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path27947" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path27948" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path27949" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g29875" + transform="matrix(0.842033,-0.539425,0.539425,0.842033,-106.3458,-139.3479)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path29876" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path29877" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path29878" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path29879" + sodipodi:nodetypes="cscsssc" /> + </g> + <g + id="g29880" + transform="matrix(0.293436,-0.955978,0.955978,0.293436,-344.5139,389.7627)" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997"> + <path + style="fill:#b8f781;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.01707,756.43991 C 178.78807,756.41644 167.24928,762.63028 166.80094,768.15385 C 166.15247,776.14299 179.00716,798.14114 185.62222,798.16261 C 192.51988,798.18501 207.77539,780.46324 206.41777,771.97076 C 204.44968,759.65959 192.30079,756.46031 186.01707,756.43991 z " + id="path29881" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#8fc463;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.54248,788.15045 C 181.60105,775.86554 172.88373,770.00229 179.61561,757.71737 C 184.39308,771.21217 193.45165,768.51321 196.46084,780.61198 C 188.02271,788.98806 181.35287,793.64144 172.54248,788.15045 z " + id="path29882" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#5c952c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.03727,788.52273 C 187.68147,783.43503 191.93155,767.83071 191.99360,761.53314 C 196.64697,767.95480 195.62323,772.70125 198.69446,779.49517 C 193.97904,777.78894 190.75269,790.22897 186.03727,788.52273 z " + id="path29883" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#71b537;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.91428447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.87604,762.50092 C 165.24615,772.73422 179.81337,786.08798 185.14366,787.63984 C 190.21115,789.11518 196.44768,772.96201 200.54289,768.95018 C 202.32659,775.37500 207.95477,777.99752 205.80758,781.32221 C 201.72744,787.63984 197.22227,799.18939 186.07159,799.10104 C 174.32173,799.00691 169.21795,796.85305 166.84884,788.82439 C 164.34310,780.33273 160.50793,773.61167 169.87604,762.50092 z " + id="path29884" + sodipodi:nodetypes="cscsssc" /> + </g> + <path + style="fill:#814b00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 322.14289,426.31933 L 324.17874,449.73166 L 465.16170,480.77845 L 463.12585,458.89301 L 322.14289,426.31933 z " + id="path24795" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient34297);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 494.03899,495.13676 L 494.54796,507.86085 L 570.38356,428.97147 L 569.36563,418.28323 L 494.03899,495.13676 z " + id="path34293" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:#814b00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 525.21942,375.67744 L 529.29113,429.62760 L 465.16169,481.54190 L 463.12584,460.16542 L 525.21942,375.67744 z " + id="path24796" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient29869);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 520.60742,235.82722 L 524.45333,545.77117 C 532.81256,557.58585 551.24876,553.56529 553.12995,545.94582 L 549.95267,240.81455 L 520.60742,235.82722 z " + id="path21614" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient31141);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 88.505969,162.71109 L 89.014933,181.03378 L 558.27953,271.62933 L 558.27952,247.19907 L 88.505969,162.71109 z " + id="path21612" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#radialGradient31137);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 89.341539,161.77516 L 327.73967,84.950533 L 684.64996,125.57775 L 558.74779,247.48054 L 89.341539,161.77516 z " + id="path21610" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient33660);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#361f00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 160.37762,430.93179 L 160.37762,439.56919 L 493.63735,507.58873 L 492.55767,496.07219 L 160.37762,430.93179 z " + id="path33035" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient35544);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#47441c;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 155.04970,570.46339 C 171.16688,588.78609 200.51712,593.87572 251.75281,585.73231 C 261.25347,497.34227 237.16253,458.32171 202.89229,445.25831 C 211.71433,436.43627 201.70471,438.81144 210.52674,429.98940 C 192.20405,434.90939 191.69509,429.65009 173.88136,424.89977 C 186.09649,436.43628 177.44410,433.72180 189.65923,445.25831 C 145.04008,460.35757 167.09517,562.99858 155.04970,570.46339 z " + id="path34298" + sodipodi:nodetypes="ccccccc" + inkscape:export-filename="/home/egore/workspace/market.png" + inkscape:export-xdpi="8.7799997" + inkscape:export-ydpi="8.7799997" /> + <path + style="fill:url(#linearGradient2446);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 208.73720,164.50509 L 221.09080,95.282386 L 497.37036,127.07635 L 482.97470,212.73059 L 208.73720,164.50509 z " + id="path1198" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3071);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 514.28528,188.97773 L 506.36765,122.03787 L 498.09015,127.07635 L 483.69449,212.73059 L 514.28528,188.97773 z " + id="path1820" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3696);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 235.39916,91.770782 L 221.09081,94.413527 L 497.37037,126.71645 L 506.36767,122.03787 L 235.39916,91.770782 z " + id="path1821" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 467.99217,134.29578 L 462.13909,143.45712 C 448.05442,136.79049 441.32942,136.42035 436.56367,141.16679 C 431.90872,145.80287 433.13500,150.49751 435.92746,153.89088 C 439.83636,158.64093 452.22088,161.94661 455.77704,167.50566 C 459.60086,173.48312 461.03563,188.91565 453.48671,195.37143 C 447.45498,200.52972 427.58394,195.18897 420.14958,191.04523 L 422.43992,178.06666 C 432.26022,184.07905 440.07286,189.25867 445.47053,185.95560 C 453.46166,181.06546 446.35163,172.44356 442.67123,169.66875 C 437.26780,165.59488 426.51021,162.52088 424.85750,156.81742 C 422.18402,147.59127 423.21817,136.26485 431.09230,130.98751 C 439.16570,125.57662 453.91397,125.69381 467.99217,134.29578 z " + id="path3703" + sodipodi:nodetypes="ccssssccssssc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 349.91930,121.05643 C 340.66500,132.45237 328.38313,161.13558 330.32568,172.73533 C 331.78632,181.45743 353.77147,186.10750 361.10158,179.07908 C 369.96939,170.57625 379.63677,141.63647 375.86564,124.61469 C 373.74887,115.06022 355.52095,114.15844 349.91930,121.05643 z M 355.01293,127.92234 C 360.47725,121.90608 366.55061,123.15712 368.73168,128.68578 C 371.54112,135.80728 364.92827,162.29733 359.58415,170.18628 C 353.67007,178.91660 338.72259,177.56651 338.21363,169.67756 C 337.48732,158.41967 348.40359,135.19926 355.01293,127.92234 z " + id="path4326" + sodipodi:nodetypes="csssscssss" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 383.63611,123.98887 L 381.85510,130.61017 L 388.47199,131.88735 L 373.07603,176.29681 L 367.60485,175.40851 L 365.82385,182.28430 C 381.25695,184.39888 401.46963,195.18898 407.28799,180.73911 C 414.92644,161.76908 421.39350,144.49768 416.96242,132.38229 C 414.19706,124.82128 395.16902,124.24186 383.63611,123.98887 z M 396.36419,131.87271 C 398.56194,132.55133 407.37676,130.88761 410.84639,135.68994 C 414.04534,140.11763 405.71627,163.46941 402.46229,173.88216 C 399.35423,183.82798 392.54345,186.35202 380.83729,178.97204 L 396.36419,131.87271 z " + id="path6214" + sodipodi:nodetypes="ccccccssccsscc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.26245372pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 293.46148,120.94703 L 297.73602,111.59646 C 283.39849,108.83582 264.88870,104.43558 255.79208,110.52783 C 245.47517,117.43732 228.47534,147.85234 241.89981,157.54779 C 253.12048,165.65161 260.14394,168.12250 269.68434,164.49391 C 275.96678,162.10446 283.88789,145.33102 282.24081,150.60166 L 280.90501,154.87619 L 287.85114,155.94483 L 288.91978,142.05257 L 264.60832,135.64076 L 263.00537,144.18985 L 276.63046,145.79280 C 280.48662,146.24647 270.23892,157.97340 267.01275,158.34926 C 261.06646,159.04203 253.83290,158.79453 246.44151,152.20461 C 237.02379,143.80807 252.56466,122.19922 260.06662,117.47396 C 266.27883,113.56108 283.57661,117.56302 293.46148,120.94703 z " + id="path6215" + sodipodi:nodetypes="ccsssscccccssssc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 307.76183,115.37064 C 298.50753,126.76658 287.49806,154.17738 289.44061,165.77713 C 290.90125,174.49923 312.88640,179.14930 320.21651,172.12088 C 329.08432,163.61805 337.47930,135.95068 333.70817,118.92890 C 331.59140,109.37443 313.36348,108.47265 307.76183,115.37064 z M 312.85546,122.23655 C 318.31978,116.22029 324.39314,117.47133 326.57421,122.99999 C 329.38365,130.12149 324.04320,155.33913 318.69908,163.22808 C 312.78500,171.95840 297.83752,170.60831 297.32856,162.71936 C 296.60225,151.46147 306.24612,129.51347 312.85546,122.23655 z " + id="path6845" + sodipodi:nodetypes="csssscssss" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/industry/pottery.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/pottery.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/industry/pottery.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/industry/pottery.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,210 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="pottery.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/pottery.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient6077"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6078" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop6079" /> + </linearGradient> + <linearGradient + id="linearGradient4829"> + <stop + style="stop-color:#df6839;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4830" /> + <stop + style="stop-color:#893f23;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4831" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient3577"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop3578" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop3579" /> + </linearGradient> + <linearGradient + id="linearGradient2322"> + <stop + style="stop-color:#a86f0a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2323" /> + <stop + style="stop-color:#704a07;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2324" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2322" + id="radialGradient2326" + gradientTransform="scale(2.220964,0.450255)" + cx="109.05077" + cy="1244.0511" + fx="109.05077" + fy="1244.0511" + r="178.42120" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2322" + id="linearGradient2954" + gradientTransform="scale(2.864968,0.349044)" + x1="59.787937" + y1="1674.1019" + x2="152.38841" + y2="1790.8412" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3577" + id="radialGradient3581" + gradientTransform="scale(2.748097,0.363888)" + cx="167.60255" + cy="1592.2350" + fx="167.60255" + fy="1592.2350" + r="52.287437" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4829" + id="linearGradient4833" + gradientTransform="matrix(0.802020,0.000000,0.000000,1.246852,-2.366467,-14.19880)" + x1="548.42950" + y1="274.90308" + x2="609.98505" + y2="424.16382" + gradientUnits="userSpaceOnUse" + spreadMethod="reflect" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6077" + id="linearGradient6080" + gradientTransform="scale(0.637916,1.567604)" + x1="276.77710" + y1="299.05899" + x2="488.01828" + y2="318.64291" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6077" + id="linearGradient6082" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.637916,0.000000,0.000000,1.567604,57.70763,-321.7971)" + x1="276.77710" + y1="299.05899" + x2="488.01828" + y2="318.64291" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4940140" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1274" + inkscape:window-height="1001" + inkscape:window-x="0" + inkscape:window-y="5" + showguides="true" + inkscape:guide-bbox="true" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient2954);fill-opacity:1.0;fill-rule:evenodd;stroke:#493500;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 71.953812,568.93711 L 71.953812,644.23761 C 145.85985,723.44258 646.46873,710.61361 678.54117,641.72760 L 678.54117,568.10044 L 71.953812,568.93711 z " + id="path2329" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient2326);fill-opacity:1.0;fill-rule:nonzero;stroke:#493500;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;stroke-dasharray:none;" + id="path1700" + sodipodi:cx="375.24750" + sodipodi:cy="568.51880" + sodipodi:rx="302.45700" + sodipodi:ry="59.822063" + d="M 677.70450 568.51880 A 302.45700 59.822063 0 1 1 72.790497,568.51880 A 302.45700 59.822063 0 1 1 677.70450 568.51880 z" /> + <path + sodipodi:type="arc" + style="opacity:0.50467288;fill:url(#radialGradient3581);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2955" + sodipodi:cx="460.58807" + sodipodi:cy="579.39551" + sodipodi:rx="141.81595" + sodipodi:ry="17.151781" + d="M 602.40402 579.39551 A 141.81595 17.151781 0 1 1 318.77213,579.39551 A 141.81595 17.151781 0 1 1 602.40402 579.39551 z" + transform="matrix(1.549164,0.000000,0.000000,2.847319,-283.4891,-1078.349)" /> + <path + style="fill:url(#linearGradient4833);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#89301a;stroke-width:2.5000000;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 233.57511,67.795078 C 272.06203,79.787380 277.91874,198.87373 308.03894,197.47927 C 307.48116,253.25742 309.22322,300.91110 271.22536,343.06024 C 241.25161,376.30862 188.28770,393.43230 200.94489,461.03102 C 206.98928,493.31250 266.12152,526.22391 277.91874,567.28840 C 321.62078,592.04214 450.30857,587.61298 464.49665,572.30844 C 478.75543,531.27705 541.92738,510.94773 549.83721,471.90777 C 567.53223,384.57170 492.49881,379.08084 478.72007,335.53019 C 461.26305,280.35352 458.91883,260.22969 457.80327,199.15262 C 492.38572,194.69036 484.29789,94.010812 525.57372,65.285061 C 431.86643,30.144834 323.93571,19.268084 233.57511,67.795078 z " + id="path3582" + sodipodi:nodetypes="ccssccssccc" /> + <path + style="fill:url(#linearGradient6080);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 268.00232,398.65428 C 283.79715,378.89639 232.42376,372.84424 224.81431,445.98361 C 223.32688,460.28029 264.94023,495.04933 276.08921,520.30427 C 289.20145,550.00646 289.38471,558.96768 292.25860,554.84107 C 303.79513,538.27579 254.65135,478.61563 249.60280,455.36728 C 244.55426,432.11893 253.42850,416.88481 268.00232,398.65428 z " + id="path5455" + sodipodi:nodetypes="csssss" /> + <path + style="fill:url(#linearGradient6082);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 301.44643,74.347159 C 317.24126,54.589269 290.96803,59.413858 268.29848,77.332865 C 257.02202,86.246276 275.79419,88.748335 281.08646,114.00327 C 287.74556,145.78074 302.17927,182.96070 304.78590,178.66028 C 313.81241,163.76834 299.80887,155.14519 294.76032,131.89684 C 289.71178,108.64849 286.87261,92.577688 301.44643,74.347159 z " + id="path6081" + sodipodi:nodetypes="csssss" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/menu/game_menu.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/menu/game_menu.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/menu/game_menu.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/menu/game_menu.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,120 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="32.000000px" + height="32.000000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/menu" + sodipodi:docname="game_menu.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/menu/game_menu.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2072"> + <stop + style="stop-color:#c20000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2074" /> + <stop + style="stop-color:#370000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2076" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2072" + id="radialGradient2090" + gradientTransform="matrix(1.573991e-2,0.000000,0.000000,5.544511e-2,4.688561,2.449145)" + cx="455.07556" + cy="250.27718" + fx="455.07556" + fy="250.27718" + r="1277.4088" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2072" + id="radialGradient2092" + gradientTransform="matrix(1.573991e-2,0.000000,0.000000,5.544511e-2,4.271615,2.612914)" + cx="455.07556" + cy="250.27718" + fx="455.07556" + fy="250.27718" + r="1277.4088" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="18.318485" + inkscape:cx="17.987009" + inkscape:cy="15.390255" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="1272" + inkscape:window-height="997" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.36927125;stroke:none;fill-opacity:0.55686277;fill:#000000" + d="M 10.748840,5.0383661 C 5.8865772,7.2373385 2.4983975,12.129089 2.4983975,17.809618 C 2.4983975,25.543794 8.7743635,31.821618 16.508548,31.821618 C 24.242732,31.821618 30.520545,25.543794 30.520545,17.809618 C 30.520545,12.129672 27.133016,7.2385871 22.271027,5.0392896 L 22.271027,10.907011 C 24.245243,12.557246 25.502149,15.037453 25.502149,17.809618 C 25.502149,22.773800 21.472728,26.803218 16.508548,26.803218 C 11.544368,26.803218 7.5167934,22.773800 7.5167934,17.809618 C 7.5167934,15.036971 8.7745588,12.556320 10.748840,10.906089 L 10.748840,5.0383661 z " + id="path1299" /> + <rect + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.36927125;stroke:none;fill-opacity:0.55686277;fill:#000000" + id="rect1301" + width="4.6282611" + height="19.101004" + x="14.195341" + y="0.81152970" + ry="2.7813830" + rx="2.3141305" /> + <path + style="fill:url(#radialGradient2092);fill-opacity:1.0000000;stroke:#000000;stroke-width:0.36927125;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 9.8208152,4.4924694 C 4.9585529,6.6914418 1.5703732,11.583192 1.5703732,17.263721 C 1.5703732,24.997897 7.8463392,31.275721 15.580524,31.275721 C 23.314708,31.275721 29.592521,24.997897 29.592521,17.263721 C 29.592521,11.583775 26.204992,6.6926904 21.343003,4.4933929 L 21.343003,10.361114 C 23.317219,12.011349 24.574125,14.491556 24.574125,17.263721 C 24.574125,22.227903 20.544704,26.257321 15.580524,26.257321 C 10.616344,26.257321 6.5887691,22.227903 6.5887691,17.263721 C 6.5887691,14.491074 7.8465345,12.010423 9.8208152,10.360192 L 9.8208152,4.4924694 z " + id="path1291" /> + <rect + style="fill:url(#radialGradient2090);fill-opacity:1.0000000;stroke:#000000;stroke-width:0.36927125;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1312" + width="4.6282611" + height="19.101004" + x="13.267317" + y="0.26563305" + ry="2.7813830" + rx="2.3141305" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/menu/settings_menu.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/menu/settings_menu.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/menu/settings_menu.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/menu/settings_menu.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,180 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/menu/settings_menu.png" + sodipodi:docname="settings_menu.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/menu" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2071" + height="32.000000px" + width="32.000000px"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2873"> + <stop + id="stop2875" + offset="0.0000000" + style="stop-color:#3f3f3f;stop-opacity:1.0000000;" /> + <stop + id="stop2877" + offset="1.0000000" + style="stop-color:#c0c0c0;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2857"> + <stop + id="stop2859" + offset="0.0000000" + style="stop-color:#3b2200;stop-opacity:1.0000000;" /> + <stop + id="stop2861" + offset="1.0000000" + style="stop-color:#855700;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2849"> + <stop + id="stop2851" + offset="0.0000000" + style="stop-color:#5e5e5e;stop-opacity:1.0000000;" /> + <stop + id="stop2853" + offset="1.0000000" + style="stop-color:#1f1f1f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="9.7735777" + x2="11.449580" + y1="4.2269511" + x1="5.7898483" + gradientTransform="scale(1.035166,0.966029)" + id="linearGradient2855" + xlink:href="#linearGradient2849" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="14.851369" + x2="21.395046" + y1="18.015032" + x1="17.780584" + gradientTransform="scale(0.910996,1.097699)" + id="linearGradient2863" + xlink:href="#linearGradient2857" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="7.0181575" + x2="15.225430" + y1="18.332209" + x1="24.526999" + gradientTransform="scale(1.020352,0.980054)" + id="linearGradient2871" + xlink:href="#linearGradient2873" + inkscape:collect="always" /> + <linearGradient + y2="14.851369" + x2="21.395046" + y1="18.015032" + x1="17.780584" + gradientTransform="scale(0.910996,1.097699)" + gradientUnits="userSpaceOnUse" + id="linearGradient2888" + xlink:href="#linearGradient2857" + inkscape:collect="always" /> + <linearGradient + y2="9.7735777" + x2="11.449580" + y1="4.2269511" + x1="5.7898483" + gradientTransform="scale(1.035166,0.966029)" + gradientUnits="userSpaceOnUse" + id="linearGradient2890" + xlink:href="#linearGradient2849" + inkscape:collect="always" /> + <linearGradient + y2="7.0181575" + x2="15.225430" + y1="18.332209" + x1="24.526999" + gradientTransform="scale(1.020352,0.980054)" + gradientUnits="userSpaceOnUse" + id="linearGradient2892" + xlink:href="#linearGradient2873" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="231" + inkscape:window-x="377" + inkscape:window-height="546" + inkscape:window-width="640" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="16.000000" + inkscape:cx="16.000000" + inkscape:zoom="11.812500" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <g + transform="translate(8.465608e-2,0.338624)" + id="g2884"> + <path + sodipodi:nodetypes="ccccc" + id="path2083" + d="M 5.0180647,5.8682592 L 23.969157,31.367706 L 28.309941,27.693375 L 9.0190610,3.0973719 L 5.0180647,5.8682592 z " + style="fill:url(#linearGradient2888);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + id="path2081" + d="M 0.77995049,16.609485 L 1.9916130,10.941229 L 14.513506,0.72158942 L 18.711980,6.7270350 L 5.4683806,17.389173 L 0.77995049,16.609485 z " + style="fill:url(#linearGradient2890);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + transform="translate(8.465608e-2,0.338624)" + id="g2880"> + <path + id="path2085" + d="M 8.9375000,15.250000 L 1.3437500,20.937500 L 7.1875000,30.562500 L 14.687500,24.843750 L 8.9375000,15.250000 z M 6.8437500,19.062500 L 10.562500,25.625000 L 7.7812500,27.750000 L 3.8437500,21.375000 L 6.8437500,19.062500 z " + style="fill:#8e1515;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccccccc" + id="path2089" + d="M 9.5354864,15.647896 L 27.528877,3.2415750 L 31.025983,7.6065133 L 28.274385,8.7169420 L 26.867666,11.665838 L 24.054450,12.244412 L 22.709348,15.725162 L 19.578155,16.583122 L 18.551030,19.784485 L 15.437188,20.559587 L 14.392713,23.843809 L 9.5354864,15.647896 z " + style="fill:url(#linearGradient2892);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/mining/coalmine.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/coalmine.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/mining/coalmine.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/coalmine.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,929 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="708.66138" + height="708.66138" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="coalmine.svg" + version="1.0" + x="0.0000000" + y="0.0000000" + inkscape:export-filename="/home/egore/workspace/lincity-images/coalmine.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient19891"> + <stop + style="stop-color:#303030;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop19892" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop19893" /> + </linearGradient> + <linearGradient + id="linearGradient19255"> + <stop + style="stop-color:#555555;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop19256" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19257" /> + </linearGradient> + <linearGradient + id="linearGradient11708"> + <stop + style="stop-color:#5d5d5d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11709" /> + <stop + style="stop-color:#292929;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11710" /> + </linearGradient> + <linearGradient + id="linearGradient6683"> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6684" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop6685" /> + </linearGradient> + <linearGradient + id="linearGradient6048"> + <stop + style="stop-color:#cfcfcf;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6049" /> + <stop + style="stop-color:#5d5d5d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6050" /> + </linearGradient> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient6052" + gradientTransform="scale(0.719013,1.390795)" + cx="585.98401" + cy="470.34796" + fx="585.98401" + fy="470.34796" + r="52.276608" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient6056" + gradientTransform="matrix(1.233745,0.000000,0.000000,1.755529,-243.4128,-461.5797)" + x1="328.51797" + y1="445.10104" + x2="333.60910" + y2="458.29462" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient6682" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="139.11574" + y1="859.61609" + x2="156.26242" + y2="875.35773" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient6686" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="176.89450" + y1="878.46210" + x2="186.85065" + y2="890.48700" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient7313" + gradientTransform="matrix(0.776691,0.000000,0.000000,2.788592,-243.4128,-461.5797)" + x1="355.22385" + y1="311.30530" + x2="622.90125" + y2="312.83487" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient7939" + gradientTransform="matrix(1.382170,0.000000,0.000000,1.567010,-243.4128,-461.5797)" + x1="162.94325" + y1="580.00238" + x2="332.32843" + y2="588.27478" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient8564" + gradientTransform="matrix(2.106406,0.000000,0.000000,1.028232,-243.4128,-461.5797)" + x1="217.05249" + y1="970.60608" + x2="226.18030" + y2="938.22028" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient8566" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-138.5273,-244.9784)" + x1="176.89450" + y1="878.46210" + x2="186.85065" + y2="890.48700" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient9815" + gradientTransform="matrix(1.904069,0.000000,0.000000,1.137498,-243.4128,-461.5797)" + x1="141.55222" + y1="817.92725" + x2="191.15134" + y2="831.15369" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient9817" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-210.9924,-455.3770)" + x1="139.11574" + y1="859.61609" + x2="156.26242" + y2="875.35773" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient9819" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="156.27499" + y1="928.82422" + x2="162.13568" + y2="933.09766" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient11082" + gradientTransform="matrix(1.431202,0.000000,0.000000,1.513326,-243.4128,-461.5797)" + x1="130.16898" + y1="495.55145" + x2="357.63406" + y2="622.31219" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient11707" + gradientTransform="matrix(1.547230,0.000000,0.000000,1.399840,-243.4128,-461.5797)" + x1="449.02173" + y1="487.45126" + x2="498.86972" + y2="610.27765" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient11714" + gradientTransform="matrix(2.586092,0.000000,0.000000,0.837508,-243.4128,-461.5797)" + x1="254.38174" + y1="734.84552" + x2="313.91788" + y2="789.95105" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient11718" + gradientTransform="matrix(2.589692,0.000000,0.000000,0.836344,-243.4128,-461.5797)" + x1="181.08142" + y1="717.41785" + x2="242.92342" + y2="781.55225" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient12964" + gradientTransform="matrix(2.030149,0.000000,0.000000,1.066855,-243.4128,-461.5797)" + x1="177.62766" + y1="913.29193" + x2="180.96294" + y2="920.22772" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14211" + gradientTransform="matrix(1.828164,0.000000,0.000000,1.184727,-243.4128,-461.5797)" + x1="188.75690" + y1="836.89905" + x2="203.49179" + y2="844.19476" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient14215" + gradientTransform="matrix(1.163397,0.000000,0.000000,1.861680,-243.4128,-461.5797)" + x1="328.87115" + y1="528.67883" + x2="340.41629" + y2="535.12262" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14217" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="215.40974" + y1="990.95471" + x2="313.97519" + y2="1042.7759" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14235" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,207.3883,-424.3939)" + x1="176.89450" + y1="878.46210" + x2="186.85065" + y2="890.48700" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14237" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.776691,0.000000,0.000000,2.788592,102.5026,-640.9953)" + x1="355.22385" + y1="311.30530" + x2="622.90125" + y2="312.83487" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14247" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.106406,0.000000,0.000000,1.028232,102.5026,-640.9953)" + x1="217.05249" + y1="970.60608" + x2="226.18030" + y2="938.22028" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14251" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.382170,0.000000,0.000000,1.567010,102.5026,-640.9953)" + x1="162.94325" + y1="580.00238" + x2="332.32843" + y2="588.27478" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14874" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-265.0692,-488.8545)" + x1="215.40974" + y1="990.95471" + x2="313.97519" + y2="1042.7759" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient15499" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" + gradientUnits="userSpaceOnUse" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient15503" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="974.29260" + cy="320.04651" + fx="974.29260" + fy="320.04651" + r="42.667896" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient16750" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient17373" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="889.96802" + cy="325.69855" + fx="889.96802" + fy="325.69855" + r="123.73125" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient17995" + gradientTransform="scale(0.554968,1.801905)" + x1="950.22913" + y1="339.08038" + x2="992.73981" + y2="366.24344" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient17999" + gradientTransform="matrix(0.896751,0.132570,-0.349418,2.363591,-104.4107,-572.1006)" + x1="879.77722" + y1="365.68399" + x2="907.35303" + y2="378.45157" + gradientUnits="userSpaceOnUse" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18006" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="889.96802" + cy="325.69855" + fx="889.96802" + fy="325.69855" + r="123.73125" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18007" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18008" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="974.29260" + cy="320.04651" + fx="974.29260" + fy="320.04651" + r="42.667896" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient18009" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.034524,0.112267,-0.295907,2.726726,-431.8589,-598.1391)" + x1="879.77722" + y1="365.68399" + x2="907.35303" + y2="378.45157" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient18010" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.554968,1.801905)" + x1="950.22913" + y1="339.08038" + x2="992.73981" + y2="366.24344" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18011" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" /> + <radialGradient + xlink:href="#linearGradient19255" + id="radialGradient19258" + gradientTransform="scale(1.384399,0.722335)" + cx="421.10483" + cy="1002.0805" + fx="421.10483" + fy="1002.0805" + r="118.80912" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21772" + gradientTransform="matrix(2.142385,0.000000,0.000000,1.010964,-243.4128,-461.5797)" + x1="278.43369" + y1="675.68268" + x2="254.63019" + y2="726.86414" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21773" + gradientTransform="matrix(1.694095,0.000000,0.000000,1.278483,-243.4128,-461.5797)" + x1="366.79565" + y1="490.90662" + x2="355.53992" + y2="536.09961" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21774" + gradientTransform="matrix(1.824467,0.000000,0.000000,1.187127,-243.4128,-461.5797)" + x1="356.59149" + y1="500.31891" + x2="411.76834" + y2="596.46350" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21775" + gradientTransform="matrix(2.020132,0.000000,0.000000,1.072146,-243.4128,-461.5797)" + x1="283.14380" + y1="544.04443" + x2="310.21301" + y2="621.52362" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1268" + inkscape:window-height="994" + inkscape:window-x="2" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title + id="title1160">Coalmine</dc:title> + <dc:date + id="date1162">2005-02-26</dc:date> + <dc:creator + id="creator1164"> + <cc:Agent + id="Agent1165"> + <dc:title + id="title1166">Christoph Brill (egore911)</dc:title> + </cc:Agent> + </dc:creator> + <dc:rights + id="rights1168"> + <cc:Agent + id="Agent1169"> + <dc:title + id="title1170"></dc:title> + </cc:Agent> + </dc:rights> + <dc:publisher + id="publisher1172"> + <cc:Agent + id="Agent1173"> + <dc:title + id="title1174"></dc:title> + </cc:Agent> + </dc:publisher> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient19258);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.4942012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18633" + sodipodi:cx="586.26361" + sodipodi:cy="706.50623" + sodipodi:rx="211.97623" + sodipodi:ry="109.76698" + d="M 798.23984 706.50623 A 211.97623 109.76698 0 1 1 374.28738,706.50623 A 211.97623 109.76698 0 1 1 798.23984 706.50623 z" + transform="matrix(1.990749,-0.716695,0.803443,1.775805,-1357.935,-397.1520)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14247);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 592.37318,303.37715 C 612.34752,321.97826 651.79683,322.97697 671.77117,341.57807 L 615.96787,369.29248 L 530.95211,332.58963 L 592.37318,303.37715 z " + id="path14220" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14251);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 445.79411,136.68332 L 477.25369,143.23739 L 482.49696,191.92485 L 516.20365,199.41522 L 521.44691,149.22970 L 552.90648,155.22201 L 544.66707,324.50449 C 564.64141,343.10559 605.21428,345.97690 625.18862,364.57800 L 627.81025,418.50872 L 382.12593,358.58572 L 379.87880,321.13383 C 392.61243,311.02183 418.45423,315.14154 442.79795,298.66271 L 445.79411,136.68332 z " + id="path14224" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14217);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 613.15395,388.56995 L 613.28059,411.76999 L 327.57847,562.46629 L 326.67847,538.14273 L 613.15395,388.56995 z " + id="path14216" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14237);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 544.71131,323.87470 L 553.23437,157.24345 L 587.13194,140.29467 L 591.86114,303.76361 L 544.71131,323.87470 z " + id="path14231" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14235);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 671.94510,342.23671 L 673.13103,391.91922 L 627.88982,418.67753 L 625.40086,364.69359 L 671.94510,342.23671 z " + id="path14233" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11714);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 72.317342,252.38112 L 335.13221,301.86170 L 679.58305,155.26326 L 393.26894,108.92939 L 72.317342,252.38112 z " + id="path1061" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient9815);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 33.593696,499.26148 L 81.526982,476.48655 C 87.617954,471.63143 103.50745,470.21903 116.21903,466.42320 L 63.518908,513.56203 L 33.593696,499.26148 z " + id="path8569" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11082);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 71.182756,252.74461 C 80.171215,334.38971 91.406765,386.07330 113.12887,451.23958 C 142.43177,539.14824 271.51977,556.83338 297.05983,490.68153 C 315.53608,442.82576 330.26716,415.94304 333.76266,301.42291 L 71.182756,252.74461 z " + id="path1062" + sodipodi:nodetypes="csscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14874);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 578.76398,381.89379 L 612.22280,388.24047 L 323.52452,539.31129 L 307.26925,523.60167 L 578.76398,381.89379 z " + id="path14873" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11707);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 335.13221,300.36363 L 277.79777,517.51837 L 604.21847,357.07377 C 663.91690,323.90624 672.68075,226.32145 679.94655,154.20395 L 335.13221,300.36363 z " + id="path1063" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient8564);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 246.45758,482.79276 C 266.43192,501.39387 305.88123,502.39258 325.85558,520.99369 L 270.05227,548.70809 L 185.03651,512.00524 L 246.45758,482.79276 z " + id="path7314" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient9817);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 166.08917,307.74771 L 171.54861,356.93308 L 137.76623,371.92619 L 131.06804,322.54027 L 166.08917,307.74771 z " + id="path9816" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient6056);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 149.99787,322.75300 L 184.48023,309.38781 C 206.69280,321.37944 183.43347,346.66098 183.17493,363.70863 L 151.49596,377.05824 L 149.99787,322.75300 z " + id="path1696" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient9819);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 179.09610,360.37583 L 170.20724,378.94406 L 143.38239,373.65147 L 179.09610,360.37583 z " + id="path9818" + sodipodi:nodetypes="cccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient7939);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 99.878500,316.09893 L 131.33809,322.65300 L 136.58135,371.34046 L 170.28806,378.83083 L 175.53131,328.64531 L 206.99088,334.63762 L 198.75147,503.92010 C 218.72581,522.52121 259.29868,525.39251 279.27302,543.99361 L 281.89464,597.92434 L 36.210319,538.00133 L 33.963194,500.54944 C 46.696827,490.43744 72.538626,494.55715 96.882343,478.07832 L 99.878500,316.09893 z " + id="path1065" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient15499);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.0111141;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path1068" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.610214,0.238043,-0.170084,1.150518,-220.0969,-430.1750)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 124.05808,500.93699 L 95.205209,521.51279 L 136.34903,532.88466 L 158.82018,508.91547 L 124.05808,500.93699 z " + id="path1069" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient12964);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 111.06237,518.42300 L 133.80222,524.21979 L 145.60234,513.06179 L 125.69635,507.81463 L 111.06237,518.42300 z " + id="path1070" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14211);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 95.023482,521.56212 L 94.452261,536.35334 L 136.17509,547.35917 L 136.25816,532.62764 L 95.023482,521.56212 z " + id="path1071" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14215);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 136.34903,532.80938 L 136.36236,547.33026 L 158.54480,520.55768 L 158.90829,509.02240 L 136.34903,532.80938 z " + id="path1072" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11718);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 109.86011,248.79563 L 332.22694,288.53872 L 639.97494,159.16815 L 396.35596,121.07370 L 109.86011,248.79563 z " + id="path1695" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient6052);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:11.045709;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path1067" + sodipodi:cx="439.23572" + sodipodi:cy="698.12341" + sodipodi:rx="32.064716" + sodipodi:ry="67.183212" + d="M 471.30043 698.12341 A 32.064716 67.183212 0 1 1 407.17100,698.12341 A 32.064716 67.183212 0 1 1 471.30043 698.12341 z" + transform="matrix(0.618346,0.000000,0.000000,0.403717,-121.1810,68.35786)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient6686);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 210.28279,314.03927 L 241.43022,319.52854 L 207.38303,334.25682 L 175.79131,327.77252 L 210.28279,314.03927 z " + id="path4181" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient7313);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 198.79571,503.29031 L 207.31877,336.65906 L 241.21634,319.71028 L 245.94554,483.17922 L 198.79571,503.29031 z " + id="path4182" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient6682);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 134.46313,301.80980 L 165.61058,307.29908 L 131.56337,322.02736 L 99.971664,315.54305 L 134.46313,301.80980 z " + id="path6057" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient8566);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 326.02949,521.65232 L 327.21543,571.33483 L 281.97422,598.09314 L 279.48527,544.10920 L 326.02949,521.65232 z " + id="path8565" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 125.48800,509.19636 L 125.76888,520.24466" + id="path12965" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient17995);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.0111141;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path15500" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.610214,0.238043,-0.170084,1.150518,-212.8736,-428.7393)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient17999);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 598.27703,393.18860 L 586.16033,390.64018 C 563.35623,392.94781 558.79600,466.47714 573.79500,471.72319 L 587.86080,476.45271 L 598.27703,393.18860 z " + id="path15506" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient15503);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:6.5389576;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path15502" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.987734,0.146020,-0.104333,0.705749,110.5845,-91.41637)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient16750);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:19.887169;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path16749" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.324769,4.801160e-2,-3.430507e-2,0.232053,438.2320,263.1032)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient17373);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:19.887169;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path17372" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.324769,4.801160e-2,-3.430507e-2,0.232053,441.6360,263.3442)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18011);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.4942012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18000" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.857603,0.201589,-0.144038,1.327280,-558.2606,-430.2055)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient18010);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.4942012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18001" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.857603,0.201589,-0.144038,1.327280,-549.9113,-428.8791)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient18009);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 417.01890,477.93434 L 403.00703,475.54884 C 376.95141,479.20797 374.98385,563.75410 392.42168,569.10605 L 408.76611,573.90689 L 417.01890,477.93434 z " + id="path18002" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18008);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.6962810;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18003" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.139487,0.123658,-8.835530e-2,0.814178,-163.9093,-56.29975)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18007);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:17.324314;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18004" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.374666,4.065912e-2,-2.905151e-2,0.267704,227.6618,335.8196)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18006);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:17.324314;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18005" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.374666,4.065912e-2,-2.905151e-2,0.267704,231.5771,335.9451)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21775);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 224.79721,253.50409 C 230.00543,240.61595 214.69775,244.90128 230.54210,226.73266 C 246.38644,208.56404 254.18873,175.35655 273.83794,157.39660 C 293.48712,139.43663 321.80532,176.97756 338.42808,164.71537 C 355.05085,152.45319 348.32593,129.58203 393.22577,105.20220 C 416.59093,92.515334 478.32279,150.04587 510.80796,193.12402 C 457.48991,201.59842 278.11527,245.02970 224.79721,253.50409 z " + id="path19259" + sodipodi:nodetypes="csssscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21774);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 334.43465,280.51621 C 376.45352,229.66984 479.54482,125.91796 516.10445,117.91379 C 539.21867,112.85328 563.59636,143.69007 588.13679,179.88279 C 532.70014,201.95152 394.10850,267.45152 334.43465,280.51621 z " + id="path19260" + sodipodi:nodetypes="cscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21773);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 253.92793,268.86392 C 283.23521,236.02565 321.25533,156.66622 348.73521,159.22647 C 378.10439,161.96272 390.57752,213.25072 418.11929,251.38549 C 328.96162,290.04990 332.49262,286.87200 253.92793,268.86392 z " + id="path19261" + sodipodi:nodetypes="cscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21772);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 173.42120,258.80057 C 194.60719,237.61458 221.69625,197.35297 245.98318,198.42052 C 285.96040,200.17776 327.37267,248.56069 370.45082,272.57146 L 333.64018,288.46096 L 173.42120,258.80057 z " + id="path19262" + sodipodi:nodetypes="csccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/mining/commune.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/commune.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/mining/commune.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/commune.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,202 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="704pt" + height="704pt" + id="svg2" + inkscape:label="Pozadí" + sodipodi:version="0.32" + inkscape:version="0.44.1" + sodipodi:docbase="/home/wolfgang/Diverses/lincity/trunk/data/images/gui/buttonpanel/mining" + sodipodi:docname="commune.svg" + version="1.0" + inkscape:export-filename="/home/wolfgang/Diverses/lincity/trunk/data/images/gui/buttonpanel/mining/commune2.png" + inkscape:export-xdpi="4.0900002" + inkscape:export-ydpi="4.0900002"> + <defs + id="defs3"> + <linearGradient + id="linearGradient5641"> + <stop + style="stop-color:black;stop-opacity:0.50196081;" + offset="0" + id="stop5643" /> + <stop + style="stop-color:black;stop-opacity:0;" + offset="1" + id="stop5645" /> + </linearGradient> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path5632" + d="M 0,0 L 5,-5 L -12.5,0 L 5,5 L 0,0 z " + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <linearGradient + id="linearGradient2778"> + <stop + style="stop-color:#593f17;stop-opacity:1;" + offset="0" + id="stop2780" /> + <stop + style="stop-color:#807e00;stop-opacity:1;" + offset="1" + id="stop2782" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2778" + id="linearGradient2784" + x1="192.06166" + y1="450.30356" + x2="489.62576" + y2="638.55206" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5641" + id="radialGradient5647" + cx="302.93192" + cy="378.35303" + fx="302.93192" + fy="378.35303" + r="52.683807" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5641" + id="radialGradient5651" + gradientUnits="userSpaceOnUse" + cx="302.93192" + cy="378.35303" + fx="302.93192" + fy="378.35303" + r="52.683807" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5641" + id="radialGradient5655" + gradientUnits="userSpaceOnUse" + cx="302.93192" + cy="378.35303" + fx="302.93192" + fy="378.35303" + r="52.683807" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5641" + id="radialGradient5659" + gradientUnits="userSpaceOnUse" + cx="302.93192" + cy="378.35303" + fx="302.93192" + fy="378.35303" + r="52.683807" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2778" + id="linearGradient6162" + gradientUnits="userSpaceOnUse" + x1="237.2032" + y1="494.03442" + x2="489.62576" + y2="638.55206" + gradientTransform="matrix(2.368194,0,0,2.368194,-380.1966,-687.6202)" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.50125486" + inkscape:cx="372.04724" + inkscape:cy="458.25726" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="1014" + inkscape:window-height="689" + inkscape:window-x="0" + inkscape:window-y="25" /> + <metadata + id="metadata6"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Vrstva 1" + id="layer1" + inkscape:groupmode="layer"> + <g + id="g5661" + transform="matrix(2.368194,0,0,2.368194,-380.1966,-687.6203)"> + <path + style="opacity:1;fill:url(#radialGradient5647);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:8.7;stroke-opacity:1" + id="path5639" + sodipodi:cx="302.93192" + sodipodi:cy="378.35303" + sodipodi:type="arc" + d="M 355.61572 378.35303 A 52.683807 52.683807 0 1 1 250.24811,378.35303 A 52.683807 52.683807 0 1 1 355.61572 378.35303 z" + transform="translate(25.19661,45.81201)" + sodipodi:rx="52.683807" + sodipodi:ry="52.683807" /> + <path + style="opacity:1;fill:url(#radialGradient5651);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:8.7;stroke-opacity:1" + id="path5649" + sodipodi:cx="302.93192" + sodipodi:cy="378.35303" + sodipodi:type="arc" + d="M 355.61572 378.35303 A 52.683807 52.683807 0 1 1 250.24811,378.35303 A 52.683807 52.683807 0 1 1 355.61572 378.35303 z" + transform="translate(78.45307,12.59831)" + sodipodi:rx="52.683807" + sodipodi:ry="52.683807" /> + <path + style="opacity:1;fill:url(#radialGradient5655);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:8.7;stroke-opacity:1" + id="path5653" + sodipodi:cx="302.93192" + sodipodi:cy="378.35303" + sodipodi:type="arc" + d="M 355.61572 378.35303 A 52.683807 52.683807 0 1 1 250.24811,378.35303 A 52.683807 52.683807 0 1 1 355.61572 378.35303 z" + transform="translate(8.589758,-10.30769)" + sodipodi:rx="52.683807" + sodipodi:ry="52.683807" /> + <path + style="opacity:1;fill:url(#radialGradient5659);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:8.7;stroke-opacity:1" + id="path5657" + sodipodi:cx="302.93192" + sodipodi:cy="378.35303" + sodipodi:type="arc" + d="M 355.61572 378.35303 A 52.683807 52.683807 0 1 1 250.24811,378.35303 A 52.683807 52.683807 0 1 1 355.61572 378.35303 z" + transform="translate(73.29922,60.70092)" + sodipodi:rx="52.683807" + sodipodi:ry="52.683807" /> + </g> + <path + style="opacity:1;fill:url(#linearGradient6162);fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.3681941;stroke-linecap:round;stroke-linejoin:miter;marker-start:none;marker-mid:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:8.7;stroke-opacity:1" + id="path1883" + sodipodi:nodetypes="ccsc" + d="M 778.14813,774.67622 C 398.82143,774.67622 475.47581,823.41069 75.826805,823.41069 C 123.32193,823.41069 249.37292,380.12224 425.63132,379.96998 C 601.88973,379.81773 685.83904,774.67622 778.14813,774.67622 z " /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/mining/oremine.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/oremine.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/mining/oremine.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/oremine.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,901 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="708.66138" + height="708.66138" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="oremine.svg" + version="1.0" + x="0.0000000" + y="0.0000000" + inkscape:export-filename="/home/egore/workspace/lincity-images/oremine.png" + inkscape:export-xdpi="4.0640006" + inkscape:export-ydpi="4.0640006" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient19891"> + <stop + style="stop-color:#fcff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop19892" /> + <stop + style="stop-color:#917e00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop19893" /> + </linearGradient> + <linearGradient + id="linearGradient19255"> + <stop + style="stop-color:#555555;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop19256" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19257" /> + </linearGradient> + <linearGradient + id="linearGradient11708"> + <stop + style="stop-color:#5d5d5d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11709" /> + <stop + style="stop-color:#292929;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11710" /> + </linearGradient> + <linearGradient + id="linearGradient6683"> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6684" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop6685" /> + </linearGradient> + <linearGradient + id="linearGradient6048"> + <stop + style="stop-color:#cfcfcf;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6049" /> + <stop + style="stop-color:#5d5d5d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6050" /> + </linearGradient> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient6052" + gradientTransform="scale(0.719013,1.390795)" + cx="585.98401" + cy="470.34796" + fx="585.98401" + fy="470.34796" + r="52.276608" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient6056" + gradientTransform="matrix(1.233745,0.000000,0.000000,1.755529,-243.4128,-461.5797)" + x1="328.51797" + y1="445.10104" + x2="333.60910" + y2="458.29462" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient6682" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="139.11574" + y1="859.61609" + x2="156.26242" + y2="875.35773" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient6686" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="176.89450" + y1="878.46210" + x2="186.85065" + y2="890.48700" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient7313" + gradientTransform="matrix(0.776691,0.000000,0.000000,2.788592,-243.4128,-461.5797)" + x1="355.22385" + y1="311.30530" + x2="622.90125" + y2="312.83487" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient7939" + gradientTransform="matrix(1.382170,0.000000,0.000000,1.567010,-243.4128,-461.5797)" + x1="162.94325" + y1="580.00238" + x2="332.32843" + y2="588.27478" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient8564" + gradientTransform="matrix(2.106406,0.000000,0.000000,1.028232,-243.4128,-461.5797)" + x1="217.05249" + y1="970.60608" + x2="226.18030" + y2="938.22028" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient8566" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-138.5273,-244.9784)" + x1="176.89450" + y1="878.46210" + x2="186.85065" + y2="890.48700" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient9815" + gradientTransform="matrix(1.904069,0.000000,0.000000,1.137498,-243.4128,-461.5797)" + x1="141.55222" + y1="817.92725" + x2="191.15134" + y2="831.15369" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient9817" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-210.9924,-455.3770)" + x1="139.11574" + y1="859.61609" + x2="156.26242" + y2="875.35773" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient9819" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="156.27499" + y1="928.82422" + x2="162.13568" + y2="933.09766" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient11082" + gradientTransform="matrix(1.431202,0.000000,0.000000,1.513326,-243.4128,-461.5797)" + x1="130.16898" + y1="495.55145" + x2="357.63406" + y2="622.31219" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient11707" + gradientTransform="matrix(1.547230,0.000000,0.000000,1.399840,-243.4128,-461.5797)" + x1="449.02173" + y1="487.45126" + x2="498.86972" + y2="610.27765" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient11714" + gradientTransform="matrix(2.586092,0.000000,0.000000,0.837508,-243.4128,-461.5797)" + x1="254.38174" + y1="734.84552" + x2="313.91788" + y2="789.95105" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient11718" + gradientTransform="matrix(2.589692,0.000000,0.000000,0.836344,-243.4128,-461.5797)" + x1="181.08142" + y1="717.41785" + x2="242.92342" + y2="781.55225" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient12964" + gradientTransform="matrix(2.030149,0.000000,0.000000,1.066855,-243.4128,-461.5797)" + x1="177.62766" + y1="913.29193" + x2="180.96294" + y2="920.22772" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14211" + gradientTransform="matrix(1.828164,0.000000,0.000000,1.184727,-243.4128,-461.5797)" + x1="188.75690" + y1="836.89905" + x2="203.49179" + y2="844.19476" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient11708" + id="linearGradient14215" + gradientTransform="matrix(1.163397,0.000000,0.000000,1.861680,-243.4128,-461.5797)" + x1="328.87115" + y1="528.67883" + x2="340.41629" + y2="535.12262" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14217" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-243.4128,-461.5797)" + x1="215.40974" + y1="990.95471" + x2="313.97519" + y2="1042.7759" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14235" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,207.3883,-424.3939)" + x1="176.89450" + y1="878.46210" + x2="186.85065" + y2="890.48700" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14237" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.776691,0.000000,0.000000,2.788592,102.5026,-640.9953)" + x1="355.22385" + y1="311.30530" + x2="622.90125" + y2="312.83487" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14247" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.106406,0.000000,0.000000,1.028232,102.5026,-640.9953)" + x1="217.05249" + y1="970.60608" + x2="226.18030" + y2="938.22028" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14251" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.382170,0.000000,0.000000,1.567010,102.5026,-640.9953)" + x1="162.94325" + y1="580.00238" + x2="332.32843" + y2="588.27478" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient14874" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.447112,0.000000,0.000000,0.885074,-265.0692,-488.8545)" + x1="215.40974" + y1="990.95471" + x2="313.97519" + y2="1042.7759" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient15499" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" + gradientUnits="userSpaceOnUse" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient15503" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="974.29260" + cy="320.04651" + fx="974.29260" + fy="320.04651" + r="42.667896" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient16750" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient17373" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="889.96802" + cy="325.69855" + fx="889.96802" + fy="325.69855" + r="123.73125" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient17995" + gradientTransform="scale(0.554968,1.801905)" + x1="950.22913" + y1="339.08038" + x2="992.73981" + y2="366.24344" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient17999" + gradientTransform="matrix(0.896751,0.132570,-0.349418,2.363591,-104.4107,-572.1006)" + x1="879.77722" + y1="365.68399" + x2="907.35303" + y2="378.45157" + gradientUnits="userSpaceOnUse" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18006" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="889.96802" + cy="325.69855" + fx="889.96802" + fy="325.69855" + r="123.73125" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18007" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18008" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="974.29260" + cy="320.04651" + fx="974.29260" + fy="320.04651" + r="42.667896" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient18009" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.034524,0.112267,-0.295907,2.726726,-431.8589,-598.1391)" + x1="879.77722" + y1="365.68399" + x2="907.35303" + y2="378.45157" /> + <linearGradient + xlink:href="#linearGradient6048" + id="linearGradient18010" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.554968,1.801905)" + x1="950.22913" + y1="339.08038" + x2="992.73981" + y2="366.24344" /> + <radialGradient + xlink:href="#linearGradient6048" + id="radialGradient18011" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.547099,1.827822)" + cx="876.83997" + cy="328.01367" + fx="876.83997" + fy="328.01367" + r="167.69130" /> + <radialGradient + xlink:href="#linearGradient19255" + id="radialGradient19258" + gradientTransform="scale(1.384399,0.722335)" + cx="421.10483" + cy="1002.0805" + fx="421.10483" + fy="1002.0805" + r="118.80912" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21772" + gradientTransform="matrix(2.142385,0.000000,0.000000,1.010964,-243.4128,-461.5797)" + x1="278.43369" + y1="675.68268" + x2="254.63019" + y2="726.86414" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21773" + gradientTransform="matrix(1.694095,0.000000,0.000000,1.278483,-243.4128,-461.5797)" + x1="366.79565" + y1="490.90662" + x2="355.53992" + y2="536.09961" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21774" + gradientTransform="matrix(1.824467,0.000000,0.000000,1.187127,-243.4128,-461.5797)" + x1="356.59149" + y1="500.31891" + x2="411.76834" + y2="596.46350" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient19891" + id="linearGradient21775" + gradientTransform="matrix(2.020132,0.000000,0.000000,1.072146,-243.4128,-461.5797)" + x1="283.14380" + y1="544.04443" + x2="310.21301" + y2="621.52362" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1268" + inkscape:window-height="994" + inkscape:window-x="2" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient19258);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.4942012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18633" + sodipodi:cx="586.26361" + sodipodi:cy="706.50623" + sodipodi:rx="211.97623" + sodipodi:ry="109.76698" + d="M 798.23984 706.50623 A 211.97623 109.76698 0 1 1 374.28738,706.50623 A 211.97623 109.76698 0 1 1 798.23984 706.50623 z" + transform="matrix(1.990749,-0.716695,0.803443,1.775805,-1357.935,-397.1520)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14247);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 592.37318,303.37715 C 612.34752,321.97826 651.79683,322.97697 671.77117,341.57807 L 615.96787,369.29248 L 530.95211,332.58963 L 592.37318,303.37715 z " + id="path14220" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14251);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 445.79411,136.68332 L 477.25369,143.23739 L 482.49696,191.92485 L 516.20365,199.41522 L 521.44691,149.22970 L 552.90648,155.22201 L 544.66707,324.50449 C 564.64141,343.10559 605.21428,345.97690 625.18862,364.57800 L 627.81025,418.50872 L 382.12593,358.58572 L 379.87880,321.13383 C 392.61243,311.02183 418.45423,315.14154 442.79795,298.66271 L 445.79411,136.68332 z " + id="path14224" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14217);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 613.15395,388.56995 L 613.28059,411.76999 L 327.57847,562.46629 L 326.67847,538.14273 L 613.15395,388.56995 z " + id="path14216" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14237);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 544.71131,323.87470 L 553.23437,157.24345 L 587.13194,140.29467 L 591.86114,303.76361 L 544.71131,323.87470 z " + id="path14231" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14235);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 671.94510,342.23671 L 673.13103,391.91922 L 627.88982,418.67753 L 625.40086,364.69359 L 671.94510,342.23671 z " + id="path14233" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11714);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 72.317342,252.38112 L 335.13221,301.86170 L 679.58305,155.26326 L 393.26894,108.92939 L 72.317342,252.38112 z " + id="path1061" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient9815);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 33.593696,499.26148 L 81.526982,476.48655 C 87.617954,471.63143 103.50745,470.21903 116.21903,466.42320 L 63.518908,513.56203 L 33.593696,499.26148 z " + id="path8569" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11082);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 71.182756,252.74461 C 80.171215,334.38971 91.406765,386.07330 113.12887,451.23958 C 142.43177,539.14824 271.51977,556.83338 297.05983,490.68153 C 315.53608,442.82576 330.26716,415.94304 333.76266,301.42291 L 71.182756,252.74461 z " + id="path1062" + sodipodi:nodetypes="csscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14874);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 578.76398,381.89379 L 612.22280,388.24047 L 323.52452,539.31129 L 307.26925,523.60167 L 578.76398,381.89379 z " + id="path14873" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11707);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 335.13221,300.36363 L 277.79777,517.51837 L 604.21847,357.07377 C 663.91690,323.90624 672.68075,226.32145 679.94655,154.20395 L 335.13221,300.36363 z " + id="path1063" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient8564);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 246.45758,482.79276 C 266.43192,501.39387 305.88123,502.39258 325.85558,520.99369 L 270.05227,548.70809 L 185.03651,512.00524 L 246.45758,482.79276 z " + id="path7314" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient9817);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 166.08917,307.74771 L 171.54861,356.93308 L 137.76623,371.92619 L 131.06804,322.54027 L 166.08917,307.74771 z " + id="path9816" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient6056);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 149.99787,322.75300 L 184.48023,309.38781 C 206.69280,321.37944 183.43347,346.66098 183.17493,363.70863 L 151.49596,377.05824 L 149.99787,322.75300 z " + id="path1696" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient9819);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 179.09610,360.37583 L 170.20724,378.94406 L 143.38239,373.65147 L 179.09610,360.37583 z " + id="path9818" + sodipodi:nodetypes="cccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient7939);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 99.878500,316.09893 L 131.33809,322.65300 L 136.58135,371.34046 L 170.28806,378.83083 L 175.53131,328.64531 L 206.99088,334.63762 L 198.75147,503.92010 C 218.72581,522.52121 259.29868,525.39251 279.27302,543.99361 L 281.89464,597.92434 L 36.210319,538.00133 L 33.963194,500.54944 C 46.696827,490.43744 72.538626,494.55715 96.882343,478.07832 L 99.878500,316.09893 z " + id="path1065" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient15499);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.0111141;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path1068" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.610214,0.238043,-0.170084,1.150518,-220.0969,-430.1750)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 124.05808,500.93699 L 95.205209,521.51279 L 136.34903,532.88466 L 158.82018,508.91547 L 124.05808,500.93699 z " + id="path1069" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient12964);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 111.06237,518.42300 L 133.80222,524.21979 L 145.60234,513.06179 L 125.69635,507.81463 L 111.06237,518.42300 z " + id="path1070" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14211);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 95.023482,521.56212 L 94.452261,536.35334 L 136.17509,547.35917 L 136.25816,532.62764 L 95.023482,521.56212 z " + id="path1071" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient14215);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 136.34903,532.80938 L 136.36236,547.33026 L 158.54480,520.55768 L 158.90829,509.02240 L 136.34903,532.80938 z " + id="path1072" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient11718);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 109.86011,248.79563 L 332.22694,288.53872 L 639.97494,159.16815 L 396.35596,121.07370 L 109.86011,248.79563 z " + id="path1695" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient6052);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:11.045709;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path1067" + sodipodi:cx="439.23572" + sodipodi:cy="698.12341" + sodipodi:rx="32.064716" + sodipodi:ry="67.183212" + d="M 471.30043 698.12341 A 32.064716 67.183212 0 1 1 407.17100,698.12341 A 32.064716 67.183212 0 1 1 471.30043 698.12341 z" + transform="matrix(0.618346,0.000000,0.000000,0.403717,-121.1810,68.35786)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient6686);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 210.28279,314.03927 L 241.43022,319.52854 L 207.38303,334.25682 L 175.79131,327.77252 L 210.28279,314.03927 z " + id="path4181" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient7313);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 198.79571,503.29031 L 207.31877,336.65906 L 241.21634,319.71028 L 245.94554,483.17922 L 198.79571,503.29031 z " + id="path4182" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient6682);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 134.46313,301.80980 L 165.61058,307.29908 L 131.56337,322.02736 L 99.971664,315.54305 L 134.46313,301.80980 z " + id="path6057" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient8566);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 326.02949,521.65232 L 327.21543,571.33483 L 281.97422,598.09314 L 279.48527,544.10920 L 326.02949,521.65232 z " + id="path8565" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.6792285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 125.48800,509.19636 L 125.76888,520.24466" + id="path12965" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient17995);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:4.0111141;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path15500" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.610214,0.238043,-0.170084,1.150518,-212.8736,-428.7393)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient17999);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 598.27703,393.18860 L 586.16033,390.64018 C 563.35623,392.94781 558.79600,466.47714 573.79500,471.72319 L 587.86080,476.45271 L 598.27703,393.18860 z " + id="path15506" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient15503);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:6.5389576;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path15502" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.987734,0.146020,-0.104333,0.705749,110.5845,-91.41637)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient16750);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:19.887169;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path16749" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.324769,4.801160e-2,-3.430507e-2,0.232053,438.2320,263.1032)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient17373);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:19.887169;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path17372" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.324769,4.801160e-2,-3.430507e-2,0.232053,441.6360,263.3442)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18011);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.4942012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18000" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.857603,0.201589,-0.144038,1.327280,-558.2606,-430.2055)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient18010);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.4942012;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18001" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.857603,0.201589,-0.144038,1.327280,-549.9113,-428.8791)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient18009);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 417.01890,477.93434 L 403.00703,475.54884 C 376.95141,479.20797 374.98385,563.75410 392.42168,569.10605 L 408.76611,573.90689 L 417.01890,477.93434 z " + id="path18002" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18008);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.6962810;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18003" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(1.139487,0.123658,-8.835530e-2,0.814178,-163.9093,-56.29975)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18007);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:17.324314;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18004" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.374666,4.065912e-2,-2.905151e-2,0.267704,227.6618,335.8196)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient18006);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:17.324314;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18005" + sodipodi:cx="557.31531" + sodipodi:cy="629.92224" + sodipodi:rx="16.795803" + sodipodi:ry="59.039795" + d="M 574.11111 629.92224 A 16.795803 59.039795 0 1 1 540.51950,629.92224 A 16.795803 59.039795 0 1 1 574.11111 629.92224 z" + transform="matrix(0.374666,4.065912e-2,-2.905151e-2,0.267704,231.5771,335.9451)" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21775);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 224.79721,253.50409 C 230.00543,240.61595 214.69775,244.90128 230.54210,226.73266 C 246.38644,208.56404 254.18873,175.35655 273.83794,157.39660 C 293.48712,139.43663 321.80532,176.97756 338.42808,164.71537 C 355.05085,152.45319 348.32593,129.58203 393.22577,105.20220 C 416.59093,92.515334 478.32279,150.04587 510.80796,193.12402 C 457.48991,201.59842 278.11527,245.02970 224.79721,253.50409 z " + id="path19259" + sodipodi:nodetypes="csssscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21774);fill-opacity:1.0;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 334.43465,280.51621 C 376.45352,229.66984 479.54482,125.91796 516.10445,117.91379 C 539.21867,112.85328 563.59636,143.69007 588.13679,179.88279 C 532.70014,201.95152 394.10850,267.45152 334.43465,280.51621 z " + id="path19260" + sodipodi:nodetypes="cscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21773);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 253.92793,268.86392 C 283.23521,236.02565 321.25533,156.66622 348.73521,159.22647 C 378.10439,161.96272 390.57752,213.25072 418.11929,251.38549 C 328.96162,290.04990 332.49262,286.87200 253.92793,268.86392 z " + id="path19261" + sodipodi:nodetypes="cscc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + <path + style="fill:url(#linearGradient21772);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:5.5188427;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 173.42120,258.80057 C 194.60719,237.61458 221.69625,197.35297 245.98318,198.42052 C 285.96040,200.17776 327.37267,248.56069 370.45082,272.57146 L 333.64018,288.46096 L 173.42120,258.80057 z " + id="path19262" + sodipodi:nodetypes="csccc" + inkscape:export-filename="/home/egore/workspace/coalmine.png" + inkscape:export-xdpi="72.000000" + inkscape:export-ydpi="72.000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/mining/recycling.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/recycling.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/mining/recycling.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/recycling.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,198 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg14881" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docname="recycling.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:export-filename="/home/egore/workspace/lincity-images/recycling.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient4224"> + <stop + style="stop-color:#ffffff;stop-opacity:0.56470591;" + offset="0.0000000" + id="stop4225" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop4226" /> + </linearGradient> + <linearGradient + id="linearGradient3071"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3072" /> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3073" /> + </linearGradient> + <linearGradient + id="linearGradient1818"> + <stop + style="stop-color:#787878;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1819" /> + <stop + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1820" /> + </linearGradient> + <linearGradient + id="linearGradient22986"> + <stop + style="stop-color:#15a329;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop22987" /> + <stop + style="stop-color:#0a5314;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop22988" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient22986" + id="radialGradient3598" + gradientTransform="matrix(1.396796,0.000000,0.000000,0.715924,0.000000,39.37209)" + cx="276.82043" + cy="382.39404" + fx="276.82043" + fy="382.39404" + r="407.43008" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient22986" + id="radialGradient3599" + gradientTransform="matrix(1.396796,0.000000,0.000000,0.715924,0.000000,39.37209)" + cx="276.82043" + cy="382.39404" + fx="276.82043" + fy="382.39404" + r="407.43008" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient22986" + id="radialGradient3600" + gradientTransform="matrix(1.396796,0.000000,0.000000,0.715924,0.000000,39.37209)" + cx="276.82043" + cy="382.39404" + fx="276.82043" + fy="382.39404" + r="407.43008" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4224" + id="linearGradient4227" + gradientTransform="scale(1.080899,0.925156)" + x1="269.54327" + y1="271.19308" + x2="93.739548" + y2="185.10188" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4224" + id="linearGradient4229" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.080899,0.925156)" + x1="417.92621" + y1="705.74365" + x2="186.37193" + y2="616.88953" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4224" + id="linearGradient4852" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.080899,0.925156)" + x1="831.08453" + y1="468.02185" + x2="172.96211" + y2="162.82800" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient3600);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#235802;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 162.96814,413.13144 C 152.00075,317.79960 210.91113,205.57006 353.48704,199.66455 L 345.93663,281.51713 C 378.83877,254.80172 425.66618,182.96224 437.06780,144.58056 C 428.51246,106.37773 383.33821,43.963587 347.62393,11.623881 L 353.73414,81.801407 C 121.55404,85.175986 19.472052,290.46081 44.653202,434.63923 L 95.868419,391.48618 L 162.96814,413.13144 z " + id="path2341" + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:url(#radialGradient3599);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#235802;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 427.72470,218.89809 C 514.85720,259.10220 580.08709,367.78046 510.99259,492.63523 L 445.00282,443.62295 C 450.71335,485.61882 487.72637,562.97355 514.58202,592.67077 C 551.66243,605.22834 628.46506,599.09694 674.65990,585.40742 L 611.53915,554.13459 C 729.38925,354.05875 607.12347,160.11633 470.87663,106.65317 L 481.10496,172.83901 L 427.72470,218.89809 z " + id="path2969" + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:url(#radialGradient3598);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#235802;stroke-width:3.7500000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 465.78981,539.13891 C 389.31312,597.10234 262.72424,603.51771 185.07114,483.79820 L 259.37065,448.63519 C 219.62788,433.91184 133.95576,430.16972 95.114563,439.89143 C 66.585241,466.70052 35.854159,537.35347 26.195263,584.55593 L 83.492082,543.57672 C 204.57430,741.71324 433.23651,725.09453 544.52431,630.03384 L 481.31130,607.91371 L 465.78981,539.13891 z " + id="path2970" + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:url(#linearGradient4227);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 125.27481,226.05507 C 117.64899,236.81790 141.38503,318.45553 167.03309,279.74427 C 200.44914,229.30859 264.13010,188.26733 302.44920,181.91060 C 318.20256,179.29728 339.46500,129.29613 275.00805,123.44902 C 220.47862,118.50247 150.47148,190.49331 125.27481,226.05507 z " + id="path3602" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient4229);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 246.45505,577.05698 C 237.74409,573.15928 191.79133,621.31117 235.90738,635.80804 C 292.94547,654.55121 353.65739,668.78514 392.41460,666.20834 C 457.09934,661.90773 436.17956,595.87734 411.37389,599.31031 C 357.13750,606.81634 268.79252,587.05184 246.45505,577.05698 z " + id="path4228" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient4852);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 557.15408,419.65467 C 538.49500,473.75770 615.02257,437.48679 620.98459,408.91683 C 633.34381,349.69149 601.09359,268.72507 588.77107,243.07683 C 550.34840,163.10343 504.04237,238.69634 514.79927,257.99050 C 543.98727,310.34369 577.49622,360.67154 557.15408,419.65467 z " + id="path4851" + sodipodi:nodetypes="cssss" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/mining/trash.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/trash.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/mining/trash.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/mining/trash.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,731 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="trash.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/trash.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient7389"> + <stop + style="stop-color:#d10000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7390" /> + <stop + style="stop-color:#f6ff00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7391" /> + </linearGradient> + <linearGradient + id="linearGradient6140"> + <stop + style="stop-color:#ebf907;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6141" /> + <stop + style="stop-color:#c2c94b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6142" /> + </linearGradient> + <linearGradient + id="linearGradient3638"> + <stop + style="stop-color:#483100;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3639" /> + <stop + style="stop-color:#929d13;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3640" /> + </linearGradient> + <linearGradient + id="linearGradient3008"> + <stop + style="stop-color:#d3d795;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3009" /> + <stop + style="stop-color:#c2c94b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3010" /> + </linearGradient> + <linearGradient + id="linearGradient1761"> + <stop + style="stop-color:#000000;stop-opacity:0.83921570;" + offset="0.0000000" + id="stop1762" /> + <stop + style="stop-color:#000000;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop1763" /> + </linearGradient> + <linearGradient + id="linearGradient12301"> + <stop + style="stop-color:#0500a6;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12302" /> + <stop + style="stop-color:#030055;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12303" /> + </linearGradient> + <linearGradient + id="linearGradient4824"> + <stop + style="stop-color:#5e5e5e;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4825" /> + <stop + style="stop-color:#414141;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop4828" /> + <stop + style="stop-color:#bfbfbf;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4826" /> + </linearGradient> + <linearGradient + id="linearGradient2938"> + <stop + style="stop-color:#5a5a5a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2939" /> + <stop + style="stop-color:#3f3f3f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2940" /> + </linearGradient> + <linearGradient + id="linearGradient1685"> + <stop + style="stop-color:#404040;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1686" /> + <stop + style="stop-color:#aaaaaa;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1687" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1685" + id="linearGradient1688" + gradientTransform="matrix(1.308814,0.000000,0.000000,1.466566,-164.4577,-160.4523)" + x1="190.94538" + y1="371.95232" + x2="594.03767" + y2="371.95232" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2938" + id="linearGradient2316" + gradientTransform="scale(1.844320,0.542205)" + x1="71.358856" + y1="219.38898" + x2="276.74429" + y2="219.38898" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient4827" + gradientTransform="matrix(0.543387,0.000000,0.000000,3.532402,-162.1199,-161.6210)" + x1="1584.7469" + y1="149.39781" + x2="1348.1373" + y2="140.48643" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient5453" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.618472,0.000000,0.000000,3.069525,-165.6264,-163.6399)" + x1="1254.5811" + y1="172.14720" + x2="893.71295" + y2="165.38538" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient5455" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.655349,0.000000,0.000000,2.907507,-166.7952,-161.3573)" + x1="941.45197" + y1="188.38844" + x2="739.10419" + y2="175.25258" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient5457" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.618472,0.000000,0.000000,3.086540,-169.1328,-162.0653)" + x1="921.96674" + y1="178.90611" + x2="555.71240" + y2="169.89034" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient5459" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.567549,0.000000,0.000000,3.382016,-167.9641,-161.6210)" + x1="1004.9982" + y1="191.74245" + x2="406.39267" + y2="189.67409" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient5463" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.543387,0.000000,0.000000,3.532402,-164.4575,-160.4522)" + x1="769.51917" + y1="169.03793" + x2="337.70651" + y2="170.02808" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4824" + id="linearGradient5464" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.567549,0.000000,0.000000,3.382015,-163.2888,-165.1275)" + x1="1407.2715" + y1="174.16406" + x2="1143.6655" + y2="170.02733" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12301" + id="linearGradient12304" + gradientTransform="matrix(1.707692,0.000000,0.000000,1.124011,-164.4577,-160.4523)" + x1="284.80719" + y1="187.38240" + x2="223.80983" + y2="269.05881" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12301" + id="linearGradient12305" + gradientTransform="matrix(1.707692,0.000000,0.000000,1.124011,-164.4577,-160.4523)" + x1="284.80719" + y1="187.38240" + x2="223.80983" + y2="269.05881" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12301" + id="linearGradient12306" + gradientTransform="matrix(1.707692,0.000000,0.000000,1.124011,-164.4577,-160.4523)" + x1="284.80719" + y1="187.38240" + x2="223.80983" + y2="269.05881" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient1761" + id="radialGradient1764" + gradientTransform="scale(1.748376,0.571959)" + cx="201.93896" + cy="1064.9554" + fx="201.93896" + fy="1064.9554" + r="194.70102" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3008" + id="radialGradient3013" + gradientTransform="scale(0.803400,1.244709)" + cx="461.41507" + cy="188.56514" + fx="461.41507" + fy="188.56514" + r="169.27556" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6140" + id="radialGradient3015" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.803400,1.244709)" + cx="562.83264" + cy="144.25703" + fx="562.83264" + fy="144.25703" + r="57.264038" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3638" + id="radialGradient3642" + gradientTransform="scale(0.711928,1.404636)" + cx="471.36996" + cy="151.21657" + fx="471.36996" + fy="151.21657" + r="22.657148" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3638" + id="radialGradient3644" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.711928,1.404636)" + cx="463.85455" + cy="211.08565" + fx="463.85455" + fy="211.08565" + r="27.403252" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3638" + id="radialGradient5516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.711928,0.000000,0.000000,1.404636,101.3214,-101.1692)" + cx="463.85455" + cy="211.08565" + fx="463.85455" + fy="211.08565" + r="27.403252" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3638" + id="radialGradient5518" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.711928,0.000000,0.000000,1.404636,80.28517,-148.1324)" + cx="463.85455" + cy="211.08565" + fx="463.85455" + fy="211.08565" + r="27.403252" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3008" + id="linearGradient8654" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.677728,1.475518)" + x1="950.96814" + y1="30.577034" + x2="906.22375" + y2="30.276802" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7389" + id="linearGradient8655" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.430949,7.537932e-17,-4.733246e-17,0.806214,-155.9275,-5.865742)" + x1="316.78775" + y1="19.141315" + x2="327.97766" + y2="29.718498" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7389" + id="linearGradient8656" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.447084,0.691045)" + x1="430.74026" + y1="102.15324" + x2="449.59641" + y2="113.16434" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3638" + id="linearGradient9282" + gradientTransform="scale(0.627873,1.592678)" + x1="714.62787" + y1="34.296055" + x2="710.52032" + y2="26.152847" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient1764);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + id="path1135" + sodipodi:cx="353.06522" + sodipodi:cy="609.11133" + sodipodi:rx="340.41055" + sodipodi:ry="111.36108" + d="M 693.47577 609.11133 A 340.41055 111.36108 0 1 1 12.654663,609.11133 A 340.41055 111.36108 0 1 1 693.47577 609.11133 z" + transform="matrix(1.013641,0.000000,0.000000,1.115872,-6.078129,-88.54401)" /> + <path + style="fill:url(#linearGradient1688);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1954236;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 86.839594,89.676143 L 85.670761,589.93286 C 117.22902,684.21800 550.86276,689.67252 615.14810,595.77697 L 612.81045,94.351417 L 86.839594,89.676143 z " + id="path1061" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient2316);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path1691" + sodipodi:cx="321.00674" + sodipodi:cy="118.95387" + sodipodi:rx="189.39819" + sodipodi:ry="55.680538" + d="M 510.40494 118.95387 A 189.39819 55.680538 0 1 1 131.60855,118.95387 A 189.39819 55.680538 0 1 1 510.40494 118.95387 z" + transform="matrix(1.385447,0.000000,0.000000,1.385447,-94.32811,-75.12806)" /> + <path + style="fill:url(#linearGradient9282);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 452.02604,64.759593 C 456.11340,59.105569 458.48570,46.330269 458.17353,37.917217 C 460.02701,37.788306 461.65679,38.330510 462.39175,38.760861 C 462.86378,46.296152 458.45158,61.027288 452.02604,64.759593 z " + id="path8657" + sodipodi:nodetypes="cccc" /> + <g + id="g8650" + transform="matrix(0.991041,0.626658,-0.636589,0.975580,-158.9094,-343.1738)"> + <path + style="fill:url(#linearGradient8654);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 612.95178,12.491326 C 627.46775,28.995785 624.38560,53.851894 610.86387,69.163264 C 619.71265,69.660384 628.56142,70.157514 637.41020,70.654634 C 627.07006,59.519094 622.99365,34.066433 636.81365,13.982693 C 633.03552,13.783844 617.12761,12.789599 612.95178,12.491326 z " + id="path6765" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8655);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.34998791pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 607.99053,14.456749 C 609.44159,9.7203420 614.05860,4.9839350 626.45858,9.5000443 C 636.70395,6.4158720 643.51955,14.732123 645.45430,19.743901 C 642.02451,17.045252 637.40750,15.172717 632.39474,18.091666 C 629.09687,15.503164 620.78625,13.575556 614.58626,17.761217 C 614.23449,14.346599 610.45294,13.410333 607.99053,14.456749 z " + id="path6766" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient8656);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 623.98056,63.695159 C 628.69091,67.983685 632.76852,73.959500 642.01346,68.229748 C 639.30677,73.607981 628.48000,81.728060 622.82055,77.720748 C 615.86048,80.005619 609.21678,68.686722 607.84586,62.640603 C 613.64592,64.292740 619.86779,66.366700 623.98056,63.695159 z " + id="path6767" + sodipodi:nodetypes="ccccc" /> + </g> + <rect + style="fill:url(#linearGradient4827);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4202" + width="51.428268" + height="461.68549" + x="554.36920" + y="138.76675" + ry="19.403824" + rx="19.403824" /> + <rect + style="fill:url(#linearGradient5464);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5450" + width="56.103561" + height="461.68549" + x="488.91513" + y="168.57178" + ry="19.403824" + rx="19.403824" /> + <rect + style="fill:url(#linearGradient5453);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5452" + width="66.622978" + height="456.62363" + x="407.09738" + y="181.42882" + ry="19.403824" + rx="19.403824" /> + <rect + style="fill:url(#linearGradient5455);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5454" + width="74.804741" + height="458.31091" + x="314.17584" + y="191.94826" + ry="19.403824" + rx="19.403824" /> + <rect + style="fill:url(#linearGradient5457);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5456" + width="66.622978" + height="459.15454" + x="231.18935" + y="181.42883" + ry="19.403824" + rx="19.403824" /> + <rect + style="fill:url(#linearGradient5459);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5458" + width="56.103561" + height="461.68549" + x="159.30667" + y="168.57178" + ry="19.403824" + rx="19.403824" /> + <rect + style="fill:url(#linearGradient5463);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5462" + width="51.428268" + height="461.68549" + x="96.190178" + y="142.85765" + ry="19.403824" + rx="19.403824" /> + <path + style="fill:url(#linearGradient12304);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.4636157;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 142.94314,88.507303 L 160.47550,142.27321 C 204.30641,155.61728 247.55290,161.65621 290.79939,164.77308 L 263.33203,68.637292 L 142.94314,88.507303 z " + id="path10435" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient12305);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.4636157;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 143.23534,87.922902 L 176.25464,50.228308 L 295.47469,29.481682 L 263.62424,68.637292 L 143.23534,87.922902 z " + id="path10436" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient12306);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.4636157;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 295.76690,29.773895 L 339.30558,166.23411 C 324.50048,167.69514 307.06553,166.81853 290.50718,163.89647 L 263.33201,68.929494 L 295.76690,29.773895 z " + id="path10437" + sodipodi:nodetypes="ccccc" /> + <g + id="g16076" + transform="matrix(0.735169,-0.114814,0.114814,0.735169,-18.46538,-14.85420)"> + <rect + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect12307" + width="110.72834" + height="39.862202" + x="221.45668" + y="179.90720" + rx="15.272744" + ry="26.077646" /> + <rect + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect12929" + width="103.90887" + height="34.167603" + x="224.51489" + y="182.96539" + rx="13.757225" + ry="26.077646" /> + <rect + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect13551" + width="96.995682" + height="28.262091" + x="228.10039" + y="186.12906" + rx="10.973455" + ry="26.077646" /> + <path + id="path13552" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 241.89643,190.97229 L 241.97551,209.90156 L 257.24021,209.82247 L 257.08202,201.28057 L 254.47200,199.30328 L 256.37020,197.82690 L 256.42293,192.71230 L 255.07837,191.02502 L 241.89643,190.97229 z M 245.90374,198.14327 L 251.20288,198.06417 L 252.78471,196.71961 L 252.74517,194.70278 L 251.59834,193.31868 L 245.85101,193.31868 L 245.90374,198.14327 z M 245.90374,201.38602 L 245.93010,207.68700 L 253.25926,207.52881 L 253.12744,201.91330 L 252.09925,201.30693 L 245.90374,201.38602 z " + sodipodi:nodetypes="cccccccccccccccccccccc" /> + <path + id="path16070" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 260.39615,190.97229 L 260.47523,209.90156 L 264.42323,209.88179 L 264.41664,201.42557 L 270.59568,201.33660 L 271.78699,202.10939 L 271.92376,209.84224 L 275.73993,209.82247 L 275.58174,201.28057 L 272.97172,199.30328 L 274.86992,197.82690 L 274.92265,192.71230 L 273.57809,191.02502 L 260.39615,190.97229 z M 264.40346,198.14327 L 269.70260,198.06417 L 271.28443,196.71961 L 271.24489,194.70278 L 270.09806,193.31868 L 264.35073,193.31868 L 264.40346,198.14327 z " + sodipodi:nodetypes="ccccccccccccccccccccc" /> + <path + id="path16073" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 278.74542,190.97229 L 278.82450,209.90156 L 282.77250,209.88179 L 282.70000,190.97229 L 278.74542,190.97229 z " + sodipodi:nodetypes="ccccc" /> + <path + id="path16074" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 286.24923,190.97229 L 286.32831,209.90156 L 299.18731,209.93452 L 299.15105,206.46437 L 290.16920,206.50886 L 290.20381,190.97229 L 286.24923,190.97229 z " + sodipodi:nodetypes="ccccccc" /> + <path + id="path16075" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 301.83029,190.97229 L 301.90937,209.90156 L 314.76837,209.93452 L 314.73211,206.46437 L 305.75026,206.50886 L 305.78487,190.97229 L 301.83029,190.97229 z " + sodipodi:nodetypes="ccccccc" /> + </g> + <g + id="g16085" + transform="matrix(0.246248,-0.318182,0.169016,0.463572,184.4540,65.37848)"> + <rect + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect16086" + width="110.72834" + height="39.862202" + x="221.45668" + y="179.90720" + rx="64.967293" + ry="34.510311" /> + <rect + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect16087" + width="103.90887" + height="34.167603" + x="224.51489" + y="182.96539" + rx="50.137794" + ry="34.510311" /> + <rect + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect16088" + width="96.995682" + height="28.262091" + x="228.10039" + y="186.12906" + rx="42.369972" + ry="34.510311" /> + <path + id="path16089" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 241.89643,190.97229 L 241.97551,209.90156 L 257.24021,209.82247 L 257.08202,201.28057 L 254.47200,199.30328 L 256.37020,197.82690 L 256.42293,192.71230 L 255.07837,191.02502 L 241.89643,190.97229 z M 245.90374,198.14327 L 251.20288,198.06417 L 252.78471,196.71961 L 252.74517,194.70278 L 251.59834,193.31868 L 245.85101,193.31868 L 245.90374,198.14327 z M 245.90374,201.38602 L 245.93010,207.68700 L 253.25926,207.52881 L 253.12744,201.91330 L 252.09925,201.30693 L 245.90374,201.38602 z " + sodipodi:nodetypes="cccccccccccccccccccccc" /> + <path + id="path16090" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 260.39615,190.97229 L 260.47523,209.90156 L 264.42323,209.88179 L 264.41664,201.42557 L 270.59568,201.33660 L 271.78699,202.10939 L 271.92376,209.84224 L 275.73993,209.82247 L 275.58174,201.28057 L 272.97172,199.30328 L 274.86992,197.82690 L 274.92265,192.71230 L 273.57809,191.02502 L 260.39615,190.97229 z M 264.40346,198.14327 L 269.70260,198.06417 L 271.28443,196.71961 L 271.24489,194.70278 L 270.09806,193.31868 L 264.35073,193.31868 L 264.40346,198.14327 z " + sodipodi:nodetypes="ccccccccccccccccccccc" /> + <path + id="path16091" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 278.74542,190.97229 L 278.82450,209.90156 L 282.77250,209.88179 L 282.70000,190.97229 L 278.74542,190.97229 z " + sodipodi:nodetypes="ccccc" /> + <path + id="path16092" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 286.24923,190.97229 L 286.32831,209.90156 L 299.18731,209.93452 L 299.15105,206.46437 L 290.16920,206.50886 L 290.20381,190.97229 L 286.24923,190.97229 z " + sodipodi:nodetypes="ccccccc" /> + <path + id="path16093" + style="fill:#00074a;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#00074a;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 301.83029,190.97229 L 301.90937,209.90156 L 314.76837,209.93452 L 314.73211,206.46437 L 305.75026,206.50886 L 305.78487,190.97229 L 301.83029,190.97229 z " + sodipodi:nodetypes="ccccccc" /> + </g> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 165.78876,132.73791 L 168.19086,142.68354 L 176.71208,145.25383 L 185.21125,147.38472 L 190.90566,143.24998 L 191.70232,148.84336 L 201.28471,150.87397 L 197.74324,127.70599 L 190.87351,128.75318 L 183.47702,140.07921 L 172.94465,131.58390 L 165.78876,132.73791 z " + id="path16103" + sodipodi:nodetypes="cccccccccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 201.86572,126.79845 L 205.84873,151.86403 L 215.04842,153.68422 L 210.63744,125.50519 L 201.86572,126.79845 z " + id="path16104" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 214.96030,124.68668 L 220.60443,154.71110 L 228.98350,156.13956 L 223.83125,123.25608 L 214.96030,124.68668 z " + id="path16105" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 242.04622,120.56129 L 248.13742,158.99697 L 256.98054,159.88491 L 255.20517,146.47225 L 267.48299,160.14706 L 277.43754,158.66307 L 261.59616,140.95143 L 269.60529,116.11684 L 260.85260,117.52838 L 254.04924,137.79971 L 251.01635,118.99331 L 242.04622,120.56129 z " + id="path16106" + sodipodi:nodetypes="cccccccccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 277.55511,100.17211 L 282.92367,122.44909 L 285.38884,119.78402 L 281.77144,105.05215 L 284.42543,106.16108 L 285.53425,100.90619 L 289.19866,115.66526 L 291.58482,113.00760 L 286.21422,90.888789 L 284.34984,92.865348 L 283.16933,100.65482 L 279.49204,98.078111 L 277.55511,100.17211 z " + id="path18600" + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 287.31042,89.547679 L 292.74099,111.91368 L 295.14213,109.31781 L 289.69456,87.048247 L 287.31042,89.547679 z " + id="path18601" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 290.85479,85.715908 L 296.27036,108.02010 L 302.48134,101.30545 L 301.44423,97.200514 L 297.68141,101.34645 L 293.25594,83.120057 L 290.85479,85.715908 z " + id="path18602" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 298.20597,77.924627 L 303.57454,100.20162 L 306.00768,97.571150 L 304.04046,89.635577 L 308.63295,94.733006 L 311.33721,91.887454 L 305.40632,85.272875 L 305.66553,69.860170 L 303.29639,72.421393 L 303.00937,85.056107 L 300.62413,75.232391 L 298.20597,77.924627 z " + id="path18603" + sodipodi:nodetypes="cccccccccccc" /> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 235.71856,157.13920 L 243.42548,155.75122 L 243.64464,158.30804 L 235.71856,157.13920 z " + id="path19245" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#radialGradient3013);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 332.31365,150.19127 C 300.25493,172.35022 316.18668,312.24883 326.91225,311.72664 C 379.05552,309.18795 348.28457,184.61754 410.01123,161.55792 C 422.38468,147.91900 352.41279,136.29877 332.31365,150.19127 z " + id="path1765" + sodipodi:nodetypes="cscs" /> + <path + style="fill:url(#radialGradient3015);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 385.19538,145.93196 C 437.92293,175.47280 378.01878,268.97458 443.48914,274.35429 C 455.09708,275.30811 463.15837,166.82937 448.76191,141.26937 C 436.27587,119.10118 372.18147,126.55577 385.19538,145.93196 z " + id="path3014" + sodipodi:nodetypes="cssc" /> + <path + style="fill:url(#radialGradient3642);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 343.36331,196.56917 C 337.74518,190.59065 326.74868,191.12967 327.12315,210.27839 C 327.22821,215.76892 347.80496,245.75594 347.58154,234.32226 C 347.43896,227.16013 334.55942,218.26850 342.09784,214.28570 C 353.87133,208.06537 348.79814,202.35263 343.36331,196.56917 z " + id="path3016" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#radialGradient3644);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 318.37937,270.88683 C 315.05185,278.38574 322.68948,302.32745 326.18308,309.90538 C 327.73261,313.26644 348.97400,306.15346 348.75058,294.71978 C 348.60800,287.55765 332.71779,296.91604 330.82313,288.60336 C 329.30922,281.96121 324.23603,257.68829 318.37937,270.88683 z " + id="path3643" + sodipodi:nodetypes="cssss" /> + <g + id="g5512" + transform="translate(7.592800,-21.93476)"> + <path + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 330.70864,83.098982 L 383.85824,53.360513 L 430.25869,86.262649 L 427.09502,115.15747 L 373.09299,141.12951 L 333.23957,102.08098 L 330.70864,83.098982 z " + id="path4890" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:#f8f8f8;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.22994273pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 382.07511,66.983069 L 354.26497,105.71511 L 378.13040,115.25503 L 367.87418,98.273975 L 375.36911,85.299698 L 381.48339,120.78817 L 355.25114,122.88695 L 387.40045,95.221206 L 400.61519,110.86666 L 398.64284,129.18329 L 388.38662,102.66234 C 388.38662,102.66234 406.33500,81.102137 406.33500,77.476971 C 406.33500,73.851805 390.75344,60.877526 390.75344,60.877526 C 390.75344,60.877526 347.55897,67.173867 363.73224,75.187393 C 379.90551,83.200918 409.88523,104.18872 409.88523,104.18872 L 409.68800,116.78141 L 380.29999,124.60413 L 353.08155,126.32132 L 342.62810,99.991165 L 388.38662,87.589278 L 421.12764,78.049367 L 423.09998,94.076417 L 412.44929,120.97897 C 412.44929,120.97897 381.68063,100.37276 381.28616,99.418765 C 380.89169,98.464775 348.34791,85.299698 348.34791,85.299698 L 340.19897,96.223501 L 346.37556,115.25503 L 361.75990,76.713779 L 355.44837,56.298368 L 399.62902,62.022315 L 416.59123,82.819322 L 429.21427,114.87343 L 404.55989,97.892385 L 413.43546,83.964111 L 421.32487,115.44582 L 414.61888,124.60413 L 379.90551,124.60413 L 364.12671,129.56489 L 383.85022,132.04527 L 402.78477,128.61090 C 402.78477,128.61090 394.30367,112.77464 391.73962,111.05746 C 389.17557,109.34028 350.51750,117.16301 350.51750,117.16301 C 350.51750,117.16301 344.00874,100.18197 344.00874,98.655575 C 344.00874,97.129188 334.54146,74.805796 336.11934,74.042604 C 337.69722,73.279410 357.02625,67.746262 357.02625,67.746262 L 365.31013,85.490497 L 364.32395,108.76788 C 364.32395,108.76788 331.78017,99.037175 332.17464,97.701585 C 332.56911,96.365995 364.91566,72.516218 364.91566,72.516218 L 382.07511,66.983069 z " + id="path4267" + sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccccccccccccc" /> + </g> + <path + style="fill:url(#radialGradient5516);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 415.06075,187.01231 C 416.14722,195.14408 424.85454,195.67453 428.34814,203.25246 C 429.89767,206.61352 427.71774,223.98619 436.57369,216.75077 C 442.75844,211.69775 446.27206,172.96841 433.83184,176.88857 C 427.33432,178.93608 412.90278,170.86102 415.06075,187.01231 z " + id="path5515" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#radialGradient5518);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 387.69719,141.73640 C 384.18303,149.14968 413.18684,147.65566 419.96658,142.79095 C 435.85806,131.38823 432.83449,155.51006 441.69044,148.27464 C 447.87519,143.22162 420.59579,126.42703 408.15557,130.34719 C 401.65805,132.39470 393.55384,129.38151 387.69719,141.73640 z " + id="path5517" + sodipodi:nodetypes="cssss" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/misc/book.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/book.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/misc/book.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/book.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,262 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="708.66138" + height="708.66138" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="book.svg" + version="1.0" + x="0.0000000" + y="0.0000000" + inkscape:export-filename="/home/egore/workspace/lincity-images/book.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient13521"> + <stop + style="stop-color:#bce3db;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop13522" /> + <stop + style="stop-color:#30e300;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop13523" /> + </linearGradient> + <linearGradient + id="linearGradient11020"> + <stop + style="stop-color:#fffdd3;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11021" /> + <stop + style="stop-color:#ece883;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11022" /> + </linearGradient> + <linearGradient + xlink:href="#linearGradient11020" + id="linearGradient11019" + gradientTransform="matrix(2.283353,0.000000,0.000000,0.527444,-37.06408,-40.87931)" + x1="150.00792" + y1="759.24591" + x2="181.22377" + y2="1096.8516" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient13521" + id="linearGradient13520" + gradientTransform="matrix(1.069299,0.000000,0.000000,1.126290,-37.06408,-40.87931)" + x1="334.88568" + y1="283.50818" + x2="329.13803" + y2="298.39987" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.86831673" + inkscape:cx="398.27130" + inkscape:cy="337.93846" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1258" + inkscape:window-height="994" + inkscape:window-x="12" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:#c11d16;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1153431;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 9.5326760,490.52669 L 292.88541,519.40545 C 280.68004,539.36242 422.50678,535.62215 405.56197,517.66353 L 699.13825,483.80364 L 639.88561,264.03263 L 164.77381,267.65795 L 9.5326760,490.52669 z " + id="path1062" + sodipodi:nodetypes="ccccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#f2e37d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 23.758903,483.66228 L 290.74786,512.09897 L 327.87354,415.73019 L 55.355226,434.68798 L 23.758903,483.66228 z " + id="path2930" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#f2e37d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 688.07167,477.34301 L 671.48358,396.77238 L 410.02400,456.80540 L 402.91483,510.51916 L 688.07167,477.34301 z " + id="path2931" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#fffdd3;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1153431;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 357.89006,501.83017 L 685.70194,366.75587 C 678.85606,289.87148 660.16157,223.25590 639.09735,185.86690 C 560.10654,206.93113 474.79646,187.71003 395.01574,260.90818 C 347.88454,201.13847 265.99741,172.17516 180.16072,179.54764 C 127.76348,243.53020 91.164403,321.73112 46.666240,392.82285 L 357.89006,501.83017 z " + id="path1685" + sodipodi:nodetypes="ccccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1153431;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 396.59555,258.53846 L 357.89006,494.72099" + id="path2308" + sodipodi:nodetypes="cc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:url(#linearGradient11019);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1153431;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 46.666241,392.82284 L 45.086424,470.23384 C 138.29559,472.86687 216.49650,490.50814 298.64695,511.30907 L 400.54509,509.72925 C 499.02031,478.39622 590.38636,472.34025 681.75240,470.23384 L 685.70195,366.75587 C 534.30288,364.12284 447.67628,379.65770 357.10015,493.93108 C 274.15979,405.72467 161.20293,393.34945 46.666241,392.82284 z " + id="path7907" + sodipodi:nodetypes="cccccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:url(#linearGradient13520);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.27435617pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 292.18393,227.40484 C 326.55516,236.44428 344.31787,246.51462 371.78121,273.14014 L 357.33972,343.58570 C 326.34023,309.51419 290.54116,302.59809 261.49659,294.49914 L 292.18393,227.40484 z " + id="path11023" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#e0e0e0;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.27435617pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 307.84024,267.94626 L 344.14595,279.81544 L 344.84414,258.31129 L 318.17341,250.49160 L 307.84024,267.94626 z " + id="path11031" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#ffe8b3;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.27435617pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 321.52470,256.49601 C 320.82652,257.47346 310.07443,280.51363 310.07443,280.51363 L 336.32626,284.42347 L 338.70010,263.61751 L 321.52470,256.49601 z " + id="path11030" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000a3c;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000a3c;stroke-width:0.27435617pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 287.45320,301.59887 L 294.99360,274.50923 L 344.56487,292.66208 L 333.67315,322.68411 C 317.84760,312.58367 308.30571,308.20837 287.45320,301.59887 z " + id="path11032" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13524" + d="M 193.67363,202.19414 C 200.98038,202.70242 208.30534,202.99801 215.61296,203.54333 C 235.78401,205.05311 255.92107,208.59987 274.19655,217.56147 C 277.98626,219.60449 276.15299,218.56570 279.70171,220.66831 L 270.16142,226.81811 C 266.84494,224.64124 268.56554,225.71526 264.99276,223.60705 C 247.10339,214.12569 226.91777,210.75111 206.86004,209.82737 C 198.89960,209.51426 190.90856,209.38880 182.95774,209.97970 L 193.67363,202.19414 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13527" + d="M 183.34047,232.07654 C 187.97894,232.42124 192.62879,232.62791 197.26983,232.95505 C 214.61393,234.50124 231.99673,235.85501 249.26562,238.12902 C 254.63808,239.01632 260.66182,239.58647 264.90576,243.36515 L 254.11078,250.03799 C 250.16363,246.61524 244.93759,245.63788 239.91560,244.70890 C 222.78240,241.73314 205.38512,240.34372 188.02587,239.60706 C 182.89275,239.49393 177.74678,239.45091 172.62458,239.86210 L 183.34047,232.07654 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13529" + d="M 168.25965,261.12110 C 176.64665,261.56041 188.91674,263.06065 198.28065,264.36427 C 213.70532,266.56878 229.01998,269.46476 244.30407,272.47645 L 236.30740,278.03819 C 221.07199,274.66285 205.71500,271.77769 190.19102,270.09418 C 179.72529,269.01084 167.37816,267.93017 157.54374,268.90667 L 168.25965,261.12110 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13533" + d="M 325.37780,377.82379 C 321.12595,372.94964 315.34529,369.49314 309.91527,366.08895 C 290.79983,354.25008 269.56706,346.35511 247.75417,341.18366 C 227.63942,336.53739 206.92967,335.84339 186.37753,335.26021 C 167.96418,334.83564 149.53957,334.63728 131.12340,335.00940 C 128.31191,335.06940 125.50092,335.15371 122.69232,335.29513 L 132.84473,327.90644 C 135.41551,328.00801 137.98713,328.08586 140.55888,328.15811 C 158.61903,328.65057 176.68576,328.77886 194.74701,329.21592 C 215.31813,329.80875 236.09906,330.23282 256.14745,335.38990 C 278.07181,340.99128 299.33352,349.11174 319.13516,360.11366 C 324.28972,362.97439 331.91713,367.73478 336.09371,370.03824 L 325.37780,377.82379 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13534" + d="M 228.74876,309.12222 C 222.01118,305.73411 214.26433,303.90772 206.94727,302.03846 C 188.59838,297.81799 169.86334,294.09900 150.95097,294.36675 C 140.71174,294.48320 134.45629,299.52777 150.36825,290.63425 L 138.88714,296.82594 C 136.91903,288.32071 154.54576,287.34294 160.31174,287.58367 C 179.02589,288.34769 197.42435,292.30650 215.73725,295.95732 C 223.42583,297.61685 232.20473,299.84165 239.46465,301.33666 L 228.74876,309.12222 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13536" + d="M 97.384014,363.24493 C 97.372897,363.19942 97.361780,363.15391 97.350664,363.10839 C 101.19726,360.92200 104.99637,358.64987 108.89044,356.54920 C 111.66210,355.05401 122.06574,357.80977 124.93212,358.06870 C 136.52778,359.11619 148.11570,360.22995 159.69664,361.42975 C 200.63981,365.94646 241.67414,371.10037 281.73736,380.91188 C 297.13948,385.41055 315.39674,388.87839 326.11434,402.00680 C 328.96044,405.54800 330.32333,409.67746 330.01601,414.16681 C 329.99744,414.41563 329.96283,414.66272 329.93624,414.91067 L 318.23151,420.62552 C 318.28420,420.38300 318.34881,420.14307 318.38959,419.89795 C 319.10167,415.69856 318.22458,411.72397 315.68280,408.22167 C 306.08603,395.20956 288.88959,390.80060 274.34244,385.99953 C 234.90097,374.90038 194.09991,369.40288 153.34469,365.95980 C 141.12796,365.06192 128.91162,364.28843 116.66282,364.01172 C 112.52133,363.91816 108.37566,363.86722 104.23354,363.96248 C 102.27637,364.00748 96.700362,365.40526 98.376316,364.39347 C 102.05561,362.17224 111.85614,361.49250 109.44832,357.78666 L 97.384014,363.24493 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13539" + d="M 621.92951,221.47512 C 608.94492,220.69634 595.89037,221.18463 582.90306,221.73413 C 551.68456,222.90455 520.74907,227.68028 490.82024,236.62817 C 470.32021,243.31585 449.92822,250.66960 430.37922,259.82101 C 425.08919,262.72349 408.26705,271.28638 432.35234,258.44813 C 434.21587,257.45481 428.85448,260.82095 427.19127,262.12219 C 423.15760,265.27795 419.61063,268.88119 416.51470,272.95320 L 400.56560,279.81886 C 411.26431,265.59690 427.50924,257.37195 443.18171,249.64663 C 462.47189,240.89357 482.49708,233.74659 502.70998,227.46113 C 532.68550,218.86739 563.58638,214.72950 594.69595,213.06919 C 608.81350,212.15794 622.93918,211.35493 637.05835,210.48337 L 621.92951,221.47512 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13543" + d="M 386.86220,434.18190 C 388.45666,429.05164 393.53198,424.85140 397.22036,421.04034 C 424.51949,393.12205 458.01987,372.84196 491.71315,353.69956 C 525.01120,334.96142 561.63864,324.21856 599.79871,323.03074 C 615.14110,322.63727 630.38475,324.54062 645.38008,327.63384 L 632.44147,336.61193 C 617.95284,333.20323 603.13820,331.30004 588.23092,331.48486 C 550.56214,332.42175 514.44454,343.31038 481.64361,361.82720 C 493.92010,354.12785 462.29590,373.71130 462.14332,373.81266 C 449.64159,382.11889 437.63038,391.18830 426.39824,401.15099 C 421.54026,405.45992 416.83029,409.94579 412.40044,414.69565 C 409.28861,418.12984 406.05557,421.92832 403.55260,425.67771 L 386.86220,434.18190 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13544" + d="M 395.52312,378.24557 C 406.08928,365.60363 430.92460,354.89825 445.07537,347.44369 C 481.44460,328.84588 519.76323,314.05239 559.28199,303.71256 C 584.96290,297.38642 611.55804,293.34572 638.03548,295.72924 L 624.63158,305.24446 C 599.21880,301.88396 573.44891,306.01135 548.70447,311.81470 C 508.82660,322.02458 470.29055,337.22096 433.89545,356.43866 C 425.24450,361.15091 425.67908,360.99601 435.02257,355.52938 C 436.59620,354.60869 431.86601,357.35510 430.30180,358.29171 C 425.04598,361.43878 416.68205,368.47330 412.21352,369.74138 L 395.52312,378.24557 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13545" + d="M 398.52999,342.48257 C 411.33719,332.37716 426.02648,324.74603 440.51567,317.33032 C 480.23085,297.36293 522.58126,283.27038 565.58237,272.33417 C 590.69238,266.65550 616.05974,260.37411 641.89940,259.30037 L 628.51761,269.04893 C 603.97129,268.56913 579.72161,274.64984 555.90220,279.73910 C 512.05002,290.68791 469.04413,305.52791 428.96530,326.60623 C 424.81204,328.83342 405.88162,339.19053 428.16757,326.77244 C 428.43691,326.62236 416.05895,334.37891 415.83443,335.31483 L 398.52999,342.48257 z " + inkscape:export-filename="/home/egore/workspace/book.png" + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path13546" + d="M 415.37417,297.17227 C 370.56329,320.65272 434.45284,286.87455 443.49079,282.92922 C 481.26324,267.40305 520.93688,256.93672 560.60570,247.50637 C 583.75829,242.03744 607.14756,237.65127 630.65180,234.00696 L 619.39874,242.43074 C 596.31542,245.47341 573.40214,249.68013 550.73963,255.03290 C 510.32921,264.66491 469.92769,275.56453 431.77589,292.21975 C 425.46818,295.12209 419.21653,298.10851 413.08172,301.36334 C 410.38225,302.79557 402.42041,307.34205 405.06808,305.81616 C 409.63265,303.18552 414.19580,300.55239 418.76343,297.92704 C 419.29786,297.61986 417.70713,298.56289 417.18494,298.89045 C 411.82538,302.25253 404.43651,313.25115 400.21960,308.18271 L 415.37417,297.17227 z " + inkscape:export-xdpi="8.3000002" + inkscape:export-ydpi="8.3000002" + inkscape:export-filename="/home/egore/workspace/book.png" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/misc/fire.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/fire.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/misc/fire.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/fire.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,348 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="708.66138" + height="708.66138" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="fire.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + version="1.0" + x="0.0000000" + y="0.0000000" + inkscape:export-filename="/home/egore/workspace/lincity-images/fire.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient8661"> + <stop + style="stop-color:#980000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8662" /> + <stop + style="stop-color:#f49d9d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8663" /> + </linearGradient> + <linearGradient + id="linearGradient8654"> + <stop + style="stop-color:#868686;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8655" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8656" /> + </linearGradient> + <linearGradient + id="linearGradient8024"> + <stop + style="stop-color:#daa116;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8025" /> + <stop + style="stop-color:#e9eb14;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8026" /> + </linearGradient> + <linearGradient + id="linearGradient7398"> + <stop + style="stop-color:#a00000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7399" /> + <stop + style="stop-color:#680000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7400" /> + </linearGradient> + <linearGradient + id="linearGradient6141"> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6142" /> + <stop + style="stop-color:#626262;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6143" /> + </linearGradient> + <linearGradient + id="linearGradient4888"> + <stop + style="stop-color:#19160b;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4889" /> + <stop + style="stop-color:#b19c51;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop4891" /> + <stop + style="stop-color:#ecc741;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4890" /> + </linearGradient> + <linearGradient + xlink:href="#linearGradient4888" + id="linearGradient4884" + gradientTransform="matrix(2.565210,0.000000,0.000000,0.511540,-85.80267,-197.6995)" + x1="159.83929" + y1="612.99152" + x2="188.74640" + y2="612.99152" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient4888" + id="linearGradient4896" + gradientTransform="matrix(2.201783,0.000000,0.000000,0.595974,-85.80267,-197.6995)" + x1="179.87556" + y1="559.84564" + x2="231.89330" + y2="559.84564" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient4888" + id="linearGradient5519" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.565210,0.000000,0.000000,0.511540,-78.43164,-231.6168)" + x1="159.83929" + y1="612.99152" + x2="188.74640" + y2="612.99152" /> + <linearGradient + xlink:href="#linearGradient6141" + id="linearGradient6144" + gradientTransform="matrix(1.676027,0.000000,0.000000,0.782927,-81.13846,-197.6995)" + x1="292.21893" + y1="304.46170" + x2="360.87494" + y2="304.46170" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient4888" + id="linearGradient6776" + gradientTransform="matrix(1.371171,0.000000,0.000000,0.956999,-85.80267,-197.6995)" + x1="294.40732" + y1="310.15515" + x2="298.50815" + y2="258.77975" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient7398" + id="linearGradient7401" + gradientTransform="matrix(1.710844,0.000000,0.000000,0.766995,-85.80267,-197.6995)" + x1="332.31561" + y1="265.91077" + x2="316.46823" + y2="300.38651" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient8024" + id="linearGradient8027" + gradientTransform="matrix(0.482180,0.000000,0.000000,2.721398,-85.80267,-197.6995)" + x1="1220.1053" + y1="103.21815" + x2="1254.0269" + y2="103.21815" + gradientUnits="userSpaceOnUse" /> + <radialGradient + xlink:href="#linearGradient8654" + id="radialGradient8653" + gradientTransform="matrix(0.640700,0.000000,0.000000,2.048084,-85.80267,-197.6995)" + cx="0.84665114" + cy="178.89555" + fx="0.84665114" + fy="178.89555" + r="502.82352" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient8661" + id="linearGradient8660" + gradientTransform="matrix(0.690085,0.000000,0.000000,1.901515,-85.80267,-197.6995)" + x1="748.48016" + y1="265.31363" + x2="809.76666" + y2="263.08502" + gradientUnits="userSpaceOnUse" /> + <linearGradient + xlink:href="#linearGradient6141" + id="linearGradient9288" + gradientTransform="matrix(1.865197,0.000000,0.000000,0.703523,-85.80267,-197.6995)" + x1="236.35846" + y1="1223.5865" + x2="270.63608" + y2="1299.4399" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient9288);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 414.68304,656.96341 C 421.27924,663.97187 425.00411,698.05503 442.92297,693.24245 C 454.91009,690.02298 445.60268,644.59556 445.60268,644.59556 L 290.18002,646.24463 C 286.33224,662.18540 280.97454,689.69336 290.18002,692.21180 C 309.67821,697.54607 312.92313,673.45388 324.60387,660.67378 C 334.77299,661.08604 341.43787,664.79640 351.60700,665.20866 C 356.55414,680.05007 357.34599,704.17370 369.12815,703.75512 C 379.34587,703.39212 381.35857,679.01943 385.61859,665.00253 C 396.19998,664.31542 404.10167,657.65052 414.68304,656.96341 z " + id="path2381" + sodipodi:nodetypes="csccsccscc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient8660);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 272.04051,655.72664 C 316.56477,688.98240 419.63019,692.55535 464.97898,654.07758 L 466.62802,189.04641 C 466.35319,161.97456 410.05686,174.41814 408.98869,156.14276 C 406.78138,118.37788 329.41359,116.04173 324.73271,154.54525 C 322.52567,172.69977 269.01725,160.87519 267.91790,191.51997 L 272.04051,655.72664 z " + id="path1061" + sodipodi:nodetypes="cccsscc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 269.56694,624.39475 C 338.00239,646.93172 402.31520,645.55752 468.27706,625.21927" + id="path1756" + sodipodi:nodetypes="cc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 265.85659,210.48368 C 337.17786,221.06507 404.78878,221.33992 469.10159,211.30821" + id="path3003" + sodipodi:nodetypes="cc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient4896);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 312.44215,123.20529 L 312.39214,149.30711 L 422.62820,148.74478 L 422.60748,122.60154 L 312.44215,123.20529 z " + id="path3004" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient4884);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 340.06369,108.65537 L 323.81472,123.37604 L 398.19258,122.67226 L 368.33898,108.36384 L 340.06369,108.65537 z " + id="path3005" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient7401);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#a00000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 387.36160,19.919076 C 420.20512,16.346144 462.79937,0.073838223 491.25154,6.7267083 C 503.58634,9.6109109 502.93230,37.234074 502.79489,54.549063 L 388.18614,37.646335 L 387.36160,19.919076 z " + id="path3008" + sodipodi:nodetypes="csccc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient5519);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.02142,60.162491 L 340.80566,108.40714 L 368.83296,108.57792 L 369.00520,60.453991 L 341.02142,60.162491 z " + id="path5518" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient6144);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 390.07668,17.133274 L 392.55025,29.913392 L 505.50995,55.061349 C 506.45118,72.168186 505.71825,88.955583 499.29673,102.00916 C 497.59780,105.46272 492.36453,105.22145 489.01948,103.70822 C 486.59286,102.61047 483.94980,95.054107 476.15148,93.301654 C 456.24369,88.827950 447.19940,85.392342 427.96333,77.202728 C 419.44045,73.574180 409.04072,65.367888 401.62001,59.596228 L 383.48049,59.596228 L 372.76169,73.200868 L 327.41290,71.551819 L 325.76385,48.052899 C 317.30188,48.132215 310.70507,45.671108 310.87241,38.379395 C 311.02812,31.595078 317.02705,30.483790 325.35159,30.325651 C 328.37485,25.378511 330.93107,16.782105 341.70918,16.941801 C 359.02700,17.191626 371.52490,16.583597 390.07668,17.133274 z " + id="path3007" + sodipodi:nodetypes="cccsssscccccscsc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#linearGradient8027);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#e7df0a;stroke-width:2.8637898;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 510.43084,39.189276 C 514.45904,39.154485 516.69827,41.575294 516.71783,47.228380 C 516.72893,50.541074 513.41973,53.101074 513.41973,56.298129 L 513.41973,127.20714 L 507.95726,127.20714 L 507.95726,55.885868 C 507.95726,53.548706 504.74111,51.126089 504.65917,46.919182 C 504.59365,43.555192 506.17135,39.226058 510.43084,39.189276 z " + id="path7402" + sodipodi:nodetypes="cssccsss" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + </g> + <path + style="fill:url(#linearGradient6776);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2956848;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 304.82484,76.996993 L 304.82484,100.31804 L 340.09791,100.02651 L 339.80640,77.288505 L 304.82484,76.996993 z " + id="path3630" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <path + style="fill:url(#radialGradient8653);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.28637898pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 305.11634,78.746059 C 227.67105,75.928101 144.64087,111.54068 125.25280,188.93800 C 93.086553,317.34588 196.86783,363.55431 198.71408,449.84217 L 159.65133,665.56181 C 193.17533,677.22234 225.24177,676.05630 264.59603,667.31089 L 227.86539,446.92704 C 224.56157,359.08444 117.79247,295.65493 144.78418,199.72399 C 161.40578,140.64929 232.43243,98.277439 305.11634,97.402903 L 305.11634,78.746059 z " + id="path3631" + sodipodi:nodetypes="csccccscc" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> + <text + xml:space="preserve" + style="font-size:12.000000;font-style:normal;font-weight:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:helvetica" + x="349.09497" + y="519.72241" + id="text9289" + transform="matrix(20.37298,0.000000,0.000000,20.37298,-6811.588,-10074.39)" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002"><tspan + sodipodi:role="line" + id="tspan9290" + x="349.09497" + y="519.72241">F</tspan></text> + <rect + style="fill:none;fill-opacity:0.0000000;fill-rule:nonzero;stroke:#ffffff;stroke-width:3.0334985;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect9913" + width="146.08803" + height="220.46286" + x="301.64960" + y="312.97961" + ry="17.994587" + rx="17.994587" + inkscape:export-filename="/home/egore/workspace/fire.png" + inkscape:export-xdpi="9.5500002" + inkscape:export-ydpi="9.5500002" /> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/misc/health.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/health.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/misc/health.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/health.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,132 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/misc" + sodipodi:docname="health2.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/health2.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + inkscape:collect="always" + id="linearGradient2861"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop2863" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop2865" /> + </linearGradient> + <linearGradient + id="linearGradient2091"> + <stop + style="stop-color:#fe0000;stop-opacity:1;" + offset="0" + id="stop2093" /> + <stop + style="stop-color:#6e0000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2095" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2861" + id="linearGradient2867" + gradientTransform="matrix(1.220315,0.374651,-0.229913,0.748875,0.000000,0.000000)" + x1="347.56931" + y1="-164.67657" + x2="318.89774" + y2="24.732445" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="24.732445" + x2="318.89774" + y1="-164.67657" + x1="347.56931" + gradientTransform="matrix(1.220315,0.374651,-0.229913,0.748875,191.8593,205.6859)" + gradientUnits="userSpaceOnUse" + id="linearGradient5487" + xlink:href="#linearGradient2861" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="892.18549" + fy="64.137466" + fx="595.74066" + cy="64.137466" + cx="595.74066" + id="radialGradient6247" + xlink:href="#linearGradient2091" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.063059026" + inkscape:cx="-755.34592" + inkscape:cy="-3578.1203" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="791" + inkscape:window-height="997" + inkscape:window-x="481" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + id="path3201" + d="M 218.62615,22.966392 L 218.62615,223.50839 L 18.084157,223.50839 L 18.084157,502.25839 L 218.62615,502.25839 L 218.62615,702.80042 L 497.37615,702.80042 L 497.37615,502.25839 L 697.91814,502.25839 L 697.91814,223.50839 L 497.37615,223.50839 L 497.37615,22.966392 L 218.62615,22.966392 z " + style="fill:#000000;fill-opacity:0.59607846;stroke:none;stroke-width:4.7801518;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="rect1666" + d="M 210.31696,10.690596 L 210.31696,211.23259 L 9.7749547,211.23259 L 9.7749547,489.98259 L 210.31696,489.98259 L 210.31696,690.52456 L 489.06696,690.52456 L 489.06696,489.98259 L 689.60895,489.98259 L 689.60895,211.23259 L 489.06696,211.23259 L 489.06696,10.690596 L 210.31696,10.690596 z " + style="fill:url(#radialGradient6247);fill-opacity:1.0;stroke:#000000;stroke-width:4.8994842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + style="fill:url(#linearGradient2867);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 311.49755,24.850237 C 290.67994,21.135376 455.22867,5.7515434 471.44936,36.000441 C 483.34137,58.177067 478.64115,138.10490 467.41410,126.54408 C 452.66825,111.35986 466.68624,88.014336 437.54540,59.325494 C 399.66579,22.033436 335.85639,29.197023 311.49755,24.850237 z " + id="path2101" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient5487);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 503.35686,230.53618 C 482.53925,226.82132 647.08798,211.43749 663.30867,241.68639 C 675.20068,263.86301 670.50046,343.79085 659.27341,332.23003 C 644.52756,317.04581 658.54555,293.70028 629.40471,265.01144 C 591.52510,227.71938 527.71570,234.88297 503.35686,230.53618 z " + id="path5485" + sodipodi:nodetypes="cssss" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/misc/sports.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/sports.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/misc/sports.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/sports.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,268 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/misc" + sodipodi:docname="sports.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/misc/sports.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2108"> + <stop + id="stop2110" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:1.0000000;" /> + <stop + id="stop2112" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient8562"> + <stop + style="stop-color:#dc7b33;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8563" /> + <stop + style="stop-color:#dc5b00;stop-opacity:1.0000000;" + offset="0.59259260" + id="stop8565" /> + <stop + style="stop-color:#ac4700;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8564" /> + </linearGradient> + <linearGradient + id="linearGradient4809"> + <stop + style="stop-color:#f2ebd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4810" /> + <stop + style="stop-color:#f3d1a5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4811" /> + </linearGradient> + <linearGradient + id="linearGradient2307"> + <stop + style="stop-color:#814600;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2308" /> + <stop + style="stop-color:#d9a45f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2309" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2307" + id="linearGradient2310" + gradientTransform="matrix(1.158036,0.173942,-0.252723,1.682534,-106.1128,-533.2579)" + x1="561.82520" + y1="443.99197" + x2="489.62009" + y2="343.34235" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2307" + id="linearGradient1693" + gradientTransform="scale(0.861915,1.160207)" + x1="264.12347" + y1="702.76447" + x2="327.25049" + y2="696.00262" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2307" + id="linearGradient4183" + gradientTransform="matrix(1.414605,0.212480,-0.206886,1.377369,-105.8617,-533.2202)" + x1="197.66812" + y1="826.96564" + x2="239.47406" + y2="793.12274" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient4808" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-106.1128,-533.2579)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient5434" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-87.81681,-553.5406)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient6057" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-69.13019,-575.1741)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient6059" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-51.07121,-596.2536)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient6061" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-30.03709,-617.7941)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <radialGradient + r="148.00626" + fy="315.64005" + fx="32.200165" + cy="315.64005" + cx="32.200165" + gradientTransform="scale(0.978897,1.021558)" + gradientUnits="userSpaceOnUse" + id="radialGradient1345" + xlink:href="#linearGradient8562" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="133.99374" + fy="1949.4631" + fx="-96.915230" + cy="1949.4631" + cx="-96.915230" + gradientTransform="scale(2.066485,0.483913)" + id="radialGradient2116" + xlink:href="#linearGradient2108" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.55174445" + inkscape:cx="137.80887" + inkscape:cy="204.99335" + inkscape:current-layer="layer1" + inkscape:window-width="1272" + inkscape:window-height="966" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:creator + id="creator1322"> + <cc:Agent + id="Agent1324"> + <dc:title + id="title1326">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <dc:date + id="date1328">2005</dc:date> + <dc:description + id="description1330">An sports Icon I drew for lincity-ng</dc:description> + <dc:title + id="title1332">Sports</dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + transform="translate(567.2916,-270.0526)" + d="M 76.122208 943.37152 A 276.39609 64.341385 0 1 1 -476.66997,943.37152 A 276.39609 64.341385 0 1 1 76.122208 943.37152 z" + sodipodi:ry="64.341385" + sodipodi:rx="276.39609" + sodipodi:cy="943.37152" + sodipodi:cx="-200.27388" + id="path1347" + style="opacity:0.69999999;fill:url(#radialGradient2116);fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <g + transform="matrix(1.162054,0.000000,0.000000,1.162054,-121.6346,-86.01872)" + id="g1328"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient1345);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#aa4600;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.85882354" + id="path6066" + sodipodi:cx="97.212074" + sodipodi:cy="396.30789" + sodipodi:rx="115.53477" + sodipodi:ry="120.62441" + d="M 212.74684 396.30789 A 115.53477 120.62441 0 1 1 -18.322693,396.30789 A 115.53477 120.62441 0 1 1 212.74684 396.30789 z" + transform="matrix(2.431848,0.000000,0.000000,2.431848,166.5821,-583.9428)" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 124.26141,410.76177 C 347.13305,552.44058 712.22842,481.60117 681.71297,340.46729" + id="path7310" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 447.73104,669.13450 C 689.12989,619.54692 642.81186,179.25280 361.08898,88.796342" + id="path7932" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 280.84655,643.71440 C 381.92893,592.76454 564.34032,583.90961 560.38968,463.68698 C 556.68159,350.84654 276.21471,280.25380 192.56974,190.88717" + id="path7933" + sodipodi:nodetypes="csc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 643.26465,530.91628 C 639.72272,501.21824 647.21529,476.01576 646.53419,429.35711 C 644.88611,316.46780 666.42373,268.81052 594.22198,164.73109" + id="path7935" + sodipodi:nodetypes="csc" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/misc/university.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/university.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/misc/university.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/misc/university.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,163 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="university.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/university.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient4808"> + <stop + style="stop-color:#e2eb3d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4809" /> + <stop + style="stop-color:#acb32e;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4810" /> + </linearGradient> + <linearGradient + id="linearGradient1685"> + <stop + style="stop-color:#060087;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1686" /> + <stop + style="stop-color:#01001a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1687" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient1685" + id="radialGradient1688" + gradientTransform="matrix(2.303141,0.000000,0.000000,0.558725,-114.6397,-96.40355)" + cx="136.18510" + cy="742.65955" + fx="136.18510" + fy="742.65955" + r="153.01256" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1685" + id="linearGradient2314" + gradientTransform="matrix(1.518393,0.000000,0.000000,0.847490,-114.6397,-96.40355)" + x1="183.26514" + y1="738.92212" + x2="274.97662" + y2="543.59082" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4808" + id="linearGradient4811" + gradientTransform="matrix(1.014718,0.000000,0.000000,1.268157,-114.6397,-96.40355)" + x1="594.09412" + y1="325.87335" + x2="575.33209" + y2="369.39883" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4808" + id="linearGradient5437" + gradientTransform="matrix(1.285140,0.000000,0.000000,1.001309,-114.6397,-96.40355)" + x1="496.25134" + y1="596.34503" + x2="505.74463" + y2="632.65308" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.86831672" + inkscape:cx="397.70012" + inkscape:cy="321.04204" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient2314);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2539330;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 86.221622,553.58191 C 262.58767,549.22719 334.26451,467.67814 479.77920,476.83001 C 507.36453,478.56493 603.09857,524.02408 598.98958,502.95832 C 559.69557,301.50759 462.90467,297.74226 406.29334,290.66585 C 311.03390,379.93755 121.05936,243.85265 86.221622,553.58191 z " + id="path1062" + sodipodi:nodetypes="csscc" + inkscape:export-filename="/home/egore/workspace/university.png" + inkscape:export-xdpi="9.2700005" + inkscape:export-ydpi="9.2700005" /> + <path + style="fill:url(#radialGradient1688);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2539330;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 4.5706639,327.43649 L 411.19240,400.15911 L 705.13581,300.83065 L 350.77069,233.42921 L 4.5706639,327.43649 z " + id="path1061" + inkscape:export-filename="/home/egore/workspace/university.png" + inkscape:export-xdpi="9.2700005" + inkscape:export-ydpi="9.2700005" /> + <path + style="fill:url(#linearGradient4811);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#f9ae08;stroke-width:4.2539330;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 350.71195,309.85901 C 408.06299,330.06659 504.30486,349.77626 514.68202,360.08928 C 528.75095,374.07123 529.50091,439.37997 520.45562,534.45181 L 494.98175,602.47122 C 518.99170,627.63726 554.84104,620.95942 569.46112,599.58442 L 547.01415,535.02917 C 557.59908,477.29322 555.48813,366.70429 544.12736,351.42889 C 525.67177,326.61396 427.88567,311.39864 369.76482,291.38351 C 360.71952,294.07785 359.75725,307.16467 350.71195,309.85901 z " + id="path4179" + sodipodi:nodetypes="csccccscc" + inkscape:export-filename="/home/egore/workspace/university.png" + inkscape:export-xdpi="9.2700005" + inkscape:export-ydpi="9.2700005" /> + <path + style="fill:#e2eb3d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#f9ae08;stroke-width:2.8359554;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 327.09070,289.94427 C 342.01886,263.93978 380.73036,273.09718 388.25390,283.92448 C 398.45831,298.60989 369.27833,285.12806 352.28619,308.23342 C 340.66699,324.03283 318.17532,305.47464 327.09070,289.94427 z " + id="path3557" + sodipodi:nodetypes="csss" + inkscape:export-filename="/home/egore/workspace/university.png" + inkscape:export-xdpi="9.2700005" + inkscape:export-ydpi="9.2700005" /> + <path + style="fill:url(#linearGradient5437);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#f9ae08;stroke-width:2.8359554;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 517.33863,500.50880 C 503.73014,508.12954 503.18580,525.14016 511.62306,535.61871 L 556.12283,539.29299 C 568.50655,532.21658 568.23439,511.25950 558.98061,504.59134 L 517.33863,500.50880 z " + id="path4812" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/university.png" + inkscape:export-xdpi="9.2700005" + inkscape:export-ydpi="9.2700005" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/parks/farm.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/farm.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/parks/farm.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/farm.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,1459 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/parks/farm.png" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/parks" + sodipodi:docname="farm.svg" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg14881" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2105"> + <stop + id="stop2107" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop2109" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient5142"> + <stop + style="stop-color:#fcf31d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5144" /> + <stop + style="stop-color:#b3750a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop5146" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient4374"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop4376" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop4378" /> + </linearGradient> + <linearGradient + id="linearGradient2832"> + <stop + style="stop-color:#b27d00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2834" /> + <stop + style="stop-color:#624500;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2836" /> + </linearGradient> + <linearGradient + id="linearGradient4211"> + <stop + id="stop4212" + offset="0.0000000" + style="stop-color:#000bbe;stop-opacity:1.0000000;" /> + <stop + id="stop4213" + offset="1.0000000" + style="stop-color:#00077b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient3071"> + <stop + id="stop3072" + offset="0.0000000" + style="stop-color:#ff0000;stop-opacity:1.0000000;" /> + <stop + id="stop3073" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient1818"> + <stop + id="stop1819" + offset="0.0000000" + style="stop-color:#b1b1b1;stop-opacity:1.0000000;" /> + <stop + id="stop1820" + offset="1.0000000" + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22986"> + <stop + id="stop22987" + offset="0.0000000" + style="stop-color:#3f3f3f;stop-opacity:1.0000000;" /> + <stop + id="stop22988" + offset="1.0000000" + style="stop-color:#969696;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="590.78986" + x2="406.65063" + y1="345.92068" + x1="279.77991" + gradientTransform="matrix(1.451264,0.000000,0.000000,0.998427,-3.399373,-27.27137)" + id="linearGradient4210" + xlink:href="#linearGradient4211" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="211.40018" + x2="501.75058" + y1="282.80688" + x1="541.64764" + gradientTransform="matrix(1.172453,0.000000,0.000000,1.235854,-3.399373,-27.27137)" + id="linearGradient5468" + xlink:href="#linearGradient1818" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2832" + id="linearGradient2838" + gradientTransform="scale(1.497665,0.667706)" + x1="390.17279" + y1="31.436543" + x2="427.45291" + y2="45.496304" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2832" + id="linearGradient2846" + gradientTransform="scale(0.573434,1.743879)" + x1="825.32190" + y1="70.665176" + x2="995.38928" + y2="203.33040" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22986" + id="linearGradient3612" + gradientTransform="matrix(2.063753,0.000000,0.000000,0.484554,1.444283,-6.258559)" + x1="196.09383" + y1="579.56714" + x2="103.20048" + y2="181.40601" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4374" + id="linearGradient4380" + gradientTransform="matrix(2.153914,0.000000,0.000000,0.464271,1.444283,-6.258559)" + x1="119.30801" + y1="16.335058" + x2="206.73889" + y2="434.39120" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5142" + id="linearGradient5148" + gradientTransform="scale(2.103058,0.475498)" + x1="108.49877" + y1="849.80402" + x2="108.49876" + y2="1069.3284" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5142" + id="linearGradient5156" + gradientTransform="scale(0.724999,1.379312)" + x1="333.54987" + y1="303.99741" + x2="436.15381" + y2="335.26178" + gradientUnits="userSpaceOnUse" + spreadMethod="reflect" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + id="linearGradient2111" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,13.61683,0.680841)" + id="linearGradient2113" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + id="linearGradient2115" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + id="linearGradient2117" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + id="linearGradient2119" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,7.489256,4.765890)" + id="linearGradient2121" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,4.085049,2.042524)" + id="linearGradient2123" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + id="linearGradient2125" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + id="linearGradient2127" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + id="linearGradient2129" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + id="linearGradient2895" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + gradientUnits="userSpaceOnUse" + id="linearGradient3692" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,8.514237e-18,-1.480738e-17,1.163569,13.61683,0.680841)" + gradientUnits="userSpaceOnUse" + id="linearGradient3694" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,8.514237e-18,-1.480738e-17,1.163569,7.489256,4.765890)" + gradientUnits="userSpaceOnUse" + id="linearGradient3696" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + gradientUnits="userSpaceOnUse" + id="linearGradient3698" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,8.514237e-18,-1.480738e-17,1.163569,4.085049,2.042524)" + gradientUnits="userSpaceOnUse" + id="linearGradient3700" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + gradientUnits="userSpaceOnUse" + id="linearGradient3702" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3704" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + gradientUnits="userSpaceOnUse" + id="linearGradient3706" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3708" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + gradientUnits="userSpaceOnUse" + id="linearGradient3710" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3712" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + gradientUnits="userSpaceOnUse" + id="linearGradient3714" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,13.61683,0.680841)" + gradientUnits="userSpaceOnUse" + id="linearGradient3716" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,7.489256,4.765890)" + gradientUnits="userSpaceOnUse" + id="linearGradient3718" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + gradientUnits="userSpaceOnUse" + id="linearGradient3720" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,4.085049,2.042524)" + gradientUnits="userSpaceOnUse" + id="linearGradient3722" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + gradientUnits="userSpaceOnUse" + id="linearGradient3724" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3726" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + gradientUnits="userSpaceOnUse" + id="linearGradient3728" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3730" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + gradientUnits="userSpaceOnUse" + id="linearGradient3732" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3734" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + gradientUnits="userSpaceOnUse" + id="linearGradient3760" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,7.213805e-17,-1.821354e-16,1.163569,13.61683,0.680841)" + gradientUnits="userSpaceOnUse" + id="linearGradient3762" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,7.213805e-17,-1.821354e-16,1.163569,7.489256,4.765890)" + gradientUnits="userSpaceOnUse" + id="linearGradient3764" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + gradientUnits="userSpaceOnUse" + id="linearGradient3766" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,7.213805e-17,-1.821354e-16,1.163569,4.085049,2.042524)" + gradientUnits="userSpaceOnUse" + id="linearGradient3768" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + gradientUnits="userSpaceOnUse" + id="linearGradient3770" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3772" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + gradientUnits="userSpaceOnUse" + id="linearGradient3774" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3776" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + gradientUnits="userSpaceOnUse" + id="linearGradient3778" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3780" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + gradientUnits="userSpaceOnUse" + id="linearGradient3806" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,1.174056e-17,-2.904705e-17,1.163569,13.61683,0.680841)" + gradientUnits="userSpaceOnUse" + id="linearGradient3808" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,1.174056e-17,-2.904705e-17,1.163569,7.489256,4.765890)" + gradientUnits="userSpaceOnUse" + id="linearGradient3810" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + gradientUnits="userSpaceOnUse" + id="linearGradient3812" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,1.174056e-17,-2.904705e-17,1.163569,4.085049,2.042524)" + gradientUnits="userSpaceOnUse" + id="linearGradient3814" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + gradientUnits="userSpaceOnUse" + id="linearGradient3816" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3818" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + gradientUnits="userSpaceOnUse" + id="linearGradient3820" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3822" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + gradientUnits="userSpaceOnUse" + id="linearGradient3824" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3826" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + gradientUnits="userSpaceOnUse" + id="linearGradient3852" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,13.61683,0.680841)" + gradientUnits="userSpaceOnUse" + id="linearGradient3854" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,7.489256,4.765890)" + gradientUnits="userSpaceOnUse" + id="linearGradient3856" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + gradientUnits="userSpaceOnUse" + id="linearGradient3858" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,0.000000,0.000000,1.163569,4.085049,2.042524)" + gradientUnits="userSpaceOnUse" + id="linearGradient3860" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + gradientUnits="userSpaceOnUse" + id="linearGradient3862" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3864" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + gradientUnits="userSpaceOnUse" + id="linearGradient3866" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3868" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + gradientUnits="userSpaceOnUse" + id="linearGradient3870" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3872" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.668618,0.539963,-0.731052,0.905238,235.1645,-164.9304)" + gradientUnits="userSpaceOnUse" + id="linearGradient3898" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,-6.953484e-18,9.272346e-18,1.163569,13.61683,0.680841)" + gradientUnits="userSpaceOnUse" + id="linearGradient3900" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,-6.953484e-18,9.272346e-18,1.163569,7.489256,4.765890)" + gradientUnits="userSpaceOnUse" + id="linearGradient3902" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.786470,0.346519,-0.469150,1.064796,144.1229,-113.8587)" + gradientUnits="userSpaceOnUse" + id="linearGradient3904" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.859425,-6.953484e-18,9.272346e-18,1.163569,4.085049,2.042524)" + gradientUnits="userSpaceOnUse" + id="linearGradient3906" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.834186,0.206748,-0.279915,1.129398,85.15770,-78.20409)" + gradientUnits="userSpaceOnUse" + id="linearGradient3908" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3910" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="matrix(0.853793,9.822769e-2,-0.132990,1.155944,41.88020,-38.89907)" + gradientUnits="userSpaceOnUse" + id="linearGradient3912" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3914" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="225.75084" + x2="1446.0195" + y1="169.86331" + x1="1087.8153" + gradientTransform="scale(0.291465,3.430945)" + gradientUnits="userSpaceOnUse" + id="linearGradient3916" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="335.13885" + x2="481.18484" + y1="205.32910" + x1="395.09460" + gradientTransform="scale(0.859425,1.163569)" + gradientUnits="userSpaceOnUse" + id="linearGradient3918" + xlink:href="#linearGradient5142" + inkscape:collect="always" /> + <linearGradient + y2="203.33040" + x2="995.38928" + y1="70.665176" + x1="825.32190" + gradientTransform="scale(0.573434,1.743879)" + gradientUnits="userSpaceOnUse" + id="linearGradient3926" + xlink:href="#linearGradient2832" + inkscape:collect="always" /> + <linearGradient + y2="181.40601" + x2="103.20048" + y1="579.56714" + x1="196.09383" + gradientTransform="matrix(2.063753,0.000000,0.000000,0.484554,1.444283,-6.258559)" + gradientUnits="userSpaceOnUse" + id="linearGradient3928" + xlink:href="#linearGradient22986" + inkscape:collect="always" /> + <linearGradient + y2="45.496304" + x2="427.45291" + y1="31.436543" + x1="390.17279" + gradientTransform="scale(1.497665,0.667706)" + gradientUnits="userSpaceOnUse" + id="linearGradient3930" + xlink:href="#linearGradient2832" + inkscape:collect="always" /> + <linearGradient + y2="434.39120" + x2="206.73889" + y1="16.335058" + x1="119.30801" + gradientTransform="matrix(2.153914,0.000000,0.000000,0.464271,1.444283,-6.258559)" + gradientUnits="userSpaceOnUse" + id="linearGradient3932" + xlink:href="#linearGradient4374" + inkscape:collect="always" /> + <linearGradient + y2="434.39120" + x2="206.73889" + y1="16.335058" + x1="119.30801" + gradientTransform="matrix(2.153914,0.000000,0.000000,-0.464271,1.444283,718.5667)" + gradientUnits="userSpaceOnUse" + id="linearGradient3935" + xlink:href="#linearGradient4374" + inkscape:collect="always" /> + <linearGradient + y2="181.40601" + x2="103.20048" + y1="579.56714" + x1="196.09383" + gradientTransform="matrix(2.063753,0.000000,0.000000,-0.484554,1.444283,718.5667)" + gradientUnits="userSpaceOnUse" + id="linearGradient3939" + xlink:href="#linearGradient22986" + inkscape:collect="always" /> + <linearGradient + y2="203.33040" + x2="995.38928" + y1="70.665176" + x1="825.32190" + gradientTransform="matrix(0.304784,0.000000,0.000000,-1.743879,283.3375,716.3931)" + gradientUnits="userSpaceOnUse" + id="linearGradient3942" + xlink:href="#linearGradient2832" + inkscape:collect="always" /> + <linearGradient + y2="45.496304" + x2="427.45291" + y1="31.436543" + x1="390.17279" + gradientTransform="scale(1.497665,0.667706)" + gradientUnits="userSpaceOnUse" + id="linearGradient3944" + xlink:href="#linearGradient2832" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="0" + inkscape:window-x="0" + inkscape:window-height="966" + inkscape:window-width="812" + inkscape:current-layer="layer1" + inkscape:cy="24.993157" + inkscape:cx="498.49873" + inkscape:zoom="0.51928887" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + style="fill:url(#linearGradient3942);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.7339177;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 586.30150,672.10181 L 517.72519,8.6945687 L 555.59570,7.7317187 L 631.33670,658.62184 L 586.30150,672.10181 z " + id="path1310" + sodipodi:nodetypes="ccccc" /> + <g + transform="matrix(1.297109,0.146398,-0.146398,1.297109,-58.12446,-291.8394)" + id="g3782"> + <path + sodipodi:nodetypes="ccc" + id="path3784" + d="M 378.01782,298.61747 C 402.70550,263.71292 398.62966,240.58494 381.80126,215.90961 C 363.50994,247.22838 344.64723,264.08354 378.01782,298.61747 z " + style="fill:url(#linearGradient3806);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3786" + d="M 373.10112,283.81636 C 375.82448,241.15030 393.52636,225.71789 422.12170,217.09390 C 416.67497,252.95155 420.76002,277.91573 373.10112,283.81636 z " + style="fill:url(#linearGradient3808);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3788" + d="M 373.10112,318.53928 C 375.82448,275.87322 393.52636,260.44081 422.12170,251.81682 C 416.67497,287.67447 420.76002,312.63865 373.10112,318.53928 z " + style="fill:url(#linearGradient3810);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3790" + d="M 379.35622,321.50480 C 394.06695,281.36250 384.09007,260.10273 361.39930,240.68120 C 351.92591,275.69110 338.12210,296.88904 379.35622,321.50480 z " + style="fill:url(#linearGradient3812);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3792" + d="M 373.78197,350.53883 C 376.50533,307.87277 394.20721,292.44036 422.80255,283.81637 C 417.35582,319.67402 421.44087,344.63820 373.78197,350.53883 z " + style="fill:url(#linearGradient3814);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3794" + d="M 378.65339,347.96620 C 386.27404,305.89798 372.80453,286.66030 347.12361,271.41050 C 343.78423,307.52540 333.81360,330.77373 378.65339,347.96620 z " + style="fill:url(#linearGradient3816);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3796" + d="M 372.42028,381.85753 C 375.14364,339.19147 392.84552,323.75906 421.44086,315.13507 C 415.99413,350.99272 420.07918,375.95690 372.42028,381.85753 z " + style="fill:url(#linearGradient3818);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3798" + d="M 380.70179,381.71695 C 382.87278,339.01922 367.05074,321.66471 339.62847,309.82893 C 340.94117,346.07414 334.02962,370.40783 380.70179,381.71695 z " + style="fill:url(#linearGradient3820);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3800" + d="M 370.37775,415.89961 C 373.10111,373.23355 390.80299,357.80114 419.39833,349.17715 C 413.95160,385.03480 418.03665,409.99898 370.37775,415.89961 z " + style="fill:url(#linearGradient3822);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3802" + d="M 375.04320,871.72254 L 399.69544,880.01891 C 368.72614,733.65205 375.78970,565.69897 380.79744,391.57839 L 363.70586,395.33733 C 358.23374,528.77715 353.78952,738.28273 375.04320,871.72254 z " + style="fill:url(#linearGradient3824);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0675702px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3804" + d="M 385.35626,415.89961 C 382.63290,373.23355 364.93102,357.80114 336.33568,349.17715 C 341.78241,385.03480 337.69736,409.99898 385.35626,415.89961 z " + style="fill:url(#linearGradient3826);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(-1.305344,0.000000,0.000000,1.305344,783.2520,-237.2312)" + id="g3655"> + <path + sodipodi:nodetypes="ccc" + id="path1345" + d="M 378.01782,298.61747 C 402.70550,263.71292 398.62966,240.58494 381.80126,215.90961 C 363.50994,247.22838 344.64723,264.08354 378.01782,298.61747 z " + style="fill:url(#linearGradient3714);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1341" + d="M 373.10112,283.81636 C 375.82448,241.15030 393.52636,225.71789 422.12170,217.09390 C 416.67497,252.95155 420.76002,277.91573 373.10112,283.81636 z " + style="fill:url(#linearGradient3716);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1333" + d="M 373.10112,318.53928 C 375.82448,275.87322 393.52636,260.44081 422.12170,251.81682 C 416.67497,287.67447 420.76002,312.63865 373.10112,318.53928 z " + style="fill:url(#linearGradient3718);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1339" + d="M 379.35622,321.50480 C 394.06695,281.36250 384.09007,260.10273 361.39930,240.68120 C 351.92591,275.69110 338.12210,296.88904 379.35622,321.50480 z " + style="fill:url(#linearGradient3720);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1331" + d="M 373.78197,350.53883 C 376.50533,307.87277 394.20721,292.44036 422.80255,283.81637 C 417.35582,319.67402 421.44087,344.63820 373.78197,350.53883 z " + style="fill:url(#linearGradient3722);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1337" + d="M 378.65339,347.96620 C 386.27404,305.89798 372.80453,286.66030 347.12361,271.41050 C 343.78423,307.52540 333.81360,330.77373 378.65339,347.96620 z " + style="fill:url(#linearGradient3724);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1329" + d="M 372.42028,381.85753 C 375.14364,339.19147 392.84552,323.75906 421.44086,315.13507 C 415.99413,350.99272 420.07918,375.95690 372.42028,381.85753 z " + style="fill:url(#linearGradient3726);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1335" + d="M 380.70179,381.71695 C 382.87278,339.01922 367.05074,321.66471 339.62847,309.82893 C 340.94117,346.07414 334.02962,370.40783 380.70179,381.71695 z " + style="fill:url(#linearGradient3728);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1327" + d="M 370.37775,415.89961 C 373.10111,373.23355 390.80299,357.80114 419.39833,349.17715 C 413.95160,385.03480 418.03665,409.99898 370.37775,415.89961 z " + style="fill:url(#linearGradient3730);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1323" + d="M 375.04320,871.72254 L 399.69544,880.01891 C 368.72614,733.65205 375.78970,565.69897 380.79744,391.57839 L 363.70586,395.33733 C 358.23374,528.77715 353.78952,738.28273 375.04320,871.72254 z " + style="fill:url(#linearGradient3732);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0675702px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path1325" + d="M 385.35626,415.89961 C 382.63290,373.23355 364.93102,357.80114 336.33568,349.17715 C 341.78241,385.03480 337.69736,409.99898 385.35626,415.89961 z " + style="fill:url(#linearGradient3734);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(-1.284759,0.230908,0.230908,1.284759,602.5380,-254.7067)" + id="g3668"> + <path + sodipodi:nodetypes="ccc" + id="path3670" + d="M 378.01782,298.61747 C 402.70550,263.71292 398.62966,240.58494 381.80126,215.90961 C 363.50994,247.22838 344.64723,264.08354 378.01782,298.61747 z " + style="fill:url(#linearGradient3692);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3672" + d="M 373.10112,283.81636 C 375.82448,241.15030 393.52636,225.71789 422.12170,217.09390 C 416.67497,252.95155 420.76002,277.91573 373.10112,283.81636 z " + style="fill:url(#linearGradient3694);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3674" + d="M 373.10112,318.53928 C 375.82448,275.87322 393.52636,260.44081 422.12170,251.81682 C 416.67497,287.67447 420.76002,312.63865 373.10112,318.53928 z " + style="fill:url(#linearGradient3696);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3676" + d="M 379.35622,321.50480 C 394.06695,281.36250 384.09007,260.10273 361.39930,240.68120 C 351.92591,275.69110 338.12210,296.88904 379.35622,321.50480 z " + style="fill:url(#linearGradient3698);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3678" + d="M 373.78197,350.53883 C 376.50533,307.87277 394.20721,292.44036 422.80255,283.81637 C 417.35582,319.67402 421.44087,344.63820 373.78197,350.53883 z " + style="fill:url(#linearGradient3700);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3680" + d="M 378.65339,347.96620 C 386.27404,305.89798 372.80453,286.66030 347.12361,271.41050 C 343.78423,307.52540 333.81360,330.77373 378.65339,347.96620 z " + style="fill:url(#linearGradient3702);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3682" + d="M 372.42028,381.85753 C 375.14364,339.19147 392.84552,323.75906 421.44086,315.13507 C 415.99413,350.99272 420.07918,375.95690 372.42028,381.85753 z " + style="fill:url(#linearGradient3704);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3684" + d="M 380.70179,381.71695 C 382.87278,339.01922 367.05074,321.66471 339.62847,309.82893 C 340.94117,346.07414 334.02962,370.40783 380.70179,381.71695 z " + style="fill:url(#linearGradient3706);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3686" + d="M 370.37775,415.89961 C 373.10111,373.23355 390.80299,357.80114 419.39833,349.17715 C 413.95160,385.03480 418.03665,409.99898 370.37775,415.89961 z " + style="fill:url(#linearGradient3708);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3688" + d="M 375.04320,871.72254 L 399.69544,880.01891 C 368.72614,733.65205 375.78970,565.69897 380.79744,391.57839 L 363.70586,395.33733 C 358.23374,528.77715 353.78952,738.28273 375.04320,871.72254 z " + style="fill:url(#linearGradient3710);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0675702px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3690" + d="M 385.35626,415.89961 C 382.63290,373.23355 364.93102,357.80114 336.33568,349.17715 C 341.78241,385.03480 337.69736,409.99898 385.35626,415.89961 z " + style="fill:url(#linearGradient3712);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(1.247357,0.384741,-0.384741,1.247357,113.4155,-263.5205)" + id="g3736"> + <path + sodipodi:nodetypes="ccc" + id="path3738" + d="M 378.01782,298.61747 C 402.70550,263.71292 398.62966,240.58494 381.80126,215.90961 C 363.50994,247.22838 344.64723,264.08354 378.01782,298.61747 z " + style="fill:url(#linearGradient3760);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3740" + d="M 373.10112,283.81636 C 375.82448,241.15030 393.52636,225.71789 422.12170,217.09390 C 416.67497,252.95155 420.76002,277.91573 373.10112,283.81636 z " + style="fill:url(#linearGradient3762);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3742" + d="M 373.10112,318.53928 C 375.82448,275.87322 393.52636,260.44081 422.12170,251.81682 C 416.67497,287.67447 420.76002,312.63865 373.10112,318.53928 z " + style="fill:url(#linearGradient3764);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3744" + d="M 379.35622,321.50480 C 394.06695,281.36250 384.09007,260.10273 361.39930,240.68120 C 351.92591,275.69110 338.12210,296.88904 379.35622,321.50480 z " + style="fill:url(#linearGradient3766);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3746" + d="M 373.78197,350.53883 C 376.50533,307.87277 394.20721,292.44036 422.80255,283.81637 C 417.35582,319.67402 421.44087,344.63820 373.78197,350.53883 z " + style="fill:url(#linearGradient3768);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3748" + d="M 378.65339,347.96620 C 386.27404,305.89798 372.80453,286.66030 347.12361,271.41050 C 343.78423,307.52540 333.81360,330.77373 378.65339,347.96620 z " + style="fill:url(#linearGradient3770);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3750" + d="M 372.42028,381.85753 C 375.14364,339.19147 392.84552,323.75906 421.44086,315.13507 C 415.99413,350.99272 420.07918,375.95690 372.42028,381.85753 z " + style="fill:url(#linearGradient3772);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3752" + d="M 380.70179,381.71695 C 382.87278,339.01922 367.05074,321.66471 339.62847,309.82893 C 340.94117,346.07414 334.02962,370.40783 380.70179,381.71695 z " + style="fill:url(#linearGradient3774);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3754" + d="M 370.37775,415.89961 C 373.10111,373.23355 390.80299,357.80114 419.39833,349.17715 C 413.95160,385.03480 418.03665,409.99898 370.37775,415.89961 z " + style="fill:url(#linearGradient3776);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3756" + d="M 375.04320,871.72254 L 399.69544,880.01891 C 368.72614,733.65205 375.78970,565.69897 380.79744,391.57839 L 363.70586,395.33733 C 358.23374,528.77715 353.78952,738.28273 375.04320,871.72254 z " + style="fill:url(#linearGradient3778);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0675702px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3758" + d="M 385.35626,415.89961 C 382.63290,373.23355 364.93102,357.80114 336.33568,349.17715 C 341.78241,385.03480 337.69736,409.99898 385.35626,415.89961 z " + style="fill:url(#linearGradient3780);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(-1.305344,0.000000,0.000000,1.305344,771.2542,-116.3613)" + id="g3828"> + <path + sodipodi:nodetypes="ccc" + id="path3830" + d="M 378.01782,298.61747 C 402.70550,263.71292 398.62966,240.58494 381.80126,215.90961 C 363.50994,247.22838 344.64723,264.08354 378.01782,298.61747 z " + style="fill:url(#linearGradient3852);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3832" + d="M 373.10112,283.81636 C 375.82448,241.15030 393.52636,225.71789 422.12170,217.09390 C 416.67497,252.95155 420.76002,277.91573 373.10112,283.81636 z " + style="fill:url(#linearGradient3854);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3834" + d="M 373.10112,318.53928 C 375.82448,275.87322 393.52636,260.44081 422.12170,251.81682 C 416.67497,287.67447 420.76002,312.63865 373.10112,318.53928 z " + style="fill:url(#linearGradient3856);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3836" + d="M 379.35622,321.50480 C 394.06695,281.36250 384.09007,260.10273 361.39930,240.68120 C 351.92591,275.69110 338.12210,296.88904 379.35622,321.50480 z " + style="fill:url(#linearGradient3858);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3838" + d="M 373.78197,350.53883 C 376.50533,307.87277 394.20721,292.44036 422.80255,283.81637 C 417.35582,319.67402 421.44087,344.63820 373.78197,350.53883 z " + style="fill:url(#linearGradient3860);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3840" + d="M 378.65339,347.96620 C 386.27404,305.89798 372.80453,286.66030 347.12361,271.41050 C 343.78423,307.52540 333.81360,330.77373 378.65339,347.96620 z " + style="fill:url(#linearGradient3862);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3842" + d="M 372.42028,381.85753 C 375.14364,339.19147 392.84552,323.75906 421.44086,315.13507 C 415.99413,350.99272 420.07918,375.95690 372.42028,381.85753 z " + style="fill:url(#linearGradient3864);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3844" + d="M 380.70179,381.71695 C 382.87278,339.01922 367.05074,321.66471 339.62847,309.82893 C 340.94117,346.07414 334.02962,370.40783 380.70179,381.71695 z " + style="fill:url(#linearGradient3866);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3846" + d="M 370.37775,415.89961 C 373.10111,373.23355 390.80299,357.80114 419.39833,349.17715 C 413.95160,385.03480 418.03665,409.99898 370.37775,415.89961 z " + style="fill:url(#linearGradient3868);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3848" + d="M 375.04320,871.72254 L 399.69544,880.01891 C 368.72614,733.65205 375.78970,565.69897 380.79744,391.57839 L 363.70586,395.33733 C 358.23374,528.77715 353.78952,738.28273 375.04320,871.72254 z " + style="fill:url(#linearGradient3870);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0675702px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3850" + d="M 385.35626,415.89961 C 382.63290,373.23355 364.93102,357.80114 336.33568,349.17715 C 341.78241,385.03480 337.69736,409.99898 385.35626,415.89961 z " + style="fill:url(#linearGradient3872);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(1.296495,0.151741,-0.151741,1.296495,-61.89769,-220.5740)" + id="g3874"> + <path + sodipodi:nodetypes="ccc" + id="path3876" + d="M 378.01782,298.61747 C 402.70550,263.71292 398.62966,240.58494 381.80126,215.90961 C 363.50994,247.22838 344.64723,264.08354 378.01782,298.61747 z " + style="fill:url(#linearGradient3898);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3878" + d="M 373.10112,283.81636 C 375.82448,241.15030 393.52636,225.71789 422.12170,217.09390 C 416.67497,252.95155 420.76002,277.91573 373.10112,283.81636 z " + style="fill:url(#linearGradient3900);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3880" + d="M 373.10112,318.53928 C 375.82448,275.87322 393.52636,260.44081 422.12170,251.81682 C 416.67497,287.67447 420.76002,312.63865 373.10112,318.53928 z " + style="fill:url(#linearGradient3902);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3882" + d="M 379.35622,321.50480 C 394.06695,281.36250 384.09007,260.10273 361.39930,240.68120 C 351.92591,275.69110 338.12210,296.88904 379.35622,321.50480 z " + style="fill:url(#linearGradient3904);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3884" + d="M 373.78197,350.53883 C 376.50533,307.87277 394.20721,292.44036 422.80255,283.81637 C 417.35582,319.67402 421.44087,344.63820 373.78197,350.53883 z " + style="fill:url(#linearGradient3906);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3886" + d="M 378.65339,347.96620 C 386.27404,305.89798 372.80453,286.66030 347.12361,271.41050 C 343.78423,307.52540 333.81360,330.77373 378.65339,347.96620 z " + style="fill:url(#linearGradient3908);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3888" + d="M 372.42028,381.85753 C 375.14364,339.19147 392.84552,323.75906 421.44086,315.13507 C 415.99413,350.99272 420.07918,375.95690 372.42028,381.85753 z " + style="fill:url(#linearGradient3910);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3890" + d="M 380.70179,381.71695 C 382.87278,339.01922 367.05074,321.66471 339.62847,309.82893 C 340.94117,346.07414 334.02962,370.40783 380.70179,381.71695 z " + style="fill:url(#linearGradient3912);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3892" + d="M 370.37775,415.89961 C 373.10111,373.23355 390.80299,357.80114 419.39833,349.17715 C 413.95160,385.03480 418.03665,409.99898 370.37775,415.89961 z " + style="fill:url(#linearGradient3914);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3894" + d="M 375.04320,871.72254 L 399.69544,880.01891 C 368.72614,733.65205 375.78970,565.69897 380.79744,391.57839 L 363.70586,395.33733 C 358.23374,528.77715 353.78952,738.28273 375.04320,871.72254 z " + style="fill:url(#linearGradient3916);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0675702px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path3896" + d="M 385.35626,415.89961 C 382.63290,373.23355 364.93102,357.80114 336.33568,349.17715 C 341.78241,385.03480 337.69736,409.99898 385.35626,415.89961 z " + style="fill:url(#linearGradient3918);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <path + style="fill:url(#linearGradient3939);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 17.812821,501.92424 C 184.70772,630.30493 447.12056,637.36587 581.27839,650.20394 C 588.77651,634.31211 622.92252,626.27829 631.22832,639.77773 L 619.69410,544.81554 C 612.74053,532.90139 591.21902,528.17443 573.43038,545.41792 C 468.80011,555.36742 221.61717,543.00607 17.812821,501.92424 z " + id="path1308" + sodipodi:nodetypes="cccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient3944);fill-opacity:1.0000000;stroke:#000000;stroke-width:5.0311499;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2072" + sodipodi:cx="613.82019" + sodipodi:cy="44.772766" + sodipodi:rx="40.921345" + sodipodi:ry="16.849966" + d="M 654.74154 44.772766 A 40.921345 16.849966 0 1 1 572.89885,44.772766 A 40.921345 16.849966 0 1 1 654.74154 44.772766 z" + transform="matrix(0.554751,-0.113466,2.131928e-2,-0.615535,267.3469,763.0500)" /> + <path + style="fill:url(#linearGradient3935);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 120.83833,548.14129 C 202.54335,606.84629 415.20909,636.29593 551.23461,640.57539 C 558.03261,640.78926 553.42110,619.42722 546.42033,619.39257 C 314.58914,618.25009 112.70985,542.30098 120.83833,548.14129 z " + id="path3614" + sodipodi:nodetypes="csss" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/parks/mills.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/mills.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/parks/mills.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/mills.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,842 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/workspace/lincity-images/mills.png" + sodipodi:docname="mills.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/parks" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient6713"> + <stop + id="stop6714" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop6715" + offset="1.0000000" + style="stop-color:#e4e4e4;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5447"> + <stop + id="stop5448" + offset="0.0000000" + style="stop-color:#a32323;stop-opacity:1.0000000;" /> + <stop + id="stop5449" + offset="1.0000000" + style="stop-color:#541c1c;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5444"> + <stop + id="stop5445" + offset="0.0000000" + style="stop-color:#c37c27;stop-opacity:1.0000000;" /> + <stop + id="stop5446" + offset="1.0000000" + style="stop-color:#593812;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1231.7266" + x2="826.61963" + y1="553.32733" + x1="715.59326" + gradientTransform="scale(1.663093,0.601289)" + id="linearGradient6925" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="847.58099" + x2="818.16809" + y1="769.14801" + x1="865.76709" + gradientTransform="scale(1.499226,0.667011)" + id="linearGradient6933" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="473.75897" + x2="1966.7991" + y1="451.68161" + x1="1960.1134" + gradientTransform="scale(0.764384,1.308243)" + id="linearGradient6941" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="772.71045" + x2="962.49359" + y1="636.32422" + x1="985.45740" + gradientTransform="scale(1.166551,0.857228)" + id="linearGradient6949" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="580.48572" + x2="1639.9285" + y1="554.59546" + x1="1630.6937" + gradientTransform="scale(0.814814,1.227274)" + id="linearGradient7715" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1026.9020" + x2="619.05255" + y1="970.39069" + x1="661.64124" + gradientTransform="scale(1.603593,0.623600)" + id="linearGradient7723" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(0.653446,2.441106e-7,-3.184329e-8,8.523944e-2,210.7156,-25.05689)" + gradientUnits="userSpaceOnUse" + id="linearGradient8582" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.223056,0.000000,0.000000,0.159543,32.66191,18.66433)" + gradientUnits="userSpaceOnUse" + id="linearGradient8584" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <radialGradient + r="510.03485" + fy="263.68262" + fx="184.85333" + cy="263.68262" + cx="184.85333" + gradientTransform="matrix(0.606788,0.000000,0.000000,0.606760,8.844896,17.68703)" + gradientUnits="userSpaceOnUse" + id="radialGradient8586" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <radialGradient + r="103.12180" + fy="311.57950" + fx="335.05655" + cy="311.57950" + cx="335.05655" + gradientUnits="userSpaceOnUse" + id="radialGradient8588" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.223055,-1.653554e-16,2.156997e-17,0.159543,-285.1695,96.95279)" + gradientUnits="userSpaceOnUse" + id="linearGradient8600" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.223055,1.653554e-16,-2.156997e-17,0.159543,-511.8855,-139.1534)" + gradientUnits="userSpaceOnUse" + id="linearGradient8604" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.223056,-1.318680e-32,1.720165e-33,0.159543,-420.7699,-453.5478)" + gradientUnits="userSpaceOnUse" + id="linearGradient8608" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.223055,-1.653554e-16,2.156997e-17,0.159543,-102.9397,-531.8352)" + gradientUnits="userSpaceOnUse" + id="linearGradient8612" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.223055,1.653554e-16,-2.156997e-17,0.159543,123.7770,-295.7292)" + gradientUnits="userSpaceOnUse" + id="linearGradient8616" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(0.653447,-1.630594e-17,2.127043e-18,8.523954e-2,-25.38969,201.6585)" + gradientUnits="userSpaceOnUse" + id="linearGradient8620" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(0.653446,-5.537950e-24,7.224030e-25,8.523938e-2,-339.7844,110.5420)" + gradientUnits="userSpaceOnUse" + id="linearGradient8624" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(0.653447,1.630594e-17,-2.127043e-18,8.523954e-2,-418.0736,-207.2896)" + gradientUnits="userSpaceOnUse" + id="linearGradient8628" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(0.653447,-1.630594e-17,2.127043e-18,8.523954e-2,-181.9674,-434.0056)" + gradientUnits="userSpaceOnUse" + id="linearGradient8632" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(0.653446,-5.537950e-24,7.224030e-25,8.523938e-2,132.4275,-342.8890)" + gradientUnits="userSpaceOnUse" + id="linearGradient8636" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(2.015668,-1.320524e-16,1.722570e-17,0.262936,-1527.358,-712.0527)" + gradientUnits="userSpaceOnUse" + id="linearGradient8648" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(2.015668,1.320524e-16,-1.722570e-17,0.262936,-617.2750,-1580.969)" + gradientUnits="userSpaceOnUse" + id="linearGradient8652" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(2.015670,0.000000,0.000000,0.262936,590.2684,-1227.273)" + gradientUnits="userSpaceOnUse" + id="linearGradient8656" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(2.015668,-1.320524e-16,1.722570e-17,0.262936,887.7298,-4.661311)" + gradientUnits="userSpaceOnUse" + id="linearGradient8660" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(2.015668,1.320524e-16,-1.722570e-17,0.262936,-22.35201,864.2545)" + gradientUnits="userSpaceOnUse" + id="linearGradient8664" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.076920,8.219405e-19,-1.072242e-19,0.140480,-1393.480,106.0008)" + gradientUnits="userSpaceOnUse" + id="linearGradient8668" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.076920,-1.236203e-24,1.612586e-25,0.140480,-1039.784,-1101.543)" + gradientUnits="userSpaceOnUse" + id="linearGradient8672" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.076920,-8.219405e-19,1.072242e-19,0.140480,182.8280,-1399.005)" + gradientUnits="userSpaceOnUse" + id="linearGradient8676" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.076920,8.219405e-19,-1.072242e-19,0.140480,1051.743,-488.9227)" + gradientUnits="userSpaceOnUse" + id="linearGradient8680" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.076920,-1.236203e-24,1.612586e-25,0.140480,698.0474,718.6206)" + gradientUnits="userSpaceOnUse" + id="linearGradient8684" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <radialGradient + r="103.12180" + fy="311.57950" + fx="335.05655" + cy="311.57950" + cx="335.05655" + gradientUnits="userSpaceOnUse" + id="radialGradient8686" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <radialGradient + r="510.03485" + fy="263.68262" + fx="184.85333" + cy="263.68262" + cx="184.85333" + gradientTransform="matrix(1.000023,0.000000,0.000000,0.999977,-1269.148,508.9478)" + gradientUnits="userSpaceOnUse" + id="radialGradient8688" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(2.015670,0.000000,0.000000,0.262936,-1229.896,510.5584)" + gradientUnits="userSpaceOnUse" + id="linearGradient8690" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="1891.0632" + x2="82.870949" + y1="608.76929" + x1="63.382011" + gradientTransform="matrix(1.076920,-4.042811e-17,5.273689e-18,0.140480,-524.5642,1016.083)" + gradientUnits="userSpaceOnUse" + id="linearGradient8692" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="151.56323" + x2="2461.5281" + y1="151.56323" + x1="2296.1501" + gradientTransform="matrix(0.235656,-1.526325e-7,1.183137e-6,1.826697,-281.9786,22.51686)" + id="linearGradient9460" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="151.56323" + x2="2461.5281" + y1="151.56323" + x1="2296.1501" + gradientTransform="matrix(0.312530,-2.217536e-7,1.569046e-6,3.400447,-225.3948,-739.7164)" + gradientUnits="userSpaceOnUse" + id="linearGradient9464" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="151.56323" + x2="2461.5281" + y1="151.56323" + x1="2296.1501" + gradientTransform="matrix(0.131576,-1.261774e-7,6.915777e-7,1.783645,-129.2480,290.2820)" + gradientUnits="userSpaceOnUse" + id="linearGradient9468" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="151.56323" + x2="2461.5281" + y1="151.56323" + x1="2296.1501" + gradientTransform="matrix(0.194230,-1.079782e-7,2.181271e-6,1.822558,-34.91958,312.3484)" + gradientUnits="userSpaceOnUse" + id="linearGradient9472" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="151.56323" + x2="2461.5281" + y1="151.56323" + x1="2296.1501" + gradientTransform="matrix(0.129003,-2.864802e-7,6.599100e-7,2.716031,244.5059,-246.3615)" + gradientUnits="userSpaceOnUse" + id="linearGradient9476" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <linearGradient + y2="151.56323" + x2="2461.5281" + y1="151.56323" + x1="2296.1501" + gradientTransform="matrix(5.443997e-2,-6.128161e-8,2.808933e-7,0.774360,175.1852,-678.7255)" + gradientUnits="userSpaceOnUse" + id="linearGradient9480" + xlink:href="#linearGradient5444" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="281.53012" + fy="226.82526" + fx="804.76068" + cy="226.82526" + cx="804.76068" + gradientTransform="matrix(1.019921,-9.812863e-2,9.346780e-2,0.971477,-332.6372,-7.822809)" + id="radialGradient10250" + xlink:href="#linearGradient6713" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="380" + inkscape:window-x="0" + inkscape:window-height="618" + inkscape:window-width="1272" + inkscape:current-layer="layer1" + inkscape:cy="354.33072" + inkscape:cx="354.33072" + inkscape:zoom="0.62088887" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <rect + transform="matrix(0.995396,9.585281e-2,0.278131,0.960543,0.000000,0.000000)" + rx="15.074521" + ry="14.206151" + y="439.92145" + x="412.75208" + height="297.31918" + width="28.741560" + id="rect9470" + style="fill:url(#linearGradient9472);fill-opacity:1.0000000;stroke:#411400;stroke-width:3.7185965;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.892564,0.450921,-0.132774,0.991146,0.000000,0.000000)" + rx="15.119516" + ry="14.535456" + y="415.13126" + x="174.01550" + height="290.97128" + width="19.470224" + id="rect9466" + style="fill:url(#linearGradient9468);fill-opacity:1.0000000;stroke:#411400;stroke-width:3.0277703;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.866025,0.500000,-0.500000,0.866025,0.000000,0.000000)" + inkscape:tile-cy="358.35719" + inkscape:tile-cx="355.94131" + inkscape:tile-h="40.072479" + inkscape:tile-w="579.62152" + y="1198.5088" + x="-504.95389" + height="18.070475" + width="162.35670" + id="rect4589" + style="fill:url(#linearGradient8692);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.4309671;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-1.342181e-7,1.000000,-1.000000,-1.342181e-7,0.000000,0.000000)" + y="901.04651" + x="717.65784" + height="18.070471" + width="162.35669" + id="use4591" + style="fill:url(#linearGradient8684);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.4309669;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.866025,0.500000,-0.500000,-0.866025,0.000000,0.000000)" + y="-306.49692" + x="1071.3539" + height="18.070469" + width="162.35666" + id="use4593" + style="fill:url(#linearGradient8680);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.4309666;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.866025,-0.500000,0.500000,-0.866025,0.000000,0.000000)" + y="-1216.5793" + x="202.43875" + height="18.070469" + width="162.35666" + id="use4595" + style="fill:url(#linearGradient8676);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.4309666;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(1.342181e-7,-1.000000,1.000000,1.342181e-7,0.000000,0.000000)" + y="-919.11707" + x="-1020.1733" + height="18.070471" + width="162.35669" + id="use4597" + style="fill:url(#linearGradient8672);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.4309669;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.866025,-0.500000,0.500000,0.866025,0.000000,0.000000)" + y="288.42639" + x="-1373.8696" + height="18.070469" + width="162.35666" + id="use4599" + style="fill:url(#linearGradient8668);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.4309666;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:tile-cy="358.35719" + inkscape:tile-cx="355.94131" + inkscape:tile-h="40.072479" + inkscape:tile-w="579.62152" + y="852.00433" + x="-1193.1906" + height="33.822479" + width="303.88281" + id="rect3763" + style="fill:url(#linearGradient8690);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.5500379;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.500000,0.866025,-0.866025,0.500000,0.000000,0.000000)" + y="1205.7004" + x="14.352796" + height="33.822456" + width="303.88263" + id="use4579" + style="fill:url(#linearGradient8664);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.5500350;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.500000,0.866025,-0.866025,-0.500000,0.000000,0.000000)" + y="336.78464" + x="924.43481" + height="33.822456" + width="303.88263" + id="use4581" + style="fill:url(#linearGradient8660);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.5500350;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="scale(-1.000000,-1.000000)" + y="-885.82684" + x="626.97333" + height="33.822479" + width="303.88281" + id="use4583" + style="fill:url(#linearGradient8656);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.5500379;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.500000,-0.866025,0.866025,-0.500000,0.000000,0.000000)" + y="-1239.5232" + x="-580.56989" + height="33.822456" + width="303.88263" + id="use4585" + style="fill:url(#linearGradient8652);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.5500350;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.500000,-0.866025,0.866025,0.500000,0.000000,0.000000)" + y="-370.60727" + x="-1490.6527" + height="33.822456" + width="303.88263" + id="use4587" + style="fill:url(#linearGradient8648);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.5500350;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="path1459" + d="M -917.39821,536.60401 C -1101.0626,536.60401 -1250.1482,685.65838 -1250.1482,869.32276 C -1250.1482,1052.9871 -1101.0626,1202.0415 -917.39821,1202.0415 C -733.73384,1202.0415 -584.67945,1052.9871 -584.67946,869.32276 C -584.67946,685.65839 -733.73386,536.60401 -917.39821,536.60401 z M -917.39821,612.66651 C -775.71421,612.66651 -660.74196,727.63877 -660.74196,869.32276 C -660.74195,1011.0068 -775.71422,1126.0103 -917.39821,1126.0103 C -1059.0822,1126.0103 -1174.0857,1011.0067 -1174.0857,869.32276 C -1174.0857,727.63878 -1059.0822,612.66651 -917.39821,612.66651 z " + style="fill:url(#radialGradient8688);fill-opacity:1.0000000;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="translate(-1269.148,508.9478)" + d="M 433.24984 353.52542 A 71.671440 71.671440 0 1 1 289.90696,353.52542 A 71.671440 71.671440 0 1 1 433.24984 353.52542 z" + sodipodi:ry="71.671440" + sodipodi:rx="71.671440" + sodipodi:cy="353.52542" + sodipodi:cx="361.57840" + id="path2993" + style="fill:url(#radialGradient8686);fill-opacity:1.0000000;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + id="path5387" + d="M 794.89119,574.31026 L 1307.4137,717.62997 L 1306.9866,773.00715 L 794.99184,629.44441 L 794.89119,574.31026 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;fill:url(#linearGradient7723);fill-opacity:1.0;fill-rule:evenodd;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5389" + d="M 1363.2179,743.96616 L 1363.2179,688.01956 L 1307.4136,717.77233 L 1307.1289,773.00715 L 1363.2179,743.96616 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;fill:url(#linearGradient7715);fill-opacity:1.0;fill-rule:evenodd;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5395" + d="M 1137.9167,520.62379 L 1485.6967,619.70478 L 1485.5543,674.79724 L 1190.3044,590.37909 L 1137.9167,520.62379 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:6.2500000;stroke:#411400;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient6933)" /> + <path + sodipodi:nodetypes="ccccc" + id="path5397" + d="M 1530.8468,652.78751 L 1530.5621,597.12563 L 1485.7026,619.86659 L 1485.7026,675.10140 L 1530.8468,652.78751 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;fill:url(#linearGradient6941);fill-opacity:1.0;fill-rule:evenodd;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5401" + d="M 1190.4040,590.02438 L 1137.8741,520.69615 L 1013.8738,589.97007 L 1091.2573,650.15240 L 1190.4040,590.02438 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;fill:url(#linearGradient6949);fill-opacity:1.0;fill-rule:evenodd;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccc" + id="path4609" + d="M 794.92572,574.27572 L 1307.4136,717.77233 L 1363.2179,688.16192 L 1013.7713,590.07668 L 1137.9073,520.60610 L 1486.2149,619.83020 L 1530.6306,597.05295 L 1014.7261,452.41748 L 794.92572,574.27572 z " + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;fill:url(#linearGradient6925);fill-opacity:1.0;fill-rule:evenodd;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.866025,0.500000,-0.500000,0.866025,0.000000,0.000000)" + inkscape:tile-cy="358.35719" + inkscape:tile-cx="355.94131" + inkscape:tile-h="40.072479" + inkscape:tile-w="579.62152" + y="85.633858" + x="222.61412" + height="10.964674" + width="98.513634" + id="rect8554" + style="fill:url(#linearGradient8582);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.4750450;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-1.342183e-7,1.000000,-1.000000,-1.342183e-7,0.000000,0.000000)" + y="-232.19778" + x="144.32668" + height="10.964673" + width="98.513641" + id="use8556" + style="fill:url(#linearGradient8636);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.4750450;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.866025,0.500001,-0.500001,-0.866025,0.000000,0.000000)" + y="-323.31436" + x="-170.06789" + height="10.964695" + width="98.513840" + id="use8558" + style="fill:url(#linearGradient8632);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.4750479;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.866025,-0.500001,0.500001,-0.866025,0.000000,0.000000)" + y="-96.598373" + x="-406.17438" + height="10.964695" + width="98.513840" + id="use8560" + style="fill:url(#linearGradient8628);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.4750479;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(1.342183e-7,-1.000000,1.000000,1.342183e-7,0.000000,0.000000)" + y="221.23317" + x="-327.88519" + height="10.964673" + width="98.513641" + id="use8562" + style="fill:url(#linearGradient8624);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.4750450;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.866025,-0.500001,0.500001,0.866025,0.000000,0.000000)" + y="312.34964" + x="-13.490176" + height="10.964695" + width="98.513840" + id="use8564" + style="fill:url(#linearGradient8620);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.4750479;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:tile-cy="358.35719" + inkscape:tile-cx="355.94131" + inkscape:tile-h="40.072479" + inkscape:tile-w="579.62152" + y="225.84473" + x="54.933029" + height="20.522591" + width="184.38811" + id="rect8566" + style="fill:url(#linearGradient8584);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.7608435;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.500000,0.866025,-0.866025,0.500000,0.000000,0.000000)" + y="-88.548653" + x="146.04863" + height="20.522558" + width="184.38782" + id="use8568" + style="fill:url(#linearGradient8616);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.7608390;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.500000,0.866025,-0.866025,-0.500000,0.000000,0.000000)" + y="-324.65515" + x="-80.668091" + height="20.522558" + width="184.38782" + id="use8570" + style="fill:url(#linearGradient8612);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.7608390;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="scale(-1.000000,-1.000000)" + y="-246.36722" + x="-398.49881" + height="20.522600" + width="184.38818" + id="use8572" + style="fill:url(#linearGradient8608);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.7608447;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-0.500000,-0.866025,0.866025,-0.500000,0.000000,0.000000)" + y="68.026344" + x="-489.61423" + height="20.522558" + width="184.38782" + id="use8574" + style="fill:url(#linearGradient8604);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.7608390;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.500000,-0.866025,0.866025,0.500000,0.000000,0.000000)" + y="304.13269" + x="-262.89801" + height="20.522558" + width="184.38782" + id="use8576" + style="fill:url(#linearGradient8600);fill-opacity:1.0000000;stroke:#411400;stroke-width:2.7608390;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="path8578" + d="M 222.27660,34.468120 C 110.83390,34.468120 20.372697,124.91040 20.372697,236.35312 C 20.372697,347.79583 110.83390,438.23812 222.27660,438.23811 C 333.71930,438.23811 424.16160,347.79583 424.16160,236.35312 C 424.16160,124.91040 333.71930,34.468120 222.27660,34.468120 z M 222.27660,80.620850 C 308.24680,80.620850 378.00890,150.38300 378.00890,236.35312 C 378.00890,322.32325 308.24680,392.10435 222.27660,392.10435 C 136.30650,392.10436 66.525397,322.32324 66.525397,236.35312 C 66.525397,150.38300 136.30650,80.620850 222.27660,80.620850 z " + style="fill:url(#radialGradient8586);fill-opacity:1.0000000;stroke:#411400;stroke-width:3.7923357;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.606774,0.000000,0.000000,0.606774,8.843896,17.68703)" + d="M 433.24984 353.52542 A 71.671440 71.671440 0 1 1 289.90696,353.52542 A 71.671440 71.671440 0 1 1 433.24984 353.52542 z" + sodipodi:ry="71.671440" + sodipodi:rx="71.671440" + sodipodi:cy="353.52542" + sodipodi:cx="361.57840" + id="path8580" + style="fill:url(#radialGradient8588);fill-opacity:1.0000000;stroke:#411400;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <rect + transform="matrix(0.967788,0.251767,-0.251767,0.967788,0.000000,0.000000)" + rx="17.435839" + ry="14.789555" + y="150.37952" + x="261.17419" + height="297.99429" + width="34.871677" + id="rect8694" + style="fill:url(#linearGradient9460);fill-opacity:1.0000000;stroke:#411400;stroke-width:4.1006503;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.990078,0.140521,-1.886212e-2,0.999822,0.000000,0.000000)" + rx="9.4321423" + ry="10.557477" + y="-56.248333" + x="541.83759" + height="443.07388" + width="19.089394" + id="rect9474" + style="fill:url(#linearGradient9476);fill-opacity:1.0000000;stroke:#411400;stroke-width:3.6995294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(0.202205,0.979343,-0.994884,0.101028,0.000000,0.000000)" + rx="17.259066" + ry="14.750507" + y="-501.69650" + x="494.94125" + height="554.72449" + width="46.247250" + id="rect9462" + style="fill:url(#linearGradient9464);fill-opacity:1.0000000;stroke:#411400;stroke-width:6.4430857;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + transform="matrix(-6.841232e-2,0.997657,-0.999999,-1.482768e-3,0.000000,0.000000)" + rx="9.4928284" + ry="10.558736" + y="-624.52289" + x="300.66107" + height="126.32350" + width="8.0558443" + id="rect9478" + style="fill:url(#linearGradient9480);fill-opacity:1.0000000;stroke:#411400;stroke-width:1.2832465;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccccccc" + id="path10252" + d="M 477.94546,310.54918 C 447.64383,332.53325 418.49215,259.44463 461.59203,259.49301 C 425.07463,236.69164 463.09237,191.84553 491.34717,212.00949 C 454.24148,194.98533 441.20305,166.49263 458.25041,153.41126 C 434.02771,115.69754 513.51045,73.726712 535.61790,101.34685 C 545.71691,67.577067 670.46772,71.973603 647.80406,101.99440 C 670.04033,95.278516 666.90395,145.92160 648.00244,139.73131 C 668.19188,175.16346 652.23407,179.74979 628.55901,187.36685 C 659.91497,176.34117 698.42310,192.08629 680.20690,224.73017 C 712.35723,253.67231 687.30408,306.42405 650.29974,282.52541 C 659.18154,311.41802 611.42491,334.31871 602.71058,311.13060 C 555.71515,302.30405 519.90397,302.69852 477.94546,310.54918 z " + style="fill:#000000;fill-opacity:0.57530123;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccccccc" + id="path9482" + d="M 475.66774,307.13259 C 445.36611,329.11666 416.21443,256.02804 459.31431,256.07642 C 422.79691,233.27505 460.81465,188.42894 489.06945,208.59290 C 451.96376,191.56874 438.92533,163.07604 455.97269,149.99467 C 431.74999,112.28095 511.23273,70.310126 533.34018,97.930265 C 543.43919,64.160481 668.19000,68.557017 645.52634,98.577813 C 667.76261,91.861930 664.62623,142.50501 645.72472,136.31472 C 665.91416,171.74687 649.95635,176.33320 626.28129,183.95026 C 657.63725,172.92458 696.14538,188.66970 677.92918,221.31358 C 710.07951,250.25572 685.02636,303.00746 648.02202,279.10882 C 656.90382,308.00143 609.14719,330.90212 600.43286,307.71401 C 553.43743,298.88746 517.62625,299.28193 475.66774,307.13259 z " + style="fill:url(#radialGradient10250);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/parks/monument.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/monument.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/parks/monument.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/monument.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,335 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1130" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="monument.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/monument.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient8668"> + <stop + style="stop-color:#000000;stop-opacity:0.66666669;" + offset="0.0000000" + id="stop8669" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop8670" /> + </linearGradient> + <linearGradient + id="linearGradient8043"> + <stop + style="stop-color:#076c00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8044" /> + <stop + style="stop-color:#044800;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8045" /> + </linearGradient> + <linearGradient + id="linearGradient5550"> + <stop + style="stop-color:#098000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5551" /> + <stop + style="stop-color:#065700;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop5552" /> + </linearGradient> + <linearGradient + id="linearGradient3649"> + <stop + style="stop-color:#858585;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3650" /> + <stop + style="stop-color:#d1d1d1;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3651" /> + </linearGradient> + <linearGradient + id="linearGradient1773"> + <stop + style="stop-color:#3a3a3a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1774" /> + <stop + style="stop-color:#d1d1d1;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1775" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1773" + id="linearGradient1776" + gradientTransform="matrix(0.843629,0.000000,0.000000,2.263357,-126.6736,-392.3478)" + x1="744.75513" + y1="421.35779" + x2="323.75998" + y2="157.71353" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1773" + id="linearGradient1777" + gradientTransform="matrix(0.843629,0.000000,0.000000,2.263357,-126.6736,-392.3478)" + x1="744.75513" + y1="421.35779" + x2="323.75998" + y2="157.71353" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1773" + id="linearGradient2402" + gradientTransform="matrix(0.866012,0.000000,0.000000,1.897980,-160.4318,-259.9815)" + x1="1359.4681" + y1="442.38748" + x2="428.45496" + y2="179.02896" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3649" + id="linearGradient3027" + gradientTransform="matrix(2.653902,0.000000,0.000000,0.719481,-136.5197,-379.6885)" + x1="177.30511" + y1="801.74316" + x2="91.451393" + y2="675.90753" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3649" + id="linearGradient4277" + gradientTransform="matrix(3.928311,0.000000,0.000000,0.486070,-126.6736,-392.3478)" + x1="184.57861" + y1="1128.7466" + x2="46.158596" + y2="734.01270" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1773" + id="linearGradient4279" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.653902,0.000000,0.000000,0.719481,-126.6736,-392.3478)" + x1="306.90689" + y1="823.05365" + x2="212.09261" + y2="657.24048" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1773" + id="linearGradient4902" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.843629,0.000000,0.000000,2.263357,148.3157,-378.2819)" + x1="744.75513" + y1="421.35779" + x2="323.75998" + y2="157.71353" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5550" + id="radialGradient5546" + gradientTransform="matrix(1.473912,0.000000,0.000000,1.295486,-126.6736,-392.3478)" + cx="431.20450" + cy="691.40253" + fx="431.20450" + fy="691.40253" + r="58.530869" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8043" + id="radialGradient7421" + gradientTransform="matrix(1.932682,0.000000,0.000000,0.987971,-90.86749,-406.2724)" + cx="184.31937" + cy="967.57825" + fx="184.31937" + fy="967.57825" + r="388.56378" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8668" + id="radialGradient8671" + gradientTransform="scale(1.353997,0.738554)" + cx="106.31979" + cy="828.44961" + fx="106.31979" + fy="828.44961" + r="161.39606" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8668" + id="radialGradient9294" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.353997,0.738554)" + cx="74.619446" + cy="842.89111" + fx="76.128990" + fy="842.89117" + r="139.31332" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient7421);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#266a00;stroke-width:5.1818314;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 64.292085,565.51762 C 67.110145,628.01244 146.94783,701.70279 266.19841,700.78491 C 524.63186,698.79568 653.44491,641.67932 683.93562,563.52839 C 701.00980,519.76545 669.51374,423.95111 588.45283,396.43350 C 481.09711,359.98966 251.06774,340.39967 154.80182,410.35810 C 72.912056,469.86906 60.958634,491.59339 64.292085,565.51762 z " + id="path6796" + sodipodi:nodetypes="csssss" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient9294);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path9293" + sodipodi:cx="143.95670" + sodipodi:cy="611.85474" + sodipodi:rx="216.65482" + sodipodi:ry="117.32470" + d="M 360.61151 611.85474 A 216.65482 117.32470 0 1 1 -72.698120,611.85474 A 216.65482 117.32470 0 1 1 360.61151 611.85474 z" + transform="matrix(0.819452,0.000000,0.000000,0.949473,493.3632,-133.7810)" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient8671);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path8046" + sodipodi:cx="143.95670" + sodipodi:cy="611.85474" + sodipodi:rx="216.65482" + sodipodi:ry="117.32470" + d="M 360.61151 611.85474 A 216.65482 117.32470 0 1 1 -72.698120,611.85474 A 216.65482 117.32470 0 1 1 360.61151 611.85474 z" + transform="matrix(0.819452,0.000000,0.000000,0.949473,242.2237,-143.7266)" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient1776);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1818314;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 122.28286,121.05383 L 127.92009,531.54315 L 269.98612,565.30141 L 239.03021,142.15276 L 122.28286,121.05383 z " + id="path1140" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient4902);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1818314;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 544.97532,579.36736 L 605.45887,516.07061 L 566.07423,148.94947 L 499.96430,160.20223 L 544.97532,579.36736 z " + id="path4901" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient2402);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.8077135;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 379.70049,565.66202 L 544.27201,578.90869 L 527.39288,151.86596 L 371.26092,178.12736 L 379.70049,565.66202 z " + id="path1141" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient1777);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1818314;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 269.98612,565.30142 L 330.46967,502.00467 L 304.82877,133.16556 L 238.71884,144.41832 L 269.98612,565.30142 z " + id="path1151" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient3027);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1818314;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 32.271670,36.421927 L 575.21709,95.498895 L 579.43687,213.65281 L 53.370581,130.66374 L 32.271670,36.421927 z " + id="path1146" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient4277);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1818314;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 32.974961,35.718634 L 181.37067,9.6966375 L 655.39296,42.048318 L 575.21709,94.092313 L 32.974961,35.718634 z " + id="path3652" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#linearGradient4279);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1818314;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 575.21709,95.498905 L 656.09626,41.345026 L 646.25010,160.20224 L 579.72818,213.73815 L 575.21709,95.498905 z " + id="path4278" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:url(#radialGradient5546);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#044a00;stroke-width:3.4545543;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 435.28252,570.49068 C 452.85400,543.96768 453.51709,516.45008 453.18554,482.96480 C 474.07240,501.53091 467.11012,510.15087 474.07240,523.74391 C 479.70853,464.06716 496.28540,470.03483 496.94849,434.22879 C 519.82457,459.42563 512.86228,466.71947 520.81918,482.96480 C 527.44993,471.02945 534.08068,459.09410 540.71142,447.15875 C 548.33680,441.19107 558.94599,443.18030 567.56596,422.29344 C 552.97832,472.68713 566.23982,464.39870 567.56598,481.97018 C 572.53904,479.64943 570.54981,504.18320 585.46899,467.05099 C 581.15901,504.51472 599.72510,504.18320 594.42049,529.71158 L 546.67910,579.44220 L 435.28252,570.49068 z " + id="path4921" + sodipodi:nodetypes="cccccccccccc" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#0d4a00;stroke-width:5.1818314;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 539.71682,449.14798 L 546.18180,579.44220" + id="path5553" + inkscape:export-filename="/home/egore/workspace/monument.png" + inkscape:export-xdpi="10.480000" + inkscape:export-ydpi="10.480000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/parks/tree.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/tree.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/parks/tree.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/tree.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,178 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="tree.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/tree.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient4799"> + <stop + style="stop-color:#000000;stop-opacity:0.60000002;" + offset="0.0000000" + id="stop4800" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop4801" /> + </linearGradient> + <linearGradient + id="linearGradient2310"> + <stop + style="stop-color:#b2721c;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2311" /> + <stop + style="stop-color:#583200;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2312" /> + </linearGradient> + <linearGradient + id="linearGradient1683"> + <stop + style="stop-color:#0cff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1684" /> + <stop + style="stop-color:#034000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1685" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient1683" + id="radialGradient1686" + gradientTransform="matrix(1.138482,0.000000,0.000000,0.878363,-20.28259,13.12403)" + cx="276.57715" + cy="192.13182" + fx="276.57715" + fy="192.13182" + r="260.36972" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2310" + id="linearGradient2313" + gradientTransform="matrix(0.761922,0.000000,0.000000,1.430703,-2.710789,-5.577742)" + x1="344.15223" + y1="387.38036" + x2="556.06579" + y2="387.38036" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4799" + id="radialGradient4802" + gradientTransform="scale(1.646313,0.607418)" + cx="233.71786" + cy="981.06078" + fx="233.71786" + fy="981.06078" + r="142.40484" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4799" + id="radialGradient4804" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.646313,0.607418)" + cx="233.71786" + cy="981.06078" + fx="233.71786" + fy="981.06078" + r="142.40484" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4799" + id="radialGradient5427" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.646313,0.607418)" + cx="233.71786" + cy="981.06078" + fx="233.71786" + fy="981.06078" + r="142.40484" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient4802);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + id="path4177" + sodipodi:cx="384.77264" + sodipodi:cy="595.91406" + sodipodi:rx="234.44287" + sodipodi:ry="86.499275" + d="M 619.21552 595.91406 A 234.44287 86.499275 0 1 1 150.32977,595.91406 A 234.44287 86.499275 0 1 1 619.21552 595.91406 z" + transform="translate(103.7991,-16.70331)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient4804);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + id="path4803" + sodipodi:cx="384.77264" + sodipodi:cy="595.91406" + sodipodi:rx="234.44287" + sodipodi:ry="86.499275" + d="M 619.21552 595.91406 A 234.44287 86.499275 0 1 1 150.32977,595.91406 A 234.44287 86.499275 0 1 1 619.21552 595.91406 z" + transform="matrix(0.377177,-0.209161,0.193500,0.407703,158.7574,459.8238)" /> + <path + style="fill:url(#linearGradient2313);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#864b00;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + d="M 294.73899,399.61208 L 285.45891,668.74816 C 331.04983,699.03878 379.22862,693.97384 392.36921,670.20398 L 383.93276,401.22755 L 294.73899,399.61208 z " + id="path1688" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient1686);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#046600;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.77104378" + d="M 177.13023,91.582973 C 185.23177,51.052913 295.93936,8.1366672 351.76464,30.840562 C 403.88245,-7.0923346 553.83394,49.229153 547.49017,92.426613 C 605.20945,111.89666 627.13593,205.33851 598.95248,265.37374 C 613.91055,314.02391 554.89683,402.04616 493.49692,411.32424 C 463.21252,443.82726 363.72869,454.85459 309.58242,426.50984 C 256.56928,449.57147 189.23903,432.06791 143.38445,377.57846 C 90.855221,354.81862 55.029304,280.75577 86.016621,219.81694 C 74.629552,162.75516 112.15932,102.11410 177.13023,91.582973 z " + id="path1061" + sodipodi:nodetypes="ccccccccc" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/parks/water.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/water.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/parks/water.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/parks/water.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,154 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/workspace/lincity-images/water.png" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/parks" + sodipodi:docname="water.svg" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg14881" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient4211"> + <stop + id="stop4212" + offset="0.0000000" + style="stop-color:#000bbe;stop-opacity:1.0000000;" /> + <stop + id="stop4213" + offset="1.0000000" + style="stop-color:#00077b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient3071"> + <stop + id="stop3072" + offset="0.0000000" + style="stop-color:#ff0000;stop-opacity:1.0000000;" /> + <stop + id="stop3073" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient1818"> + <stop + id="stop1819" + offset="0.0000000" + style="stop-color:#b1b1b1;stop-opacity:1.0000000;" /> + <stop + id="stop1820" + offset="1.0000000" + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22986"> + <stop + id="stop22987" + offset="0.0000000" + style="stop-color:#3f3f3f;stop-opacity:1.0000000;" /> + <stop + id="stop22988" + offset="1.0000000" + style="stop-color:#969696;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="590.78986" + x2="406.65063" + y1="345.92068" + x1="279.77991" + gradientTransform="matrix(1.451264,0.000000,0.000000,0.998427,-3.399373,-27.27137)" + id="linearGradient4210" + xlink:href="#linearGradient4211" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="211.40018" + x2="501.75058" + y1="282.80688" + x1="541.64764" + gradientTransform="matrix(1.172453,0.000000,0.000000,1.235854,-3.399373,-27.27137)" + id="linearGradient5468" + xlink:href="#linearGradient1818" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="966" + inkscape:window-width="1270" + inkscape:current-layer="layer1" + inkscape:cy="354.33072" + inkscape:cx="354.33072" + inkscape:zoom="1.1260666" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:nodetypes="cscscc" + id="path1090" + d="M 18.942184,582.04384 C 117.10963,544.30015 115.26460,340.71368 191.96231,246.28578 C 313.86767,96.199591 544.81506,107.45499 661.76973,231.68760 C 508.59465,200.88333 402.70992,238.69657 410.17332,401.02645 C 414.79404,502.54335 613.87077,533.63714 694.26654,599.30777 C 496.57760,533.29863 326.30786,635.86668 18.942184,582.04384 z " + style="fill:url(#linearGradient4210);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#1795e9;stroke-width:4.5140104;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.76094276" /> + <path + sodipodi:nodetypes="ccc" + id="path1713" + d="M 95.106587,553.60913 C 277.90115,501.47882 169.23993,299.05077 428.19890,169.74055 C 180.41071,174.14114 219.00070,471.01306 95.106587,553.60913 z " + style="fill:#a5acff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#1795e9;stroke-width:4.5140104;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path2963" + d="M 219.00068,525.17443 C 477.95965,492.33909 253.52853,376.23069 432.26100,253.01363 C 213.92304,288.89550 424.13682,450.70256 219.00068,525.17443 z " + style="fill:#a5acff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#1795e9;stroke-width:4.5140104;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path2964" + d="M 152.52817,501.34760 C 220.47542,477.56049 230.07920,259.82588 349.07717,208.29141 C 233.68898,227.94845 204.83662,457.14019 152.52817,501.34760 z " + style="fill:#3140ff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#1795e9;stroke-width:1.7488506;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path4214" + d="M 281.76199,500.41801 C 390.47674,462.64692 300.65789,359.04853 379.65493,284.87874 C 276.38463,344.13018 391.15858,422.62457 281.76199,500.41801 z " + style="fill:#3140ff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#1795e9;stroke-width:2.5902538;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cscscscsscscss" + id="path4836" + d="M 597.28386,241.33509 C 618.44852,259.58701 599.14769,261.53525 609.97794,279.92505 C 614.55036,287.68903 645.03077,292.63289 638.41264,244.88943 C 643.49027,248.95154 630.90725,279.62945 662.78525,279.41729 C 685.12038,279.25851 681.06471,259.61454 664.81631,232.19536 C 680.72621,252.16735 684.53005,266.10982 695.78982,256.06020 C 708.55802,244.66427 683.88213,226.52186 673.95603,214.42367 C 684.89765,224.82934 693.62483,202.76433 690.20444,196.14421 C 683.13107,182.45382 665.99267,171.56727 642.33659,163.52420 C 632.14182,160.05798 605.15204,176.97468 642.47475,196.14421 C 623.93926,195.93116 610.70456,154.18197 593.77618,181.85030 C 589.27982,189.19930 578.36247,206.45568 601.85373,218.48577 C 587.33294,206.62494 575.09473,194.47084 560.21720,210.36156 C 540.49262,231.42942 589.50720,234.62868 597.28386,241.33509 z " + style="fill:url(#linearGradient5468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.30093403pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/power/coalpower.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/coalpower.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/power/coalpower.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/coalpower.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,128 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/workspace/lincity-images/coalpower.png" + sodipodi:docname="coalpower.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg4372" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient8206"> + <stop + id="stop8208" + offset="0.0000000" + style="stop-color:#ffae00;stop-opacity:1.0000000;" /> + <stop + id="stop8210" + offset="1.0000000" + style="stop-color:#d44b00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient7438"> + <stop + id="stop7440" + offset="0.0000000" + style="stop-color:#bfbfbf;stop-opacity:1.0000000;" /> + <stop + id="stop7442" + offset="1.0000000" + style="stop-color:#1a1a1a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="360.54108" + x2="532.33026" + y1="285.68573" + x1="199.51169" + gradientTransform="matrix(1.011921,0.000000,0.000000,0.988219,10.05194,41.88306)" + id="linearGradient7444" + xlink:href="#linearGradient7438" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="201.20963" + x2="275.28329" + y1="366.76852" + x1="314.99408" + gradientTransform="matrix(1.198645,0.000000,0.000000,0.834275,10.05194,41.88306)" + id="linearGradient8212" + xlink:href="#linearGradient8206" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="358.42023" + x2="693.40112" + y1="358.42023" + x1="33.607346" + gradientTransform="scale(0.972459,1.028321)" + id="linearGradient11262" + xlink:href="#linearGradient7438" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="1001" + inkscape:window-width="1274" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="219.11443" + inkscape:cx="217.67416" + inkscape:zoom="1.1938000" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:nodetypes="ccsccccsccc" + id="path9738" + d="M 181.77249,23.454516 C 198.80494,104.14922 194.05819,126.20763 172.55822,175.07121 C 106.66220,206.62311 62.886330,321.82845 61.986934,398.72676 C 61.211006,465.06853 81.532361,548.38891 157.48031,594.73950 L 144.07773,698.60951 L 593.06418,703.63547 L 581.33692,598.09015 C 631.03816,540.01230 671.71454,506.38020 671.80434,410.45402 C 671.89937,305.58850 586.36290,207.74000 561.23305,192.66209 C 531.07725,117.27258 539.45386,77.902499 551.18112,24.292178 C 428.04491,24.012957 304.90870,23.733736 181.77249,23.454516 z " + style="fill:url(#linearGradient11262);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:5.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-dasharray:none;stroke-miterlimit:4.0000000" /> + <path + sodipodi:nodetypes="cccccc" + id="path7446" + d="M 202.55463,526.64907 L 525.95915,544.41855 L 495.75103,257.73761 L 355.96447,213.31392 L 211.43937,279.65330 L 202.55463,526.64907 z " + style="fill:url(#linearGradient8212);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cczzcccscccccccccccccccscc" + d="M 189.31146,560.39539 C 172.55823,469.09031 141.14593,391.60664 184.28548,301.55805 C 227.42504,211.50947 303.75515,186.76304 362.70734,189.31145 C 421.61746,191.85805 514.04481,236.22048 541.54802,297.36975 C 569.05123,358.51902 550.20385,477.46693 537.77854,564.58370 C 421.62285,578.26550 307.14247,574.35641 189.31146,560.39539 z M 216.11662,515.16168 C 213.18480,492.54483 214.23306,343.54574 223.65557,309.93467 C 229.62219,288.65114 249.20424,266.23668 266.37629,258.83733 C 267.35356,345.53527 269.16850,430.55789 260.51267,515.16168 C 245.71399,518.93116 231.33413,518.93116 216.11662,515.16168 z M 296.95094,254.64903 C 288.57432,345.95411 288.57432,431.39556 292.34379,513.48636 C 319.56778,515.99934 324.59375,515.99935 345.11645,512.64870 C 350.98008,466.15850 350.14243,340.09048 347.21061,239.57112 C 331.57427,243.75943 314.26260,244.17826 296.95094,254.64903 z M 375.27226,240.82762 C 374.15538,331.85347 374.71382,427.06764 378.62290,515.58051 C 404.59040,520.60648 424.27545,519.34999 436.42153,512.64870 C 439.64079,424.93961 436.06224,344.62575 425.59147,252.48301 C 411.07200,243.40835 393.56120,240.68800 375.27226,240.82762 z M 473.69746,517.25583 C 459.45722,423.01895 453.31848,389.65621 452.48082,266.52001 C 480.72517,275.73428 489.43194,281.96736 493.38250,296.53209 C 512.60724,367.40881 511.53183,438.93450 517.67468,517.25584 C 501.47989,520.46687 489.89225,518.65193 473.69746,517.25583 z " + style="fill:url(#linearGradient7444);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path4382" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/power/powerlines.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/powerlines.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/power/powerlines.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/powerlines.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,634 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + sodipodi:docname="powerlines.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.40" + sodipodi:version="0.32" + id="svg14185" + height="200.00000mm" + width="200.00000mm" + inkscape:export-filename="/home/egore/workspace/lincity-images/powerlines.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient16016"> + <stop + id="stop16018" + offset="0.00000000" + style="stop-color:#ededed;stop-opacity:1.0000000;" /> + <stop + id="stop16020" + offset="1.0000000" + style="stop-color:#d2d2d2;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient14490"> + <stop + id="stop14492" + offset="0.00000000" + style="stop-color:#e22f2f;stop-opacity:1.0000000;" /> + <stop + id="stop14494" + offset="1.0000000" + style="stop-color:#8d1a1a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9914"> + <stop + id="stop9916" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9918" + offset="1.0000000" + style="stop-color:#747474;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9900"> + <stop + id="stop9902" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.76470590;" /> + <stop + id="stop9904" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5240"> + <stop + id="stop5242" + offset="0.00000000" + style="stop-color:#e8b42e;stop-opacity:1.0000000;" /> + <stop + id="stop5246" + offset="1.0000000" + style="stop-color:#d29232;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient17318"> + <stop + id="stop17319" + offset="0.0000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + <stop + id="stop17320" + offset="1.0000000" + style="stop-color:#a9a9a9;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient3661" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,-0.456843,-77.19921)" + x1="112.66822" + y1="105.86151" + x2="341.85764" + y2="324.63354" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient4286" + gradientTransform="matrix(0.400750,0.000000,0.000000,3.076615,-0.456843,-77.19921)" + x1="-39.074833" + y1="53.777351" + x2="1168.6809" + y2="150.74683" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient4912" + gradientTransform="matrix(0.422940,0.000000,0.000000,2.915197,-0.456843,-77.19921)" + x1="1125.7502" + y1="129.38042" + x2="428.26904" + y2="73.279221" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient5537" + gradientTransform="matrix(0.752150,0.000000,0.000000,1.639239,-0.456843,-77.19921)" + x1="748.67175" + y1="325.54260" + x2="254.42464" + y2="149.60014" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient6162" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,-0.456843,-77.19921)" + x1="166.02466" + y1="616.26538" + x2="191.97891" + y2="664.29761" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient6793" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,-4.272049,-59.07698)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient7416" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,57.24815,-323.2801)" + x1="166.02466" + y1="616.26538" + x2="191.97891" + y2="664.29761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient7418" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,-11.71115,-281.3937)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient8044" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-0.456843,-77.19921)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient8046" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-237.0655,-115.1063)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient8048" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,17.97864,-54.25013)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient8050" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,78.16691,-326.6303)" + x1="166.02466" + y1="616.26538" + x2="191.97891" + y2="664.29761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient8052" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,28.73082,-85.16684)" + x1="166.02466" + y1="616.26538" + x2="191.97891" + y2="664.29761" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9900" + id="radialGradient8679" + gradientTransform="scale(1.544884,0.647298)" + cx="-94.052330" + cy="719.79114" + fx="-94.052330" + fy="719.79114" + r="66.358788" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient10544" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,150.8653,-167.6128)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient10546" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,46.42407,-122.7841)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient10548" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,21.38679,-296.6144)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient10551" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-11.40014,-553.6026)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient10552" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,13.63714,-379.7722)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient10558" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-0.456843,-77.19921)" + x1="870.15765" + y1="186.30351" + x2="870.15765" + y2="218.18375" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient11181" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-71.99198,-272.4781)" + x1="870.15765" + y1="186.30351" + x2="870.15765" + y2="218.18375" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient11183" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-4.842754,-298.0740)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient11185" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.447966,0.000000,0.000000,2.752338,-74.40042,-493.8418)" + x1="1296.2609" + y1="224.79190" + x2="113.38234" + y2="141.51456" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient11187" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,-22.03891,-81.92029)" + x1="513.11157" + y1="76.715668" + x2="508.49084" + y2="167.14792" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient11189" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,-22.03891,-81.92029)" + x1="489.39038" + y1="73.201561" + x2="916.43011" + y2="136.00027" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient11191" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,-22.03891,-81.92029)" + x1="1003.4896" + y1="127.69345" + x2="952.79675" + y2="105.27344" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient13058" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,34.17746,-98.85021)" + x1="1003.4896" + y1="127.69345" + x2="952.79675" + y2="105.27344" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient13059" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,34.17746,-98.85021)" + x1="489.39038" + y1="73.201561" + x2="916.43011" + y2="136.00027" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient13060" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.625800,0.000000,0.000000,1.970202,34.17746,-98.85021)" + x1="513.11157" + y1="76.715668" + x2="508.49084" + y2="167.14792" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient13062" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,65.68284,-240.4633)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient13064" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,73.10167,-392.8866)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient13066" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,169.7899,-411.2856)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9914" + id="linearGradient13068" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.327107,0.000000,0.000000,0.929053,97.45625,-427.8313)" + x1="194.17961" + y1="427.00430" + x2="164.27757" + y2="493.22803" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="994" + inkscape:window-width="1270" + inkscape:current-layer="layer1" + inkscape:cy="230.67204" + inkscape:cx="207.40168" + inkscape:zoom="1.0289877" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + style="fill:#429a1f;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.43097901pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 4.4080291,629.50113 L 424.95959,699.09945 L 703.35290,536.20977 L 316.86008,478.45796 L 4.4080291,629.50113 z " + id="path1787" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient8679);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7551081;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.85882354" + id="path8053" + sodipodi:cx="-121.97565" + sodipodi:cy="465.56906" + sodipodi:rx="153.75804" + sodipodi:ry="64.423759" + d="M 31.782394 465.56906 A 153.75804 64.423759 0 1 1 -275.73369,465.56906 A 153.75804 64.423759 0 1 1 31.782394 465.56906 z" + transform="matrix(1.672115,-0.659750,1.610326,1.278283,-166.6040,-110.8931)" /> + <path + style="fill:url(#linearGradient5537);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 526.04987,573.62660 L 496.43410,567.34508 L 317.69096,38.639761 L 334.97862,40.547356 L 526.04987,573.62660 z " + id="path2410" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient10551);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 339.06410,181.35934 L 398.73456,200.85440 L 394.77966,187.52515 L 335.49436,162.84203 L 339.06410,181.35934 z " + id="path10550" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient10558);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 385.68114,547.55780 L 471.10426,423.02882 L 452.84234,422.57589 L 379.72690,527.13289 L 385.68114,547.55780 z " + id="path10557" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient10546);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 387.35029,577.36410 L 480.88072,433.75909 L 476.44893,416.13773 L 383.78055,551.21638 L 387.35029,577.36410 z " + id="path10545" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient10548);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 359.92850,365.38169 L 468.71975,395.36857 L 464.28795,377.74721 L 356.35876,339.23397 L 359.92850,365.38169 z " + id="path10547" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient10552);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 353.60956,314.17623 L 410.41862,233.99902 L 407.89443,218.76216 L 350.99362,283.73639 L 353.60956,314.17623 z " + id="path10549" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient10544);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 526.60534,573.54890 L 551.46205,559.18400 L 343.87051,36.047780 L 332.75217,39.978706 L 526.60534,573.54890 z " + id="path10543" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11185);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 338.06091,185.32271 L 380.08605,199.09496 L 388.05367,198.16514 L 339.73708,181.11242 L 338.06091,185.32271 z " + id="path11184" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11183);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 354.68259,369.16798 L 442.49020,393.90895 L 458.56514,392.50221 L 353.97426,363.05008 L 354.68259,369.16798 z " + id="path11182" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11181);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 348.00598,288.85110 L 399.56914,227.74992 L 388.93763,227.77389 L 345.86694,278.91800 L 348.00598,288.85110 z " + id="path11180" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient4912);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 305.71347,523.21891 L 342.61251,531.24441 L 309.81796,37.290877 L 291.81144,36.057707 L 305.71347,523.21891 z " + id="path2411" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13060);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 75.429398,85.907913 L 628.49296,162.37567 L 620.43940,129.86460 L 83.536701,67.308768 L 75.429398,85.907913 z " + id="path13055" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11187);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 19.213001,102.83787 L 590.48642,180.65452 L 582.43286,148.14344 L 27.320312,84.238728 L 19.213001,102.83787 z " + id="path11186" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13059);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 84.040493,67.070324 L 619.89471,129.78982 L 629.72904,122.22016 L 93.101616,63.493555 L 84.040493,67.070324 z " + id="path13056" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11189);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 27.824102,84.000284 L 581.21373,149.41753 L 591.04806,141.84788 L 36.885217,80.423515 L 27.824102,84.000284 z " + id="path11188" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8046);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 136.28989,626.05533 L 163.53110,611.69044 L 298.94314,40.528613 L 287.82481,44.459539 L 136.28989,626.05533 z " + id="path8045" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13058);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 620.40066,129.94605 L 629.18032,162.65297 L 638.67743,154.07166 L 630.24902,123.18760 L 620.40066,129.94605 z " + id="path13057" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8048);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 212.64301,338.83888 L 328.91797,402.85931 L 339.17135,394.51353 L 228.14231,339.55423 L 212.64301,338.83888 z " + id="path8047" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11191);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 581.71968,148.22489 L 590.16212,180.59460 L 600.67089,172.01328 L 591.56804,142.47811 L 581.71968,148.22489 z " + id="path11190" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8052);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 177.80734,549.78568 L 343.48537,473.52245 L 335.85495,462.31528 L 156.10837,554.55468 L 177.80734,549.78568 z " + id="path8051" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient6162);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 148.61968,557.75331 L 337.18894,470.75982 L 336.23514,444.05336 L 152.91180,534.86206 L 148.61968,557.75331 z " + id="path2412" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient6793);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 202.07640,353.32652 L 334.80443,425.93116 L 332.89684,399.70160 L 205.89162,334.72738 L 202.07640,353.32652 z " + id="path6792" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8050);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 235.91238,306.24103 L 326.87068,261.62685 L 313.99437,249.70433 L 221.36691,305.28724 L 235.91238,306.24103 z " + id="path8049" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient7416);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 215.23207,308.16061 L 320.49740,255.67757 L 320.97431,233.74012 L 219.04729,287.17698 L 215.23207,308.16061 z " + id="path7415" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient7418);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 253.19782,164.45235 L 314.96590,208.86028 L 314.48900,186.92283 L 255.10543,150.62223 L 253.19782,164.45235 z " + id="path7417" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8044);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 375.28314,663.96251 L 400.13984,649.59762 L 326.08053,43.480658 L 314.96220,47.411584 L 375.28314,663.96251 z " + id="path7419" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3661);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 103.50753,620.98357 L 136.35994,626.31131 L 287.11435,44.887392 L 268.03831,42.979786 L 103.50753,620.98357 z " + id="path1164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13062);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 261.35887,153.30012 L 319.63203,189.66853 L 323.14101,184.69495 L 273.48597,155.02714 L 261.35887,153.30012 z " + id="path13061" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient4286);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 375.34099,663.90465 L 342.91173,659.13564 L 301.45527,45.677553 L 315.35729,47.527297 L 375.34099,663.90465 z " + id="path1788" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13064);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 252.92837,44.378137 L 323.67866,51.408412 L 323.47822,42.388195 L 252.24112,35.651328 L 252.92837,44.378137 z " + id="path13063" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13066);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 324.32516,50.596255 L 360.34181,32.335043 L 360.14138,23.314826 L 323.63791,41.869446 L 324.32516,50.596255 z " + id="path13065" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13068);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.1639404;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 252.32873,35.399460 L 288.34538,17.138245 L 359.63554,22.955699 L 323.13207,41.510314 L 252.32873,35.399460 z " + id="path13067" + sodipodi:nodetypes="ccccc" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/power/solarpower.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/solarpower.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/power/solarpower.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/solarpower.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,576 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="solarpower.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/solarpower.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient11734"> + <stop + style="stop-color:#bbbbbb;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11735" /> + <stop + style="stop-color:#545454;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11736" /> + </linearGradient> + <linearGradient + id="linearGradient10479"> + <stop + style="stop-color:#000000;stop-opacity:0.67058825;" + offset="0.0000000" + id="stop10480" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop10481" /> + </linearGradient> + <linearGradient + id="linearGradient9853"> + <stop + style="stop-color:#3aac2e;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9854" /> + <stop + style="stop-color:#27761f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9855" /> + </linearGradient> + <linearGradient + id="linearGradient6738"> + <stop + style="stop-color:#eeef0f;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6739" /> + <stop + style="stop-color:#e9dc4a;stop-opacity:1.0000000;" + offset="0.27513227" + id="stop6741" /> + <stop + style="stop-color:#e69d1c;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6740" /> + </linearGradient> + <linearGradient + id="linearGradient6070"> + <stop + style="stop-color:#4559ed;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6071" /> + <stop + style="stop-color:#263285;stop-opacity:1.0000000;" + offset="0.28042328" + id="stop6074" /> + <stop + style="stop-color:#11173d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6072" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6070" + id="radialGradient6073" + gradientTransform="scale(1.272509,0.785849)" + cx="93.634476" + cy="463.10547" + fx="93.634476" + fy="463.10547" + r="332.64169" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6070" + id="radialGradient6081" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.272509,0.000000,0.000000,0.785849,366.1719,10.84783)" + cx="93.634476" + cy="463.10547" + fx="93.634476" + fy="463.10547" + r="332.64169" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6070" + id="radialGradient6094" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011612,-3.272409e-2,2.146942e-2,0.610076,477.9421,29.29919)" + cx="93.634476" + cy="463.10547" + fx="93.634476" + fy="463.10547" + r="332.64169" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6070" + id="radialGradient6095" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011612,-3.272409e-2,2.146942e-2,0.610076,186.5486,30.29424)" + cx="93.634476" + cy="463.10547" + fx="93.634476" + fy="463.10547" + r="332.64169" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6070" + id="radialGradient6108" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.616376,-2.383447e-2,1.543095e-2,0.371713,601.9138,98.59654)" + cx="93.634476" + cy="463.10547" + fx="93.634476" + fy="463.10547" + r="332.64169" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6070" + id="radialGradient6109" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.616376,-2.383447e-2,1.543095e-2,0.371713,424.3353,100.3239)" + cx="93.634476" + cy="463.10547" + fx="93.634476" + fy="463.10547" + r="332.64169" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6738" + id="radialGradient6737" + gradientTransform="scale(1.120748,0.892261)" + cx="111.56744" + cy="109.86581" + fx="111.56744" + fy="109.86581" + r="208.00006" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9853" + id="radialGradient9856" + gradientTransform="scale(1.329680,0.752061)" + cx="5.5825987" + cy="403.70999" + fx="5.5825987" + fy="403.70999" + r="829.62537" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10479" + id="radialGradient10482" + gradientTransform="scale(1.102612,0.906938)" + cx="164.12100" + cy="528.36062" + fx="164.12100" + fy="528.36062" + r="165.99175" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10479" + id="radialGradient11105" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.102612,0.906938)" + cx="164.12100" + cy="528.36062" + fx="164.12100" + fy="528.36062" + r="165.99175" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10479" + id="radialGradient11107" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.102612,0.906938)" + cx="164.12100" + cy="528.36062" + fx="164.12100" + fy="528.36062" + r="165.99175" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11734" + id="linearGradient11733" + gradientTransform="matrix(0.617887,0.000000,0.000000,1.618418,-20.28259,-8.948201)" + x1="148.42822" + y1="335.58685" + x2="186.58699" + y2="335.58685" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11734" + id="linearGradient12359" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.698409,0.000000,0.000000,1.829329,204.8864,-36.91511)" + x1="148.42822" + y1="335.58685" + x2="186.58699" + y2="335.58685" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11734" + id="linearGradient12361" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.694189,0.000000,0.000000,1.818275,216.8812,-30.25335)" + x1="148.42822" + y1="335.58685" + x2="186.58699" + y2="335.58685" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11734" + id="linearGradient12363" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.856051,0.000000,0.000000,2.242237,353.2490,-144.0593)" + x1="148.42822" + y1="335.58685" + x2="186.58699" + y2="335.58685" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10479" + id="radialGradient12365" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.102612,0.906938)" + cx="164.12100" + cy="528.36062" + fx="164.12100" + fy="528.36062" + r="165.99175" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10479" + id="radialGradient12367" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.102612,0.906938)" + cx="164.12100" + cy="528.36062" + fx="164.12100" + fy="528.36062" + r="165.99175" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10479" + id="radialGradient12369" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.102612,0.906938)" + cx="164.12100" + cy="528.36062" + fx="164.12100" + fy="528.36062" + r="165.99175" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" + showguides="true" + inkscape:guide-bbox="true" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient9856);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M -1.5959822e-07,441.22607 L 707.81773,399.04385 L 711.19231,711.19231 L 0.84364414,709.50502 L -1.5959822e-07,441.22607 z " + id="path9231" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient10482);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path9857" + sodipodi:cx="180.96175" + sodipodi:cy="479.19006" + sodipodi:rx="179.27446" + sodipodi:ry="146.79414" + d="M 360.23621 479.19006 A 179.27446 146.79414 0 1 1 1.6872864,479.19006 A 179.27446 146.79414 0 1 1 360.23621 479.19006 z" + transform="matrix(1.298824,0.000000,0.000000,0.537356,32.04849,314.9170)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient12367);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path12366" + sodipodi:cx="180.96175" + sodipodi:cy="479.19006" + sodipodi:rx="179.27446" + sodipodi:ry="146.79414" + d="M 360.23621 479.19006 A 179.27446 146.79414 0 1 1 1.6872864,479.19006 A 179.27446 146.79414 0 1 1 360.23621 479.19006 z" + transform="matrix(0.225160,0.000000,0.000000,9.643020e-2,313.0069,566.1107)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient12365);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path12364" + sodipodi:cx="180.96175" + sodipodi:cy="479.19006" + sodipodi:rx="179.27446" + sodipodi:ry="146.79414" + d="M 360.23621 479.19006 A 179.27446 146.79414 0 1 1 1.6872864,479.19006 A 179.27446 146.79414 0 1 1 360.23621 479.19006 z" + transform="matrix(0.208522,0.000000,0.000000,8.627062e-2,58.51359,521.1673)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient11107);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path11106" + sodipodi:cx="180.96175" + sodipodi:cy="479.19006" + sodipodi:rx="179.27446" + sodipodi:ry="146.79414" + d="M 360.23621 479.19006 A 179.27446 146.79414 0 1 1 1.6872864,479.19006 A 179.27446 146.79414 0 1 1 360.23621 479.19006 z" + transform="matrix(1.045929,0.000000,0.000000,0.431696,213.9925,281.0744)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient11105);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path11104" + sodipodi:cx="180.96175" + sodipodi:cy="479.19006" + sodipodi:rx="179.27446" + sodipodi:ry="146.79414" + d="M 360.23621 479.19006 A 179.27446 146.79414 0 1 1 1.6872864,479.19006 A 179.27446 146.79414 0 1 1 360.23621 479.19006 z" + transform="matrix(0.929465,0.000000,0.000000,0.537356,414.7681,348.5306)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient12369);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path12368" + sodipodi:cx="180.96175" + sodipodi:cy="479.19006" + sodipodi:rx="179.27446" + sodipodi:ry="146.79414" + d="M 360.23621 479.19006 A 179.27446 146.79414 0 1 1 1.6872864,479.19006 A 179.27446 146.79414 0 1 1 360.23621 479.19006 z" + transform="matrix(0.243461,0.000000,0.000000,0.102526,472.8505,599.2807)" /> + <path + style="fill:url(#linearGradient12363);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5d5d5d;stroke-width:3.4636250;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 481.76753,550.55185 L 480.52780,646.01093 C 478.73709,657.58173 503.39392,655.51553 516.89318,648.07715 L 519.78587,550.96508 L 481.76753,550.55185 z " + id="path12362" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient12361);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5d5d5d;stroke-width:2.8087234;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 321.09947,533.02087 L 320.09415,610.43057 C 318.64203,619.81356 338.63675,618.13804 349.58357,612.10611 L 351.92931,533.35597 L 321.09947,533.02087 z " + id="path12360" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11733);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#5d5d5d;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 72.480430,492.41319 L 71.585610,561.31433 C 70.293091,569.66598 88.090071,568.17462 97.833661,562.80570 L 99.921571,492.71146 L 72.480430,492.41319 z " + id="path11108" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6109);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 455.01953,342.41344 L 491.12499,252.02448 L 647.74795,246.68290 L 623.24209,363.13594 L 455.01953,342.41344 z " + id="path6096" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.7964114;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 455.00631,342.43079 L 491.11177,252.04182 L 647.73473,246.70026 L 623.22889,363.15330 L 455.00631,342.43079 z " + id="path6097" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 541.66886,353.11696 L 572.96045,249.27111 L 609.56813,248.09095 L 578.52557,357.62495 L 541.66886,353.11696 z " + id="path6098" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 480.33765,345.45178 L 515.60598,251.25502 L 542.14235,250.39266 L 509.40879,349.03330 L 480.33765,345.45178 z " + id="path6099" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 455.01413,342.46382 L 465.48146,316.27948 L 630.38159,328.46410 L 623.24442,363.17013 L 455.01413,342.46382 z " + id="path6100" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 474.42369,294.03635 L 482.15490,274.68842 L 642.24068,272.65156 L 636.24872,300.58987 L 474.42369,294.03635 z " + id="path6101" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6108);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 643.46498,364.97124 L 668.59840,245.67596 L 709.12812,243.78149 L 709.43715,374.38081 L 643.46498,364.97124 z " + id="path6102" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.7964114;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 642.98979,364.21806 L 668.58518,245.69330 L 709.18252,243.98950 L 709.00212,371.65632 L 642.98979,364.21806 z " + id="path6103" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.1976076;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 684.72328,368.81252 L 706.70228,244.25861 L 709.20045,244.29465 L 709.29342,371.46845 L 684.72328,368.81252 z " + id="path6105" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6095);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 233.21736,420.85999 L 297.22626,274.53768 L 554.37152,274.08768 L 508.00307,463.77056 L 233.21736,420.85999 z " + id="path6082" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.9476583;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 233.19476,420.88773 L 297.20368,274.56543 L 554.34894,274.11543 L 507.98048,463.79831 L 233.19476,420.88773 z " + id="path6083" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 374.75446,443.01124 L 431.58262,274.36423 L 491.68188,274.37111 L 434.96033,452.35992 L 374.75446,443.01124 z " + id="path6084" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 274.57790,427.18620 L 337.41595,274.57470 L 380.98138,274.56841 L 322.06459,434.60239 L 274.57790,427.18620 z " + id="path6085" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 233.20585,420.94232 L 251.76158,378.55537 L 521.55148,407.28750 L 508.00506,463.82674 L 233.20585,420.94232 z " + id="path6086" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 267.60704,342.55105 L 281.31278,311.23064 L 543.96173,316.38408 L 532.65254,361.88504 L 267.60704,342.55105 z " + id="path6087" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6094);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 541.07124,467.85345 L 588.61971,273.54259 L 708.83868,272.97331 L 711.59979,489.96882 L 541.07124,467.85345 z " + id="path6088" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.9476583;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 540.33188,466.59301 L 588.59713,273.57033 L 709.03515,273.48899 L 709.25718,490.84020 L 540.33188,466.59301 z " + id="path6089" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 628.77855,357.38838 L 651.18532,273.23987 L 709.41110,273.62373 L 708.87273,315.54644 L 698.21063,367.80381 L 628.77855,357.38838 z " + id="path6091" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:1.9651055;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 565.84328,364.28373 L 577.67754,317.94299 L 709.06053,321.56087 L 709.26380,373.69698 L 565.84328,364.28373 z " + id="path6093" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6073);fill-opacity:1.0;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;" + d="M 41.368195,504.46465 L 128.26357,318.86286 L 451.37941,328.98659 L 384.73150,571.11257 L 41.368195,504.46465 z " + id="path4206" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 41.338580,504.49941 L 128.23396,318.89762 L 451.34980,329.02135 L 384.70189,571.14733 L 41.338580,504.49941 z " + id="path1078" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;stroke-dasharray:none;" + d="M 218.22621,538.85656 L 297.08631,324.23179 L 372.59906,326.74205 L 293.45986,553.39090 L 218.22621,538.85656 z " + id="path1710" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;stroke-dasharray:none;" + d="M 93.056853,514.32577 L 178.75915,320.58324 L 233.49821,322.38839 L 152.39465,525.84428 L 93.056853,514.32577 z " + id="path1711" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;stroke-dasharray:none;" + d="M 41.350103,504.57011 L 66.539083,450.80515 L 404.25222,499.00241 L 384.73151,571.18494 L 41.350103,504.57011 z " + id="path1712" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;stroke-dasharray:none;" + d="M 88.040489,405.13962 L 106.64626,365.41160 L 436.42956,382.97407 L 420.20795,441.04728 L 88.040489,405.13962 z " + id="path1713" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6081);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 426.10023,577.74217 L 494.43542,329.71069 L 709.35385,338.14713 L 707.87748,627.51720 L 426.10023,577.74217 z " + id="path6075" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 425.22696,576.08964 L 494.40581,329.74545 L 709.53516,337.76007 L 707.84787,627.55196 L 425.22696,576.08964 z " + id="path6076" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 684.84443,622.81196 L 709.73755,475.74163 L 707.71945,627.51207 L 684.84443,622.81196 z " + id="path6077" + sodipodi:nodetypes="cccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 510.48631,591.47207 L 573.06077,331.92526 L 654.39734,335.38152 L 597.26526,607.76295 L 510.48631,591.47207 z " + id="path6078" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 426.92577,577.00399 L 445.36560,506.36614 L 708.13912,545.77751 L 707.87749,627.58957 L 426.92577,577.00399 z " + id="path6079" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#2b619b;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 461.80514,445.51501 L 478.72362,386.38316 L 709.80051,401.41470 L 708.41506,472.32973 L 461.80514,445.51501 z " + id="path6080" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient6737);fill-opacity:1.0;fill-rule:evenodd;stroke:#fff788;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 0.34944900,0.31329390 L 1.1722968e-08,226.65161 C 169.41928,200.80125 247.39217,90.590701 284.37807,0.31329390 L 0.34944900,0.31329390 z " + id="path6112" + sodipodi:nodetypes="cccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#fff788;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 134.98312,194.03823 L 190.66366,301.18109" + id="path7985" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#fff788;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 215.97299,129.92125 L 250.56242,167.88525" + id="path7986" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#fff788;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 275.87175,41.338580 L 384.70189,123.17210" + id="path7987" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#fff788;stroke-width:7.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 35.433069,232.00224 L 43.869514,276.71539" + id="path7988" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/power/substation.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/substation.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/power/substation.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/substation.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,399 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/power" + sodipodi:docname="substation.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/power/substation.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient9757"> + <stop + id="stop9759" + offset="0.0000000" + style="stop-color:#704400;stop-opacity:1.0000000;" /> + <stop + id="stop9761" + offset="1.0000000" + style="stop-color:#321e00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient8983"> + <stop + id="stop8985" + offset="0.0000000" + style="stop-color:#282828;stop-opacity:1.0000000;" /> + <stop + id="stop8987" + offset="1.0000000" + style="stop-color:#171717;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient8211"> + <stop + id="stop8213" + offset="0.0000000" + style="stop-color:#0e143f;stop-opacity:1.0000000;" /> + <stop + id="stop8215" + offset="1.0000000" + style="stop-color:#02061f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient7437" + inkscape:collect="always"> + <stop + id="stop7439" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7441" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient6649"> + <stop + id="stop6651" + offset="0.0000000" + style="stop-color:#757575;stop-opacity:1.0000000;" /> + <stop + id="stop6653" + offset="1.0000000" + style="stop-color:#494949;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="713.68579" + x2="364.51611" + y1="479.92618" + x1="165.95824" + gradientTransform="matrix(1.176751,0.000000,0.000000,0.849797,-29.16451,0.000000)" + id="linearGradient6659" + xlink:href="#linearGradient6649" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1164.6941" + x2="255.89053" + y1="415.33997" + x1="150.77480" + gradientTransform="matrix(2.233209,0.000000,0.000000,0.447786,-29.16451,0.000000)" + id="linearGradient6667" + xlink:href="#linearGradient6649" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="333.70624" + x2="822.69165" + y1="259.79428" + x1="704.65051" + gradientTransform="matrix(0.676055,0.000000,0.000000,1.479170,-29.16451,0.000000)" + id="linearGradient6675" + xlink:href="#linearGradient6649" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="181.11634" + fy="1070.2974" + fx="218.97263" + cy="1070.2974" + cx="218.97263" + gradientTransform="scale(1.785929,0.559933)" + id="radialGradient7443" + xlink:href="#linearGradient7437" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="192.12306" + x2="1112.8210" + y1="183.49437" + x1="1033.0638" + gradientTransform="matrix(0.340544,0.000000,0.000000,2.936478,-29.16451,0.000000)" + id="linearGradient8209" + xlink:href="#linearGradient8983" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="438.64929" + x2="499.67059" + y1="482.33884" + x1="624.67407" + gradientTransform="matrix(0.769766,0.000000,0.000000,1.299097,-29.16451,0.000000)" + id="linearGradient8223" + xlink:href="#linearGradient8211" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1320.1864" + x2="208.37225" + y1="1339.4448" + x1="217.66649" + gradientTransform="matrix(1.980860,0.000000,0.000000,0.504831,-29.16451,0.000000)" + id="linearGradient8995" + xlink:href="#linearGradient6649" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="20.351145" + x2="337.17813" + y1="8.7289753" + x1="317.19611" + gradientTransform="scale(1.669304,0.599052)" + id="linearGradient9763" + xlink:href="#linearGradient9757" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="58.002762" + x2="1583.9402" + y1="51.219849" + x1="1387.0376" + gradientTransform="matrix(0.355440,0.000000,0.000000,2.813413,-29.16451,0.000000)" + id="linearGradient9771" + xlink:href="#linearGradient9757" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="264.33649" + x2="228.92471" + y1="-22.408087" + x1="231.06303" + gradientTransform="scale(2.144887,0.466225)" + id="linearGradient9779" + xlink:href="#linearGradient9757" + inkscape:collect="always" /> + <linearGradient + y2="264.33649" + x2="228.92471" + y1="-22.408087" + x1="231.06303" + gradientTransform="matrix(2.144887,0.000000,0.000000,0.466225,184.3998,21.14948)" + gradientUnits="userSpaceOnUse" + id="linearGradient9783" + xlink:href="#linearGradient9757" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="48.713112" + x2="1340.0387" + y1="38.089233" + x1="1329.5636" + gradientTransform="scale(0.508597,1.966193)" + id="linearGradient9793" + xlink:href="#linearGradient9757" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="239.94011" + x2="330.08957" + y1="224.00272" + x1="254.71965" + gradientTransform="scale(0.892911,1.119932)" + id="linearGradient9804" + xlink:href="#linearGradient8983" + inkscape:collect="always" /> + <linearGradient + y2="239.94011" + x2="330.08957" + y1="224.00272" + x1="254.71965" + gradientTransform="matrix(0.892911,0.000000,0.000000,1.119932,187.6650,20.04586)" + gradientUnits="userSpaceOnUse" + id="linearGradient9808" + xlink:href="#linearGradient8983" + inkscape:collect="always" /> + <radialGradient + r="181.11634" + fy="1070.2974" + fx="218.97263" + cy="1070.2974" + cx="218.97263" + gradientTransform="scale(1.785929,0.559933)" + gradientUnits="userSpaceOnUse" + id="radialGradient9812" + xlink:href="#linearGradient7437" + inkscape:collect="always" /> + <radialGradient + r="181.11634" + fy="1070.2974" + fx="218.97263" + cy="1070.2974" + cx="218.97263" + gradientTransform="scale(1.785929,0.559933)" + gradientUnits="userSpaceOnUse" + id="radialGradient9816" + xlink:href="#linearGradient7437" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.13335000" + inkscape:cx="624.47824" + inkscape:cy="1436.2680" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="640" + inkscape:window-height="546" + inkscape:window-x="632" + inkscape:window-y="366" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + transform="matrix(1.065574,0.000000,0.000000,1.000000,-65.41369,10.60528)" + d="M 714.53052 599.29449 A 323.46094 101.41296 0 1 1 67.608643,599.29449 A 323.46094 101.41296 0 1 1 714.53052 599.29449 z" + sodipodi:ry="101.41296" + sodipodi:rx="323.46094" + sodipodi:cy="599.29449" + sodipodi:cx="391.06958" + id="path6677" + style="opacity:0.90067720;fill:url(#radialGradient7443);fill-opacity:1.0000000;stroke:none;stroke-width:6.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient6659);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 64.196929,614.27984 L 63.248115,369.78374 L 499.51942,427.44658 L 500.97832,685.61514 L 64.196929,614.27984 z " + id="path1293" /> + <path + sodipodi:nodetypes="ccccc" + id="path3575" + d="M 334.54004,658.51146 L 334.54004,503.37459 L 435.77739,517.43533 L 435.77739,674.91565 L 334.54004,658.51146 z " + style="fill:url(#linearGradient8223);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient6675);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 499.51942,426.97789 L 645.52370,365.03021 L 645.40997,582.36979 L 501.09203,685.66713 L 499.51942,426.97789 z " + id="path1295" /> + <path + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient6667);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 645.75115,365.57931 C 638.25208,363.70455 195.80738,311.21111 195.80738,311.21111 L 63.241217,369.71023 L 499.05073,427.21224 L 645.75115,365.57931 z " + id="path1297" /> + <path + transform="matrix(0.444739,0.000000,0.000000,0.417370,308.6162,127.1190)" + d="M 714.53052 599.29449 A 323.46094 101.41296 0 1 1 67.608643,599.29449 A 323.46094 101.41296 0 1 1 714.53052 599.29449 z" + sodipodi:ry="101.41296" + sodipodi:rx="323.46094" + sodipodi:cy="599.29449" + sodipodi:cx="391.06958" + id="path9814" + style="opacity:0.90067720;fill:url(#radialGradient9816);fill-opacity:1.0000000;stroke:none;stroke-width:6.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000px;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient9779)" + d="M 332.78707,39.597527 C 324.87102,43.151015 324.24610,59.961099 332.90080,66.165906 L 491.38651,79.250239 L 491.61395,50.163779 L 332.78707,39.597527 z " + id="path1303" /> + <path + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient9771);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 485.48628,16.892403 L 487.19213,346.39627 L 526.77014,350.58119 L 526.52318,16.892403 L 485.48628,16.892403 z " + id="path1305" /> + <path + id="path3577" + d="M 365.32001,577.46671 L 401.64904,520.22097 L 435.77631,588.47550 L 365.32001,577.46671 z " + style="fill:#fff700;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1744182px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path4355" + d="M 334.54004,658.51146 L 334.54004,503.37459 L 351.64727,505.83522 L 351.64727,649.84066 L 334.54004,658.51146 z " + style="fill:url(#linearGradient8209);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path5117" + d="M 334.54004,658.51146 L 351.77361,649.85997 L 435.77739,663.13359 L 435.77739,674.91565 L 334.54004,658.51146 z " + style="fill:url(#linearGradient8995);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.965656,0.000000,0.000000,1.000000,-10.54547,0.000000)" + d="M 556.11418 16.667149 A 21.210552 7.2911277 0 1 1 513.69307,16.667149 A 21.210552 7.2911277 0 1 1 556.11418 16.667149 z" + sodipodi:ry="7.2911277" + sodipodi:rx="21.210552" + sodipodi:cy="16.667149" + sodipodi:cx="534.90363" + id="path8997" + style="fill:url(#linearGradient9763);fill-opacity:1.0000000;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + style="fill:url(#linearGradient9783);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 524.56414,49.592622 C 516.64809,53.146110 516.02317,74.596002 524.67787,80.800809 L 691.69423,95.759914 L 691.92167,59.382320 L 524.56414,49.592622 z " + id="path9781" /> + <path + transform="translate(10.83272,-12.63397)" + d="M 688.74206 90.105919 A 8.3192730 17.927448 0 1 1 672.10352,90.105919 A 8.3192730 17.927448 0 1 1 688.74206 90.105919 z" + sodipodi:ry="17.927448" + sodipodi:rx="8.3192730" + sodipodi:cy="90.105919" + sodipodi:cx="680.42279" + id="path9785" + style="fill:url(#linearGradient9793);fill-opacity:1.0000000;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.444739,0.000000,0.000000,0.417370,110.4517,106.6652)" + d="M 714.53052 599.29449 A 323.46094 101.41296 0 1 1 67.608643,599.29449 A 323.46094 101.41296 0 1 1 714.53052 599.29449 z" + sodipodi:ry="101.41296" + sodipodi:rx="323.46094" + sodipodi:cy="599.29449" + sodipodi:cx="391.06958" + id="path9810" + style="opacity:0.90067720;fill:url(#radialGradient9812);fill-opacity:1.0000000;stroke:none;stroke-width:6.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + id="path9795" + d="M 346.83167,358.08026 C 346.83167,366.35923 310.71618,373.07839 266.21674,373.07839 C 221.71729,373.07839 185.60181,366.35923 185.60181,358.08026 C 185.60181,202.28288 225.46682,207.72216 269.96627,207.72216 C 314.46571,207.72216 346.83167,209.20791 346.83167,358.08026 z " + style="fill:url(#linearGradient9804);fill-opacity:1.0;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path9806" + d="M 534.49666,378.12612 C 534.49666,386.40509 498.38117,393.12425 453.88173,393.12425 C 409.38228,393.12425 373.26680,386.40509 373.26680,378.12612 C 373.26680,222.32874 413.13181,227.76802 457.63126,227.76802 C 502.13070,227.76802 534.49666,229.25377 534.49666,378.12612 z " + style="fill:url(#linearGradient9808);fill-opacity:1.0000000;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccc" + id="path9832" + d="M 347.76904,57.180348 C 331.00203,119.75566 300.72563,167.67354 262.46720,212.78590 C 357.14287,183.10211 396.51295,132.79590 442.44471,61.867263" + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:8.7500000;stroke:#000000;fill-rule:evenodd;fill-opacity:0.75000000;fill:none" /> + <path + sodipodi:nodetypes="ccc" + id="path9834" + d="M 539.93253,64.679411 C 523.05964,124.04699 494.77116,191.98920 444.31948,231.53356 C 537.74530,205.28684 611.48609,140.60742 651.48109,74.053240" + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:8.7500000;stroke:#000000;fill-rule:evenodd;fill-opacity:0.75000000;fill:none" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/power/windmills.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/windmills.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/power/windmills.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/power/windmills.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,405 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="mills.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/mills.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient6713"> + <stop + style="stop-color:#a7a7a7;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6714" /> + <stop + style="stop-color:#e4e4e4;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop6715" /> + </linearGradient> + <linearGradient + id="linearGradient5447"> + <stop + style="stop-color:#a32323;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5448" /> + <stop + style="stop-color:#541c1c;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop5449" /> + </linearGradient> + <linearGradient + id="linearGradient5444"> + <stop + style="stop-color:#c37c27;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5445" /> + <stop + style="stop-color:#593812;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop5446" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient5443" + gradientTransform="matrix(0.904298,0.000000,0.000000,0.648488,797.9909,39.36715)" + x1="-359.31351" + y1="553.55499" + x2="-609.24695" + y2="579.99011" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5447" + id="linearGradient5450" + gradientTransform="matrix(1.112758,0.000000,0.000000,0.527002,797.9909,39.36715)" + x1="-328.01810" + y1="1099.2106" + x2="-522.39398" + y2="1112.5052" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5447" + id="linearGradient5454" + gradientTransform="matrix(1.033105,0.000000,0.000000,0.567635,797.9909,39.36715)" + x1="-370.29590" + y1="335.55939" + x2="-600.43201" + y2="475.73126" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="radialGradient6083" + cx="131.81671" + cy="309.71619" + fx="131.81671" + fy="309.71619" + r="193.32726" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient6087" + x1="107.62852" + y1="291.38733" + x2="-82.764549" + y2="362.51123" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient6091" + x1="86.342346" + y1="287.64395" + x2="-20.088568" + y2="311.97580" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6713" + id="linearGradient6720" + gradientTransform="matrix(0.337338,5.477100e-8,1.011819e-6,1.738389,699.3005,566.4265)" + x1="-1402.5768" + y1="44.358932" + x2="-1267.6567" + y2="44.358932" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6713" + id="linearGradient6721" + gradientTransform="matrix(0.365879,-2.129579e-7,-2.602316e-7,1.602785,-566.4265,699.3005)" + x1="103.88400" + y1="-400.25757" + x2="238.61678" + y2="-400.25757" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6713" + id="linearGradient6722" + gradientTransform="matrix(0.337338,5.477100e-8,1.011819e-6,1.738389,699.3005,566.4265)" + x1="-1575.0623" + y1="-152.89459" + x2="-1440.1422" + y2="-152.89459" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient6713" + id="linearGradient6723" + gradientTransform="matrix(0.365879,-2.129579e-7,-2.602316e-7,1.602785,-566.4265,699.3005)" + x1="276.73715" + y1="-203.42375" + x2="411.46994" + y2="-203.42375" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient7348" + gradientTransform="matrix(0.127631,2.072249e-8,2.674297e-6,4.594664,699.3005,566.4265)" + x1="-5090.7139" + y1="-30.972134" + x2="-2489.3481" + y2="-28.004429" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient7349" + gradientTransform="matrix(0.127631,2.072249e-8,2.674297e-6,4.594664,699.3005,566.4265)" + x1="-5090.7139" + y1="-30.972134" + x2="-2489.3481" + y2="-28.004429" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient7974" + gradientTransform="matrix(0.138036,-8.034296e-8,-6.897740e-7,4.248365,-566.4265,699.3005)" + x1="842.01483" + y1="-114.43945" + x2="635.36450" + y2="-112.54226" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient7975" + gradientTransform="matrix(0.138036,-8.034296e-8,-6.897740e-7,4.248365,-566.4265,699.3005)" + x1="842.01483" + y1="-114.43945" + x2="635.36450" + y2="-112.54226" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5444" + id="linearGradient9222" + gradientTransform="matrix(0.543380,0.000000,0.000000,1.079220,80.83865,-41.70225)" + x1="671.67633" + y1="631.60876" + x2="588.41522" + y2="688.14648" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient5450);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.8716910;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 176.26510,679.81313 C 290.07399,714.37153 393.74920,708.39527 501.32198,680.59264 L 501.32197,551.19350 L 177.04462,551.19350 L 176.26510,679.81313 z " + id="path1685" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <path + style="fill:url(#linearGradient5443);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.8716910;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 237.84979,323.58600 L 231.60386,400.75174 L 207.84062,482.21847 L 163.01831,551.18691 C 278.25734,578.46987 400.51198,584.70598 513.41247,551.18691 L 468.59016,482.21847 L 444.80298,400.75174 L 438.58099,323.58600 L 237.84979,323.58600 z " + id="path1686" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <path + style="fill:url(#linearGradient5454);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.8716910;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 223.81540,323.57575 C 300.20766,341.50455 382.83602,340.72504 452.99217,323.57575 L 416.35507,248.74250 L 336.84475,212.10541 L 255.77542,248.74250 L 223.81540,323.57575 z " + id="path1687" + sodipodi:nodetypes="cccccc" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient7349);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994514;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5457" + width="14.589463" + height="595.18872" + x="207.92751" + y="175.38315" + transform="matrix(0.754993,-0.655733,0.476715,0.879058,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient7348);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994504;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4811" + width="14.589455" + height="595.18848" + x="212.35803" + y="176.68686" + transform="matrix(0.754993,-0.655733,0.476715,0.879058,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient6720);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994504;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4813" + width="43.514317" + height="232.54422" + x="227.15680" + y="527.26727" + ry="0.0000000" + transform="matrix(0.754993,-0.655733,0.476715,0.879058,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient7975);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994508;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5456" + width="15.857540" + height="547.59308" + x="-476.11487" + y="-63.808655" + transform="matrix(-0.476715,-0.879058,0.754993,-0.655733,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient7974);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994504;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4814" + width="15.857536" + height="547.59296" + x="-479.89362" + y="-60.299812" + transform="matrix(-0.476715,-0.879058,0.754993,-0.655733,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient6723);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994504;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4815" + width="47.296482" + height="213.94832" + x="-464.17410" + y="266.28171" + ry="0.0000000" + transform="matrix(-0.476715,-0.879058,0.754993,-0.655733,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient6721);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994504;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4816" + width="47.296482" + height="213.94832" + x="-527.41754" + y="-49.200752" + ry="0.0000000" + transform="matrix(-0.476715,-0.879058,0.754993,-0.655733,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient6091);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path5455" + sodipodi:cx="3.5627463" + sodipodi:cy="331.16055" + sodipodi:rx="60.566689" + sodipodi:ry="60.566689" + d="M 64.129435 331.16055 A 60.566689 60.566689 0 1 1 -57.003942,331.16055 A 60.566689 60.566689 0 1 1 64.129435 331.16055 z" + transform="matrix(0.605112,0.000000,0.000000,0.765785,387.3699,17.93054)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient6087);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path4817" + sodipodi:cx="3.5627463" + sodipodi:cy="331.16055" + sodipodi:rx="60.566689" + sodipodi:ry="60.566689" + d="M 64.129435 331.16055 A 60.566689 60.566689 0 1 1 -57.003942,331.16055 A 60.566689 60.566689 0 1 1 64.129435 331.16055 z" + transform="matrix(0.605112,0.000000,0.000000,0.765785,394.9785,18.30479)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient6083);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:6.3296590;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path4818" + sodipodi:cx="3.5627463" + sodipodi:cy="331.16055" + sodipodi:rx="60.566689" + sodipodi:ry="60.566689" + d="M 64.129435 331.16055 A 60.566689 60.566689 0 1 1 -57.003942,331.16055 A 60.566689 60.566689 0 1 1 64.129435 331.16055 z" + transform="matrix(0.358497,0.000000,0.000000,0.453688,396.1652,120.4895)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <rect + style="fill:url(#linearGradient6722);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.9994504;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4812" + width="43.514317" + height="232.54422" + x="168.97075" + y="184.36380" + ry="0.0000000" + transform="matrix(0.754993,-0.655733,0.476715,0.879058,0.000000,0.000000)" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + <path + style="fill:url(#linearGradient9222);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.8716910;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 392.81720,700.24108 L 392.81720,613.70287 C 411.74170,613.88661 421.29581,611.86555 438.01551,607.63968 L 438.01551,694.72911 C 422.94941,697.11763 410.63930,698.95496 392.81720,700.24108 z " + id="path7976" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/mills.png" + inkscape:export-xdpi="6.3200002" + inkscape:export-ydpi="6.3200002" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec-high.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec-high.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec-high.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec-high.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,935 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="residence-hightec-high.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-hightec-high.png" + inkscape:export-xdpi="4.0640006" + inkscape:export-ydpi="4.0640006" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient18090"> + <stop + style="stop-color:#c69527;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop18091" /> + <stop + style="stop-color:#e7c14d;stop-opacity:1.0000000;" + offset="0.52910054" + id="stop18094" /> + <stop + style="stop-color:#e7b828;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop18092" /> + </linearGradient> + <linearGradient + id="linearGradient16840"> + <stop + style="stop-color:#858585;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop16841" /> + <stop + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop16842" /> + </linearGradient> + <linearGradient + id="linearGradient16216"> + <stop + style="stop-color:#000000;stop-opacity:0.21960784;" + offset="0.0000000" + id="stop16217" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop16218" /> + </linearGradient> + <linearGradient + id="linearGradient15589"> + <stop + style="stop-color:#000000;stop-opacity:0.49803922;" + offset="0.0000000" + id="stop15590" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop15591" /> + </linearGradient> + <linearGradient + id="linearGradient8654"> + <stop + style="stop-color:#ffffd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8655" /> + <stop + style="stop-color:#acb468;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8656" /> + </linearGradient> + <linearGradient + id="linearGradient8025"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8026" /> + <stop + style="stop-color:#dafdff;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8027" /> + </linearGradient> + <linearGradient + id="linearGradient4278"> + <stop + style="stop-color:#ffffd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4279" /> + <stop + style="stop-color:#e2ec88;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4280" /> + </linearGradient> + <linearGradient + id="linearGradient1786"> + <stop + style="stop-color:#d04848;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1787" /> + <stop + style="stop-color:#6f271b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1788" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient1789" + gradientTransform="matrix(1.484681,0.000000,0.000000,0.723408,-4.776368,-45.97541)" + x1="51.830433" + y1="214.55270" + x2="532.77954" + y2="537.91565" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient3656" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + x1="205.22607" + y1="114.57910" + x2="264.83234" + y2="165.96384" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4281" + gradientTransform="matrix(0.720822,0.000000,0.000000,1.490009,-4.776368,-45.97541)" + x1="339.20660" + y1="148.34567" + x2="461.91580" + y2="171.03979" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4906" + gradientTransform="matrix(0.905244,0.000000,0.000000,1.186454,-4.776368,-45.97541)" + x1="-209.09377" + y1="342.68054" + x2="1074.1273" + y2="385.28748" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4910" + gradientTransform="matrix(0.555481,0.000000,0.000000,1.933516,-4.776368,-45.97541)" + x1="323.41699" + y1="196.50076" + x2="1279.9755" + y2="220.87001" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient8028" + gradientTransform="matrix(0.860130,0.000000,0.000000,1.248684,-4.776368,-45.97541)" + cx="333.59818" + cy="198.94484" + fx="333.59818" + fy="198.94484" + r="121.25512" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient8653" + gradientTransform="matrix(0.966612,0.000000,0.000000,1.111129,-4.776368,-45.97541)" + x1="163.75665" + y1="173.52608" + x2="216.61328" + y2="174.03651" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient8660" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,-4.776368,-45.97541)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient8664" + gradientTransform="matrix(2.388927,0.000000,0.000000,0.449587,-4.776368,-45.97541)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11183" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.998846,0.000000,0.000000,0.898367,-129.3753,5.785940)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11184" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.372221,0.000000,0.000000,2.410747,-3.675871,146.7611)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11185" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.202103,0.000000,0.000000,0.407489,-3.572602,146.9227)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11190" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.045576,0.956411)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11191" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,131.5801,150.0835)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11192" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.305125,0.000000,0.000000,0.433816,131.6882,150.2555)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11193" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11194" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11195" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient13084" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.007034,0.993015)" + cx="235.10773" + cy="543.04913" + fx="235.10773" + fy="543.04913" + r="54.748417" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient13085" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.305125,0.433816)" + x1="81.932518" + y1="1289.1675" + x2="98.377357" + y2="1285.5785" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient13086" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient13091" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.007034,0.993015)" + cx="235.10773" + cy="543.04913" + fx="235.10773" + fy="543.04913" + r="54.748417" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient13092" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.305125,0.433816)" + x1="81.932518" + y1="1289.1675" + x2="98.377357" + y2="1285.5785" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient13093" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient13095" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + x1="828.00049" + y1="205.89877" + x2="768.27551" + y2="186.88342" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15589" + id="linearGradient15592" + gradientTransform="matrix(0.853562,0.000000,0.000000,1.258293,-4.776367,-45.97541)" + x1="622.30029" + y1="130.00720" + x2="660.66791" + y2="211.02409" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16216" + id="linearGradient15594" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.853561,0.000000,0.000000,1.258293,-166.4717,-47.28613)" + x1="622.30029" + y1="130.00720" + x2="660.66791" + y2="211.02409" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16843" + gradientTransform="matrix(1.014465,0.000000,0.000000,1.058716,-4.776368,-45.97541)" + x1="406.12582" + y1="661.78082" + x2="404.23486" + y2="659.96094" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16844" + gradientTransform="matrix(1.858578,0.000000,0.000000,0.577878,-4.776368,-45.97541)" + x1="198.86722" + y1="1247.3527" + x2="170.89366" + y2="1176.4388" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16845" + gradientTransform="matrix(1.802227,0.000000,0.000000,0.595946,-4.776368,-45.97541)" + x1="242.20589" + y1="1209.9634" + x2="175.25876" + y2="1117.1237" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient17468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,156.7239,316.1212)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient18090" + id="linearGradient18093" + gradientTransform="matrix(0.806883,0.000000,0.000000,1.331086,-4.776368,-45.97541)" + x1="432.06381" + y1="460.62277" + x2="561.09821" + y2="467.85504" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient15589" + id="radialGradient19342" + gradientTransform="scale(1.884415,0.530669)" + cx="167.43819" + cy="1448.2863" + fx="167.43819" + fy="1448.2863" + r="155.79810" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient1294" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient1295" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient1296" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient1301" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient1302" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient1303" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient1308" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient1309" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient1310" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient1315" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient1316" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient1317" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient1322" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient1323" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient1324" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient1329" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient1330" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient1331" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.0476966" + inkscape:cx="244.99811" + inkscape:cy="307.48099" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:grid-bbox="false" + inkscape:grid-points="false" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1263" + inkscape:window-height="994" + inkscape:window-x="7" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient19342);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18716" + sodipodi:cx="315.52304" + sodipodi:cy="768.56012" + sodipodi:rx="293.58829" + sodipodi:ry="82.677162" + d="M 609.11133 768.56012 A 293.58829 82.677162 0 1 1 21.934753,768.56012 A 293.58829 82.677162 0 1 1 609.11133 768.56012 z" + transform="matrix(0.689655,0.000000,0.000000,1.709184,313.0504,-762.2888)" /> + <path + style="fill:url(#linearGradient4906);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 28.447594,560.79902 L 490.96009,668.33973 L 489.24213,29.167307 L 27.272466,55.603277 L 28.447594,560.79902 z " + id="path1072" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient4910);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 491.83440,668.33973 L 667.57168,532.82095 L 666.26450,82.708683 L 488.89268,28.997545 L 491.83440,668.33973 z " + id="path1073" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient18093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 336.86212,625.68583 L 337.31482,489.02754 L 430.99453,504.51179 L 431.28812,646.48187 L 336.86212,625.68583 z " + id="path1080" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16845);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 323.54436,622.84430 L 337.58416,625.85751 L 351.84254,616.84892 L 431.10268,636.06040 L 431.01878,645.87300 L 449.64872,649.76054 L 414.67613,677.84790 L 282.65460,645.60755 L 323.54436,622.84430 z " + id="path1086" + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:url(#linearGradient16844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 282.76390,645.49825 L 283.20106,652.49277 L 414.67614,686.15389 L 414.67613,677.84791 L 282.76390,645.49825 z " + id="path1087" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16843);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 414.56685,686.15389 L 449.43016,658.50369 L 449.53943,649.86982 L 414.78543,677.73861 L 414.56685,686.15389 z " + id="path1088" + sodipodi:nodetypes="ccccc" /> + <g + id="g11186" + transform="matrix(1.036355,0.000000,0.000000,1.036355,19.26729,-39.41805)"> + <path + style="fill:url(#radialGradient11190);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 401.59528,385.05306 L 401.01184,462.37071 L 305.31263,449.03055 L 305.60829,374.51206 L 401.59528,385.05306 z " + id="path1164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11191);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 306.07004,374.40995 L 320.00153,376.16704 L 319.50281,442.54890 L 305.77177,448.91727 L 306.07004,374.40995 z " + id="path9291" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11192);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 400.52324,462.01308 L 400.82151,451.57351 L 319.46180,442.43318 L 305.73076,449.08936 L 400.52324,462.01308 z " + id="path9293" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g11179" + transform="matrix(1.036355,0.000000,0.000000,1.036355,22.79562,-40.54845)"> + <path + style="fill:url(#radialGradient11183);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3681898;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 254.27164,367.47088 L 253.71427,440.09628 L 162.29210,427.56570 L 162.57455,357.56959 L 254.27164,367.47088 z " + id="path11163" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11184);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 163.01566,357.47368 L 176.32452,359.12413 L 176.12303,421.07646 L 162.73073,427.45929 L 163.01566,357.47368 z " + id="path11164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11185);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 253.24751,439.76034 L 253.53245,429.95433 L 176.37167,420.37467 L 162.69154,427.62094 L 253.24751,439.76034 z " + id="path11165" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g11175" + transform="matrix(1.036355,0.000000,0.000000,1.036355,2.218150,-43.78963)"> + <path + style="fill:url(#radialGradient11193);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 139.68726,353.68774 L 139.15482,423.06542 L 51.820938,411.09519 L 52.090757,344.22923 L 139.68726,353.68774 z " + id="path11169" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11194);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.225845,345.71425 L 65.033365,404.99911 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path11170" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11195);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.70893,422.74450 L 138.98113,413.37701 L 65.283757,404.57790 L 52.202516,411.14796 L 138.70893,422.74450 z " + id="path11171" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g13080" + transform="matrix(1.036355,0.000000,0.000000,1.036355,3.092466,-40.72952)"> + <path + style="fill:url(#radialGradient13084);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + id="path1081" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13085);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 265.54012,574.42871 L 265.43137,561.95402 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + id="path11829" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + id="path12452" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g13087" + transform="matrix(0.949936,0.000000,0.000000,0.977929,-113.8350,-35.90236)"> + <path + style="fill:url(#radialGradient13091);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + id="path13088" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13092);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 265.54012,574.42871 L 265.39433,561.83243 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + id="path13089" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + id="path13090" + sodipodi:nodetypes="ccccc" /> + </g> + <path + style="fill:url(#linearGradient17468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 337.99440,489.80522 L 352.65093,492.28191 L 351.77662,616.23625 L 337.24812,625.81888 L 337.99440,489.80522 z " + id="path17467" + sodipodi:nodetypes="ccccc" /> + <g + id="g1290" + transform="matrix(1.036355,0.000000,0.000000,1.036355,4.111215,-167.2798)"> + <path + style="fill:url(#radialGradient1294);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.87321,346.76832 L 138.34077,416.14600 L 51.820938,411.09519 L 52.090757,344.22923 L 138.87321,346.76832 z " + id="path1291" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1295);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.225845,345.71425 L 64.457745,405.28692 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path1292" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1296);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 137.48786,415.62156 L 137.76006,407.67866 L 66.147187,405.15352 L 52.202516,411.14796 L 137.48786,415.62156 z " + id="path1293" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g1297" + transform="matrix(1.129458,0.000000,0.000000,1.129458,134.3749,-193.9505)"> + <path + style="fill:url(#radialGradient1301);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.87321,346.76832 L 138.34077,416.14600 L 51.820938,411.09519 L 52.090757,344.22923 L 138.87321,346.76832 z " + id="path1298" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1302);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.225845,345.71425 L 65.033365,404.80931 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path1299" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1303);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 137.48786,415.62156 L 137.76006,407.67866 L 64.203691,405.22781 L 52.202516,411.14796 L 137.48786,415.62156 z " + id="path1300" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g1304" + transform="matrix(1.231816,0.000000,0.000000,1.231816,273.5102,-222.3987)"> + <path + style="fill:url(#radialGradient1308);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.87321,346.76832 L 138.34077,416.14600 L 51.820938,411.09519 L 52.090757,344.22923 L 138.87321,346.76832 z " + id="path1305" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1309);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 63.530857,344.98783 L 62.854094,404.87590 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path1306" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1310);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 137.48786,415.62156 L 137.76006,407.67866 L 63.058818,404.78817 L 52.202516,411.14796 L 137.48786,415.62156 z " + id="path1307" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g1311" + transform="matrix(1.036355,0.000000,0.000000,1.036355,7.485792,-275.8991)"> + <path + style="fill:url(#radialGradient1315);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.00978,343.02679 L 137.47734,412.40447 L 51.820938,411.09519 L 52.090757,344.22923 L 138.00978,343.02679 z " + id="path1312" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1316);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.801465,344.56301 L 63.882125,409.02845 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path1313" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1317);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 135.76100,412.16784 L 136.60882,410.84457 L 63.844706,409.39872 L 52.202516,411.14796 L 135.76100,412.16784 z " + id="path1314" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g1318" + transform="matrix(1.119625,0.000000,0.000000,1.119625,137.2250,-306.6095)"> + <path + style="fill:url(#radialGradient1322);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.00978,343.02679 L 137.47734,412.40447 L 51.820938,411.09519 L 52.090757,344.22923 L 138.00978,343.02679 z " + id="path1319" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1323);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.801465,344.56301 L 63.882125,409.02845 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path1320" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1324);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 135.76100,412.16784 L 136.60882,410.84457 L 63.844706,409.39872 L 52.202516,411.14796 L 135.76100,412.16784 z " + id="path1321" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g1325" + transform="matrix(1.202895,0.000000,0.000000,1.202895,274.8787,-336.8687)"> + <path + style="fill:url(#radialGradient1329);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.00978,343.02679 L 137.47734,412.40447 L 51.820938,411.09519 L 52.090757,344.22923 L 138.00978,343.02679 z " + id="path1326" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1330);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.801465,344.56301 L 63.882125,409.02845 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path1327" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1331);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 135.76100,412.16784 L 136.60882,410.84457 L 63.844706,409.39872 L 52.202516,411.14796 L 135.76100,412.16784 z " + id="path1328" + sodipodi:nodetypes="ccccc" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec-lo.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec-lo.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec-lo.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec-lo.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,622 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="residence-hightec-lo.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-hightec-lo.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient18090"> + <stop + style="stop-color:#c69527;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop18091" /> + <stop + style="stop-color:#e7c14d;stop-opacity:1.0000000;" + offset="0.52910054" + id="stop18094" /> + <stop + style="stop-color:#e7b828;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop18092" /> + </linearGradient> + <linearGradient + id="linearGradient16840"> + <stop + style="stop-color:#858585;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop16841" /> + <stop + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop16842" /> + </linearGradient> + <linearGradient + id="linearGradient16216"> + <stop + style="stop-color:#000000;stop-opacity:0.21960784;" + offset="0.0000000" + id="stop16217" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop16218" /> + </linearGradient> + <linearGradient + id="linearGradient15589"> + <stop + style="stop-color:#000000;stop-opacity:0.49803922;" + offset="0.0000000" + id="stop15590" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop15591" /> + </linearGradient> + <linearGradient + id="linearGradient8654"> + <stop + style="stop-color:#ffffd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8655" /> + <stop + style="stop-color:#acb468;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8656" /> + </linearGradient> + <linearGradient + id="linearGradient8025"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8026" /> + <stop + style="stop-color:#dafdff;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8027" /> + </linearGradient> + <linearGradient + id="linearGradient4278"> + <stop + style="stop-color:#ffffd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4279" /> + <stop + style="stop-color:#e2ec88;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4280" /> + </linearGradient> + <linearGradient + id="linearGradient1786"> + <stop + style="stop-color:#d04848;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1787" /> + <stop + style="stop-color:#6f271b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1788" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient1789" + gradientTransform="matrix(1.484681,0.000000,0.000000,0.723408,-4.776368,-45.97541)" + x1="51.830433" + y1="214.55270" + x2="532.77954" + y2="537.91565" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient3656" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + x1="205.22607" + y1="114.57910" + x2="264.83234" + y2="165.96384" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4281" + gradientTransform="matrix(0.720822,0.000000,0.000000,1.490009,-4.776368,-45.97541)" + x1="339.20660" + y1="148.34567" + x2="461.91580" + y2="171.03979" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4906" + gradientTransform="matrix(0.905244,0.000000,0.000000,1.186454,-51.30701,-40.00994)" + x1="-209.09377" + y1="342.68054" + x2="1074.1273" + y2="385.28748" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4910" + gradientTransform="matrix(0.555481,0.000000,0.000000,1.933516,-51.30701,-40.00994)" + x1="323.41699" + y1="196.50076" + x2="1279.9755" + y2="220.87001" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient8028" + gradientTransform="matrix(0.860130,0.000000,0.000000,1.248684,-4.776368,-45.97541)" + cx="333.59818" + cy="198.94484" + fx="333.59818" + fy="198.94484" + r="121.25512" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient8653" + gradientTransform="matrix(0.966612,0.000000,0.000000,1.111129,-4.776368,-45.97541)" + x1="163.75665" + y1="173.52608" + x2="216.61328" + y2="174.03651" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient8660" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,-4.776368,-45.97541)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient8664" + gradientTransform="matrix(2.388927,0.000000,0.000000,0.449587,-4.776368,-45.97541)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11183" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.998846,0.000000,0.000000,0.898367,-129.3753,5.785940)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11184" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.372221,0.000000,0.000000,2.410747,-3.675871,146.7611)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11185" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.202103,0.000000,0.000000,0.407489,-3.572602,146.9227)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11190" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.045576,0.956411)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11191" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,131.5801,150.0835)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11192" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.305125,0.000000,0.000000,0.433816,131.6882,150.2555)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11193" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11194" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11195" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient13084" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.007034,0.993015)" + cx="235.10773" + cy="543.04913" + fx="235.10773" + fy="543.04913" + r="54.748417" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient13085" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.305125,0.433816)" + x1="81.932518" + y1="1289.1675" + x2="98.377357" + y2="1285.5785" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient13086" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient13091" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.007034,0.993015)" + cx="235.10773" + cy="543.04913" + fx="235.10773" + fy="543.04913" + r="54.748417" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient13092" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.305125,0.433816)" + x1="81.932518" + y1="1289.1675" + x2="98.377357" + y2="1285.5785" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient13093" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient13095" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-51.30701,-40.00994)" + x1="828.00049" + y1="205.89877" + x2="768.27551" + y2="186.88342" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15589" + id="linearGradient15592" + gradientTransform="matrix(0.853562,0.000000,0.000000,1.258293,-51.30701,-40.00994)" + x1="622.30029" + y1="130.00720" + x2="660.66791" + y2="211.02409" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16216" + id="linearGradient15594" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.853561,0.000000,0.000000,1.258293,-166.4717,-47.28613)" + x1="622.30029" + y1="130.00720" + x2="660.66791" + y2="211.02409" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16843" + gradientTransform="matrix(1.014465,0.000000,0.000000,1.058716,-51.30701,-40.00994)" + x1="406.12582" + y1="661.78082" + x2="404.23486" + y2="659.96094" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16844" + gradientTransform="matrix(1.858578,0.000000,0.000000,0.577878,-51.30701,-40.00994)" + x1="198.86722" + y1="1247.3527" + x2="170.89366" + y2="1176.4388" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16845" + gradientTransform="matrix(1.802227,0.000000,0.000000,0.595946,-51.30701,-40.00994)" + x1="242.20589" + y1="1209.9634" + x2="175.25876" + y2="1117.1237" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient17468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,110.1933,322.0867)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient18090" + id="linearGradient18093" + gradientTransform="matrix(0.806883,0.000000,0.000000,1.331086,-51.30701,-40.00994)" + x1="432.06381" + y1="460.62277" + x2="561.09821" + y2="467.85504" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient15589" + id="radialGradient19342" + gradientTransform="scale(1.884415,0.530669)" + cx="167.43819" + cy="1448.2863" + fx="167.43819" + fy="1448.2863" + r="155.79810" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient1158" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.484681,0.000000,0.000000,0.723408,-51.30701,-40.00994)" + x1="51.830433" + y1="214.55270" + x2="532.77954" + y2="537.91565" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:grid-bbox="false" + inkscape:grid-points="false" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1264" + inkscape:window-height="994" + inkscape:window-x="6" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient19342);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18716" + sodipodi:cx="315.52304" + sodipodi:cy="768.56012" + sodipodi:rx="293.58829" + sodipodi:ry="82.677162" + d="M 609.11133 768.56012 A 293.58829 82.677162 0 1 1 21.934753,768.56012 A 293.58829 82.677162 0 1 1 609.11133 768.56012 z" + transform="matrix(0.689655,0.000000,0.000000,1.709184,266.5198,-756.3233)" /> + <path + style="fill:url(#linearGradient13095);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 532.88070,75.280666 L 545.38628,46.653284 L 660.10260,204.79818 L 622.28847,201.30093 L 532.88070,75.280666 z " + id="path13094" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient4906);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 83.154284,585.32467 L 444.42944,674.30520 L 443.55512,298.34986 L 83.666444,274.16716 L 83.154284,585.32467 z " + id="path1072" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient4910);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 445.30375,674.30520 L 621.04103,538.78642 L 621.91534,186.43758 L 523.11777,52.667418 L 443.55512,299.22418 L 445.30375,674.30520 z " + id="path1073" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient1158);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 544.97565,45.672901 L 180.24527,59.921462 L 67.206598,289.28441 L 455.43339,325.13540 L 544.97565,45.672901 z " + id="path1075" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient18093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 290.33147,631.65130 L 290.78417,494.99301 L 384.46388,510.47726 L 384.75747,652.44734 L 290.33147,631.65130 z " + id="path1080" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16845);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 277.01371,628.80977 L 291.05351,631.82298 L 305.31189,622.81439 L 384.57203,642.02587 L 384.48813,651.83847 L 403.11807,655.72601 L 368.14548,683.81337 L 236.12395,651.57302 L 277.01371,628.80977 z " + id="path1086" + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:url(#linearGradient16844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 236.23325,651.46372 L 236.67041,658.45824 L 368.14549,692.11936 L 368.14548,683.81338 L 236.23325,651.46372 z " + id="path1087" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16843);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 368.03620,692.11936 L 402.89951,664.46916 L 403.00878,655.83529 L 368.25478,683.70408 L 368.03620,692.11936 z " + id="path1088" + sodipodi:nodetypes="ccccc" /> + <g + id="g11186" + transform="matrix(1.036355,0.000000,0.000000,1.036355,-27.26336,-33.45258)"> + <path + style="fill:url(#radialGradient11190);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 401.59528,385.05306 L 401.01184,462.37071 L 305.31263,449.03055 L 305.60829,374.51206 L 401.59528,385.05306 z " + id="path1164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11191);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 306.07004,374.40995 L 320.00153,376.16704 L 319.79062,439.67080 L 305.77177,448.91727 L 306.07004,374.40995 z " + id="path9291" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11192);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 400.52324,462.01308 L 400.82151,451.57351 L 319.74961,439.84289 L 305.73076,449.08936 L 400.52324,462.01308 z " + id="path9293" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g11179" + transform="matrix(1.036355,0.000000,0.000000,1.036355,-23.73503,-34.58298)"> + <path + style="fill:url(#radialGradient11183);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3681898;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 254.27164,367.47088 L 253.71427,440.09628 L 162.29210,427.56570 L 162.57455,357.56959 L 254.27164,367.47088 z " + id="path11163" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11184);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 163.01566,357.47368 L 176.32452,359.12413 L 176.12303,418.77398 L 162.73073,427.45929 L 163.01566,357.47368 z " + id="path11164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11185);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 253.24751,439.76034 L 253.53245,429.95433 L 176.08386,418.93562 L 162.69154,427.62094 L 253.24751,439.76034 z " + id="path11165" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g13080" + transform="matrix(1.036355,0.000000,0.000000,1.036355,-43.43818,-34.76405)"> + <path + style="fill:url(#radialGradient13084);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + id="path1081" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13085);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 265.54012,574.42871 L 265.83839,563.98914 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + id="path11829" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + id="path12452" + sodipodi:nodetypes="ccccc" /> + </g> + <path + style="fill:url(#linearGradient15592);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 462.79005,307.96731 L 546.72427,117.36671 L 621.04103,186.43757 L 536.12642,72.052350 L 462.79005,307.96731 z " + id="path14959" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient17468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 291.46375,495.77069 L 306.12028,498.24738 L 305.24597,622.20172 L 290.71747,631.78435 L 291.46375,495.77069 z " + id="path17467" + sodipodi:nodetypes="ccccc" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec-med.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec-med.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec-med.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec-med.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,713 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-hightec-med.png" + sodipodi:docname="residence-hightec-med.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient18090"> + <stop + id="stop18091" + offset="0.0000000" + style="stop-color:#c69527;stop-opacity:1.0000000;" /> + <stop + id="stop18094" + offset="0.52910054" + style="stop-color:#e7c14d;stop-opacity:1.0000000;" /> + <stop + id="stop18092" + offset="1.0000000" + style="stop-color:#e7b828;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient16840"> + <stop + id="stop16841" + offset="0.0000000" + style="stop-color:#858585;stop-opacity:1.0000000;" /> + <stop + id="stop16842" + offset="1.0000000" + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient16216"> + <stop + id="stop16217" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.21960784;" /> + <stop + id="stop16218" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient15589"> + <stop + id="stop15590" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.49803922;" /> + <stop + id="stop15591" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient8654"> + <stop + id="stop8655" + offset="0.0000000" + style="stop-color:#ffffd4;stop-opacity:1.0000000;" /> + <stop + id="stop8656" + offset="1.0000000" + style="stop-color:#acb468;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient8025"> + <stop + id="stop8026" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop8027" + offset="1.0000000" + style="stop-color:#dafdff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4278"> + <stop + id="stop4279" + offset="0.0000000" + style="stop-color:#ffffd4;stop-opacity:1.0000000;" /> + <stop + id="stop4280" + offset="1.0000000" + style="stop-color:#e2ec88;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient1786"> + <stop + id="stop1787" + offset="0.0000000" + style="stop-color:#d04848;stop-opacity:1.0000000;" /> + <stop + id="stop1788" + offset="1.0000000" + style="stop-color:#6f271b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="537.91565" + x2="532.77954" + y1="214.55270" + x1="51.830433" + gradientTransform="matrix(1.484681,0.000000,0.000000,0.723408,-4.776368,-45.97541)" + id="linearGradient1789" + xlink:href="#linearGradient1786" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="165.96384" + x2="264.83234" + y1="114.57910" + x1="205.22607" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + id="linearGradient3656" + xlink:href="#linearGradient1786" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="171.03979" + x2="461.91580" + y1="148.34567" + x1="339.20660" + gradientTransform="matrix(0.720822,0.000000,0.000000,1.490009,-4.776368,-45.97541)" + id="linearGradient4281" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="385.28748" + x2="1074.1273" + y1="342.68054" + x1="-209.09377" + gradientTransform="matrix(0.905244,0.000000,0.000000,1.186454,-4.776368,-45.97541)" + id="linearGradient4906" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="220.87001" + x2="1279.9755" + y1="196.50076" + x1="323.41699" + gradientTransform="matrix(0.555481,0.000000,0.000000,1.933516,-4.776368,-45.97541)" + id="linearGradient4910" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="121.25512" + fy="198.94484" + fx="333.59818" + cy="198.94484" + cx="333.59818" + gradientTransform="matrix(0.860130,0.000000,0.000000,1.248684,-4.776368,-45.97541)" + id="radialGradient8028" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="174.03651" + x2="216.61328" + y1="173.52608" + x1="163.75665" + gradientTransform="matrix(0.966612,0.000000,0.000000,1.111129,-4.776368,-45.97541)" + id="linearGradient8653" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,-4.776368,-45.97541)" + id="linearGradient8660" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="692.11511" + x2="127.27305" + y1="692.11511" + x1="75.231277" + gradientTransform="matrix(2.388927,0.000000,0.000000,0.449587,-4.776368,-45.97541)" + id="linearGradient8664" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <radialGradient + r="85.661217" + fy="450.65369" + fx="375.57907" + cy="450.65369" + cx="375.57907" + gradientTransform="matrix(0.998846,0.000000,0.000000,0.898367,-129.3753,5.785940)" + gradientUnits="userSpaceOnUse" + id="radialGradient11183" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.372221,0.000000,0.000000,2.410747,-3.675871,146.7611)" + gradientUnits="userSpaceOnUse" + id="linearGradient11184" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + y2="692.11511" + x2="127.27305" + y1="692.11511" + x1="75.231277" + gradientTransform="matrix(2.202103,0.000000,0.000000,0.407489,-3.572602,146.9227)" + gradientUnits="userSpaceOnUse" + id="linearGradient11185" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <radialGradient + r="85.661217" + fy="450.65369" + fx="375.57907" + cy="450.65369" + cx="375.57907" + gradientTransform="scale(1.045576,0.956411)" + gradientUnits="userSpaceOnUse" + id="radialGradient11190" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,131.5801,150.0835)" + gradientUnits="userSpaceOnUse" + id="linearGradient11191" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + y2="692.11511" + x2="127.27305" + y1="692.11511" + x1="75.231277" + gradientTransform="matrix(2.305125,0.000000,0.000000,0.433816,131.6882,150.2555)" + gradientUnits="userSpaceOnUse" + id="linearGradient11192" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <radialGradient + r="85.661217" + fy="450.65369" + fx="375.57907" + cy="450.65369" + cx="375.57907" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + gradientUnits="userSpaceOnUse" + id="radialGradient11193" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + gradientUnits="userSpaceOnUse" + id="linearGradient11194" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + y2="692.11511" + x2="127.27305" + y1="692.11511" + x1="75.231277" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + gradientUnits="userSpaceOnUse" + id="linearGradient11195" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <radialGradient + r="54.748417" + fy="543.04913" + fx="235.10773" + cy="543.04913" + cx="235.10773" + gradientTransform="scale(1.007034,0.993015)" + gradientUnits="userSpaceOnUse" + id="radialGradient13084" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + y2="1285.5785" + x2="98.377357" + y1="1289.1675" + x1="81.932518" + gradientTransform="scale(2.305125,0.433816)" + gradientUnits="userSpaceOnUse" + id="linearGradient13085" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <linearGradient + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + gradientUnits="userSpaceOnUse" + id="linearGradient13086" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <radialGradient + r="54.748417" + fy="543.04913" + fx="235.10773" + cy="543.04913" + cx="235.10773" + gradientTransform="scale(1.007034,0.993015)" + gradientUnits="userSpaceOnUse" + id="radialGradient13091" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + y2="1285.5785" + x2="98.377357" + y1="1289.1675" + x1="81.932518" + gradientTransform="scale(2.305125,0.433816)" + gradientUnits="userSpaceOnUse" + id="linearGradient13092" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <linearGradient + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + gradientUnits="userSpaceOnUse" + id="linearGradient13093" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + y2="186.88342" + x2="768.27551" + y1="205.89877" + x1="828.00049" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + gradientUnits="userSpaceOnUse" + id="linearGradient13095" + xlink:href="#linearGradient1786" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="211.02409" + x2="660.66791" + y1="130.00720" + x1="622.30029" + gradientTransform="matrix(0.853562,0.000000,0.000000,1.258293,-4.776367,-45.97541)" + id="linearGradient15592" + xlink:href="#linearGradient15589" + inkscape:collect="always" /> + <linearGradient + y2="211.02409" + x2="660.66791" + y1="130.00720" + x1="622.30029" + gradientTransform="matrix(0.853561,0.000000,0.000000,1.258293,-166.4717,-47.28613)" + gradientUnits="userSpaceOnUse" + id="linearGradient15594" + xlink:href="#linearGradient16216" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="659.96094" + x2="404.23486" + y1="661.78082" + x1="406.12582" + gradientTransform="matrix(1.014465,0.000000,0.000000,1.058716,-4.776368,-45.97541)" + id="linearGradient16843" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1176.4388" + x2="170.89366" + y1="1247.3527" + x1="198.86722" + gradientTransform="matrix(1.858578,0.000000,0.000000,0.577878,-4.776368,-45.97541)" + id="linearGradient16844" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1117.1237" + x2="175.25876" + y1="1209.9634" + x1="242.20589" + gradientTransform="matrix(1.802227,0.000000,0.000000,0.595946,-4.776368,-45.97541)" + id="linearGradient16845" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + y2="97.085861" + x2="484.64703" + y1="97.085861" + x1="445.45947" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,156.7239,316.1212)" + gradientUnits="userSpaceOnUse" + id="linearGradient17468" + xlink:href="#linearGradient8654" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="467.85504" + x2="561.09821" + y1="460.62277" + x1="432.06381" + gradientTransform="matrix(0.806883,0.000000,0.000000,1.331086,-4.776368,-45.97541)" + id="linearGradient18093" + xlink:href="#linearGradient18090" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="155.79810" + fy="1448.2863" + fx="167.43819" + cy="1448.2863" + cx="167.43819" + gradientTransform="scale(1.884415,0.530669)" + id="radialGradient19342" + xlink:href="#linearGradient15589" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="6" + inkscape:window-height="966" + inkscape:window-width="1264" + inkscape:guide-bbox="true" + showguides="true" + inkscape:grid-points="false" + inkscape:grid-bbox="false" + showgrid="false" + inkscape:current-layer="layer1" + inkscape:cy="354.33072" + inkscape:cx="354.33072" + inkscape:zoom="1.1034889" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + <dc:creator + id="creator1386"> + <cc:Agent + id="Agent1388"> + <dc:title + id="title1390">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <dc:date + id="date1392">2005</dc:date> + <dc:title + id="title1394">House</dc:title> + <dc:description + id="description1396">A house drawn for lincity-ng</dc:description> + <cc:license + rdf:resource="http://web.resource.org/cc/PublicDomain" + id="license1398" /> + </cc:Work> + <cc:License + id="License1400" + rdf:about="http://web.resource.org/cc/PublicDomain"> + <cc:permits + id="permits1402" + rdf:resource="http://web.resource.org/cc/Reproduction" /> + <cc:permits + id="permits1404" + rdf:resource="http://web.resource.org/cc/Distribution" /> + <cc:permits + id="permits1406" + rdf:resource="http://web.resource.org/cc/DerivativeWorks" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + transform="matrix(0.689655,0.000000,0.000000,1.709184,313.0504,-762.2888)" + d="M 609.11133 768.56012 A 293.58829 82.677162 0 1 1 21.934753,768.56012 A 293.58829 82.677162 0 1 1 609.11133 768.56012 z" + sodipodi:ry="82.677162" + sodipodi:rx="293.58829" + sodipodi:cy="768.56012" + sodipodi:cx="315.52304" + id="path18716" + style="fill:url(#radialGradient19342);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + id="path13094" + d="M 579.41135,69.315199 L 591.91693,40.687817 L 706.63325,198.83271 L 668.81912,195.33546 L 579.41135,69.315199 z " + style="fill:url(#linearGradient13095);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccccc" + id="path1072" + d="M 28.447594,560.79902 L 490.96009,668.33973 L 490.08577,292.38439 L 320.24514,276.44368 L 322.80489,181.30235 L 238.81194,62.049899 L 156.05543,161.03400 L 155.52403,261.87281 L 28.959755,249.64151 L 28.447594,560.79902 z " + style="fill:url(#linearGradient4906);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccc" + id="path1073" + d="M 491.83440,668.33973 L 667.57168,532.82095 L 668.44599,180.47211 L 569.64842,46.701951 L 490.08577,293.25871 L 491.83440,668.33973 z " + style="fill:url(#linearGradient4910);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccccccc" + id="path1075" + d="M 591.50630,39.707434 L 134.23969,35.335861 L 3.3046100,264.69880 L 147.51617,281.02684 L 155.51038,262.65657 L 155.92732,160.72713 L 238.36090,61.961788 L 340.57796,41.018903 L 377.95491,164.84373 L 311.16946,298.09529 L 501.96404,319.16993 L 591.50630,39.707434 z " + style="fill:url(#linearGradient1789);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path1077" + d="M 320.46873,183.31362 L 378.17349,164.29729 L 320.57478,277.17709 L 320.46873,183.31362 z " + style="fill:url(#linearGradient4281);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1079" + d="M 238.84833,61.821382 L 340.57796,41.018905 L 379.04780,164.29728 L 320.68730,182.65790 L 238.84833,61.821382 z " + style="fill:url(#linearGradient3656);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1080" + d="M 336.86212,625.68583 L 337.31482,489.02754 L 430.99453,504.51179 L 431.28812,646.48187 L 336.86212,625.68583 z " + style="fill:url(#linearGradient18093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccc" + id="path1085" + d="M 175.30141,263.82981 L 175.36354,170.58569 L 237.02845,96.503062 L 298.66389,186.82267 L 298.45173,276.76347 L 175.30141,263.82981 z " + style="fill:url(#radialGradient8028);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccc" + id="path1086" + d="M 323.54436,622.84430 L 337.58416,625.85751 L 351.84254,616.84892 L 431.10268,636.06040 L 431.01878,645.87300 L 449.64872,649.76054 L 414.67613,677.84790 L 282.65460,645.60755 L 323.54436,622.84430 z " + style="fill:url(#linearGradient16845);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1087" + d="M 282.76390,645.49825 L 283.20106,652.49277 L 414.67614,686.15389 L 414.67613,677.84791 L 282.76390,645.49825 z " + style="fill:url(#linearGradient16844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path1088" + d="M 414.56685,686.15389 L 449.43016,658.50369 L 449.53943,649.86982 L 414.78543,677.73861 L 414.56685,686.15389 z " + style="fill:url(#linearGradient16843);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="path6776" + d="M 176.05704,170.98721 L 190.27643,160.78635 L 190.27643,254.13967 L 175.74793,263.72229 L 176.05704,170.98721 z " + style="fill:url(#linearGradient8660);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path6777" + d="M 298.31280,276.24154 L 298.62191,265.42244 L 190.12187,254.13967 L 175.59337,263.72229 L 298.31280,276.24154 z " + style="fill:url(#linearGradient8664);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path6778" + d="M 176.05704,171.14176 L 190.27643,160.78635 L 239.88970,100.35398 L 236.79852,97.571932 L 176.05704,171.14176 z " + style="fill:url(#linearGradient8653);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + transform="matrix(1.036355,0.000000,0.000000,1.036355,19.26729,-39.41805)" + id="g11186"> + <path + sodipodi:nodetypes="ccccc" + id="path1164" + d="M 401.59528,385.05306 L 401.01184,462.37071 L 305.31263,449.03055 L 305.60829,374.51206 L 401.59528,385.05306 z " + style="fill:url(#radialGradient11190);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path9291" + d="M 306.07004,374.40995 L 320.00153,376.16704 L 319.79062,439.67080 L 305.77177,448.91727 L 306.07004,374.40995 z " + style="fill:url(#linearGradient11191);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path9293" + d="M 400.52324,462.01308 L 400.82151,451.57351 L 319.74961,439.84289 L 305.73076,449.08936 L 400.52324,462.01308 z " + style="fill:url(#linearGradient11192);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(1.036355,0.000000,0.000000,1.036355,22.79562,-40.54845)" + id="g11179"> + <path + sodipodi:nodetypes="ccccc" + id="path11163" + d="M 254.27164,367.47088 L 253.71427,440.09628 L 162.29210,427.56570 L 162.57455,357.56959 L 254.27164,367.47088 z " + style="fill:url(#radialGradient11183);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3681898;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path11164" + d="M 163.01566,357.47368 L 176.32452,359.12413 L 176.12303,418.77398 L 162.73073,427.45929 L 163.01566,357.47368 z " + style="fill:url(#linearGradient11184);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path11165" + d="M 253.24751,439.76034 L 253.53245,429.95433 L 176.08386,418.93562 L 162.69154,427.62094 L 253.24751,439.76034 z " + style="fill:url(#linearGradient11185);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(1.036355,0.000000,0.000000,1.036355,2.218150,-43.78963)" + id="g11175"> + <path + sodipodi:nodetypes="ccccc" + id="path11169" + d="M 139.68726,353.68774 L 139.15482,423.06542 L 51.820938,411.09519 L 52.090757,344.22923 L 139.68726,353.68774 z " + style="fill:url(#radialGradient11193);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path11170" + d="M 52.512141,344.13761 L 65.225845,345.71425 L 65.033365,402.69663 L 52.239953,410.99354 L 52.512141,344.13761 z " + style="fill:url(#linearGradient11194);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path11171" + d="M 138.70893,422.74450 L 138.98113,413.37701 L 64.995947,402.85104 L 52.202516,411.14796 L 138.70893,422.74450 z " + style="fill:url(#linearGradient11195);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(1.036355,0.000000,0.000000,1.036355,3.092466,-40.72952)" + id="g13080"> + <path + sodipodi:nodetypes="ccccc" + id="path1081" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + style="fill:url(#radialGradient13084);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path11829" + d="M 265.54012,574.42871 L 265.83839,563.98914 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + style="fill:url(#linearGradient13085);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path12452" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + style="fill:url(#linearGradient13086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(0.949936,0.000000,0.000000,0.977929,-113.8350,-35.90236)" + id="g13087"> + <path + sodipodi:nodetypes="ccccc" + id="path13088" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + style="fill:url(#radialGradient13091);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path13089" + d="M 265.54012,574.42871 L 265.83839,563.98914 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + style="fill:url(#linearGradient13092);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path13090" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + style="fill:url(#linearGradient13093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <path + sodipodi:nodetypes="ccccc" + id="path14959" + d="M 509.32070,302.00184 L 593.25492,111.40124 L 667.57168,180.47210 L 582.65707,66.086883 L 509.32070,302.00184 z " + style="fill:url(#linearGradient15592);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path15593" + d="M 380.39180,165.91615 L 322.75045,275.15898 L 460.12707,125.99328 L 341.82784,40.046818 L 380.39180,165.91615 z " + style="fill:url(#linearGradient15594);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path17467" + d="M 337.99440,489.80522 L 352.65093,492.28191 L 351.77662,616.23625 L 337.24812,625.81888 L 337.99440,489.80522 z " + style="fill:url(#linearGradient17468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-hightec.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-hightec.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,1452 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/residence" + sodipodi:docname="residence-hightec.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-hightec-med.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient13397"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop13399" /> + <stop + style="stop-color:#dadada;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop13401" /> + </linearGradient> + <linearGradient + id="linearGradient11811"> + <stop + id="stop11813" + offset="0.0000000" + style="stop-color:#f6e800;stop-opacity:1.0000000;" /> + <stop + id="stop11815" + offset="1.0000000" + style="stop-color:#ffb08a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient10281"> + <stop + id="stop10283" + offset="0.0000000" + style="stop-color:#f6c900;stop-opacity:1.0000000;" /> + <stop + id="stop10285" + offset="1.0000000" + style="stop-color:#ff5200;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient7963"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7965" /> + <stop + style="stop-color:#a30000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7967" /> + </linearGradient> + <linearGradient + id="linearGradient7189"> + <stop + id="stop7191" + offset="0.0000000" + style="stop-color:#96acff;stop-opacity:1.0000000;" /> + <stop + id="stop7193" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient18090"> + <stop + style="stop-color:#c69527;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop18091" /> + <stop + style="stop-color:#e7c14d;stop-opacity:1.0000000;" + offset="0.52910054" + id="stop18094" /> + <stop + style="stop-color:#e7b828;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop18092" /> + </linearGradient> + <linearGradient + id="linearGradient16840"> + <stop + style="stop-color:#858585;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop16841" /> + <stop + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop16842" /> + </linearGradient> + <linearGradient + id="linearGradient16216"> + <stop + style="stop-color:#000000;stop-opacity:0.21960784;" + offset="0.0000000" + id="stop16217" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop16218" /> + </linearGradient> + <linearGradient + id="linearGradient15589"> + <stop + style="stop-color:#000000;stop-opacity:0.49803922;" + offset="0.0000000" + id="stop15590" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop15591" /> + </linearGradient> + <linearGradient + id="linearGradient8654"> + <stop + style="stop-color:#ffffd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8655" /> + <stop + style="stop-color:#acb468;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8656" /> + </linearGradient> + <linearGradient + id="linearGradient8025"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8026" /> + <stop + style="stop-color:#dafdff;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8027" /> + </linearGradient> + <linearGradient + id="linearGradient4278"> + <stop + style="stop-color:#ffffd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4279" /> + <stop + style="stop-color:#e2ec88;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4280" /> + </linearGradient> + <linearGradient + id="linearGradient1786"> + <stop + style="stop-color:#d04848;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1787" /> + <stop + style="stop-color:#6f271b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1788" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient1789" + gradientTransform="matrix(1.484681,0.000000,0.000000,0.723408,-4.776368,-45.97541)" + x1="51.830433" + y1="214.55270" + x2="532.77954" + y2="537.91565" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient3656" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + x1="205.22607" + y1="114.57910" + x2="264.83234" + y2="165.96384" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4281" + gradientTransform="matrix(0.720822,0.000000,0.000000,1.490009,-4.776368,-45.97541)" + x1="339.20660" + y1="148.34567" + x2="461.91580" + y2="171.03979" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4906" + gradientTransform="matrix(0.905244,0.000000,0.000000,1.186454,-4.776368,-45.97541)" + x1="-209.09377" + y1="342.68054" + x2="1074.1273" + y2="385.28748" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient4910" + gradientTransform="matrix(0.555481,0.000000,0.000000,1.933516,-4.776368,-45.97541)" + x1="323.41699" + y1="196.50076" + x2="1279.9755" + y2="220.87001" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient8028" + gradientTransform="matrix(0.860130,0.000000,0.000000,1.248684,-4.776368,-45.97541)" + cx="333.59818" + cy="198.94484" + fx="333.59818" + fy="198.94484" + r="121.25512" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient8653" + gradientTransform="matrix(0.966612,0.000000,0.000000,1.111129,-4.776368,-45.97541)" + x1="163.75665" + y1="173.52608" + x2="216.61328" + y2="174.03651" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient8660" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,-4.776368,-45.97541)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient8664" + gradientTransform="matrix(2.388927,0.000000,0.000000,0.449587,-4.776368,-45.97541)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11183" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.998846,0.000000,0.000000,0.898367,-129.3753,5.785940)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11184" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.372221,0.000000,0.000000,2.410747,-3.675871,146.7611)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11185" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.202103,0.000000,0.000000,0.407489,-3.572602,146.9227)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11190" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.045576,0.956411)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11191" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,131.5801,150.0835)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11192" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.305125,0.000000,0.000000,0.433816,131.6882,150.2555)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient11193" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954179,0.000000,0.000000,0.858193,-226.8034,8.176951)" + cx="375.57907" + cy="450.65369" + fx="375.57907" + fy="450.65369" + r="85.661217" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient11194" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.355576,0.000000,0.000000,2.302941,-106.7251,142.8477)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient11195" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.103627,0.000000,0.000000,0.389266,-106.6264,143.0021)" + x1="75.231277" + y1="692.11511" + x2="127.27305" + y2="692.11511" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient13084" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.007034,0.993015)" + cx="235.10773" + cy="543.04913" + fx="235.10773" + fy="543.04913" + r="54.748417" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient13085" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.305125,0.433816)" + x1="81.932518" + y1="1289.1675" + x2="98.377357" + y2="1285.5785" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient13086" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8025" + id="radialGradient13091" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.007034,0.993015)" + cx="235.10773" + cy="543.04913" + fx="235.10773" + fy="543.04913" + r="54.748417" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4278" + id="linearGradient13092" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.305125,0.433816)" + x1="81.932518" + y1="1289.1675" + x2="98.377357" + y2="1285.5785" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient13093" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.389635,0.000000,0.000000,2.566504,3.978893,257.4373)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1786" + id="linearGradient13095" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.035884,0.000000,0.000000,1.036827,-4.776368,-45.97541)" + x1="828.00049" + y1="205.89877" + x2="768.27551" + y2="186.88342" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15589" + id="linearGradient15592" + gradientTransform="matrix(0.853562,0.000000,0.000000,1.258293,-4.776367,-45.97541)" + x1="622.30029" + y1="130.00720" + x2="660.66791" + y2="211.02409" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16216" + id="linearGradient15594" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.853561,0.000000,0.000000,1.258293,-166.4717,-47.28613)" + x1="622.30029" + y1="130.00720" + x2="660.66791" + y2="211.02409" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16843" + gradientTransform="matrix(1.014465,0.000000,0.000000,1.058716,-4.776368,-45.97541)" + x1="406.12582" + y1="661.78082" + x2="404.23486" + y2="659.96094" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16844" + gradientTransform="matrix(1.858578,0.000000,0.000000,0.577878,-4.776368,-45.97541)" + x1="198.86722" + y1="1247.3527" + x2="170.89366" + y2="1176.4388" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16840" + id="linearGradient16845" + gradientTransform="matrix(1.802227,0.000000,0.000000,0.595946,-4.776368,-45.97541)" + x1="242.20589" + y1="1209.9634" + x2="175.25876" + y2="1117.1237" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8654" + id="linearGradient17468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.403800,0.000000,0.000000,2.659808,156.7239,316.1212)" + x1="445.45947" + y1="97.085861" + x2="484.64703" + y2="97.085861" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient18090" + id="linearGradient18093" + gradientTransform="matrix(0.806883,0.000000,0.000000,1.331086,-4.776368,-45.97541)" + x1="432.06381" + y1="460.62277" + x2="561.09821" + y2="467.85504" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient15589" + id="radialGradient19342" + gradientTransform="scale(1.884415,0.530669)" + cx="167.43819" + cy="1448.2863" + fx="167.43819" + fy="1448.2863" + r="155.79810" + gradientUnits="userSpaceOnUse" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="147.03934" + x2="915.00543" + y1="434.15771" + x1="1198.6561" + gradientTransform="matrix(0.911968,0.000000,0.000000,1.096530,-529.3860,77.93463)" + id="linearGradient3364" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="406.97388" + fy="979.61182" + fx="646.29340" + cy="979.61182" + cx="646.29340" + gradientTransform="scale(1.958350,0.510634)" + id="radialGradient4899" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1047.9275" + x2="737.09790" + y1="717.84656" + x1="698.72278" + gradientTransform="scale(1.474428,0.678229)" + id="linearGradient7195" + xlink:href="#linearGradient7189" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="489.24570" + x2="938.03162" + y1="471.12860" + x1="1021.3810" + gradientTransform="scale(1.250085,0.799945)" + id="linearGradient7961" + xlink:href="#linearGradient13397" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,-9.062166,-2.718650)" + id="linearGradient8753" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + id="radialGradient9519" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,411.7628,117.2184)" + id="radialGradient10289" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,682.5568,157.6233)" + gradientUnits="userSpaceOnUse" + id="radialGradient11051" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,89.71543,22.65542)" + gradientUnits="userSpaceOnUse" + id="linearGradient12583" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient12585" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,510.5405,142.5924)" + gradientUnits="userSpaceOnUse" + id="radialGradient12587" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,781.3345,182.9973)" + gradientUnits="userSpaceOnUse" + id="radialGradient12589" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,205.7111,20.84298)" + gradientUnits="userSpaceOnUse" + id="linearGradient12599" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient12601" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,626.5361,140.7800)" + gradientUnits="userSpaceOnUse" + id="radialGradient12603" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,897.3301,181.1849)" + gradientUnits="userSpaceOnUse" + id="radialGradient12605" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,290.8955,-8.155949)" + gradientUnits="userSpaceOnUse" + id="linearGradient12615" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient12617" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,711.7205,111.7811)" + gradientUnits="userSpaceOnUse" + id="radialGradient12619" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,982.5145,152.1860)" + gradientUnits="userSpaceOnUse" + id="radialGradient12621" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,147.7133,-28.99893)" + gradientUnits="userSpaceOnUse" + id="linearGradient12631" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient12633" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,568.5383,90.93810)" + gradientUnits="userSpaceOnUse" + id="radialGradient12635" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,839.3323,131.3430)" + gradientUnits="userSpaceOnUse" + id="radialGradient12637" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="147.03934" + x2="915.00543" + y1="434.15771" + x1="1198.6561" + gradientTransform="matrix(0.911968,0.000000,0.000000,1.096530,-529.3860,77.93463)" + gradientUnits="userSpaceOnUse" + id="linearGradient14959" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <radialGradient + r="406.97388" + fy="979.61182" + fx="646.29340" + cy="979.61182" + cx="646.29340" + gradientTransform="scale(1.958350,0.510634)" + gradientUnits="userSpaceOnUse" + id="radialGradient14961" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + y2="489.24570" + x2="938.03162" + y1="471.12860" + x1="1021.3810" + gradientTransform="scale(1.250085,0.799945)" + gradientUnits="userSpaceOnUse" + id="linearGradient14963" + xlink:href="#linearGradient13397" + inkscape:collect="always" /> + <linearGradient + y2="1047.9275" + x2="737.09790" + y1="717.84656" + x1="698.72278" + gradientTransform="scale(1.474428,0.678229)" + gradientUnits="userSpaceOnUse" + id="linearGradient14965" + xlink:href="#linearGradient7189" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,-9.062166,-2.718650)" + gradientUnits="userSpaceOnUse" + id="linearGradient14967" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14969" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,411.7628,117.2184)" + gradientUnits="userSpaceOnUse" + id="radialGradient14971" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,682.5568,157.6233)" + gradientUnits="userSpaceOnUse" + id="radialGradient14973" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,89.71543,22.65542)" + gradientUnits="userSpaceOnUse" + id="linearGradient14975" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14977" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,510.5405,142.5924)" + gradientUnits="userSpaceOnUse" + id="radialGradient14979" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,781.3345,182.9973)" + gradientUnits="userSpaceOnUse" + id="radialGradient14981" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,205.7111,20.84298)" + gradientUnits="userSpaceOnUse" + id="linearGradient14983" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14985" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,626.5361,140.7800)" + gradientUnits="userSpaceOnUse" + id="radialGradient14987" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,897.3301,181.1849)" + gradientUnits="userSpaceOnUse" + id="radialGradient14989" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,290.8955,-8.155949)" + gradientUnits="userSpaceOnUse" + id="linearGradient14991" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14993" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,711.7205,111.7811)" + gradientUnits="userSpaceOnUse" + id="radialGradient14995" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,982.5145,152.1860)" + gradientUnits="userSpaceOnUse" + id="radialGradient14997" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,147.7133,-28.99893)" + gradientUnits="userSpaceOnUse" + id="linearGradient14999" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient15001" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,568.5383,90.93810)" + gradientUnits="userSpaceOnUse" + id="radialGradient15003" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,839.3323,131.3430)" + gradientUnits="userSpaceOnUse" + id="radialGradient15005" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.55174445" + inkscape:cx="563.36447" + inkscape:cy="358.29463" + inkscape:current-layer="layer1" + showgrid="false" + inkscape:grid-bbox="false" + inkscape:grid-points="false" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="618" + inkscape:window-x="0" + inkscape:window-y="380" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:creator + id="creator1386"> + <cc:Agent + id="Agent1388"> + <dc:title + id="title1390">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <dc:date + id="date1392">2005</dc:date> + <dc:title + id="title1394">House</dc:title> + <dc:description + id="description1396">A house drawn for lincity-ng</dc:description> + <cc:license + id="license1398" + rdf:resource="http://web.resource.org/cc/PublicDomain" /> + </cc:Work> + <cc:License + rdf:about="http://web.resource.org/cc/PublicDomain" + id="License1400"> + <cc:permits + rdf:resource="http://web.resource.org/cc/Reproduction" + id="permits1402" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/Distribution" + id="permits1404" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/DerivativeWorks" + id="permits1406" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient19342);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18716" + sodipodi:cx="315.52304" + sodipodi:cy="768.56012" + sodipodi:rx="293.58829" + sodipodi:ry="82.677162" + d="M 609.11133 768.56012 A 293.58829 82.677162 0 1 1 21.934753,768.56012 A 293.58829 82.677162 0 1 1 609.11133 768.56012 z" + transform="matrix(0.689655,0.000000,0.000000,1.709184,313.0504,-762.2888)" /> + <path + style="fill:url(#linearGradient13095);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 579.41135,69.315199 L 591.91693,40.687817 L 706.63325,198.83271 L 668.81912,195.33546 L 579.41135,69.315199 z " + id="path13094" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient4906);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 28.447594,560.79902 L 490.96009,668.33973 L 490.08577,292.38439 L 320.24514,276.44368 L 322.80489,181.30235 L 238.81194,62.049899 L 156.05543,161.03400 L 155.52403,261.87281 L 28.959755,249.64151 L 28.447594,560.79902 z " + id="path1072" + sodipodi:nodetypes="cccccccccc" /> + <path + style="fill:url(#linearGradient4910);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 491.83440,668.33973 L 667.57168,532.82095 L 668.44599,180.47211 L 569.64842,46.701951 L 490.08577,293.25871 L 491.83440,668.33973 z " + id="path1073" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient1789);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 591.50630,39.707434 L 134.23969,35.335861 L 3.3046100,264.69880 L 147.51617,281.02684 L 155.51038,262.65657 L 155.92732,160.72713 L 238.36090,61.961788 L 340.57796,41.018903 L 377.95491,164.84373 L 311.16946,298.09529 L 501.96404,319.16993 L 591.50630,39.707434 z " + id="path1075" + sodipodi:nodetypes="cccccccccccc" /> + <path + style="fill:url(#linearGradient4281);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 320.46873,183.31362 L 378.17349,164.29729 L 320.57478,277.17709 L 320.46873,183.31362 z " + id="path1077" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient3656);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.8863294;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 238.84833,61.821382 L 340.57796,41.018905 L 379.04780,164.29728 L 320.68730,182.65790 L 238.84833,61.821382 z " + id="path1079" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient18093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 336.86212,625.68583 L 337.31482,489.02754 L 430.99453,504.51179 L 431.28812,646.48187 L 336.86212,625.68583 z " + id="path1080" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient8028);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 175.30141,263.82981 L 175.36354,170.58569 L 237.02845,96.503062 L 298.66389,186.82267 L 298.45173,276.76347 L 175.30141,263.82981 z " + id="path1085" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient16845);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 323.54436,622.84430 L 337.58416,625.85751 L 351.84254,616.84892 L 431.10268,636.06040 L 431.01878,645.87300 L 449.64872,649.76054 L 414.67613,677.84790 L 282.65460,645.60755 L 323.54436,622.84430 z " + id="path1086" + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:url(#linearGradient16844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 282.76390,645.49825 L 283.20106,652.49277 L 414.67614,686.15389 L 414.67613,677.84791 L 282.76390,645.49825 z " + id="path1087" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16843);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5908864;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 414.56685,686.15389 L 449.43016,658.50369 L 449.53943,649.86982 L 414.78543,677.73861 L 414.56685,686.15389 z " + id="path1088" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8660);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 176.05704,170.98721 L 190.27643,160.78635 L 190.27643,254.13967 L 175.74793,263.72229 L 176.05704,170.98721 z " + id="path6776" /> + <path + style="fill:url(#linearGradient8664);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 298.31280,276.24154 L 298.62191,265.42244 L 190.12187,254.13967 L 175.59337,263.72229 L 298.31280,276.24154 z " + id="path6777" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient8653);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 176.05704,171.14176 L 190.27643,160.78635 L 239.88970,100.35398 L 236.79852,97.571932 L 176.05704,171.14176 z " + id="path6778" + sodipodi:nodetypes="ccccc" /> + <g + id="g11186" + transform="matrix(1.036355,0.000000,0.000000,1.036355,19.26729,-39.41805)"> + <path + style="fill:url(#radialGradient11190);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 401.59528,385.05306 L 401.01184,462.37071 L 305.31263,449.03055 L 305.60829,374.51206 L 401.59528,385.05306 z " + id="path1164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11191);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 306.07004,374.40995 L 320.00153,376.16704 L 319.79062,439.67080 L 305.77177,448.91727 L 306.07004,374.40995 z " + id="path9291" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11192);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 400.52324,462.01308 L 400.82151,451.57351 L 319.74961,439.84289 L 305.73076,449.08936 L 400.52324,462.01308 z " + id="path9293" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g11179" + transform="matrix(1.036355,0.000000,0.000000,1.036355,22.79562,-40.54845)"> + <path + style="fill:url(#radialGradient11183);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3681898;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 254.27164,367.47088 L 253.71427,440.09628 L 162.29210,427.56570 L 162.57455,357.56959 L 254.27164,367.47088 z " + id="path11163" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11184);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 163.01566,357.47368 L 176.32452,359.12413 L 176.12303,418.77398 L 162.73073,427.45929 L 163.01566,357.47368 z " + id="path11164" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11185);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1840949;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 253.24751,439.76034 L 253.53245,429.95433 L 176.08386,418.93562 L 162.69154,427.62094 L 253.24751,439.76034 z " + id="path11165" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g11175" + transform="matrix(1.036355,0.000000,0.000000,1.036355,2.218150,-43.78963)"> + <path + style="fill:url(#radialGradient11193);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2622871;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 139.68726,353.68774 L 139.15482,423.06542 L 51.820938,411.09519 L 52.090757,344.22923 L 139.68726,353.68774 z " + id="path11169" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11194);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.512141,344.13761 L 65.225845,345.71425 L 65.033365,402.69663 L 52.239953,410.99354 L 52.512141,344.13761 z " + id="path11170" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11195);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1311436;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.70893,422.74450 L 138.98113,413.37701 L 64.995947,402.85104 L 52.202516,411.14796 L 138.70893,422.74450 z " + id="path11171" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g13080" + transform="matrix(1.036355,0.000000,0.000000,1.036355,3.092466,-40.72952)"> + <path + style="fill:url(#radialGradient13084);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + id="path1081" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13085);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 265.54012,574.42871 L 265.83839,563.98914 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + id="path11829" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + id="path12452" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g13087" + transform="matrix(0.949936,0.000000,0.000000,0.977929,-113.8350,-35.90236)"> + <path + style="fill:url(#radialGradient13091);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 266.30945,503.57098 L 265.77284,575.13602 L 177.75463,556.82293 L 178.02656,487.84879 L 266.30945,503.57098 z " + id="path13088" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13092);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 265.54012,574.42871 L 265.83839,563.98914 L 192.35929,546.98574 L 178.34044,556.23221 L 265.54012,574.42871 z " + id="path13089" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient13093);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 178.25790,488.30195 L 193.03303,490.69178 L 192.18939,547.02456 L 178.17054,556.27103 L 178.25790,488.30195 z " + id="path13090" + sodipodi:nodetypes="ccccc" /> + </g> + <path + style="fill:url(#linearGradient15592);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 509.32070,302.00184 L 593.25492,111.40124 L 667.57168,180.47210 L 582.65707,66.086883 L 509.32070,302.00184 z " + id="path14959" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15594);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 380.39180,165.91615 L 322.75045,275.15898 L 460.12707,125.99328 L 341.82784,40.046818 L 380.39180,165.91615 z " + id="path15593" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient17468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2954432;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 337.99440,489.80522 L 352.65093,492.28191 L 351.77662,616.23625 L 337.24812,625.81888 L 337.99440,489.80522 z " + id="path17467" + sodipodi:nodetypes="ccccc" /> + <g + transform="matrix(0.957987,0.000000,0.000000,0.957987,72.94498,57.41312)" + id="g14929"> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path14161" + d="M 418.02425,209.96321 L 418.02425,351.90605 L 287.99300,351.90605 L 287.99300,455.21855 L 418.02425,455.21855 L 418.02425,676.31230 L 527.68050,676.31230 L 527.68050,455.21855 L 657.74300,455.21855 L 657.74300,351.90605 L 527.68050,351.90605 L 527.68050,209.96321 L 418.02425,209.96321 z " + style="fill:#000000;fill-opacity:0.83680558;stroke:none;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.66666669" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="rect1826" + d="M 402.64525,199.71054 L 402.64525,341.65338 L 272.61400,341.65338 L 272.61400,444.96588 L 402.64525,444.96588 L 402.64525,666.05963 L 512.30150,666.05963 L 512.30150,444.96588 L 642.36400,444.96588 L 642.36400,341.65338 L 512.30150,341.65338 L 512.30150,199.71054 L 402.64525,199.71054 z " + style="fill:url(#linearGradient14959);fill-opacity:1.0000000;stroke:#212121;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(0.746150,0.000000,0.000000,0.746150,-624.1697,-94.70496)" + id="g14933"> + <path + d="M 1406.4482 535.12097 A 278.20850 70.231789 0 1 1 850.03125,535.12097 A 278.20850 70.231789 0 1 1 1406.4482 535.12097 z" + sodipodi:ry="70.231789" + sodipodi:rx="278.20850" + sodipodi:cy="535.12097" + sodipodi:cx="1128.2397" + id="path4124" + style="fill:url(#radialGradient14961);fill-opacity:1.0000000;stroke:#212121;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + id="rect4130" + d="M 1128.2500,280.96875 C 1017.2899,280.96875 927.12165,303.54117 925.71875,331.46875 L 924.87500,331.46875 L 895.87500,537.59375 C 952.91781,587.73773 1299.9575,594.38333 1363.3438,538.50000 L 1331.6250,329.65625 L 1330.5938,329.65625 C 1325.4770,302.57180 1236.7991,280.96874 1128.2500,280.96875 z " + style="fill:url(#linearGradient14963);fill-opacity:1.0000000;stroke:#212121;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssscsssccc" + id="path4128" + d="M 1406.4482,535.12097 C 1411.2361,560.80017 1429.7795,689.93971 1418.0892,672.07649 C 1409.2920,658.63419 1368.0655,594.40608 1342.8876,600.76205 C 1317.7098,607.11803 1346.3843,675.06940 1313.1036,678.62488 C 1279.8229,682.18037 1212.1173,644.17884 1173.7246,644.17884 C 1135.3318,644.17884 1072.4140,734.70977 1039.1333,731.15428 C 1005.8527,727.59880 967.49692,635.66662 942.31905,629.31064 C 917.14119,622.95466 864.44426,631.37440 834.79936,674.36037 C 825.66937,687.59912 850.03125,544.81296 850.03125,535.12097 C 850.03125,496.35302 974.66866,464.88918 1128.2397,464.88918 C 1281.8108,464.88918 1406.4482,496.35302 1406.4482,535.12097 z " + style="fill:url(#linearGradient14965);fill-opacity:1.0000000;stroke:#9f9fd1;stroke-width:8.5825472;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + transform="matrix(0.757093,0.000000,0.000000,0.793574,274.0579,-96.15407)" /> + <path + transform="matrix(0.757093,0.000000,0.000000,0.793574,274.0573,-95.70142)" + d="M 1406.4482 535.12097 A 278.20850 70.231789 0 1 1 850.03125,535.12097 A 278.20850 70.231789 0 1 1 1406.4482 535.12097 z" + sodipodi:ry="70.231789" + sodipodi:rx="278.20850" + sodipodi:cy="535.12097" + sodipodi:cx="1128.2397" + id="path6429" + style="opacity:0.79687500;fill:#ffffff;fill-opacity:0.64583331;stroke:none;stroke-width:8.5825472;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="cccccc" + id="path7971" + d="M 961.80436,216.43309 L 961.66471,326.33516 C 961.66471,330.19636 969.91205,333.33035 980.07311,333.33035 C 990.23416,333.33035 998.48643,330.19635 998.48143,326.33516 L 998.34183,216.43309 L 961.80436,216.43309 z " + style="fill:url(#linearGradient14967);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,637.3215,141.1484)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path7969" + style="fill:url(#radialGradient14969);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path9521" + d="M 990.02114,160.74312 C 972.47800,165.18445 961.92061,184.56025 961.76327,194.94120 C 961.59675,205.93345 967.26794,213.07721 979.80616,212.70645 C 990.28287,212.39662 1009.6116,204.05634 994.21793,188.47728 C 982.49339,176.61152 982.02672,170.29194 990.02114,160.74312 z " + style="fill:url(#radialGradient14971);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path11049" + d="M 978.10981,181.76990 C 971.13476,188.98333 970.93058,192.92164 970.84818,198.36299 C 970.76081,204.12476 973.73349,207.86929 980.30552,207.67493 C 985.79719,207.51253 995.92863,203.14083 987.85984,194.97483 C 981.71414,188.75520 976.14007,188.99572 978.10981,181.76990 z " + style="fill:url(#radialGradient14973);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12575" + d="M 1060.5820,241.80716 L 1060.4424,351.70923 C 1060.4424,355.57043 1068.6897,358.70442 1078.8508,358.70442 C 1089.0118,358.70442 1097.2641,355.57042 1097.2591,351.70923 L 1097.1195,241.80716 L 1060.5820,241.80716 z " + style="fill:url(#linearGradient14975);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,736.0992,166.5224)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12577" + style="fill:url(#radialGradient14977);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12579" + d="M 1088.7988,186.11719 C 1071.2557,190.55852 1060.6983,209.93432 1060.5410,220.31527 C 1060.3744,231.30752 1066.0456,238.45128 1078.5838,238.08052 C 1089.0606,237.77069 1108.3893,229.43041 1092.9956,213.85135 C 1081.2711,201.98559 1080.8044,195.66601 1088.7988,186.11719 z " + style="fill:url(#radialGradient14979);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12581" + d="M 1076.8875,207.14397 C 1069.9124,214.35740 1069.7083,218.29571 1069.6259,223.73706 C 1069.5385,229.49883 1072.5112,233.24336 1079.0832,233.04900 C 1084.5749,232.88660 1094.7063,228.51490 1086.6375,220.34890 C 1080.4918,214.12927 1074.9178,214.36979 1076.8875,207.14397 z " + style="fill:url(#radialGradient14981);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12591" + d="M 1176.5776,239.99472 L 1176.4380,349.89679 C 1176.4380,353.75799 1184.6853,356.89198 1194.8464,356.89198 C 1205.0074,356.89198 1213.2597,353.75798 1213.2547,349.89679 L 1213.1151,239.99472 L 1176.5776,239.99472 z " + style="fill:url(#linearGradient14983);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,852.0948,164.7100)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12593" + style="fill:url(#radialGradient14985);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12595" + d="M 1204.7944,184.30475 C 1187.2513,188.74608 1176.6939,208.12188 1176.5366,218.50283 C 1176.3700,229.49508 1182.0412,236.63884 1194.5794,236.26808 C 1205.0562,235.95825 1224.3849,227.61797 1208.9912,212.03891 C 1197.2667,200.17315 1196.8000,193.85357 1204.7944,184.30475 z " + style="fill:url(#radialGradient14987);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12597" + d="M 1192.8831,205.33153 C 1185.9080,212.54496 1185.7039,216.48327 1185.6215,221.92462 C 1185.5341,227.68639 1188.5068,231.43092 1195.0788,231.23656 C 1200.5705,231.07416 1210.7019,226.70246 1202.6331,218.53646 C 1196.4874,212.31683 1190.9134,212.55735 1192.8831,205.33153 z " + style="fill:url(#radialGradient14989);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12607" + d="M 1261.7620,210.99579 L 1261.6224,320.89786 C 1261.6224,324.75906 1269.8697,327.89305 1280.0308,327.89305 C 1290.1918,327.89305 1298.4441,324.75905 1298.4391,320.89786 L 1298.2995,210.99579 L 1261.7620,210.99579 z " + style="fill:url(#linearGradient14991);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,937.2792,135.7111)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12609" + style="fill:url(#radialGradient14993);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12611" + d="M 1289.9788,155.30582 C 1272.4357,159.74715 1261.8783,179.12295 1261.7210,189.50390 C 1261.5544,200.49615 1267.2256,207.63991 1279.7638,207.26915 C 1290.2406,206.95932 1309.5693,198.61904 1294.1756,183.03998 C 1282.4511,171.17422 1281.9844,164.85464 1289.9788,155.30582 z " + style="fill:url(#radialGradient14995);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12613" + d="M 1278.0675,176.33260 C 1271.0924,183.54603 1270.8883,187.48434 1270.8059,192.92569 C 1270.7185,198.68746 1273.6912,202.43199 1280.2632,202.23763 C 1285.7549,202.07523 1295.8863,197.70353 1287.8175,189.53753 C 1281.6718,183.31790 1276.0978,183.55842 1278.0675,176.33260 z " + style="fill:url(#radialGradient14997);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12623" + d="M 1118.5798,190.15281 L 1118.4402,300.05488 C 1118.4402,303.91608 1126.6875,307.05007 1136.8486,307.05007 C 1147.0096,307.05007 1155.2619,303.91607 1155.2569,300.05488 L 1155.1173,190.15281 L 1118.5798,190.15281 z " + style="fill:url(#linearGradient14999);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,794.0970,114.8681)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12625" + style="fill:url(#radialGradient15001);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12627" + d="M 1146.7966,134.46284 C 1129.2535,138.90417 1118.6961,158.27997 1118.5388,168.66092 C 1118.3722,179.65317 1124.0434,186.79693 1136.5816,186.42617 C 1147.0584,186.11634 1166.3871,177.77606 1150.9934,162.19700 C 1139.2689,150.33124 1138.8022,144.01166 1146.7966,134.46284 z " + style="fill:url(#radialGradient15003);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12629" + d="M 1134.8853,155.48962 C 1127.9102,162.70305 1127.7061,166.64136 1127.6237,172.08271 C 1127.5363,177.84448 1130.5090,181.58901 1137.0810,181.39465 C 1142.5727,181.23225 1152.7041,176.86055 1144.6353,168.69455 C 1138.4896,162.47492 1132.9156,162.71544 1134.8853,155.48962 z " + style="fill:url(#radialGradient15005);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec-high.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec-high.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec-high.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec-high.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,364 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="residence-lotec-high.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-lotec-high.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient11091"> + <stop + style="stop-color:#000000;stop-opacity:0.69803923;" + offset="0.0000000" + id="stop11092" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop11093" /> + </linearGradient> + <linearGradient + id="linearGradient9845"> + <stop + style="stop-color:#ac8e45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9846" /> + <stop + style="stop-color:#836524;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9847" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient9216"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop9217" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop9218" /> + </linearGradient> + <linearGradient + id="linearGradient2963"> + <stop + style="stop-color:#edb641;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2964" /> + <stop + style="stop-color:#e5c989;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2965" /> + </linearGradient> + <linearGradient + id="linearGradient1695"> + <stop + style="stop-color:#865b00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1696" /> + <stop + style="stop-color:#bc8000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1697" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient1698" + gradientTransform="matrix(0.962175,0.000000,0.000000,1.039312,-73.39707,-2.842171e-14)" + x1="203.50679" + y1="84.752876" + x2="17.152544" + y2="139.59099" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient2962" + gradientTransform="matrix(1.111291,0.000000,0.000000,0.899854,-73.39707,-2.842171e-14)" + x1="322.83130" + y1="192.63708" + x2="98.960945" + y2="126.50543" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient3590" + gradientTransform="matrix(1.173729,0.000000,0.000000,0.851985,-73.39707,-2.842171e-14)" + x1="537.43793" + y1="198.41588" + x2="162.13322" + y2="-11.305871" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient7330" + gradientTransform="matrix(0.615949,-2.612873e-2,6.874610e-2,1.620596,-75.30414,4.849732)" + x1="299.32492" + y1="188.22902" + x2="335.74472" + y2="210.32375" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient7334" + gradientTransform="matrix(1.192994,-5.060713e-2,3.549395e-2,0.836722,-75.30414,4.849732)" + x1="177.59518" + y1="364.97949" + x2="182.64265" + y2="372.14526" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9216" + id="linearGradient9219" + gradientTransform="matrix(0.965315,0.000000,0.000000,1.035931,-73.39707,-2.842171e-14)" + x1="135.70879" + y1="80.432396" + x2="200.35765" + y2="148.13222" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9845" + id="linearGradient9844" + gradientTransform="scale(0.565611,1.768000)" + x1="453.74203" + y1="162.55783" + x2="1119.0172" + y2="305.42209" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient11091" + id="radialGradient11095" + gradientTransform="scale(1.527813,0.654530)" + cx="318.61414" + cy="946.07550" + fx="318.61414" + fy="946.07550" + r="126.55398" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient11727" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.631195,0.000000,0.000000,1.584297,-73.39707,-2.842171e-14)" + x1="920.52185" + y1="341.23450" + x2="-431.40985" + y2="49.340061" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient14213" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.631195,0.000000,0.000000,1.584297,308.3520,68.84181)" + x1="920.52185" + y1="341.23450" + x2="-431.40985" + y2="49.340061" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient14215" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.173729,0.000000,0.000000,0.851985,108.7541,118.5832)" + x1="537.43793" + y1="198.41588" + x2="162.13322" + y2="-11.305871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9845" + id="linearGradient14219" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.565611,0.000000,0.000000,1.768000,248.8715,2.100333)" + x1="453.74203" + y1="162.55783" + x2="1119.0172" + y2="305.42209" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient14223" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.962175,0.000000,0.000000,1.039312,429.4499,87.07026)" + x1="203.50679" + y1="84.752876" + x2="17.152544" + y2="139.59099" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9216" + id="linearGradient14225" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.965315,1.035931)" + x1="408.20490" + y1="228.41690" + x2="406.90549" + y2="274.55170" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient11095);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 295.27557,701.06858 L 696.00671,687.57026 L 680.82111,528.12146 L 293.58828,566.92910 L 295.27557,701.06858 z " + id="path10469" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11727);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 287.68278,699.38129 L 35.433069,603.20581 L 35.433069,180.78702 L 145.78819,60.572826 L 286.73678,241.13759 L 287.68278,699.38129 z " + id="path1061" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient9844);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 287.68277,701.06858 L 631.05336,620.09626 L 631.05336,167.05917 L 286.83913,240.43868 L 287.68277,701.06858 z " + id="path1065" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3590);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 136.24344,37.307500 L 293.57072,272.20768 L 665.37085,192.41090 L 489.73048,8.6235863 L 136.24344,37.307500 z " + id="path1067" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6b3f03;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 46.400449,606.58039 L 43.869509,189.82001 L 273.34082,247.18784 L 275.02811,693.47578 L 46.400449,606.58039 z " + id="path1068" /> + <path + style="fill:url(#linearGradient2962);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 295.45596,270.18195 L 290.68359,274.35778 L 135.39429,47.687584 L 10.716023,193.24499 L 7.1367388,188.47262 L 135.99083,36.949743 L 295.45596,270.18195 z " + id="path1071" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient1698);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 11.909110,193.24499 L 34.577889,184.89334 L 144.93903,61.408159 L 135.39429,47.687584 L 11.909110,193.24499 z " + id="path1072" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 74.240709,198.25646 C 73.115859,339.14509 82.114729,477.50278 80.989869,617.54777" + id="path7968" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 109.67378,207.11473 C 108.54893,348.00336 102.78402,485.51740 101.65916,625.56239" + id="path8590" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 153.96512,218.92575 C 152.84027,359.81438 154.24634,504.49940 153.12148,644.54439" + id="path8591" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 180.11810,225.25308 C 178.99325,366.14171 206.55230,524.32505 205.42744,664.37004" + id="path8592" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 230.31494,237.90774 C 220.75364,372.04722 239.87625,537.40153 238.75139,677.44652" + id="path8593" + sodipodi:nodetypes="cc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 140.69556,354.41323 C 141.69458,344.43061 124.36263,332.15697 121.46448,317.26907 C 118.56632,302.38117 136.43685,278.73816 145.67303,307.59071 C 158.15255,281.92589 173.50413,311.07417 167.72674,324.07691 C 161.94935,337.07965 141.69458,344.43061 140.69556,354.41323 z " + id="path6701" + sodipodi:nodetypes="cscsc" /> + <path + style="fill:url(#linearGradient7330);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 144.85592,346.92248 C 141.37041,338.54817 131.30074,332.08656 127.74155,317.45061 C 125.94957,310.08169 129.59565,299.37861 137.10886,294.67004 C 128.11080,291.83613 119.27196,303.97152 121.80090,319.13340 C 123.32438,328.26718 142.47273,347.25655 140.66988,354.22806 C 141.20862,351.70625 142.88713,349.12541 144.85592,346.92248 z " + id="path6702" + sodipodi:nodetypes="cscscc" /> + <path + style="fill:url(#linearGradient7334);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 145.70978,307.70863 L 151.85348,307.25389 C 156.93236,298.72496 158.27724,299.23683 159.75660,298.21028 C 153.12818,295.29612 148.67308,301.82590 145.70978,307.70863 z " + id="path6703" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient9219);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 35.011239,185.17996 L 69.178849,192.35095 L 162.82339,90.269961 L 144.68503,62.851515 L 35.011239,185.17996 z " + id="path8594" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient14213);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 535.29244,704.10613 L 417.18220,672.04763 L 416.33856,235.28688 L 536.87737,249.23700 L 535.29244,704.10613 z " + id="path14212" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient14219);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 536.55426,703.16891 L 678.29382,666.06610 L 678.29382,213.02901 L 608.68951,119.79751 L 535.71062,242.53901 L 536.55426,703.16891 z " + id="path14218" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient14215);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 410.35189,78.275436 L 414.97952,247.37135 L 543.81003,270.49919 L 627.16852,104.42841 L 410.35189,78.275436 z " + id="path14214" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient14223);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 678.42313,213.66733 L 706.15378,217.97035 L 626.69491,103.76526 L 615.46288,128.85233 L 678.42313,213.66733 z " + id="path14222" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient14225);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 414.44035,246.55509 L 294.32647,272.18079 L 418.23676,273.97355 L 543.93979,290.00280 L 535.08152,269.33350 L 414.44035,246.55509 z " + id="path14224" + sodipodi:nodetypes="cccccc" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec-lo.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec-lo.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec-lo.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec-lo.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,318 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-lotec-lo.png" + sodipodi:docname="residence-lotec-lo.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient11091"> + <stop + id="stop11092" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.54509807;" /> + <stop + id="stop11093" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient9845"> + <stop + id="stop9846" + offset="0.0000000" + style="stop-color:#ac8e45;stop-opacity:1.0000000;" /> + <stop + id="stop9847" + offset="1.0000000" + style="stop-color:#836524;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9216" + inkscape:collect="always"> + <stop + id="stop9217" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop9218" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2963"> + <stop + id="stop2964" + offset="0.0000000" + style="stop-color:#edb641;stop-opacity:1.0000000;" /> + <stop + id="stop2965" + offset="1.0000000" + style="stop-color:#e5c989;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient1695"> + <stop + id="stop1696" + offset="0.0000000" + style="stop-color:#865b00;stop-opacity:1.0000000;" /> + <stop + id="stop1697" + offset="1.0000000" + style="stop-color:#bc8000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="139.59099" + x2="17.152544" + y1="84.752876" + x1="203.50679" + gradientTransform="scale(0.962175,1.039312)" + id="linearGradient1698" + xlink:href="#linearGradient1695" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="126.50543" + x2="98.960945" + y1="192.63708" + x1="322.83130" + gradientTransform="scale(1.111291,0.899854)" + id="linearGradient2962" + xlink:href="#linearGradient2963" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="-11.305871" + x2="162.13322" + y1="198.41588" + x1="537.43793" + gradientTransform="scale(1.173729,0.851985)" + id="linearGradient3590" + xlink:href="#linearGradient2963" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="49.340061" + x2="-431.40985" + y1="341.23450" + x1="920.52185" + gradientTransform="scale(0.631195,1.584297)" + id="linearGradient6078" + xlink:href="#linearGradient2963" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="210.32375" + x2="335.74472" + y1="188.22902" + x1="299.32492" + gradientTransform="matrix(0.615949,-2.612873e-2,6.874610e-2,1.620596,-1.907064,4.849732)" + id="linearGradient7330" + xlink:href="#linearGradient1695" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="372.14526" + x2="182.64265" + y1="364.97949" + x1="177.59518" + gradientTransform="matrix(1.192994,-5.060713e-2,3.549395e-2,0.836722,-1.907064,4.849732)" + id="linearGradient7334" + xlink:href="#linearGradient1695" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="148.13222" + x2="200.35765" + y1="80.432396" + x1="135.70879" + gradientTransform="scale(0.965315,1.035931)" + id="linearGradient9219" + xlink:href="#linearGradient9216" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="247.18135" + x2="935.49939" + y1="247.18135" + x1="636.62134" + gradientTransform="scale(0.565611,1.768000)" + id="linearGradient9844" + xlink:href="#linearGradient9845" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="126.55398" + fy="946.07550" + fx="318.61414" + cy="946.07550" + cx="318.61414" + gradientTransform="scale(1.527813,0.654530)" + id="radialGradient11095" + xlink:href="#linearGradient11091" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="966" + inkscape:window-width="1270" + inkscape:guide-bbox="true" + showguides="true" + inkscape:current-layer="layer1" + inkscape:cy="354.33072" + inkscape:cx="354.33072" + inkscape:zoom="1.1034889" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + <dc:creator + id="creator1330"> + <cc:Agent + id="Agent1332"> + <dc:title + id="title1334">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <cc:license + rdf:resource="http://web.resource.org/cc/PublicDomain" + id="license1336" /> + <dc:description + id="description1346">A house I drew for lincity-ng</dc:description> + <dc:date + id="date1348">2005</dc:date> + <dc:title + id="title1350">Lowtec House</dc:title> + </cc:Work> + <cc:License + id="License1338" + rdf:about="http://web.resource.org/cc/PublicDomain"> + <cc:permits + id="permits1340" + rdf:resource="http://web.resource.org/cc/Reproduction" /> + <cc:permits + id="permits1342" + rdf:resource="http://web.resource.org/cc/Distribution" /> + <cc:permits + id="permits1344" + rdf:resource="http://web.resource.org/cc/DerivativeWorks" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:nodetypes="ccccc" + id="path10469" + d="M 362.76713,701.91222 L 703.59951,641.16982 L 573.67826,536.55790 L 293.58828,566.92910 L 362.76713,701.91222 z " + style="fill:url(#radialGradient11095);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" /> + <path + sodipodi:nodetypes="cccccc" + id="path1061" + d="M 361.07985,699.38129 L 108.83014,603.20581 L 108.83014,180.78702 L 219.18526,60.572826 L 360.13385,241.13759 L 361.07985,699.38129 z " + style="fill:url(#linearGradient6078);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" /> + <path + sodipodi:nodetypes="ccccc" + id="path1065" + d="M 361.07984,701.06858 L 528.97237,626.00177 L 528.97237,172.96468 L 360.23620,240.43868 L 361.07984,701.06858 z " + style="fill:url(#linearGradient9844);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" /> + <path + sodipodi:nodetypes="ccccc" + id="path1067" + d="M 209.64051,37.307500 L 361.90592,260.39666 L 559.07164,179.75624 L 388.49314,7.7799418 L 209.64051,37.307500 z " + style="fill:url(#linearGradient3590);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" /> + <path + id="path1068" + d="M 119.79752,606.58039 L 117.26658,189.82001 L 346.73789,247.18784 L 348.42518,693.47578 L 119.79752,606.58039 z " + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6b3f03;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" /> + <path + sodipodi:nodetypes="ccccccc" + id="path1071" + d="M 362.10387,260.05822 L 357.33150,264.23405 L 208.79136,47.687584 L 84.113094,193.24499 L 80.533810,188.47262 L 209.38790,36.949743 L 362.10387,260.05822 z " + style="fill:url(#linearGradient2962);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" /> + <path + sodipodi:nodetypes="ccccc" + id="path1072" + d="M 85.306181,193.24499 L 107.97496,184.89334 L 218.33610,61.408159 L 208.79136,47.687584 L 85.306181,193.24499 z " + style="fill:url(#linearGradient1698);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" /> + <path + sodipodi:nodetypes="cc" + id="path7968" + d="M 147.63778,198.25646 C 146.51293,339.14509 155.51180,477.50278 154.38694,617.54777" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;" /> + <path + sodipodi:nodetypes="cc" + id="path8590" + d="M 183.07085,207.11473 C 181.94600,348.00336 176.18109,485.51740 175.05623,625.56239" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path8591" + d="M 227.36219,218.92575 C 226.23734,359.81438 227.64341,504.49940 226.51855,644.54439" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path8592" + d="M 253.51517,225.25308 C 252.39032,366.14171 279.94937,524.32505 278.82451,664.37004" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path8593" + d="M 303.71201,237.90774 C 294.15071,372.04722 313.27332,537.40153 312.14846,677.44652" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cscsc" + id="path6701" + d="M 214.09263,354.41323 C 215.09165,344.43061 197.75970,332.15697 194.86155,317.26907 C 191.96339,302.38117 209.83392,278.73816 219.07010,307.59071 C 231.54962,281.92589 246.90120,311.07417 241.12381,324.07691 C 235.34642,337.07965 215.09165,344.43061 214.09263,354.41323 z " + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cscscc" + id="path6702" + d="M 218.25299,346.92248 C 214.76748,338.54817 204.69781,332.08656 201.13862,317.45061 C 199.34664,310.08169 202.99272,299.37861 210.50593,294.67004 C 201.50787,291.83613 192.66903,303.97152 195.19797,319.13340 C 196.72145,328.26718 215.86980,347.25655 214.06695,354.22806 C 214.60569,351.70625 216.28420,349.12541 218.25299,346.92248 z " + style="fill:url(#linearGradient7330);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path6703" + d="M 219.10685,307.70863 L 225.25055,307.25389 C 230.32943,298.72496 231.67431,299.23683 233.15367,298.21028 C 226.52525,295.29612 222.07015,301.82590 219.10685,307.70863 z " + style="fill:url(#linearGradient7334);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path8594" + d="M 108.40831,185.17996 L 142.57592,192.35095 L 236.22046,90.269961 L 218.08210,62.851515 L 108.40831,185.17996 z " + style="fill:url(#linearGradient9219);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec-med.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec-med.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec-med.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec-med.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,289 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="residence-lotec-med.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-lotec-med.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient11091"> + <stop + style="stop-color:#000000;stop-opacity:0.69803923;" + offset="0.0000000" + id="stop11092" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop11093" /> + </linearGradient> + <linearGradient + id="linearGradient9845"> + <stop + style="stop-color:#ac8e45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9846" /> + <stop + style="stop-color:#836524;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9847" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient9216"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop9217" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop9218" /> + </linearGradient> + <linearGradient + id="linearGradient2963"> + <stop + style="stop-color:#edb641;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2964" /> + <stop + style="stop-color:#e5c989;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2965" /> + </linearGradient> + <linearGradient + id="linearGradient1695"> + <stop + style="stop-color:#865b00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1696" /> + <stop + style="stop-color:#bc8000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1697" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient1698" + gradientTransform="matrix(0.962175,0.000000,0.000000,1.039312,-73.39707,-2.842171e-14)" + x1="203.50679" + y1="84.752876" + x2="17.152544" + y2="139.59099" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient2962" + gradientTransform="matrix(1.111291,0.000000,0.000000,0.899854,-73.39707,-2.842171e-14)" + x1="322.83130" + y1="192.63708" + x2="98.960945" + y2="126.50543" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient3590" + gradientTransform="matrix(1.173729,0.000000,0.000000,0.851985,-73.39707,-2.842171e-14)" + x1="537.43793" + y1="198.41588" + x2="162.13322" + y2="-11.305871" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient7330" + gradientTransform="matrix(0.615949,-2.612873e-2,6.874610e-2,1.620596,-75.30414,4.849732)" + x1="299.32492" + y1="188.22902" + x2="335.74472" + y2="210.32375" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient7334" + gradientTransform="matrix(1.192994,-5.060713e-2,3.549395e-2,0.836722,-75.30414,4.849732)" + x1="177.59518" + y1="364.97949" + x2="182.64265" + y2="372.14526" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9216" + id="linearGradient9219" + gradientTransform="matrix(0.965315,0.000000,0.000000,1.035931,-73.39707,-2.842171e-14)" + x1="135.70879" + y1="80.432396" + x2="200.35765" + y2="148.13222" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9845" + id="linearGradient9844" + gradientTransform="scale(0.565611,1.768000)" + x1="453.74203" + y1="162.55783" + x2="1119.0172" + y2="305.42209" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient11091" + id="radialGradient11095" + gradientTransform="scale(1.527813,0.654530)" + cx="318.61414" + cy="946.07550" + fx="318.61414" + fy="946.07550" + r="126.55398" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient11727" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.631195,0.000000,0.000000,1.584297,-73.39707,-2.842171e-14)" + x1="920.52185" + y1="341.23450" + x2="-431.40985" + y2="49.340061" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4816668" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient11095);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 295.27557,701.06858 L 696.00671,687.57026 L 680.82111,528.12146 L 293.58828,566.92910 L 295.27557,701.06858 z " + id="path10469" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11727);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 287.68278,699.38129 L 35.433069,603.20581 L 35.433069,180.78702 L 145.78819,60.572826 L 286.73678,241.13759 L 287.68278,699.38129 z " + id="path1061" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient9844);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 287.68277,701.06858 L 631.05336,620.09626 L 631.05336,167.05917 L 286.83913,240.43868 L 287.68277,701.06858 z " + id="path1065" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3590);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 136.24344,37.307500 L 293.57072,272.20768 L 665.37085,192.41090 L 489.73048,8.6235863 L 136.24344,37.307500 z " + id="path1067" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6b3f03;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 46.400449,606.58039 L 43.869509,189.82001 L 273.34082,247.18784 L 275.02811,693.47578 L 46.400449,606.58039 z " + id="path1068" /> + <path + style="fill:url(#linearGradient2962);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 295.45596,270.18195 L 290.68359,274.35778 L 135.39429,47.687584 L 10.716023,193.24499 L 7.1367388,188.47262 L 135.99083,36.949743 L 295.45596,270.18195 z " + id="path1071" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient1698);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 11.909110,193.24499 L 34.577889,184.89334 L 144.93903,61.408159 L 135.39429,47.687584 L 11.909110,193.24499 z " + id="path1072" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 74.240709,198.25646 C 73.115859,339.14509 82.114729,477.50278 80.989869,617.54777" + id="path7968" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 109.67378,207.11473 C 108.54893,348.00336 102.78402,485.51740 101.65916,625.56239" + id="path8590" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 153.96512,218.92575 C 152.84027,359.81438 154.24634,504.49940 153.12148,644.54439" + id="path8591" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 180.11810,225.25308 C 178.99325,366.14171 206.55230,524.32505 205.42744,664.37004" + id="path8592" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 230.31494,237.90774 C 220.75364,372.04722 239.87625,537.40153 238.75139,677.44652" + id="path8593" + sodipodi:nodetypes="cc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 140.69556,354.41323 C 141.69458,344.43061 124.36263,332.15697 121.46448,317.26907 C 118.56632,302.38117 136.43685,278.73816 145.67303,307.59071 C 158.15255,281.92589 173.50413,311.07417 167.72674,324.07691 C 161.94935,337.07965 141.69458,344.43061 140.69556,354.41323 z " + id="path6701" + sodipodi:nodetypes="cscsc" /> + <path + style="fill:url(#linearGradient7330);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 144.85592,346.92248 C 141.37041,338.54817 131.30074,332.08656 127.74155,317.45061 C 125.94957,310.08169 129.59565,299.37861 137.10886,294.67004 C 128.11080,291.83613 119.27196,303.97152 121.80090,319.13340 C 123.32438,328.26718 142.47273,347.25655 140.66988,354.22806 C 141.20862,351.70625 142.88713,349.12541 144.85592,346.92248 z " + id="path6702" + sodipodi:nodetypes="cscscc" /> + <path + style="fill:url(#linearGradient7334);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 145.70978,307.70863 L 151.85348,307.25389 C 156.93236,298.72496 158.27724,299.23683 159.75660,298.21028 C 153.12818,295.29612 148.67308,301.82590 145.70978,307.70863 z " + id="path6703" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient9219);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 35.011239,185.17996 L 69.178849,192.35095 L 162.82339,90.269961 L 144.68503,62.851515 L 35.011239,185.17996 z " + id="path8594" + sodipodi:nodetypes="ccccc" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence-lotec.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence-lotec.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,812 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/residence" + sodipodi:docname="residence-lotec.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/residence-lotec-lo.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,839.3323,131.3430)" + gradientUnits="userSpaceOnUse" + id="radialGradient15005" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,568.5383,90.93810)" + gradientUnits="userSpaceOnUse" + id="radialGradient15003" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient15001" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,147.7133,-28.99893)" + gradientUnits="userSpaceOnUse" + id="linearGradient14999" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,982.5145,152.1860)" + gradientUnits="userSpaceOnUse" + id="radialGradient14997" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,711.7205,111.7811)" + gradientUnits="userSpaceOnUse" + id="radialGradient14995" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14993" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,290.8955,-8.155949)" + gradientUnits="userSpaceOnUse" + id="linearGradient14991" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,897.3301,181.1849)" + gradientUnits="userSpaceOnUse" + id="radialGradient14989" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,626.5361,140.7800)" + gradientUnits="userSpaceOnUse" + id="radialGradient14987" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14985" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,205.7111,20.84298)" + gradientUnits="userSpaceOnUse" + id="linearGradient14983" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,781.3345,182.9973)" + gradientUnits="userSpaceOnUse" + id="radialGradient14981" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,510.5405,142.5924)" + gradientUnits="userSpaceOnUse" + id="radialGradient14979" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14977" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,89.71543,22.65542)" + gradientUnits="userSpaceOnUse" + id="linearGradient14975" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + id="linearGradient11811"> + <stop + id="stop11813" + offset="0.0000000" + style="stop-color:#f6e800;stop-opacity:1.0000000;" /> + <stop + id="stop11815" + offset="1.0000000" + style="stop-color:#ffb08a;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.220577,0.000000,0.000000,0.299183,682.5568,157.6233)" + gradientUnits="userSpaceOnUse" + id="radialGradient14973" + xlink:href="#linearGradient11811" + inkscape:collect="always" /> + <linearGradient + id="linearGradient10281"> + <stop + id="stop10283" + offset="0.0000000" + style="stop-color:#f6c900;stop-opacity:1.0000000;" /> + <stop + id="stop10285" + offset="1.0000000" + style="stop-color:#ff5200;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="69.559258" + fy="148.48820" + fx="1351.7710" + cy="148.48820" + cx="1351.7710" + gradientTransform="matrix(0.420814,0.000000,0.000000,0.570780,411.7628,117.2184)" + gradientUnits="userSpaceOnUse" + id="radialGradient14971" + xlink:href="#linearGradient10281" + inkscape:collect="always" /> + <radialGradient + r="36.740440" + fy="273.53058" + fx="556.32452" + cy="273.53058" + cx="556.32452" + gradientTransform="scale(1.512178,0.661298)" + gradientUnits="userSpaceOnUse" + id="radialGradient14969" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + id="linearGradient7963"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7965" /> + <stop + style="stop-color:#a30000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7967" /> + </linearGradient> + <linearGradient + y2="160.95503" + x2="1742.5743" + y1="158.16272" + x1="1669.6912" + gradientTransform="matrix(0.578611,0.000000,0.000000,1.728277,-9.062166,-2.718650)" + gradientUnits="userSpaceOnUse" + id="linearGradient14967" + xlink:href="#linearGradient7963" + inkscape:collect="always" /> + <linearGradient + id="linearGradient7189"> + <stop + id="stop7191" + offset="0.0000000" + style="stop-color:#96acff;stop-opacity:1.0000000;" /> + <stop + id="stop7193" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + y2="1047.9275" + x2="737.09790" + y1="717.84656" + x1="698.72278" + gradientTransform="scale(1.474428,0.678229)" + gradientUnits="userSpaceOnUse" + id="linearGradient14965" + xlink:href="#linearGradient7189" + inkscape:collect="always" /> + <linearGradient + id="linearGradient13397"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop13399" /> + <stop + style="stop-color:#dadada;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop13401" /> + </linearGradient> + <linearGradient + y2="489.24570" + x2="938.03162" + y1="471.12860" + x1="1021.3810" + gradientTransform="scale(1.250085,0.799945)" + gradientUnits="userSpaceOnUse" + id="linearGradient14963" + xlink:href="#linearGradient13397" + inkscape:collect="always" /> + <radialGradient + r="406.97388" + fy="979.61182" + fx="646.29340" + cy="979.61182" + cx="646.29340" + gradientTransform="scale(1.958350,0.510634)" + gradientUnits="userSpaceOnUse" + id="radialGradient14961" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + id="linearGradient16840"> + <stop + style="stop-color:#858585;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop16841" /> + <stop + style="stop-color:#e5e5e5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop16842" /> + </linearGradient> + <linearGradient + y2="147.03934" + x2="915.00543" + y1="434.15771" + x1="1198.6561" + gradientTransform="matrix(0.911968,0.000000,0.000000,1.096530,-529.3860,77.93463)" + gradientUnits="userSpaceOnUse" + id="linearGradient14959" + xlink:href="#linearGradient16840" + inkscape:collect="always" /> + <linearGradient + id="linearGradient11091"> + <stop + style="stop-color:#000000;stop-opacity:0.54509807;" + offset="0.0000000" + id="stop11092" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop11093" /> + </linearGradient> + <linearGradient + id="linearGradient9845"> + <stop + style="stop-color:#ac8e45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9846" /> + <stop + style="stop-color:#836524;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9847" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient9216"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop9217" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop9218" /> + </linearGradient> + <linearGradient + id="linearGradient2963"> + <stop + style="stop-color:#edb641;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2964" /> + <stop + style="stop-color:#e5c989;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2965" /> + </linearGradient> + <linearGradient + id="linearGradient1695"> + <stop + style="stop-color:#865b00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1696" /> + <stop + style="stop-color:#bc8000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1697" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient1698" + gradientTransform="scale(0.962175,1.039312)" + x1="203.50679" + y1="84.752876" + x2="17.152544" + y2="139.59099" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient2962" + gradientTransform="scale(1.111291,0.899854)" + x1="322.83130" + y1="192.63708" + x2="98.960945" + y2="126.50543" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient3590" + gradientTransform="scale(1.173729,0.851985)" + x1="537.43793" + y1="198.41588" + x2="162.13322" + y2="-11.305871" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2963" + id="linearGradient6078" + gradientTransform="scale(0.631195,1.584297)" + x1="920.52185" + y1="341.23450" + x2="-431.40985" + y2="49.340061" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient7330" + gradientTransform="matrix(0.615949,-2.612873e-2,6.874610e-2,1.620596,-1.907064,4.849732)" + x1="299.32492" + y1="188.22902" + x2="335.74472" + y2="210.32375" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1695" + id="linearGradient7334" + gradientTransform="matrix(1.192994,-5.060713e-2,3.549395e-2,0.836722,-1.907064,4.849732)" + x1="177.59518" + y1="364.97949" + x2="182.64265" + y2="372.14526" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9216" + id="linearGradient9219" + gradientTransform="scale(0.965315,1.035931)" + x1="135.70879" + y1="80.432396" + x2="200.35765" + y2="148.13222" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9845" + id="linearGradient9844" + gradientTransform="scale(0.565611,1.768000)" + x1="636.62134" + y1="247.18135" + x2="935.49939" + y2="247.18135" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient11091" + id="radialGradient11095" + gradientTransform="scale(1.527813,0.654530)" + cx="318.61414" + cy="946.07550" + fx="318.61414" + fy="946.07550" + r="126.55398" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.62088887" + inkscape:cx="354.33072" + inkscape:cy="354.33072" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="618" + inkscape:window-x="0" + inkscape:window-y="380" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:creator + id="creator1330"> + <cc:Agent + id="Agent1332"> + <dc:title + id="title1334">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <cc:license + id="license1336" + rdf:resource="http://web.resource.org/cc/PublicDomain" /> + <dc:description + id="description1346">A house I drew for lincity-ng</dc:description> + <dc:date + id="date1348">2005</dc:date> + <dc:title + id="title1350">Lowtec House</dc:title> + </cc:Work> + <cc:License + rdf:about="http://web.resource.org/cc/PublicDomain" + id="License1338"> + <cc:permits + rdf:resource="http://web.resource.org/cc/Reproduction" + id="permits1340" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/Distribution" + id="permits1342" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/DerivativeWorks" + id="permits1344" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient11095);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 362.76713,701.91222 L 703.59951,641.16982 L 573.67826,536.55790 L 293.58828,566.92910 L 362.76713,701.91222 z " + id="path10469" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient6078);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 361.07985,699.38129 L 108.83014,603.20581 L 108.83014,180.78702 L 219.18526,60.572826 L 360.13385,241.13759 L 361.07985,699.38129 z " + id="path1061" + sodipodi:nodetypes="cccccc" /> + <path + style="fill:url(#linearGradient9844);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 361.07984,701.06858 L 528.97237,626.00177 L 528.97237,172.96468 L 360.23620,240.43868 L 361.07984,701.06858 z " + id="path1065" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3590);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 209.64051,37.307500 L 361.90592,260.39666 L 559.07164,179.75624 L 388.49314,7.7799418 L 209.64051,37.307500 z " + id="path1067" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6b3f03;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 119.79752,606.58039 L 117.26658,189.82001 L 346.73789,247.18784 L 348.42518,693.47578 L 119.79752,606.58039 z " + id="path1068" /> + <path + style="fill:url(#linearGradient2962);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 362.10387,260.05822 L 357.33150,264.23405 L 208.79136,47.687584 L 84.113094,193.24499 L 80.533810,188.47262 L 209.38790,36.949743 L 362.10387,260.05822 z " + id="path1071" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient1698);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-dasharray:none;" + d="M 85.306181,193.24499 L 107.97496,184.89334 L 218.33610,61.408159 L 208.79136,47.687584 L 85.306181,193.24499 z " + id="path1072" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000;" + d="M 147.63778,198.25646 C 146.51293,339.14509 155.51180,477.50278 154.38694,617.54777" + id="path7968" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 183.07085,207.11473 C 181.94600,348.00336 176.18109,485.51740 175.05623,625.56239" + id="path8590" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 227.36219,218.92575 C 226.23734,359.81438 227.64341,504.49940 226.51855,644.54439" + id="path8591" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 253.51517,225.25308 C 252.39032,366.14171 279.94937,524.32505 278.82451,664.37004" + id="path8592" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#6e4a00;stroke-width:1.0000000pt;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 303.71201,237.90774 C 294.15071,372.04722 313.27332,537.40153 312.14846,677.44652" + id="path8593" + sodipodi:nodetypes="cc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 214.09263,354.41323 C 215.09165,344.43061 197.75970,332.15697 194.86155,317.26907 C 191.96339,302.38117 209.83392,278.73816 219.07010,307.59071 C 231.54962,281.92589 246.90120,311.07417 241.12381,324.07691 C 235.34642,337.07965 215.09165,344.43061 214.09263,354.41323 z " + id="path6701" + sodipodi:nodetypes="cscsc" /> + <path + style="fill:url(#linearGradient7330);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 218.25299,346.92248 C 214.76748,338.54817 204.69781,332.08656 201.13862,317.45061 C 199.34664,310.08169 202.99272,299.37861 210.50593,294.67004 C 201.50787,291.83613 192.66903,303.97152 195.19797,319.13340 C 196.72145,328.26718 215.86980,347.25655 214.06695,354.22806 C 214.60569,351.70625 216.28420,349.12541 218.25299,346.92248 z " + id="path6702" + sodipodi:nodetypes="cscscc" /> + <path + style="fill:url(#linearGradient7334);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 219.10685,307.70863 L 225.25055,307.25389 C 230.32943,298.72496 231.67431,299.23683 233.15367,298.21028 C 226.52525,295.29612 222.07015,301.82590 219.10685,307.70863 z " + id="path6703" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient9219);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;" + d="M 108.40831,185.17996 L 142.57592,192.35095 L 236.22046,90.269961 L 218.08210,62.851515 L 108.40831,185.17996 z " + id="path8594" + sodipodi:nodetypes="ccccc" /> + <g + transform="matrix(0.957987,0.000000,0.000000,0.957987,74.39068,59.22306)" + id="g14929"> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path14161" + d="M 418.02425,209.96321 L 418.02425,351.90605 L 287.99300,351.90605 L 287.99300,455.21855 L 418.02425,455.21855 L 418.02425,676.31230 L 527.68050,676.31230 L 527.68050,455.21855 L 657.74300,455.21855 L 657.74300,351.90605 L 527.68050,351.90605 L 527.68050,209.96321 L 418.02425,209.96321 z " + style="fill:#000000;fill-opacity:0.83680558;stroke:none;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.66666669" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="rect1826" + d="M 402.64525,199.71054 L 402.64525,341.65338 L 272.61400,341.65338 L 272.61400,444.96588 L 402.64525,444.96588 L 402.64525,666.05963 L 512.30150,666.05963 L 512.30150,444.96588 L 642.36400,444.96588 L 642.36400,341.65338 L 512.30150,341.65338 L 512.30150,199.71054 L 402.64525,199.71054 z " + style="fill:url(#linearGradient14959);fill-opacity:1.0000000;stroke:#212121;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="matrix(0.746150,0.000000,0.000000,0.746150,-622.7241,-92.89503)" + id="g14933"> + <path + d="M 1406.4482 535.12097 A 278.20850 70.231789 0 1 1 850.03125,535.12097 A 278.20850 70.231789 0 1 1 1406.4482 535.12097 z" + sodipodi:ry="70.231789" + sodipodi:rx="278.20850" + sodipodi:cy="535.12097" + sodipodi:cx="1128.2397" + id="path4124" + style="fill:url(#radialGradient14961);fill-opacity:1.0000000;stroke:#212121;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + id="rect4130" + d="M 1128.2500,280.96875 C 1017.2899,280.96875 927.12165,303.54117 925.71875,331.46875 L 924.87500,331.46875 L 895.87500,537.59375 C 952.91781,587.73773 1299.9575,594.38333 1363.3438,538.50000 L 1331.6250,329.65625 L 1330.5938,329.65625 C 1325.4770,302.57180 1236.7991,280.96874 1128.2500,280.96875 z " + style="fill:url(#linearGradient14963);fill-opacity:1.0000000;stroke:#212121;stroke-width:6.2500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssscsssccc" + id="path4128" + d="M 1406.4482,535.12097 C 1411.2361,560.80017 1429.7795,689.93971 1418.0892,672.07649 C 1409.2920,658.63419 1368.0655,594.40608 1342.8876,600.76205 C 1317.7098,607.11803 1346.3843,675.06940 1313.1036,678.62488 C 1279.8229,682.18037 1212.1173,644.17884 1173.7246,644.17884 C 1135.3318,644.17884 1072.4140,734.70977 1039.1333,731.15428 C 1005.8527,727.59880 967.49692,635.66662 942.31905,629.31064 C 917.14119,622.95466 864.44426,631.37440 834.79936,674.36037 C 825.66937,687.59912 850.03125,544.81296 850.03125,535.12097 C 850.03125,496.35302 974.66866,464.88918 1128.2397,464.88918 C 1281.8108,464.88918 1406.4482,496.35302 1406.4482,535.12097 z " + style="fill:url(#linearGradient14965);fill-opacity:1.0000000;stroke:#9f9fd1;stroke-width:8.5825472;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + transform="matrix(0.757093,0.000000,0.000000,0.793574,274.0579,-96.15407)" /> + <path + transform="matrix(0.757093,0.000000,0.000000,0.793574,274.0573,-95.70142)" + d="M 1406.4482 535.12097 A 278.20850 70.231789 0 1 1 850.03125,535.12097 A 278.20850 70.231789 0 1 1 1406.4482 535.12097 z" + sodipodi:ry="70.231789" + sodipodi:rx="278.20850" + sodipodi:cy="535.12097" + sodipodi:cx="1128.2397" + id="path6429" + style="opacity:0.79687500;fill:#ffffff;fill-opacity:0.64583331;stroke:none;stroke-width:8.5825472;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="cccccc" + id="path7971" + d="M 961.80436,216.43309 L 961.66471,326.33516 C 961.66471,330.19636 969.91205,333.33035 980.07311,333.33035 C 990.23416,333.33035 998.48643,330.19635 998.48143,326.33516 L 998.34183,216.43309 L 961.80436,216.43309 z " + style="fill:url(#linearGradient14967);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,637.3215,141.1484)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path7969" + style="fill:url(#radialGradient14969);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path9521" + d="M 990.02114,160.74312 C 972.47800,165.18445 961.92061,184.56025 961.76327,194.94120 C 961.59675,205.93345 967.26794,213.07721 979.80616,212.70645 C 990.28287,212.39662 1009.6116,204.05634 994.21793,188.47728 C 982.49339,176.61152 982.02672,170.29194 990.02114,160.74312 z " + style="fill:url(#radialGradient14971);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path11049" + d="M 978.10981,181.76990 C 971.13476,188.98333 970.93058,192.92164 970.84818,198.36299 C 970.76081,204.12476 973.73349,207.86929 980.30552,207.67493 C 985.79719,207.51253 995.92863,203.14083 987.85984,194.97483 C 981.71414,188.75520 976.14007,188.99572 978.10981,181.76990 z " + style="fill:url(#radialGradient14973);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12575" + d="M 1060.5820,241.80716 L 1060.4424,351.70923 C 1060.4424,355.57043 1068.6897,358.70442 1078.8508,358.70442 C 1089.0118,358.70442 1097.2641,355.57042 1097.2591,351.70923 L 1097.1195,241.80716 L 1060.5820,241.80716 z " + style="fill:url(#linearGradient14975);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,736.0992,166.5224)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12577" + style="fill:url(#radialGradient14977);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12579" + d="M 1088.7988,186.11719 C 1071.2557,190.55852 1060.6983,209.93432 1060.5410,220.31527 C 1060.3744,231.30752 1066.0456,238.45128 1078.5838,238.08052 C 1089.0606,237.77069 1108.3893,229.43041 1092.9956,213.85135 C 1081.2711,201.98559 1080.8044,195.66601 1088.7988,186.11719 z " + style="fill:url(#radialGradient14979);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12581" + d="M 1076.8875,207.14397 C 1069.9124,214.35740 1069.7083,218.29571 1069.6259,223.73706 C 1069.5385,229.49883 1072.5112,233.24336 1079.0832,233.04900 C 1084.5749,232.88660 1094.7063,228.51490 1086.6375,220.34890 C 1080.4918,214.12927 1074.9178,214.36979 1076.8875,207.14397 z " + style="fill:url(#radialGradient14981);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12591" + d="M 1176.5776,239.99472 L 1176.4380,349.89679 C 1176.4380,353.75799 1184.6853,356.89198 1194.8464,356.89198 C 1205.0074,356.89198 1213.2597,353.75798 1213.2547,349.89679 L 1213.1151,239.99472 L 1176.5776,239.99472 z " + style="fill:url(#linearGradient14983);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,852.0948,164.7100)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12593" + style="fill:url(#radialGradient14985);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12595" + d="M 1204.7944,184.30475 C 1187.2513,188.74608 1176.6939,208.12188 1176.5366,218.50283 C 1176.3700,229.49508 1182.0412,236.63884 1194.5794,236.26808 C 1205.0562,235.95825 1224.3849,227.61797 1208.9912,212.03891 C 1197.2667,200.17315 1196.8000,193.85357 1204.7944,184.30475 z " + style="fill:url(#radialGradient14987);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12597" + d="M 1192.8831,205.33153 C 1185.9080,212.54496 1185.7039,216.48327 1185.6215,221.92462 C 1185.5341,227.68639 1188.5068,231.43092 1195.0788,231.23656 C 1200.5705,231.07416 1210.7019,226.70246 1202.6331,218.53646 C 1196.4874,212.31683 1190.9134,212.55735 1192.8831,205.33153 z " + style="fill:url(#radialGradient14989);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12607" + d="M 1261.7620,210.99579 L 1261.6224,320.89786 C 1261.6224,324.75906 1269.8697,327.89305 1280.0308,327.89305 C 1290.1918,327.89305 1298.4441,324.75905 1298.4391,320.89786 L 1298.2995,210.99579 L 1261.7620,210.99579 z " + style="fill:url(#linearGradient14991);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,937.2792,135.7111)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12609" + style="fill:url(#radialGradient14993);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12611" + d="M 1289.9788,155.30582 C 1272.4357,159.74715 1261.8783,179.12295 1261.7210,189.50390 C 1261.5544,200.49615 1267.2256,207.63991 1279.7638,207.26915 C 1290.2406,206.95932 1309.5693,198.61904 1294.1756,183.03998 C 1282.4511,171.17422 1281.9844,164.85464 1289.9788,155.30582 z " + style="fill:url(#radialGradient14995);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12613" + d="M 1278.0675,176.33260 C 1271.0924,183.54603 1270.8883,187.48434 1270.8059,192.92569 C 1270.7185,198.68746 1273.6912,202.43199 1280.2632,202.23763 C 1285.7549,202.07523 1295.8863,197.70353 1287.8175,189.53753 C 1281.6718,183.31790 1276.0978,183.55842 1278.0675,176.33260 z " + style="fill:url(#radialGradient14997);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + <path + sodipodi:nodetypes="cccccc" + id="path12623" + d="M 1118.5798,190.15281 L 1118.4402,300.05488 C 1118.4402,303.91608 1126.6875,307.05007 1136.8486,307.05007 C 1147.0096,307.05007 1155.2619,303.91607 1155.2569,300.05488 L 1155.1173,190.15281 L 1118.5798,190.15281 z " + style="fill:url(#linearGradient14999);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.406254,0.000000,0.000000,0.406254,794.0970,114.8681)" + d="M 888.99852 183.05579 A 45.310833 17.218117 0 1 1 798.37685,183.05579 A 45.310833 17.218117 0 1 1 888.99852 183.05579 z" + sodipodi:ry="17.218117" + sodipodi:rx="45.310833" + sodipodi:cy="183.05579" + sodipodi:cx="843.68768" + id="path12625" + style="fill:url(#radialGradient15001);fill-opacity:1.0000000;stroke:#8f0000;stroke-width:9.2306786;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csssc" + id="path12627" + d="M 1146.7966,134.46284 C 1129.2535,138.90417 1118.6961,158.27997 1118.5388,168.66092 C 1118.3722,179.65317 1124.0434,186.79693 1136.5816,186.42617 C 1147.0584,186.11634 1166.3871,177.77606 1150.9934,162.19700 C 1139.2689,150.33124 1138.8022,144.01166 1146.7966,134.46284 z " + style="fill:url(#radialGradient15003);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8f1400;stroke-width:1.2252337;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssc" + id="path12629" + d="M 1134.8853,155.48962 C 1127.9102,162.70305 1127.7061,166.64136 1127.6237,172.08271 C 1127.5363,177.84448 1130.5090,181.58901 1137.0810,181.39465 C 1142.5727,181.23225 1152.7041,176.86055 1144.6353,168.69455 C 1138.4896,162.47492 1132.9156,162.71544 1134.8853,155.48962 z " + style="fill:url(#radialGradient15005);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffff00;stroke-width:1.8378506;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.48958334" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/residence/residence.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/residence/residence.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,673 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + y="0.0000000" + x="0.0000000" + version="1.0" + sodipodi:docname="residence.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg17322" + height="708.66138" + width="708.66138"> + <defs + id="defs3"> + <linearGradient + id="linearGradient18090"> + <stop + id="stop18091" + offset="0.0000000" + style="stop-color:#c69527;stop-opacity:1.0000000;" /> + <stop + id="stop18094" + offset="0.52910054" + style="stop-color:#e7c14d;stop-opacity:1.0000000;" /> + <stop + id="stop18092" + offset="1.0000000" + style="stop-color:#e7b828;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="467.85504" + x2="561.09821" + y1="460.62277" + x1="432.06381" + gradientTransform="matrix(0.806883,0.000000,0.000000,1.331086,292.7528,-98.88213)" + id="linearGradient18093" + xlink:href="#linearGradient18090" + inkscape:collect="always" /> + <linearGradient + id="linearGradient8025"> + <stop + id="stop8026" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop8027" + offset="1.0000000" + style="stop-color:#dafdff;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="85.661217" + fy="450.65369" + fx="375.57907" + cy="450.65369" + cx="375.57907" + gradientTransform="matrix(1.035159,0.000000,0.000000,0.931027,379.7177,-17.89691)" + gradientUnits="userSpaceOnUse" + id="radialGradient11183" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + id="linearGradient8801" + inkscape:collect="always"> + <stop + id="stop8803" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8805" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient8789" + inkscape:collect="always"> + <stop + id="stop8791" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8793" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient1786"> + <stop + id="stop1787" + offset="0.0000000" + style="stop-color:#d04848;stop-opacity:1.0000000;" /> + <stop + id="stop1788" + offset="1.0000000" + style="stop-color:#6f271b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4278"> + <stop + id="stop4279" + offset="0.0000000" + style="stop-color:#ffffd4;stop-opacity:1.0000000;" /> + <stop + id="stop4280" + offset="1.0000000" + style="stop-color:#e2ec88;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient7440"> + <stop + id="stop7441" + offset="0.0000000" + style="stop-color:#865226;stop-opacity:1.0000000;" /> + <stop + id="stop7442" + offset="1.0000000" + style="stop-color:#321e0e;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient6189"> + <stop + id="stop6190" + offset="0.0000000" + style="stop-color:#b65000;stop-opacity:1.0000000;" /> + <stop + id="stop6191" + offset="1.0000000" + style="stop-color:#592700;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4934"> + <stop + id="stop4935" + offset="0.0000000" + style="stop-color:#908d60;stop-opacity:1.0000000;" /> + <stop + id="stop4936" + offset="1.0000000" + style="stop-color:#ceca8a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4304"> + <stop + id="stop4305" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop4306" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient22947"> + <stop + id="stop22948" + offset="0.0000000" + style="stop-color:#6b6b6b;stop-opacity:1.0000000;" /> + <stop + id="stop22949" + offset="1.0000000" + style="stop-color:#a9a9a9;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22940"> + <stop + id="stop22941" + offset="0.0000000" + style="stop-color:#36ff00;stop-opacity:1.0000000;" /> + <stop + id="stop22942" + offset="1.0000000" + style="stop-color:#2c4a24;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="103.00175" + fy="772.76581" + fx="426.77853" + cy="772.76581" + cx="426.77853" + gradientTransform="matrix(1.272188,0.000000,0.000000,1.005460,-0.711558,-276.5384)" + id="radialGradient22950" + xlink:href="#linearGradient22940" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="174.29085" + x2="237.81055" + y1="168.88635" + x1="265.51416" + gradientTransform="matrix(1.534180,0.000000,0.000000,0.833758,-62.58060,-115.3531)" + id="linearGradient3672" + xlink:href="#linearGradient22947" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="272.71722" + x2="156.36613" + y1="216.74124" + x1="251.93274" + gradientTransform="matrix(1.534180,0.000000,0.000000,0.833758,-62.58060,-115.3531)" + id="linearGradient3673" + xlink:href="#linearGradient22947" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="290.15970" + x2="346.03372" + y1="273.38141" + x1="259.48233" + gradientTransform="matrix(1.534180,0.000000,0.000000,0.833758,-62.58060,-115.3531)" + id="linearGradient3674" + xlink:href="#linearGradient22947" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="178.24232" + x2="307.28488" + y1="178.24232" + x1="260.21359" + gradientTransform="matrix(1.534178,0.000000,0.000000,0.833758,-62.58060,-115.3531)" + id="linearGradient3681" + xlink:href="#linearGradient22947" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="63.249962" + fy="116.14753" + fx="109.85623" + cy="116.14753" + cx="109.85623" + gradientTransform="scale(1.349722,0.740893)" + id="radialGradient4308" + xlink:href="#linearGradient4304" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="406.30823" + x2="718.04803" + y1="335.55185" + x1="-107.60789" + gradientTransform="matrix(0.879751,0.000000,0.000000,1.453971,-57.69620,-71.39349)" + id="linearGradient4937" + xlink:href="#linearGradient4278" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="61.948830" + fy="923.57678" + fx="335.66949" + cy="923.57678" + cx="335.66949" + gradientTransform="matrix(1.507073,0.000000,0.000000,0.848753,-63.19115,-123.6973)" + id="radialGradient6192" + xlink:href="#linearGradient6189" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="176.41298" + x2="1284.7423" + y1="176.41298" + x1="1362.6934" + gradientTransform="scale(0.344254,2.904832)" + id="linearGradient7439" + xlink:href="#linearGradient4278" /> + <linearGradient + y2="134.91566" + x2="1784.9694" + y1="134.75241" + x1="1819.2378" + gradientTransform="scale(0.344254,2.904832)" + gradientUnits="userSpaceOnUse" + id="linearGradient1131" + xlink:href="#linearGradient4278" /> + <linearGradient + y2="163.62775" + x2="1739.8854" + y1="170.96933" + x1="1745.4363" + gradientTransform="scale(0.344254,2.904832)" + gradientUnits="userSpaceOnUse" + id="linearGradient1133" + xlink:href="#linearGradient4278" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="383.32928" + x2="684.83850" + y1="453.44418" + x1="237.42885" + gradientTransform="matrix(0.970954,0.000000,0.000000,1.317399,-57.69620,-71.39349)" + id="linearGradient6485" + xlink:href="#linearGradient4278" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="407.31717" + x2="332.69424" + y1="211.83131" + x1="91.426468" + gradientTransform="matrix(1.305525,0.000000,0.000000,0.979785,-65.51125,-70.09099)" + id="linearGradient7257" + xlink:href="#linearGradient1786" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="390.50549" + x2="556.27716" + y1="136.33690" + x1="201.54979" + gradientTransform="matrix(1.374999,0.000000,0.000000,0.930279,-65.51125,-70.09099)" + id="linearGradient7265" + xlink:href="#linearGradient1786" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="101.15789" + fy="264.12527" + fx="292.36038" + cy="264.12527" + cx="292.36038" + gradientTransform="matrix(1.458514,0.000000,0.000000,0.877012,-57.69621,-71.39349)" + id="radialGradient8797" + xlink:href="#linearGradient8789" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="223.26904" + fy="799.12817" + fx="280.09967" + cy="799.12817" + cx="280.09967" + gradientTransform="scale(1.556769,0.642356)" + id="radialGradient8807" + xlink:href="#linearGradient8801" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="164.32393" + fy="376.91840" + fx="751.91266" + cy="376.91840" + cx="751.91266" + gradientTransform="scale(0.841721,1.188043)" + id="radialGradient9584" + xlink:href="#linearGradient8025" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="346.28021" + x2="757.73853" + y1="357.78659" + x1="601.31854" + gradientTransform="scale(0.585637,1.707542)" + id="linearGradient11114" + xlink:href="#linearGradient18090" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="5" + inkscape:window-x="1" + inkscape:window-height="966" + inkscape:window-width="1269" + inkscape:current-layer="layer1" + inkscape:cy="334.34097" + inkscape:cx="564.76184" + inkscape:zoom="1.2279853" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + transform="translate(-42.34578,34.20236)" + d="M 739.42255 519.73401 A 335.50891 138.43814 0 1 1 68.404724,519.73401 A 335.50891 138.43814 0 1 1 739.42255 519.73401 z" + sodipodi:ry="138.43814" + sodipodi:rx="335.50891" + sodipodi:cy="519.73401" + sodipodi:cx="403.91364" + id="path8799" + style="stroke-opacity:0.35915491;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-width:1.8200001;stroke:none;fill-opacity:1.0;fill:url(#radialGradient8807);opacity:0.60045147" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccccc" + id="path17332" + d="M 54.092093,564.96189 L 305.06765,683.54208 L 307.37017,327.80149 L 55.243349,262.17947 L 54.092093,564.96189 z " + style="fill:url(#linearGradient4937);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccccc" + id="path17337" + d="M 306.21890,683.54208 L 649.29557,486.67593 L 650.44683,214.97762 L 307.37016,325.49898 L 306.21890,683.54208 z " + style="fill:url(#linearGradient6485);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path17338" + d="M 363.62251,649.98147 L 363.62251,445.98190 L 445.37816,403.48198 L 440.63869,606.26729 L 363.62251,649.98147 z " + style="fill:url(#linearGradient11114);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccccc" + id="path17339" + d="M 494.73489,373.50287 L 493.09476,501.06176 L 622.81651,436.02031 L 623.68348,314.99792 L 494.73489,373.50287 z " + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:butt;stroke-width:4.2412057;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient9584)" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="csscccc" + id="path22314" + d="M 531.68798,569.32079 C 518.60864,583.32273 538.02776,609.10227 571.08880,608.55879 L 630.51567,607.58190 C 659.33812,607.10811 690.48525,586.79608 669.26524,545.71286 C 714.58162,522.37627 648.69649,468.75642 632.95787,491.00757 C 636.21413,454.91729 544.38742,468.15945 546.01555,504.52109 C 513.72425,498.82262 484.20077,566.87859 531.68798,569.32079 z " + style="fill:url(#radialGradient22950);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0c4800;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccccc" + id="path3033" + d="M 348.64408,358.79412 L 705.53592,210.28107 L 510.74205,11.572891 L 189.17706,61.116745 L 348.64408,358.79412 z " + style="fill:url(#linearGradient7265);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cccc" + id="path3036" + d="M 6.6517313,265.75165 L 347.83003,358.79412 L 189.33989,60.791122 L 6.6517313,265.75165 z " + style="fill:url(#linearGradient7257);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccccc" + id="path3043" + d="M 331.42761,205.84005 L 414.05537,178.16178 L 395.73887,42.212673 L 336.71904,45.875978 L 331.42761,205.84005 z " + style="fill:url(#linearGradient3674);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path3044" + d="M 283.80472,150.48353 L 331.02057,205.84005 L 336.71904,45.468946 L 309.44781,38.956400 L 283.80472,150.48353 z " + style="fill:url(#linearGradient3673);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path3045" + d="M 303.34230,16.162532 L 300.49307,38.956400 L 338.34717,51.574439 L 338.75420,18.197700 L 303.34230,16.162532 z " + style="fill:url(#linearGradient3672);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path3046" + d="M 338.75420,18.604731 L 406.72876,15.755500 L 405.50767,43.026747 L 338.75420,50.760376 L 338.75420,18.604731 z " + style="fill:url(#linearGradient3681);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cccccc" + id="path5563" + d="M 425.04526,600.86585 L 478.16311,622.43861 L 402.65844,670.26502 L 364.09203,648.59050 L 364.09203,635.66720 L 425.04526,600.86585 z " + style="fill:url(#radialGradient6192);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path6814" + d="M 424.46374,599.76693 L 424.87077,414.89792 L 444.75736,403.33253 L 440.01789,606.11784 L 424.46374,599.76693 z " + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:4.2412057;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient7439)" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path7445" + d="M 398.58140,658.95426 L 374.49639,643.88907" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path7446" + d="M 384.47418,637.76064 L 408.08656,652.13098" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8078" + d="M 397.67004,646.08623 L 388.21097,651.90887" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8079" + d="M 414.49742,648.59300 L 390.20888,633.93484" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8080" + d="M 411.04209,637.45486 L 403.92346,641.95465" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8081" + d="M 422.54995,643.84754 L 414.71901,648.55084" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8082" + d="M 398.63674,628.99082 L 391.11108,633.28709" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8083" + d="M 427.46478,640.85936 L 402.87098,626.30296" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8084" + d="M 434.60150,636.41917 L 427.48287,640.81720" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8085" + d="M 439.57403,632.92221 L 414.57319,619.68867" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8086" + d="M 446.50723,628.78730 L 439.59211,632.88005" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8087" + d="M 450.81832,625.64649 L 426.32627,613.63405" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8088" + d="M 458.76912,621.30805 L 451.85400,625.40080" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8089" + d="M 458.45702,621.01647 L 433.55794,609.81809" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cc" + id="path8090" + d="M 432.98019,609.91114 L 426.67561,613.29158" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#955900;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccc" + id="path8091" + d="M 414.72555,526.97017 L 423.93566,529.56051 L 407.81796,537.04373" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#452800;stroke-width:4.2412057;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path1130" + d="M 609.05333,431.13244 L 610.44303,321.74518 L 624.63114,313.40713 L 622.57232,436.26225 L 609.05333,431.13244 z " + style="stroke-dasharray:none;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.5000000;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient1131)" /> + <path + sodipodi:nodetypes="ccccc" + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + id="path1132" + d="M 493.25236,500.53162 L 493.25238,487.83770 L 609.19881,431.49865 L 622.77585,436.46578 L 493.25236,500.53162 z " + style="stroke-dasharray:none;fill:url(#linearGradient1133);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="cccccccc" + id="path7269" + d="M 54.319343,279.42690 L 54.319347,296.35949 L 305.70310,375.81240 L 324.01721,399.78346 L 649.10432,257.94116 L 650.86733,235.14168 L 349.98833,358.87981 L 54.319343,279.42690 z " + style="fill:#000000;fill-opacity:0.21367522;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="8.5907001" + inkscape:export-xdpi="8.5907001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/residence.png" + sodipodi:nodetypes="ccccccccccc" + id="path8029" + d="M 333.05574,205.18403 L 436.60501,200.29962 L 437.58190,205.83528 L 449.63009,208.76592 L 493.58968,168.06258 L 452.56072,128.66178 L 441.48941,130.28990 L 439.53565,134.52306 L 407.94987,123.77738 L 413.81114,178.48264 L 333.05574,205.18403 z " + style="opacity:0.60045147;fill:url(#radialGradient8797);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/port.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/port.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/port.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/port.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,702 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="port.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/port.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + inkscape:collect="always" + id="linearGradient13625"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop13626" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop13627" /> + </linearGradient> + <linearGradient + id="linearGradient12991"> + <stop + style="stop-color:#565656;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12992" /> + <stop + style="stop-color:#dcdcdc;stop-opacity:0.97647059;" + offset="1.0000000" + id="stop12993" /> + </linearGradient> + <linearGradient + id="linearGradient12357"> + <stop + style="stop-color:#31ae14;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12358" /> + <stop + style="stop-color:#296f19;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12359" /> + </linearGradient> + <linearGradient + id="linearGradient11724"> + <stop + style="stop-color:#4faedf;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11725" /> + <stop + style="stop-color:#4649df;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11727" /> + </linearGradient> + <linearGradient + id="linearGradient8591"> + <stop + style="stop-color:#a3dfdf;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8592" /> + <stop + style="stop-color:#caf5f5;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop8595" /> + <stop + style="stop-color:#a3dfdf;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8593" /> + </linearGradient> + <linearGradient + id="linearGradient5460"> + <stop + style="stop-color:#fff043;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5461" /> + <stop + style="stop-color:#ffa800;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop5462" /> + </linearGradient> + <linearGradient + id="linearGradient3583"> + <stop + style="stop-color:#434343;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3584" /> + <stop + style="stop-color:#a1a1a1;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3585" /> + </linearGradient> + <linearGradient + id="linearGradient2959"> + <stop + style="stop-color:#811e08;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2960" /> + <stop + style="stop-color:#3e0e03;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2961" /> + </linearGradient> + <linearGradient + id="linearGradient2329"> + <stop + style="stop-color:#b22a0b;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2330" /> + <stop + style="stop-color:#571405;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2331" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2329" + id="radialGradient2333" + gradientTransform="matrix(2.376402,0.000000,0.000000,0.747703,-275.9155,-275.6104)" + cx="191.19922" + cy="1087.9581" + fx="191.19922" + fy="1087.9581" + r="103.89201" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2959" + id="linearGradient2958" + gradientTransform="matrix(1.957470,0.000000,0.000000,0.907725,-275.9155,-275.6104)" + x1="269.01590" + y1="759.42297" + x2="246.98599" + y2="848.37708" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3583" + id="linearGradient3586" + gradientTransform="matrix(2.462305,0.000000,0.000000,0.721618,-275.9155,-275.6104)" + x1="191.67854" + y1="950.48529" + x2="365.21381" + y2="908.07123" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2329" + id="linearGradient4211" + gradientTransform="matrix(1.988340,0.000000,0.000000,0.893632,-275.9155,-275.6104)" + x1="336.65952" + y1="773.61774" + x2="448.32269" + y2="838.01434" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient6715" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.188446,0.000000,0.000000,1.495098,-592.0574,-220.4792)" + x1="608.83136" + y1="372.92838" + x2="550.87396" + y2="437.72144" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient6717" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.158859,0.000000,0.000000,1.533269,-592.2972,-220.4792)" + x1="635.94397" + y1="387.93542" + x2="697.44611" + y2="448.50577" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient6719" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.188446,0.000000,0.000000,1.495098,-276.3953,-207.2866)" + x1="552.66748" + y1="411.94632" + x2="435.26056" + y2="365.20248" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="radialGradient7342" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.120480,0.000000,0.000000,0.837944,-585.1012,-177.7832)" + cx="332.23758" + cy="628.93481" + fx="332.23758" + fy="628.93481" + r="141.50574" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="radialGradient7344" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.120480,0.000000,0.000000,0.837944,-619.7058,-370.7222)" + cx="332.23758" + cy="628.93481" + fx="332.23758" + fy="628.93481" + r="141.50574" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient7969" + gradientTransform="matrix(1.221943,0.000000,0.000000,1.454112,-275.9155,-207.7664)" + x1="272.12073" + y1="248.66020" + x2="459.37787" + y2="302.35233" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient8591" + id="linearGradient8594" + gradientTransform="matrix(1.360404,0.000000,0.000000,1.306115,-275.9155,-207.7664)" + x1="285.20981" + y1="295.56761" + x2="398.20189" + y2="295.56761" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="radialGradient9222" + cx="526.45990" + cy="129.74370" + fx="526.45990" + fy="129.74370" + r="73.908371" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient10468" + gradientTransform="matrix(1.327265,0.246046,-0.239926,1.294249,-231.0585,-287.1759)" + x1="422.33383" + y1="185.67039" + x2="518.14185" + y2="284.38168" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient11094" + gradientTransform="matrix(1.384892,0.256730,-0.229942,1.240394,-231.0585,-287.1759)" + x1="288.33716" + y1="187.99971" + x2="391.83450" + y2="263.32727" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="radialGradient11096" + gradientUnits="userSpaceOnUse" + cx="526.45990" + cy="129.74370" + fx="526.45990" + fy="129.74370" + r="73.908371" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11724" + id="linearGradient11728" + gradientTransform="matrix(2.063011,0.000000,0.000000,0.861287,-264.4020,-286.1644)" + x1="393.17249" + y1="1076.3071" + x2="258.76224" + y2="928.20972" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12357" + id="linearGradient12366" + gradientTransform="matrix(1.188446,0.000000,0.000000,1.495098,-275.9155,-338.0268)" + x1="712.24554" + y1="411.25665" + x2="472.46106" + y2="406.69379" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12357" + id="linearGradient12368" + gradientTransform="matrix(1.158859,0.000000,0.000000,1.533269,-275.9155,-338.0268)" + x1="562.14130" + y1="379.78171" + x2="746.64789" + y2="383.27615" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12357" + id="radialGradient12369" + gradientTransform="matrix(2.120480,0.000000,0.000000,0.837944,-275.9155,-338.0268)" + cx="353.29111" + cy="661.31262" + fx="353.29111" + fy="661.31262" + r="79.732491" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12991" + id="linearGradient12994" + gradientTransform="matrix(1.113490,0.000000,0.000000,1.595743,-275.9155,-338.0268)" + x1="779.67224" + y1="297.09595" + x2="568.07288" + y2="148.03174" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12991" + id="linearGradient12996" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.113490,0.000000,0.000000,1.595743,-239.9358,-267.2667)" + x1="779.67224" + y1="297.09595" + x2="568.07288" + y2="148.03174" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12991" + id="linearGradient12998" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.113490,0.000000,0.000000,1.595743,-143.2702,-314.9998)" + x1="779.67224" + y1="297.09595" + x2="568.07288" + y2="148.03174" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13625" + id="radialGradient13628" + gradientTransform="scale(1.251367,0.799126)" + cx="412.15533" + cy="396.61038" + fx="412.15533" + fy="396.61038" + r="15.400793" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13625" + id="radialGradient14251" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.251367,0.799126)" + cx="412.15533" + cy="396.61038" + fx="412.15533" + fy="396.61038" + r="15.400793" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13625" + id="radialGradient14874" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.251367,0.799126)" + cx="412.15533" + cy="396.61038" + fx="412.15533" + fy="396.61038" + r="15.400793" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient14876" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.188446,0.000000,0.000000,1.495098,-469.0489,-137.8235)" + x1="552.66748" + y1="411.94632" + x2="435.26056" + y2="365.20248" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient14878" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.188446,0.000000,0.000000,1.495098,-363.2263,-225.5164)" + x1="552.66748" + y1="411.94632" + x2="435.26056" + y2="365.20248" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5460" + id="linearGradient14880" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.188446,0.000000,0.000000,1.495098,-337.8006,-218.5603)" + x1="552.66748" + y1="411.94632" + x2="435.26056" + y2="365.20248" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + showguides="false" + inkscape:guide-bbox="false" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient6715);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 35.576027,461.61143 L 49.488182,295.14530 L 169.75321,321.66682 L 158.71941,491.49105 L 134.71797,485.03882 L 131.19773,346.12471 L 78.151390,333.40043 L 53.132303,466.70681 L 35.576027,461.61143 z " + id="path6714" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient11728);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.33324568pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 13.841130,601.38682 C 121.74731,619.72238 118.38934,685.54874 280.57072,701.17055 C 434.29813,594.25207 552.74666,612.16655 696.97590,486.25175 C 588.23722,462.90492 479.49853,439.55809 370.75985,416.21125 C 251.78694,477.93643 116.53148,576.29738 13.841130,601.38682 z " + id="path11097" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient6717);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.99308,322.14655 L 310.07408,254.50470 L 329.26326,403.22083 L 309.71428,413.29515 L 293.22359,291.44386 L 193.73968,342.29518 L 183.78529,477.57890 L 158.95928,491.49105 L 169.99308,322.14655 z " + id="path6716" + sodipodi:nodetypes="ccccccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient4211);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 80.782152,571.63532 L 208.65951,643.40674 C 440.72066,637.47548 497.74432,539.27638 642.28674,487.21121 L 657.63808,389.34640 L 352.05041,465.14366 L 80.782152,571.63532 z " + id="path1062" + sodipodi:nodetypes="cccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient3586);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 48.381646,533.26524 L 463.82737,357.68426 L 659.55699,389.34640 L 466.86410,472.29038 L 48.381646,533.26524 z " + id="path1061" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient12366);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 338.13826,341.80154 L 336.69906,198.84216 L 472.94223,229.54486 L 474.86114,373.94343 L 338.13826,341.80154 z " + id="path1065" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#radialGradient12369);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 471.98278,228.58538 L 643.72592,142.23409 L 507.96247,110.09221 L 336.21933,198.84216 L 471.98278,228.58538 z " + id="path1067" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient12368);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 472.46250,230.02458 L 644.20564,143.19355 L 645.64484,285.67320 L 475.34087,373.94342 L 472.46250,230.02458 z " + id="path1066" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient11094);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 204.28592,196.93988 L 214.09000,222.21731 L 469.98542,81.285171 L 461.41796,49.336999 L 204.28592,196.93988 z " + id="path10469" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient10468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 230.14688,151.61594 L 463.75439,23.179985 L 476.22038,66.474746 L 225.42009,203.43321 L 230.14688,151.61594 z " + id="path1076" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient14251);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path14250" + sodipodi:cx="514.46521" + sodipodi:cy="314.40421" + sodipodi:rx="25.012474" + sodipodi:ry="15.295398" + d="M 539.47768 314.40421 A 25.012474 15.295398 0 1 1 489.45274,314.40421 A 25.012474 15.295398 0 1 1 539.47768 314.40421 z" + transform="matrix(4.573660,-2.065286,2.536364,2.148640,-2677.970,551.7573)" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient12994);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 485.89492,73.574865 L 488.77331,121.60573 L 394.74632,169.09895 L 379.39499,176.29488 L 488.77331,136.95707 L 505.08410,213.71379 L 518.03680,205.55838 L 501.72599,135.51788 L 600.07054,164.78138 L 612.54350,158.06515 L 500.76654,122.08544 L 500.76654,72.135670 L 485.89492,73.574865 z " + id="path1079" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient13628);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path12999" + sodipodi:cx="514.46521" + sodipodi:cy="314.40421" + sodipodi:rx="25.012474" + sodipodi:ry="15.295398" + d="M 539.47768 314.40421 A 25.012474 15.295398 0 1 1 489.45274,314.40421 A 25.012474 15.295398 0 1 1 539.47768 314.40421 z" + transform="matrix(7.715304,-2.388933,4.278589,2.485350,-4848.483,848.8885)" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient2958);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 90.589572,466.99439 L 281.79465,405.40443 L 325.60051,416.00669 L 50.300568,530.38687 L 90.589572,466.99439 z " + id="path1064" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient6719);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 283.68895,406.09919 L 264.49977,306.79520 L 293.28355,291.44386 L 308.15514,412.81543 L 283.68895,406.09919 z " + id="path6718" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#radialGradient7342);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.99309,322.62628 L 309.59435,254.02499 L 194.98964,244.27989 L 49.728052,294.66560 L 169.99309,322.62628 z " + id="path7341" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient14874);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path14873" + sodipodi:cx="514.46521" + sodipodi:cy="314.40421" + sodipodi:rx="25.012474" + sodipodi:ry="15.295398" + d="M 539.47768 314.40421 A 25.012474 15.295398 0 1 1 489.45274,314.40421 A 25.012474 15.295398 0 1 1 539.47768 314.40421 z" + transform="matrix(4.573660,-2.065286,2.536364,2.148640,-2965.809,654.1939)" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient7969);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 106.90864,272.01483 L 192.30049,290.72427 L 268.57748,241.79187 L 250.82748,87.798711 L 95.395135,106.98789 L 106.90864,272.01483 z " + id="path1074" + sodipodi:nodetypes="cccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient8594);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 114.58431,131.93381 L 178.86808,143.56373 L 253.22613,106.98789 L 262.34100,191.90000 L 190.78898,235.65767 L 120.34107,224.04187 L 114.58431,131.93381 z " + id="path1075" + sodipodi:nodetypes="ccccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#radialGradient7344);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 176.56453,120.22327 L 251.24425,87.205960 L 160.64769,82.946600 L 95.518476,106.13652 L 176.56453,120.22327 z " + id="path7343" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient11096);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path11095" + sodipodi:cx="578.18280" + sodipodi:cy="151.49634" + sodipodi:rx="30.028862" + sodipodi:ry="30.028862" + d="M 608.21166 151.49634 A 30.028862 30.028862 0 1 1 548.15394,151.49634 A 30.028862 30.028862 0 1 1 608.21166 151.49634 z" + transform="matrix(1.332983,0.000000,0.000000,1.332983,-279.9860,-154.8481)" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient9222);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path8596" + sodipodi:cx="578.18280" + sodipodi:cy="151.49634" + sodipodi:rx="30.028862" + sodipodi:ry="30.028862" + d="M 608.21166 151.49634 A 30.028862 30.028862 0 1 1 548.15394,151.49634 A 30.028862 30.028862 0 1 1 608.21166 151.49634 z" + transform="matrix(1.332983,0.000000,0.000000,1.332983,-292.1980,-150.0990)" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient12996);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 504.60437,212.99419 L 503.64492,359.31168 L 514.67869,354.99410 L 518.51653,205.79824 L 504.60437,212.99419 z " + id="path12995" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#radialGradient2333);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 534.49810,442.63046 L 500.02576,423.62588 C 410.10822,448.90104 321.19874,479.99165 230.27316,499.45137 C 189.58906,508.15851 146.88886,505.23476 105.19672,508.12645 C 78.882545,495.64018 81.741273,488.58142 90.027534,467.27541 C 80.122538,485.50514 51.899667,511.19769 47.422192,529.42741 C 49.184768,545.45914 61.123935,554.02803 81.204387,573.45197 C 140.40820,570.71353 218.65400,566.34413 274.41996,549.63254 C 367.94272,521.60623 444.41319,484.62993 534.49810,442.63046 z " + id="path1063" + sodipodi:nodetypes="ccsccccsc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient12998);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 601.26987,165.26110 L 618.54014,300.06509 L 629.09418,294.78805 L 611.82392,158.06515 L 601.26987,165.26110 z " + id="path12997" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient14876);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 53.078464,467.32466 L 78.951473,333.69539 L 100.96911,338.85774 L 80.561823,454.80178 L 53.078464,467.32466 z " + id="path14875" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient14878);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 196.85793,387.86947 L 193.97955,341.81544 L 217.00658,330.30195 L 221.32412,394.58570 L 196.85793,387.86947 z " + id="path14877" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + <path + style="fill:url(#linearGradient14880);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.9986854;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 222.28359,394.82554 L 217.96602,330.06207 L 240.99304,318.54858 L 240.99303,386.19043 L 222.28359,394.82554 z " + id="path14879" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/port.png" + inkscape:export-xdpi="11.060000" + inkscape:export-ydpi="11.060000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/rails2.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rails2.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/rails2.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rails2.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,623 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + sodipodi:docname="rails2.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.40" + sodipodi:version="0.32" + id="svg14185" + height="200.00000mm" + width="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/rails2.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient16016"> + <stop + id="stop16018" + offset="0.00000000" + style="stop-color:#ededed;stop-opacity:1.0000000;" /> + <stop + id="stop16020" + offset="1.0000000" + style="stop-color:#d2d2d2;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient14490"> + <stop + id="stop14492" + offset="0.00000000" + style="stop-color:#e22f2f;stop-opacity:1.0000000;" /> + <stop + id="stop14494" + offset="1.0000000" + style="stop-color:#8d1a1a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9914"> + <stop + id="stop9916" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9918" + offset="1.0000000" + style="stop-color:#747474;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9900"> + <stop + id="stop9902" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9904" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.00000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5240"> + <stop + id="stop5242" + offset="0.00000000" + style="stop-color:#e8b42e;stop-opacity:1.0000000;" /> + <stop + id="stop5246" + offset="1.0000000" + style="stop-color:#d29232;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient17318"> + <stop + id="stop17319" + offset="0.00000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + <stop + id="stop17321" + offset="0.50000000" + style="stop-color:#888888;stop-opacity:1.0000000;" /> + <stop + id="stop17320" + offset="1.0000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="751.56726" + x2="112.64549" + y1="985.54395" + x1="336.34039" + gradientTransform="matrix(2.000984,0.000000,0.000000,0.780072,-76.35365,-314.4232)" + id="linearGradient2930" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="708.52716" + x2="194.61536" + y1="920.15552" + x1="358.44135" + gradientTransform="matrix(1.806928,0.000000,0.000000,0.863848,-76.35365,-314.4232)" + id="linearGradient3696" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="787.52124" + x2="184.24191" + y1="883.73895" + x1="131.41785" + gradientTransform="matrix(1.714833,0.000000,0.000000,0.910240,-76.35365,-314.4232)" + id="linearGradient4476" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,-87.32477,-317.8404)" + id="radialGradient5248" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,-59.44735,-299.8550)" + gradientUnits="userSpaceOnUse" + id="radialGradient6036" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,-87.14491,-309.3873)" + id="linearGradient6800" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,-25.72465,-333.1280)" + gradientUnits="userSpaceOnUse" + id="linearGradient6808" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,1.972911,-323.5958)" + gradientUnits="userSpaceOnUse" + id="radialGradient6810" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,-25.90450,-341.5812)" + gradientUnits="userSpaceOnUse" + id="radialGradient6812" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,38.30347,-358.3076)" + gradientUnits="userSpaceOnUse" + id="linearGradient6820" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,66.00101,-348.7754)" + gradientUnits="userSpaceOnUse" + id="radialGradient6822" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,38.12356,-366.7608)" + gradientUnits="userSpaceOnUse" + id="radialGradient6824" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,99.45398,-382.0484)" + gradientUnits="userSpaceOnUse" + id="linearGradient6832" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,127.1515,-372.5162)" + gradientUnits="userSpaceOnUse" + id="radialGradient6834" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,99.27407,-390.5015)" + gradientUnits="userSpaceOnUse" + id="radialGradient6836" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,161.3239,-406.5086)" + gradientUnits="userSpaceOnUse" + id="linearGradient6844" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,189.0214,-396.9763)" + gradientUnits="userSpaceOnUse" + id="radialGradient6846" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,161.1440,-414.9617)" + gradientUnits="userSpaceOnUse" + id="radialGradient6848" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,215.2802,-425.9328)" + gradientUnits="userSpaceOnUse" + id="linearGradient6856" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,242.9777,-416.4006)" + gradientUnits="userSpaceOnUse" + id="radialGradient6858" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,215.1002,-434.3860)" + gradientUnits="userSpaceOnUse" + id="radialGradient6860" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="649.38788" + x2="305.45377" + y1="643.70386" + x1="301.24747" + gradientTransform="matrix(6.897396,0.000000,0.000000,2.393136,-1580.124,-1448.155)" + id="linearGradient9920" + xlink:href="#linearGradient9914" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(1.068919,0.000000,0.000000,3.659377,-1580.124,-266.6398)" + id="linearGradient9928" + xlink:href="#linearGradient9914" + inkscape:collect="always" /> + <linearGradient + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(1.068919,0.000000,0.000000,15.44210,-1580.124,-1641.938)" + gradientUnits="userSpaceOnUse" + id="linearGradient13730" + xlink:href="#linearGradient14490" + inkscape:collect="always" /> + <linearGradient + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(1.068919,0.000000,0.000000,15.44210,-1580.124,-1795.784)" + gradientUnits="userSpaceOnUse" + id="linearGradient15256" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(1.068919,0.000000,0.000000,15.44210,-1579.297,-1949.630)" + gradientUnits="userSpaceOnUse" + id="linearGradient16024" + xlink:href="#linearGradient14490" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="923.52655" + x2="266.84042" + y1="833.09924" + x1="218.57820" + gradientTransform="matrix(2.018500,0.000000,0.000000,0.773303,-76.22648,-314.5504)" + id="linearGradient19088" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="413.11551" + x2="335.64355" + y1="413.11551" + x1="317.23434" + gradientTransform="matrix(0.859220,0.000000,0.000000,1.816660,-76.35365,-314.4232)" + id="linearGradient19854" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-76.35365,-314.4232)" + id="linearGradient20620" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="883.78284" + x2="323.16165" + y1="883.78284" + x1="141.19762" + gradientTransform="matrix(1.991585,0.000000,0.000000,0.783754,-76.35365,-314.4232)" + id="linearGradient21386" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="877.54315" + x2="268.47015" + y1="774.93488" + x1="202.58119" + gradientTransform="matrix(1.904638,0.000000,0.000000,0.819532,-76.35365,-314.4232)" + id="linearGradient22152" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-75.99397,-338.5237)" + gradientUnits="userSpaceOnUse" + id="linearGradient22156" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-139.5977,-365.3738)" + gradientUnits="userSpaceOnUse" + id="linearGradient22170" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="413.11551" + x2="335.64355" + y1="413.11551" + x1="317.23434" + gradientTransform="matrix(0.859220,0.000000,0.000000,1.816660,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22172" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="883.78284" + x2="323.16165" + y1="883.78284" + x1="141.19762" + gradientTransform="matrix(1.991585,0.000000,0.000000,0.783754,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22174" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="877.54315" + x2="268.47015" + y1="774.93488" + x1="202.58119" + gradientTransform="matrix(1.904638,0.000000,0.000000,0.819532,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22176" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22178" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="923.52655" + x2="266.84042" + y1="833.09924" + x1="218.57820" + gradientTransform="matrix(2.018500,0.000000,0.000000,0.773303,-139.8302,-341.4005)" + gradientUnits="userSpaceOnUse" + id="linearGradient22180" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="994" + inkscape:window-width="1270" + inkscape:current-layer="layer1" + inkscape:cy="283.46455" + inkscape:cx="283.46455" + inkscape:zoom="1.4552084" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path7620" + d="M 476.11825,287.92599 C 494.72866,290.32072 515.40685,289.77531 526.98667,288.05385 L 527.40022,100.54748 C 511.54694,102.26256 495.48684,102.26256 476.11825,100.54748 L 476.11825,287.92599 z " + style="fill:url(#linearGradient9928);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0517011px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccc" + id="path7624" + d="M 475.70471,100.34648 C 487.83593,108.75563 510.30624,110.13418 527.40022,101.58720 C 517.33682,90.283110 487.42235,88.077410 475.70471,100.34648 z " + style="fill:url(#linearGradient9920);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.0628071px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path13728" + d="M 476.11825,698.25801 C 494.72866,708.36342 515.40685,706.06189 526.98667,698.79759 L 527.40022,546.08818 C 511.54694,553.32558 495.48684,553.32558 476.11825,546.08818 L 476.11825,698.25801 z " + style="fill:url(#linearGradient13730);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2146711px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path15254" + d="M 476.11825,544.41215 C 494.72866,554.51757 515.40685,552.21603 526.98667,544.95174 L 527.40022,392.24230 C 511.54694,399.47970 495.48684,399.47970 476.11825,392.24230 L 476.11825,544.41215 z " + style="fill:url(#linearGradient15256);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2146711px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path16022" + d="M 476.94541,390.56620 C 495.55581,400.67162 516.23400,398.37008 527.81383,391.10576 L 528.22737,238.39635 C 512.37409,245.63375 496.31399,245.63375 476.94541,238.39635 L 476.94541,390.56620 z " + style="fill:url(#linearGradient16024);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.2146711px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="cccczzzc" + id="path7622" + d="M 364.45590,109.44487 C 379.34421,116.06194 596.87900,245.92112 596.87900,245.92112 L 568.75666,300.51159 L 333.85216,154.93695 C 312.66404,176.44233 265.84226,180.67110 232.80050,154.31054 C 200.26165,128.35123 192.26341,71.168174 218.68055,39.966085 C 245.02440,8.8506273 289.23653,-2.6328115 322.39701,16.321935 C 355.81244,35.422398 371.57366,70.093421 364.45590,109.44487 z " + style="fill:#c92d0d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.0628071px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + transform="matrix(3.008249,0.000000,0.000000,3.008249,-986.0143,-1064.493)" + d="M 442.52287 383.82730 A 20.297894 20.297894 0 1 1 401.92708,383.82730 A 20.297894 20.297894 0 1 1 442.52287 383.82730 z" + sodipodi:ry="20.297894" + sodipodi:rx="20.297894" + sodipodi:cy="383.82730" + sodipodi:cx="422.22498" + id="path9930" + style="fill:#ffffff;fill-opacity:1.0000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path12210" + d="M 359.35123,120.43981 L 581.02166,251.32685 L 564.33720,281.48765 L 342.56635,145.01143 C 351.08564,137.40576 356.68060,129.80011 359.35123,120.43981 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.0628071px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="cccczzzc" + id="path16784" + d="M 335.61469,339.28388 C 351.81898,337.59026 605.13448,341.59676 605.13448,341.59676 L 607.99937,402.93829 L 331.78958,393.97839 C 324.15678,423.18723 285.68897,450.21290 243.90148,443.85332 C 202.75007,437.59055 167.28802,392.02390 174.61452,351.80253 C 181.92077,311.69280 214.50739,279.68200 252.70279,279.56418 C 291.19177,279.44545 322.14958,301.62901 335.61469,339.28388 z " + style="fill:#c92d0d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.0628071px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + transform="matrix(2.607075,-1.500912,1.500912,2.607075,-1420.473,-4.307965)" + d="M 442.52287 383.82730 A 20.297894 20.297894 0 1 1 401.92708,383.82730 A 20.297894 20.297894 0 1 1 442.52287 383.82730 z" + sodipodi:ry="20.297894" + sodipodi:rx="20.297894" + sodipodi:cy="383.82730" + sodipodi:cx="422.22498" + id="path16786" + style="fill:#ffffff;fill-opacity:1.0000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path16788" + d="M 336.67644,351.35946 L 594.08894,354.19333 L 594.67763,388.65636 L 334.38954,381.02877 C 337.97801,370.18683 339.03215,360.80392 336.67644,351.35946 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:4.0628071px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/rails3.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rails3.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/rails3.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rails3.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,583 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + sodipodi:docname="rails3.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.40" + sodipodi:version="0.32" + id="svg14185" + height="200.00000mm" + width="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/rails3.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient16016"> + <stop + id="stop16018" + offset="0.00000000" + style="stop-color:#ededed;stop-opacity:1.0000000;" /> + <stop + id="stop16020" + offset="1.0000000" + style="stop-color:#d2d2d2;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient14490"> + <stop + id="stop14492" + offset="0.00000000" + style="stop-color:#e22f2f;stop-opacity:1.0000000;" /> + <stop + id="stop14494" + offset="1.0000000" + style="stop-color:#8d1a1a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9914"> + <stop + id="stop9916" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9918" + offset="1.0000000" + style="stop-color:#747474;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9900"> + <stop + id="stop9902" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9904" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.00000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5240"> + <stop + id="stop5242" + offset="0.00000000" + style="stop-color:#e8b42e;stop-opacity:1.0000000;" /> + <stop + id="stop5246" + offset="1.0000000" + style="stop-color:#d29232;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient17318"> + <stop + id="stop17319" + offset="0.00000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + <stop + id="stop17321" + offset="0.50000000" + style="stop-color:#888888;stop-opacity:1.0000000;" /> + <stop + id="stop17320" + offset="1.0000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="751.56726" + x2="112.64549" + y1="985.54395" + x1="336.34039" + gradientTransform="matrix(3.581110,0.000000,0.000000,1.396076,-265.6175,-932.9860)" + id="linearGradient2930" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="708.52716" + x2="194.61536" + y1="920.15552" + x1="358.44135" + gradientTransform="matrix(3.233814,0.000000,0.000000,1.546007,-265.6175,-932.9860)" + id="linearGradient3696" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="787.52124" + x2="184.24191" + y1="883.73895" + x1="131.41785" + gradientTransform="matrix(3.068994,0.000000,0.000000,1.629034,-265.6175,-932.9860)" + id="linearGradient4476" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(3.566105,0.000000,0.000000,1.401949,-285.2522,-939.1017)" + id="radialGradient5248" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(3.566105,0.000000,0.000000,1.401949,-235.3607,-906.9137)" + gradientUnits="userSpaceOnUse" + id="radialGradient6036" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(3.271658,0.000000,0.000000,1.528123,-284.9303,-923.9734)" + id="linearGradient6800" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(3.271658,0.000000,0.000000,1.528123,-175.0080,-966.4615)" + gradientUnits="userSpaceOnUse" + id="linearGradient6808" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(3.566105,0.000000,0.000000,1.401949,-125.4383,-949.4020)" + gradientUnits="userSpaceOnUse" + id="radialGradient6810" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(3.566105,0.000000,0.000000,1.401949,-175.3299,-981.5900)" + gradientUnits="userSpaceOnUse" + id="radialGradient6812" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(3.271658,0.000000,0.000000,1.528123,-60.41845,-1011.525)" + gradientUnits="userSpaceOnUse" + id="linearGradient6820" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(3.566105,0.000000,0.000000,1.401949,-10.84886,-994.4653)" + gradientUnits="userSpaceOnUse" + id="radialGradient6822" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(3.566105,0.000000,0.000000,1.401949,-60.74042,-1026.653)" + gradientUnits="userSpaceOnUse" + id="radialGradient6824" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(3.555639,0.000000,0.000000,1.406076,-352.4780,-1036.880)" + gradientUnits="userSpaceOnUse" + id="linearGradient22170" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="413.11551" + x2="335.64355" + y1="413.11551" + x1="317.23434" + gradientTransform="matrix(1.537725,0.000000,0.000000,3.251231,-353.1216,-993.7480)" + gradientUnits="userSpaceOnUse" + id="linearGradient22172" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="883.78284" + x2="323.16165" + y1="883.78284" + x1="141.19762" + gradientTransform="matrix(3.564289,0.000000,0.000000,1.402664,-353.1216,-993.7480)" + gradientUnits="userSpaceOnUse" + id="linearGradient22174" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="877.54315" + x2="268.47015" + y1="774.93488" + x1="202.58119" + gradientTransform="matrix(3.408683,0.000000,0.000000,1.466696,-353.1216,-993.7480)" + gradientUnits="userSpaceOnUse" + id="linearGradient22176" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(3.555639,0.000000,0.000000,1.406076,-353.1216,-993.7480)" + gradientUnits="userSpaceOnUse" + id="linearGradient22178" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="923.52655" + x2="266.84042" + y1="833.09924" + x1="218.57820" + gradientTransform="matrix(3.612459,0.000000,0.000000,1.383960,-352.8940,-993.9757)" + gradientUnits="userSpaceOnUse" + id="linearGradient22180" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16016" + id="linearGradient1169" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(3.555639,0.000000,0.000000,1.406076,-247.8949,-998.2065)" + x1="228.38759" + y1="828.65887" + x2="253.82077" + y2="936.75421" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16016" + id="linearGradient1170" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.537725,0.000000,0.000000,3.251231,-248.5385,-955.0743)" + x1="317.23434" + y1="413.11551" + x2="335.64355" + y2="413.11551" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16016" + id="linearGradient1171" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(3.564289,0.000000,0.000000,1.402664,-248.5385,-955.0743)" + x1="141.19762" + y1="883.78284" + x2="323.16165" + y2="883.78284" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16016" + id="linearGradient1172" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(3.408683,0.000000,0.000000,1.466696,-248.5385,-955.0743)" + x1="202.58119" + y1="774.93488" + x2="268.47015" + y2="877.54315" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16016" + id="linearGradient1173" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(3.555639,0.000000,0.000000,1.406076,-248.5385,-955.0743)" + x1="228.38759" + y1="828.65887" + x2="253.82077" + y2="936.75421" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient16016" + id="linearGradient1174" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(3.612459,0.000000,0.000000,1.383960,-248.3109,-955.3020)" + x1="218.57820" + y1="833.09924" + x2="266.84042" + y2="923.52655" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="994" + inkscape:window-width="1270" + inkscape:current-layer="layer1" + inkscape:cy="283.46455" + inkscape:cx="283.46455" + inkscape:zoom="1.4552084" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <rect + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + transform="matrix(0.932062,0.362299,-0.932062,0.362299,0.000000,0.000000)" + ry="0.0000000" + y="179.12321" + x="561.80341" + height="379.17432" + width="379.17432" + id="rect14198" + style="fill:#269300;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.8449318;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1399" + d="M 304.43355,522.32393 L 279.64874,456.33837 L 83.301414,378.12130 L 32.766089,416.10326 L 304.43355,522.32393 z " + style="fill:url(#linearGradient4476);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1401" + d="M 652.29628,383.08840 L 631.05215,319.99974 L 279.64878,456.33837 L 304.11170,522.64582 L 652.29628,383.08840 z " + style="fill:url(#linearGradient3696);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1403" + d="M 279.00498,456.98213 L 632.86772,320.90753 L 439.73915,244.94363 L 83.301394,378.44319 L 279.00498,456.98213 z " + style="fill:url(#linearGradient2930);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path4478" + d="M 307.00864,428.97849 L 363.65968,407.09060 L 182.76261,336.27679 L 123.53654,355.58962 L 307.00864,428.97849 z " + style="fill:url(#radialGradient5248);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6034" + d="M 307.00860,441.20996 L 363.65966,419.00020 L 364.30341,407.41247 L 307.00860,429.62228 L 307.00860,441.20996 z " + style="fill:url(#radialGradient6036);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6038" + d="M 123.21462,367.33830 L 306.36485,440.40526 L 307.00860,428.81756 L 123.21462,355.75061 L 123.21462,367.33830 z " + style="fill:url(#linearGradient6800);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6802" + d="M 416.93098,386.49023 L 473.58203,364.60234 L 292.68495,293.78855 L 233.45888,313.10138 L 416.93098,386.49023 z " + style="fill:url(#radialGradient6812);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6804" + d="M 416.93094,398.72170 L 473.58201,376.51194 L 474.22576,364.92423 L 416.93094,387.13402 L 416.93094,398.72170 z " + style="fill:url(#radialGradient6810);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6806" + d="M 233.13697,324.85004 L 416.28720,397.91702 L 416.93094,386.32932 L 233.13697,313.26235 L 233.13697,324.85004 z " + style="fill:url(#linearGradient6808);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6814" + d="M 531.52057,341.42687 L 588.17161,319.53898 L 407.27456,248.72516 L 348.04847,268.03800 L 531.52057,341.42687 z " + style="fill:url(#radialGradient6824);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6816" + d="M 531.52055,353.65834 L 588.17159,331.44857 L 588.81534,319.86085 L 531.52055,342.07064 L 531.52055,353.65834 z " + style="fill:url(#radialGradient6822);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6818" + d="M 347.72656,279.78668 L 530.87678,352.85366 L 531.52055,341.26594 L 347.72656,268.19899 L 347.72656,279.78668 z " + style="fill:url(#linearGradient6820);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22158" + d="M 136.68669,320.35052 L 162.11528,328.71944 L 458.63902,216.04118 L 432.88855,208.31604 L 136.68669,320.35052 z " + style="fill:url(#linearGradient22180);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22160" + d="M 161.88767,373.04472 L 459.31917,257.39535 L 459.31917,261.25793 L 161.56579,378.19481 L 161.88767,373.04472 z " + style="fill:url(#linearGradient22178);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22162" + d="M 151.26560,365.31959 L 150.29994,337.31593 L 449.92679,223.99391 L 447.35172,249.74440 L 151.26560,365.31959 z " + style="fill:url(#linearGradient22176);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22164" + d="M 151.58749,364.99770 L 162.20956,373.68847 L 458.99732,257.20549 L 447.73147,250.12412 L 151.58749,364.99770 z " + style="fill:url(#linearGradient22174);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccccccccccc" + id="path22166" + d="M 135.81530,367.89461 L 161.56577,378.19481 L 161.56577,373.04472 L 150.94371,365.64144 L 150.29992,336.67217 L 161.88767,336.35031 L 161.88767,328.94704 L 136.45907,320.57810 L 136.78096,328.94704 L 146.75924,334.41900 L 147.40303,364.35391 L 136.13718,363.38829 L 135.81530,367.89461 z " + style="fill:url(#linearGradient22172);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22168" + d="M 161.88768,328.30327 L 458.60127,216.53277 L 458.60127,222.67141 L 161.66009,336.71122 L 161.88768,328.30327 z " + style="fill:url(#linearGradient22170);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1163" + d="M 241.26977,359.02423 L 266.69836,367.39315 L 563.22210,254.71489 L 537.47163,246.98975 L 241.26977,359.02423 z " + style="fill:url(#linearGradient1174);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1164" + d="M 266.47075,411.71843 L 563.90225,296.06906 L 563.90225,299.93164 L 266.14887,416.86852 L 266.47075,411.71843 z " + style="fill:url(#linearGradient1173);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1165" + d="M 255.84868,403.99330 L 254.88302,375.98964 L 554.50987,262.66762 L 551.93480,288.41811 L 255.84868,403.99330 z " + style="fill:url(#linearGradient1172);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1166" + d="M 256.17057,403.67141 L 266.79264,412.36218 L 563.58040,295.87920 L 552.31455,288.79783 L 256.17057,403.67141 z " + style="fill:url(#linearGradient1171);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccccccccccc" + id="path1167" + d="M 240.39838,406.56832 L 266.14885,416.86852 L 266.14885,411.71843 L 255.52679,404.31515 L 254.88300,375.34588 L 266.47075,375.02402 L 266.47075,367.62075 L 241.04215,359.25181 L 241.36404,367.62075 L 251.34232,373.09271 L 251.98611,403.02762 L 240.72026,402.06200 L 240.39838,406.56832 z " + style="fill:url(#linearGradient1170);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1168" + d="M 266.47076,366.97698 L 563.18435,255.20648 L 563.18435,261.34512 L 266.24317,375.38493 L 266.47076,366.97698 z " + style="fill:url(#linearGradient1169);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.2359564px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/rails.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rails.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/rails.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rails.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,896 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + sodipodi:docname="rails.svg" + sodipodi:docbase="/home/egore/workspace/lincity-images" + inkscape:version="0.40" + sodipodi:version="0.32" + id="svg14185" + height="200.00000mm" + width="200.00000mm" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink"> + <defs + id="defs3"> + <linearGradient + id="linearGradient16016"> + <stop + id="stop16018" + offset="0.00000000" + style="stop-color:#ededed;stop-opacity:1.0000000;" /> + <stop + id="stop16020" + offset="1.0000000" + style="stop-color:#d2d2d2;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient14490"> + <stop + id="stop14492" + offset="0.00000000" + style="stop-color:#e22f2f;stop-opacity:1.0000000;" /> + <stop + id="stop14494" + offset="1.0000000" + style="stop-color:#8d1a1a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9914"> + <stop + id="stop9916" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9918" + offset="1.0000000" + style="stop-color:#747474;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient9900"> + <stop + id="stop9902" + offset="0" + style="stop-color:#c9c9c9;stop-opacity:1;" /> + <stop + id="stop9904" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.00000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5240"> + <stop + id="stop5242" + offset="0.00000000" + style="stop-color:#e8b42e;stop-opacity:1.0000000;" /> + <stop + id="stop5246" + offset="1.0000000" + style="stop-color:#d29232;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient17318"> + <stop + id="stop17319" + offset="0.00000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + <stop + id="stop17321" + offset="0.50000000" + style="stop-color:#888888;stop-opacity:1.0000000;" /> + <stop + id="stop17320" + offset="1.0000000" + style="stop-color:#2b2b2b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="751.56726" + x2="112.64549" + y1="985.54395" + x1="336.34039" + gradientTransform="matrix(2.000984,0.000000,0.000000,0.780072,-76.35365,-314.4232)" + id="linearGradient2930" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="708.52716" + x2="194.61536" + y1="920.15552" + x1="358.44135" + gradientTransform="matrix(1.806928,0.000000,0.000000,0.863848,-76.35365,-314.4232)" + id="linearGradient3696" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="787.52124" + x2="184.24191" + y1="883.73895" + x1="131.41785" + gradientTransform="matrix(1.714833,0.000000,0.000000,0.910240,-76.35365,-314.4232)" + id="linearGradient4476" + xlink:href="#linearGradient17318" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,-87.32477,-317.8404)" + id="radialGradient5248" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,-59.44735,-299.8550)" + gradientUnits="userSpaceOnUse" + id="radialGradient6036" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,-87.14491,-309.3873)" + id="linearGradient6800" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,-25.72465,-333.1280)" + gradientUnits="userSpaceOnUse" + id="linearGradient6808" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,1.972911,-323.5958)" + gradientUnits="userSpaceOnUse" + id="radialGradient6810" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,-25.90450,-341.5812)" + gradientUnits="userSpaceOnUse" + id="radialGradient6812" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,38.30347,-358.3076)" + gradientUnits="userSpaceOnUse" + id="linearGradient6820" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,66.00101,-348.7754)" + gradientUnits="userSpaceOnUse" + id="radialGradient6822" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,38.12356,-366.7608)" + gradientUnits="userSpaceOnUse" + id="radialGradient6824" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,99.45398,-382.0484)" + gradientUnits="userSpaceOnUse" + id="linearGradient6832" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,127.1515,-372.5162)" + gradientUnits="userSpaceOnUse" + id="radialGradient6834" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,99.27407,-390.5015)" + gradientUnits="userSpaceOnUse" + id="radialGradient6836" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,161.3239,-406.5086)" + gradientUnits="userSpaceOnUse" + id="linearGradient6844" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,189.0214,-396.9763)" + gradientUnits="userSpaceOnUse" + id="radialGradient6846" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,161.1440,-414.9617)" + gradientUnits="userSpaceOnUse" + id="radialGradient6848" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + y2="869.14490" + x2="143.01900" + y1="844.26819" + x1="145.91374" + gradientTransform="matrix(1.828074,0.000000,0.000000,0.853855,215.2802,-425.9328)" + gradientUnits="userSpaceOnUse" + id="linearGradient6856" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,242.9777,-416.4006)" + gradientUnits="userSpaceOnUse" + id="radialGradient6858" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <radialGradient + r="29.885639" + fy="926.99915" + fx="140.14360" + cy="926.99915" + cx="140.14360" + gradientTransform="matrix(1.992599,0.000000,0.000000,0.783354,215.1002,-434.3860)" + gradientUnits="userSpaceOnUse" + id="radialGradient6860" + xlink:href="#linearGradient5240" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="649.38788" + x2="305.45377" + y1="643.70386" + x1="301.24747" + gradientTransform="matrix(2.121035,0.000000,0.000000,0.735919,-76.35365,-314.6776)" + id="linearGradient9920" + xlink:href="#linearGradient9914" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(0.328706,0.000000,0.000000,4.748639,-76.35365,-314.4232)" + id="linearGradient9928" + xlink:href="#linearGradient9914" + inkscape:collect="always" /> + <linearGradient + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(0.328706,0.000000,0.000000,4.748639,-76.35365,-374.2684)" + gradientUnits="userSpaceOnUse" + id="linearGradient13730" + xlink:href="#linearGradient14490" + inkscape:collect="always" /> + <linearGradient + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(0.328706,0.000000,0.000000,4.748639,-76.35365,-421.5779)" + gradientUnits="userSpaceOnUse" + id="linearGradient15256" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="126.16418" + x2="1973.6060" + y1="126.16418" + x1="1921.6877" + gradientTransform="matrix(0.328706,0.000000,0.000000,4.748639,-76.09931,-468.8875)" + gradientUnits="userSpaceOnUse" + id="linearGradient16024" + xlink:href="#linearGradient14490" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="923.52655" + x2="266.84042" + y1="833.09924" + x1="218.57820" + gradientTransform="matrix(2.018500,0.000000,0.000000,0.773303,-76.22648,-314.5504)" + id="linearGradient19088" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="413.11551" + x2="335.64355" + y1="413.11551" + x1="317.23434" + gradientTransform="matrix(0.859220,0.000000,0.000000,1.816660,-76.35365,-314.4232)" + id="linearGradient19854" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-76.35365,-314.4232)" + id="linearGradient20620" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="883.78284" + x2="323.16165" + y1="883.78284" + x1="141.19762" + gradientTransform="matrix(1.991585,0.000000,0.000000,0.783754,-76.35365,-314.4232)" + id="linearGradient21386" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="877.54315" + x2="268.47015" + y1="774.93488" + x1="202.58119" + gradientTransform="matrix(1.904638,0.000000,0.000000,0.819532,-76.35365,-314.4232)" + id="linearGradient22152" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-75.99397,-338.5237)" + gradientUnits="userSpaceOnUse" + id="linearGradient22156" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-139.5977,-365.3738)" + gradientUnits="userSpaceOnUse" + id="linearGradient22170" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="413.11551" + x2="335.64355" + y1="413.11551" + x1="317.23434" + gradientTransform="matrix(0.859220,0.000000,0.000000,1.816660,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22172" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="883.78284" + x2="323.16165" + y1="883.78284" + x1="141.19762" + gradientTransform="matrix(1.991585,0.000000,0.000000,0.783754,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22174" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="877.54315" + x2="268.47015" + y1="774.93488" + x1="202.58119" + gradientTransform="matrix(1.904638,0.000000,0.000000,0.819532,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22176" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="936.75421" + x2="253.82077" + y1="828.65887" + x1="228.38759" + gradientTransform="matrix(1.986751,0.000000,0.000000,0.785660,-139.9574,-341.2733)" + gradientUnits="userSpaceOnUse" + id="linearGradient22178" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + <linearGradient + y2="923.52655" + x2="266.84042" + y1="833.09924" + x1="218.57820" + gradientTransform="matrix(2.018500,0.000000,0.000000,0.773303,-139.8302,-341.4005)" + gradientUnits="userSpaceOnUse" + id="linearGradient22180" + xlink:href="#linearGradient16016" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="721" + inkscape:window-width="1024" + inkscape:current-layer="layer1" + inkscape:cy="283.46455" + inkscape:cx="283.46455" + inkscape:zoom="0.97366672" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <rect + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + transform="matrix(0.932062,0.362299,-0.932062,0.362299,0.000000,0.000000)" + ry="0.0000000" + y="179.12321" + x="561.80341" + height="379.17432" + width="379.17432" + id="rect14198" + style="fill:#269300;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.8449318;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1399" + d="M 242.16825,498.74639 L 228.31948,461.87628 L 118.60839,418.17169 L 90.371259,439.39450 L 242.16825,498.74639 z " + style="fill:url(#linearGradient4476);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1401" + d="M 593.78333,360.07877 L 581.91296,324.82734 L 228.31950,461.87628 L 241.98841,498.92626 L 593.78333,360.07877 z " + style="fill:url(#linearGradient3696);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path1403" + d="M 227.95977,462.23599 L 581.91294,324.82734 L 474.00038,282.38173 L 118.60838,418.35155 L 227.95977,462.23599 z " + style="fill:url(#linearGradient2930);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path4478" + d="M 243.60710,446.58867 L 275.26145,434.35859 L 174.18336,394.79064 L 141.09018,405.58189 L 243.60710,446.58867 z " + style="fill:url(#radialGradient5248);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6034" + d="M 243.60708,453.42313 L 275.26144,441.01320 L 275.62114,434.53844 L 243.60708,446.94839 L 243.60708,453.42313 z " + style="fill:url(#radialGradient6036);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6038" + d="M 140.91031,412.14658 L 243.24738,452.97350 L 243.60708,446.49875 L 140.91031,405.67184 L 140.91031,412.14658 z " + style="fill:url(#linearGradient6800);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6802" + d="M 305.02734,422.84792 L 336.68169,410.61784 L 235.60360,371.04990 L 202.51042,381.84115 L 305.02734,422.84792 z " + style="fill:url(#radialGradient6812);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6804" + d="M 305.02732,429.68238 L 336.68168,417.27245 L 337.04138,410.79770 L 305.02732,423.20764 L 305.02732,429.68238 z " + style="fill:url(#radialGradient6810);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6806" + d="M 202.33055,388.40583 L 304.66762,429.23276 L 305.02732,422.75801 L 202.33055,381.93109 L 202.33055,388.40583 z " + style="fill:url(#linearGradient6808);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6814" + d="M 369.05545,397.66830 L 400.70980,385.43822 L 299.63171,345.87027 L 266.53853,356.66152 L 369.05545,397.66830 z " + style="fill:url(#radialGradient6824);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6816" + d="M 369.05544,404.50276 L 400.70979,392.09283 L 401.06949,385.61807 L 369.05544,398.02802 L 369.05544,404.50276 z " + style="fill:url(#radialGradient6822);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6818" + d="M 266.35866,363.22621 L 368.69573,404.05314 L 369.05544,397.57838 L 266.35866,356.75147 L 266.35866,363.22621 z " + style="fill:url(#linearGradient6820);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6826" + d="M 430.20590,373.92755 L 461.86025,361.69747 L 360.78216,322.12953 L 327.68898,332.92078 L 430.20590,373.92755 z " + style="fill:url(#radialGradient6836);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6828" + d="M 430.20589,380.76201 L 461.86024,368.35208 L 462.21995,361.87733 L 430.20589,374.28727 L 430.20589,380.76201 z " + style="fill:url(#radialGradient6834);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6830" + d="M 327.50911,339.48546 L 429.84619,380.31239 L 430.20589,373.83764 L 327.50911,333.01072 L 327.50911,339.48546 z " + style="fill:url(#linearGradient6832);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6838" + d="M 492.07576,349.46739 L 523.73012,337.23731 L 422.65203,297.66936 L 389.55884,308.46061 L 492.07576,349.46739 z " + style="fill:url(#radialGradient6848);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6842" + d="M 389.37897,315.02529 L 491.71605,355.85222 L 492.07575,349.37747 L 389.37897,308.55055 L 389.37897,315.02529 z " + style="fill:url(#linearGradient6844);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6850" + d="M 546.03203,330.04312 L 577.68638,317.81304 L 476.60829,278.24509 L 443.51511,289.03634 L 546.03203,330.04312 z " + style="fill:url(#radialGradient6860);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6854" + d="M 443.33524,295.60103 L 545.67231,336.42796 L 546.03202,329.95320 L 443.33524,289.12629 L 443.33524,295.60103 z " + style="fill:url(#linearGradient6856);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path17554" + d="M 197.33188,419.84305 L 211.54037,424.51927 L 566.93237,288.00989 L 552.54404,283.69339 L 197.33188,419.84305 z " + style="fill:url(#linearGradient19088);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path17558" + d="M 211.41318,449.28648 L 566.80519,311.87782 L 566.80519,314.03607 L 211.23334,452.16414 L 211.41318,449.28648 z " + style="fill:url(#linearGradient20620);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path17560" + d="M 205.47799,444.96998 L 204.93843,429.32265 L 561.04986,292.45357 L 559.61101,306.84191 L 205.47799,444.96998 z " + style="fill:url(#linearGradient22152);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path17562" + d="M 205.65785,444.79012 L 211.59304,449.64619 L 566.62534,311.51812 L 560.33044,307.56132 L 205.65785,444.79012 z " + style="fill:url(#linearGradient21386);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccccccccccc" + id="path16790" + d="M 196.84499,446.40881 L 211.23332,452.16414 L 211.23332,449.28648 L 205.29813,445.14983 L 204.93842,428.96295 L 211.41318,428.78310 L 211.41318,424.64645 L 197.20469,419.97023 L 197.38455,424.64646 L 202.96003,427.70396 L 203.31974,444.43041 L 197.02484,443.89086 L 196.84499,446.40881 z " + style="fill:url(#linearGradient19854);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22154" + d="M 211.41320,424.28674 L 567.16490,287.77735 L 567.16490,291.20736 L 211.28602,428.98476 L 211.41320,424.28674 z " + style="fill:url(#linearGradient22156);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6840" + d="M 492.07575,356.30184 L 523.73010,343.89192 L 524.08981,337.41716 L 492.07575,349.82711 L 492.07575,356.30184 z " + style="fill:url(#radialGradient6846);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22158" + d="M 133.72811,392.99298 L 147.93660,397.66920 L 503.32861,261.15982 L 488.94027,256.84332 L 133.72811,392.99298 z " + style="fill:url(#linearGradient22180);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22160" + d="M 147.80942,422.43641 L 503.20142,285.02775 L 503.20142,287.18600 L 147.62957,425.31407 L 147.80942,422.43641 z " + style="fill:url(#linearGradient22178);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22162" + d="M 141.87423,418.11991 L 141.33466,402.47258 L 497.44609,265.60349 L 496.00725,279.99184 L 141.87423,418.11991 z " + style="fill:url(#linearGradient22176);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22164" + d="M 142.05409,417.94005 L 147.98928,422.79611 L 503.02158,284.66804 L 496.72667,280.71125 L 142.05409,417.94005 z " + style="fill:url(#linearGradient22174);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccccccccccc" + id="path22166" + d="M 133.24122,419.55874 L 147.62956,425.31407 L 147.62956,422.43641 L 141.69437,418.29975 L 141.33465,402.11287 L 147.80942,401.93303 L 147.80942,397.79637 L 133.60093,393.12015 L 133.78079,397.79638 L 139.35626,400.85389 L 139.71598,417.58033 L 133.42107,417.04078 L 133.24122,419.55874 z " + style="fill:url(#linearGradient22172);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path22168" + d="M 147.80943,397.43667 L 503.56114,260.92727 L 503.56114,264.35729 L 147.68226,402.13469 L 147.80943,397.43667 z " + style="fill:url(#linearGradient22170);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path6852" + d="M 546.03202,336.87758 L 577.68637,324.46765 L 578.04607,317.99289 L 546.03202,330.40284 L 546.03202,336.87758 z " + style="fill:url(#radialGradient6858);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#6d4e24;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path7620" + d="M 555.96626,405.21633 C 561.68919,408.32387 568.04799,407.61612 571.60893,405.38226 L 571.73610,162.06222 C 566.86102,164.28781 561.92234,164.28781 555.96626,162.06222 L 555.96626,405.21633 z " + style="fill:url(#linearGradient9928);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2960637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccc" + id="path7624" + d="M 555.83909,161.50594 C 559.56959,164.09186 566.47949,164.51578 571.73610,161.88748 C 568.64148,158.41133 559.44241,157.73305 555.83909,161.50594 z " + style="fill:url(#linearGradient9920);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path13728" + d="M 555.96626,345.37116 C 561.68919,348.47870 568.04799,347.77095 571.60893,345.53709 L 571.73610,298.57705 C 566.86102,300.80264 561.92234,300.80264 555.96626,298.57705 L 555.96626,345.37116 z " + style="fill:url(#linearGradient13730);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2960637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path15254" + d="M 555.96626,298.06165 C 561.68919,301.16919 568.04799,300.46144 571.60893,298.22758 L 571.73610,251.26753 C 566.86102,253.49312 561.92234,253.49312 555.96626,251.26753 L 555.96626,298.06165 z " + style="fill:url(#linearGradient15256);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2960637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path16022" + d="M 556.22062,250.75211 C 561.94355,253.85965 568.30235,253.15190 571.86329,250.91803 L 571.99046,203.95799 C 567.11538,206.18358 562.17670,206.18358 556.22062,203.95799 L 556.22062,250.75211 z " + style="fill:url(#linearGradient16024);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2960637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="cccczzzc" + id="path7622" + d="M 521.62870,164.30381 C 526.20704,166.33864 593.10169,206.27195 593.10169,206.27195 L 584.45372,223.05920 L 512.21767,178.29319 C 505.70206,184.90636 491.30378,186.20676 481.14303,178.10056 C 471.13693,170.11775 468.67737,152.53325 476.80097,142.93822 C 484.90203,133.36983 498.49781,129.83853 508.69507,135.66735 C 518.97073,141.54098 523.81750,152.20275 521.62870,164.30381 z " + style="fill:#c92d0d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + transform="matrix(0.925074,0.000000,0.000000,0.925074,106.3423,-196.6966)" + d="M 442.52287 383.82730 A 20.297894 20.297894 0 1 1 401.92708,383.82730 A 20.297894 20.297894 0 1 1 442.52287 383.82730 z" + sodipodi:ry="20.297894" + sodipodi:rx="20.297894" + sodipodi:cy="383.82730" + sodipodi:cx="422.22498" + id="path9930" + style="fill:#ffffff;fill-opacity:1.0000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path12210" + d="M 520.05895,167.68489 L 588.22536,207.93428 L 583.09468,217.20910 L 514.89739,175.24097 C 517.51718,172.90213 519.23770,170.56330 520.05895,167.68489 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="cccczzzc" + id="path16784" + d="M 512.75967,234.98216 C 517.74269,234.46135 595.64035,235.69340 595.64035,235.69340 L 596.52134,254.55668 L 511.58340,251.80140 C 509.23622,260.78348 497.40689,269.09421 484.55672,267.13856 C 471.90215,265.21268 460.99713,251.20037 463.25012,238.83180 C 465.49688,226.49756 475.51767,216.65384 487.26323,216.61761 C 499.09907,216.58110 508.61898,223.40282 512.75967,234.98216 z " + style="fill:#c92d0d;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + transform="matrix(0.801708,-0.461549,0.461549,0.801708,-27.25919,129.3234)" + d="M 442.52287 383.82730 A 20.297894 20.297894 0 1 1 401.92708,383.82730 A 20.297894 20.297894 0 1 1 442.52287 383.82730 z" + sodipodi:ry="20.297894" + sodipodi:rx="20.297894" + sodipodi:cy="383.82730" + sodipodi:cx="422.22498" + id="path16786" + style="fill:#ffffff;fill-opacity:1.0000000;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="10.180000" + inkscape:export-xdpi="10.180000" + inkscape:export-filename="E:\Documents and Settings\skg7047\My Documents\rails.png" + sodipodi:nodetypes="ccccc" + id="path16788" + d="M 513.08617,238.69555 L 592.24371,239.56700 L 592.42474,250.16481 L 512.38292,247.81923 C 513.48642,244.48520 513.81058,241.59984 513.08617,238.69555 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2493637px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/road.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/road.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/road.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/road.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,147 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg14185" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="road.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/road.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient17318"> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop17319" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop17321" /> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop17320" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient17317" + gradientTransform="matrix(2.822330,0.000000,0.000000,1.091623,-230.3307,-642.7216)" + x1="233.24274" + y1="1027.5192" + x2="92.436852" + y2="891.19366" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4552084" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:#269300;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.8449318;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 378.04876,176.14943 L 711.16710,306.05153 L 711.16730,432.34257 L 377.14606,563.95493 L -0.20751388,416.90041 L 0.69504772,324.01145 L 378.04876,176.14943 z " + id="rect14198" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient17317);fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 500.41775,223.22939 L -0.81712104,417.40441 L 213.21421,499.90137 L 714.50393,305.72635 L 500.41775,223.22939 z " + id="rect14199" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + <path + style="fill:#f3ff00;fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 148.29519,434.94631 L 96.993313,454.82031 L 118.89963,463.26396 L 170.20714,443.38993 L 148.29519,434.94631 z " + id="path16066" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + <path + style="fill:#f3ff00;fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 238.19165,397.42515 L 186.88978,417.29917 L 208.79609,425.74282 L 260.10361,405.86879 L 238.19165,397.42515 z " + id="path16688" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + <path + style="fill:#f3ff00;fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 331.99457,358.56395 L 280.69268,378.43796 L 302.59900,386.88161 L 353.90650,367.00758 L 331.99457,358.56395 z " + id="path16689" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + <path + style="fill:#f3ff00;fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 416.86383,322.82952 L 365.56196,342.70352 L 387.46827,351.14717 L 438.77578,331.27315 L 416.86383,322.82952 z " + id="path16690" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + <path + style="fill:#f3ff00;fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 506.19994,287.09507 L 454.89806,306.96909 L 476.80437,315.41274 L 528.11188,295.53871 L 506.19994,287.09507 z " + id="path16691" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + <path + style="fill:#f3ff00;fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 583.92232,254.93407 L 532.62045,274.80808 L 554.52676,283.25173 L 605.83427,263.37770 L 583.92232,254.93407 z " + id="path16692" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/road.png" + inkscape:export-xdpi="10.181170" + inkscape:export-ydpi="10.181170" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/rocket.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rocket.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/rocket.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/rocket.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,416 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg9916" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="rocket.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/rocket.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient20974"> + <stop + style="stop-color:#b2b2b2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop20975" /> + <stop + style="stop-color:#2f2f2f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop20976" /> + </linearGradient> + <linearGradient + id="linearGradient19722"> + <stop + style="stop-color:#4d4d4d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop19723" /> + <stop + style="stop-color:#2f2f2f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop19724" /> + </linearGradient> + <linearGradient + id="linearGradient13688"> + <stop + style="stop-color:#aaaaaa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop13689" /> + <stop + style="stop-color:#6d6d6d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop13690" /> + </linearGradient> + <linearGradient + id="linearGradient13058"> + <stop + style="stop-color:#848484;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop13059" /> + <stop + style="stop-color:#4f4f4f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop13060" /> + </linearGradient> + <linearGradient + id="linearGradient10569"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop10570" /> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop10571" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient10569" + id="radialGradient10572" + gradientTransform="matrix(0.572445,0.000000,0.000000,1.190442,0.364707,25.26756)" + cx="579.87238" + cy="139.65964" + fx="579.87238" + fy="139.65964" + r="284.40961" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13688" + id="linearGradient13062" + gradientTransform="matrix(0.918425,0.000000,0.000000,0.741991,0.364707,25.26756)" + x1="573.87695" + y1="390.00455" + x2="815.49683" + y2="570.12122" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13688" + id="linearGradient13687" + gradientTransform="matrix(0.808723,0.000000,0.000000,0.842641,0.364707,25.26756)" + x1="459.38556" + y1="496.66150" + x2="602.52826" + y2="663.49445" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13058" + id="linearGradient14315" + gradientTransform="matrix(0.892296,0.000000,0.000000,0.763718,0.364707,25.26756)" + x1="424.87140" + y1="547.20239" + x2="784.31659" + y2="547.20239" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13688" + id="radialGradient14942" + gradientTransform="matrix(0.919177,0.000000,0.000000,0.741383,0.364707,25.26756)" + cx="148.81125" + cy="593.96179" + fx="148.81125" + fy="593.96179" + r="493.91412" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13688" + id="radialGradient14943" + gradientTransform="matrix(0.919177,0.000000,0.000000,0.741383,0.364707,25.26756)" + cx="148.81125" + cy="593.96179" + fx="148.81125" + fy="593.96179" + r="493.91412" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13688" + id="linearGradient15964" + gradientTransform="matrix(0.679163,0.000000,0.000000,1.003386,0.364707,25.26756)" + x1="12.568205" + y1="426.12869" + x2="168.07306" + y2="426.12869" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13058" + id="linearGradient16597" + gradientTransform="matrix(0.856909,0.000000,0.000000,0.795258,0.364707,25.26756)" + x1="-142.84218" + y1="348.63861" + x2="484.13895" + y2="617.00531" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13058" + id="linearGradient17222" + gradientTransform="matrix(1.373255,0.000000,0.000000,0.496239,0.364707,25.26756)" + x1="123.82738" + y1="819.56256" + x2="218.22549" + y2="927.19421" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient13058" + id="linearGradient18468" + gradientTransform="matrix(0.679198,0.000000,0.000000,1.003335,0.364707,25.26756)" + x1="186.82957" + y1="431.12134" + x2="238.82039" + y2="481.21127" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13058" + id="radialGradient19096" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.753780,0.000000,0.000000,0.904061,0.335861,25.33039)" + cx="187.45111" + cy="497.26657" + fx="187.78090" + fy="497.26660" + r="3.4175208" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient13058" + id="radialGradient19098" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.753780,0.000000,0.000000,0.904061,27.96556,8.396054)" + cx="187.45111" + cy="497.26657" + fx="187.78090" + fy="497.26660" + r="3.4175208" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19722" + id="radialGradient19100" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.753780,0.000000,0.000000,0.904061,17.12165,75.53909)" + cx="187.45111" + cy="497.26657" + fx="187.78090" + fy="497.26660" + r="3.4175208" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19722" + id="radialGradient19726" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.753780,0.000000,0.000000,0.904061,43.56297,58.60479)" + cx="187.45111" + cy="497.26657" + fx="187.78090" + fy="497.26660" + r="3.4175208" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient20974" + id="linearGradient20973" + gradientTransform="matrix(0.884836,0.000000,0.000000,0.770157,0.364707,25.26756)" + x1="143.25114" + y1="573.03412" + x2="174.92555" + y2="619.60809" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.4587362" + inkscape:cx="283.46455" + inkscape:cy="283.46455" + inkscape:current-layer="layer1" + inkscape:window-width="1093" + inkscape:window-height="996" + inkscape:window-x="171" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#linearGradient17222);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 113.80618,521.74481 L 360.85651,568.80202 L 554.12718,441.91562 L 296.99317,411.66456 L 113.80618,521.74481 z " + id="path9926" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient16597);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 113.80618,520.06419 L 30.615764,375.53135 L 225.56705,273.85417 L 296.15286,411.66456 L 113.80618,520.06419 z " + id="path9927" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient15964);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 29.775457,376.37166 L 10.448390,393.17780 L 91.117886,529.30757 L 112.96589,519.22388 L 29.775457,376.37166 z " + id="path9928" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <rect + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect10573" + width="204.20705" + height="197.60832" + x="223.88026" + y="383.86639" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient14942);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 554.12718,442.75593 L 605.38593,476.36822 L 404.55250,641.06844 L 358.33560,567.96171 L 554.12718,442.75593 z " + id="path9930" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient13687);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 360.07092,565.49169 L 478.54836,435.20115 L 499.45250,458.77505 L 377.61385,580.55832 L 360.07092,565.49169 z " + id="path9931" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient13062);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 477.65923,436.03347 C 486.90261,430.15132 675.97173,277.21540 675.97173,277.21540 L 702.02126,304.10523 L 497.82660,457.88146 L 477.65923,436.03347 z " + id="path9932" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient14315);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 698.66003,307.46646 L 557.48842,444.43655 L 381.02389,578.88570 L 499.50721,457.04116 L 698.66003,307.46646 z " + id="path9933" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient10572);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 223.88644,383.93441 C 222.48592,236.04034 310.18134,175.73486 325.56362,175.53822 C 339.58857,175.34818 425.84028,226.23676 428.08109,394.01811 C 359.17591,433.51255 274.30487,424.26917 223.88644,383.93441 z " + id="path9935" + sodipodi:nodetypes="cscc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient18468);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0637698;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 128.29093,473.05359 L 176.82924,441.07531 L 186.91292,462.08299 L 195.31599,487.29221 L 195.31599,513.34174 L 168.42616,530.98819 L 151.62001,541.07187 L 147.41847,517.54327 L 138.17510,493.17437 L 128.29093,473.05359 z " + id="path9937" + sodipodi:nodetypes="cccccccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient19096);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#474747;stroke-width:1.0318849;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.61302,474.65283 C 137.97142,476.28350 139.52252,480.59702 140.86233,480.83208 C 142.53010,481.12469 146.85446,478.22160 147.63576,476.23587 C 148.28046,474.59726 146.51349,470.19998 145.14032,469.95906 C 143.50590,469.67230 139.39741,472.65917 138.61302,474.65283 z " + id="path9938" + sodipodi:nodetypes="cssss" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient19098);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#474747;stroke-width:1.0318849;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 166.24271,457.71851 C 165.60111,459.34918 167.15222,463.66268 168.49202,463.89774 C 170.15980,464.19035 174.48415,461.28728 175.26545,459.30155 C 175.91015,457.66294 174.14318,453.26564 172.77001,453.02472 C 171.13560,452.73797 167.02712,455.72484 166.24271,457.71851 z " + id="path19097" + sodipodi:nodetypes="cssss" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient19100);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#474747;stroke-width:1.0318849;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 155.39879,524.86164 C 154.75720,526.49230 156.30831,530.80581 157.64810,531.04087 C 159.31589,531.33348 163.64025,528.43040 164.42153,526.44466 C 165.06625,524.80606 163.29926,520.40877 161.92610,520.16785 C 160.29169,519.88110 156.18320,522.86797 155.39879,524.86164 z " + id="path19099" + sodipodi:nodetypes="cssss" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient14943);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0956547;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 112.12558,522.58511 L 52.463753,551.99587 L 404.55250,641.06843 L 360.85651,567.96171 L 112.12558,522.58511 z " + id="path9929" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#radialGradient19726);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#474747;stroke-width:1.0318849;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 181.84012,507.92730 C 181.19852,509.55797 182.74963,513.87148 184.08943,514.10655 C 185.75721,514.39916 190.08157,511.49607 190.86287,509.51034 C 191.50757,507.87173 189.74060,503.47443 188.36743,503.23352 C 186.73301,502.94677 182.62452,505.93363 181.84012,507.92730 z " + id="path19725" + sodipodi:nodetypes="cssss" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:url(#linearGradient20973);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0637698;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.06753,492.77617 C 152.27850,489.70622 159.35923,510.10663 147.72307,516.98930 L 195.85222,486.53722 C 207.27602,477.93009 199.89976,461.36885 187.83069,462.02701 L 138.06753,492.77617 z " + id="path19727" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:#dfea00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8e950f;stroke-width:2.5746980;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 245.10105,546.67965 L 229.53396,597.08737 L 285.50136,611.17188 L 293.28490,555.57514 L 245.10105,546.67965 z " + id="path20977" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + <path + style="fill:#dfea00;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#8e950f;stroke-width:2.5746980;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 120.19369,569.28900 L 143.54433,528.14740 L 188.39236,535.93095 L 172.82527,582.26157 L 120.19369,569.28900 z " + id="path20978" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/rocket.png" + inkscape:export-xdpi="8.5400000" + inkscape:export-ydpi="8.5400000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttonpanel/transport/tracks.svg lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/tracks.svg --- lincity-ng-2.0/data/images/gui/buttonpanel/transport/tracks.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/transport/tracks.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,107 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + width="200.00000mm" + height="200.00000mm" + id="svg14185" + sodipodi:version="0.32" + inkscape:version="0.40" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="tracks.svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:cc="http://web.resource.org/cc/" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:xlink="http://www.w3.org/1999/xlink" + inkscape:export-filename="/home/egore/workspace/lincity-images/tracks.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient17318"> + <stop + style="stop-color:#502e0d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop17319" /> + <stop + style="stop-color:#a4703d;stop-opacity:1.0000000;" + offset="0.24909331" + id="stop1803" /> + <stop + style="stop-color:#502e0d;stop-opacity:1.0000000;" + offset="0.49556458" + id="stop1804" /> + <stop + style="stop-color:#a4703d;stop-opacity:1.0000000;" + offset="0.75289041" + id="stop17321" /> + <stop + style="stop-color:#502e0d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop17320" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient17318" + id="linearGradient17317" + gradientTransform="matrix(2.836913,0.000000,0.000000,1.097263,-234.3078,-636.0603)" + x1="177.10135" + y1="882.83484" + x2="244.14786" + y2="949.53229" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="2.4559705" + inkscape:cx="223.11694" + inkscape:cy="366.42802" + inkscape:current-layer="layer1" + inkscape:window-width="1270" + inkscape:window-height="994" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:#269300;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:2.8449318;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 377.21493,187.04182 L 712.96241,316.36758 L 711.07061,445.69337 L 377.21498,575.03621 L -0.73742522,428.64888 L 0.25642013,331.65027 L 377.21493,187.04182 z " + id="rect14198" + sodipodi:nodetypes="ccccccc" /> + <path + style="fill:url(#linearGradient17317);fill-opacity:1.0000000;stroke:none;stroke-width:1.2250757;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 500.21626,234.36505 L -3.6084546,427.74741 L 211.52878,510.67063 L 715.40863,317.28827 L 500.21626,234.36505 z " + id="rect14199" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/workspace/tracks.png" + inkscape:export-xdpi="10.180000" + inkscape:export-ydpi="10.180000" /> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttonpanel/waterwell.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/waterwell.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttonpanel/waterwell.xcf and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttonpanel/waterwell.xcf differ diff -Nru lincity-ng-2.0/data/images/gui/buttons/buttons.svg lincity-ng-2.9~git20150314/data/images/gui/buttons/buttons.svg --- lincity-ng-2.0/data/images/gui/buttons/buttons.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttons/buttons.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,204 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="50.000000px" + height="50.000000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttons" + sodipodi:docname="buttons.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/menu-button.png" + inkscape:export-xdpi="10.910000" + inkscape:export-ydpi="10.910000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2838"> + <stop + id="stop2840" + offset="0.0000000" + style="stop-color:#ff0000;stop-opacity:1.0000000;" /> + <stop + id="stop2842" + offset="1.0000000" + style="stop-color:#7b0000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient3572"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop3574" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop3576" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient3578" + x1="362.26712" + y1="528.35089" + x2="362.26712" + y2="315.58200" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="radialGradient3593" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + cx="142.69258" + cy="642.58405" + fx="142.69258" + fy="642.58405" + r="163.60149" + gradientUnits="userSpaceOnUse" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="352.36337" + fy="37.213886" + fx="602.46979" + cy="37.213886" + cx="602.46979" + gradientTransform="matrix(0.839807,0.000000,0.000000,0.839882,-389.6323,65.99675)" + id="radialGradient2846" + xlink:href="#linearGradient2838" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.8498720" + inkscape:cx="62.657205" + inkscape:cy="-39.404154" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="925" + inkscape:window-height="546" + inkscape:window-x="0" + inkscape:window-y="406" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <cc:license + rdf:resource="http://creativecommons.org/licenses/by/2.0/" + id="license10610" /> + <dc:title + id="title10628">Buttons for the lincity-ng buttonpanel</dc:title> + <dc:date + id="date10630">2005-06-05</dc:date> + <dc:creator + id="creator10632"> + <cc:Agent + id="Agent10634"> + <dc:title + id="title10636">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + </cc:Work> + <cc:License + id="License10612" + rdf:about="http://creativecommons.org/licenses/by/2.0/"> + <cc:permits + id="permits10614" + rdf:resource="http://web.resource.org/cc/Reproduction" /> + <cc:permits + id="permits10616" + rdf:resource="http://web.resource.org/cc/Distribution" /> + <cc:requires + id="requires10618" + rdf:resource="http://web.resource.org/cc/Notice" /> + <cc:requires + id="requires10620" + rdf:resource="http://web.resource.org/cc/Attribution" /> + <cc:prohibits + id="prohibits10622" + rdf:resource="http://web.resource.org/cc/CommercialUse" /> + <cc:permits + id="permits10624" + rdf:resource="http://web.resource.org/cc/DerivativeWorks" /> + <cc:requires + id="requires10626" + rdf:resource="http://web.resource.org/cc/ShareAlike" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + id="button-clicked" + d="M 10.062153,4.5422442 L 39.962043,4.5422442 C 43.051428,4.5422442 45.538557,7.0293698 45.538557,10.118760 L 45.538557,40.018652 C 45.538557,43.108036 43.051428,45.595165 39.962043,45.595165 L 10.062153,45.595165 C 6.9727638,45.595165 4.4856382,43.108036 4.4856382,40.018652 L 4.4856382,10.118760 C 4.4856382,7.0293698 6.9727638,4.5422442 10.062153,4.5422442 z " + style="fill:#002457;fill-opacity:1.0000000;stroke:#222222;stroke-width:0.60883564;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="button-hover" + d="M 10.062153,4.5422442 L 39.962043,4.5422442 C 43.051428,4.5422442 45.538557,7.0293698 45.538557,10.118760 L 45.538557,40.018652 C 45.538557,43.108036 43.051428,45.595165 39.962043,45.595165 L 10.062153,45.595165 C 6.9727638,45.595165 4.4856382,43.108036 4.4856382,40.018652 L 4.4856382,10.118760 C 4.4856382,7.0293698 6.9727638,4.5422442 10.062153,4.5422442 z " + style="fill:#5a769d;fill-opacity:1.0000000;stroke:#1a2584;stroke-width:0.60883564;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="button-border" + d="M 5.9482900,0.42838208 L 44.075906,0.42838208 C 47.165295,0.42838208 49.652421,2.9155074 49.652421,6.0048960 L 49.652421,44.132514 C 49.652421,47.221902 47.165295,49.709029 44.075906,49.709029 L 5.9482900,49.709029 C 2.8589014,49.709029 0.37177608,47.221902 0.37177608,44.132514 L 0.37177608,6.0048960 C 0.37177608,2.9155074 2.8589014,0.42838208 5.9482900,0.42838208 z " + style="fill:#5a769d;fill-opacity:1.0000000;stroke:#1a2584;stroke-width:0.73085701;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="button-normal" + d="M 10.062153,4.5422442 L 39.962043,4.5422442 C 43.051428,4.5422442 45.538557,7.0293698 45.538557,10.118760 L 45.538557,40.018652 C 45.538557,43.108036 43.051428,45.595165 39.962043,45.595165 L 10.062153,45.595165 C 6.9727638,45.595165 4.4856382,43.108036 4.4856382,40.018652 L 4.4856382,10.118760 C 4.4856382,7.0293698 6.9727638,4.5422442 10.062153,4.5422442 z " + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.60883564;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + transform="matrix(0.121266,0.000000,0.000000,0.121266,5.577830e-3,5.531942e-2)" + id="highlights"> + <path + id="highlight-body" + d="M 92.444729,53.229813 L 318.29808,53.229813 C 340.52003,53.229813 358.40990,71.119684 358.40990,93.341633 L 358.40990,319.19499 C 358.40990,341.41694 340.52003,359.30681 318.29808,359.30681 L 92.444729,359.30681 C 70.222780,359.30681 52.332909,341.41694 52.332909,319.19499 L 52.332909,93.341633 C 52.332909,71.119684 70.222780,53.229813 92.444729,53.229813 z " + style="opacity:0.67948717;fill:url(#linearGradient3578);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + style="opacity:0.67948717;fill:url(#radialGradient3593);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 82.729374,53.229814 L 328.01344,53.229814 C 344.85308,53.229814 358.40991,71.335791 358.40991,73.574330 C 358.40991,84.824778 344.85308,103.97078 328.01344,103.97078 L 82.729374,103.97078 C 65.889734,103.97078 52.332909,84.824778 52.332909,73.574330 C 52.332909,71.335791 65.889734,53.229814 82.729374,53.229814 z " + id="highlight-top" + sodipodi:nodetypes="ccsccsc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + </g> + <path + id="button-border-2" + d="M 5.9503794,53.517099 L 91.073775,53.517099 C 94.163165,53.517099 96.650294,56.004222 96.650294,59.093613 L 96.650294,95.719634 C 96.650294,98.809023 94.163165,101.29615 91.073775,101.29615 L 5.9503794,101.29615 C 2.8609905,101.29615 0.37386511,98.809023 0.37386511,95.719634 L 0.37386511,59.093613 C 0.37386511,56.004222 2.8609905,53.517099 5.9503794,53.517099 z " + style="fill:#5a769d;fill-opacity:1.0000000;stroke:#1a2584;stroke-width:0.72785383;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="button-border-6" + d="M 5.9585513,105.25127 L 285.10433,105.25127 C 288.19370,105.25127 290.68081,107.73839 290.68081,110.82779 L 290.68081,147.46228 C 290.68081,150.55166 288.19370,153.03880 285.10433,153.03880 L 5.9585513,153.03880 C 2.8691622,153.03880 0.38203691,150.55166 0.38203691,147.46228 L 0.38203691,110.82779 C 0.38203691,107.73839 2.8691622,105.25127 5.9585513,105.25127 z " + style="fill:#5a769d;fill-opacity:1.0000000;stroke:#1a2584;stroke-width:0.72988868;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="button-border-5" + d="M 5.9547227,156.48455 L 236.60129,156.48455 C 239.69068,156.48455 242.17781,158.97168 242.17781,162.06106 L 242.17781,198.74024 C 242.17781,201.82962 239.69068,204.31675 236.60129,204.31675 L 5.9547227,204.31675 C 2.8653336,204.31675 0.37820832,201.82962 0.37820832,198.74024 L 0.37820832,162.06106 C 0.37820832,158.97168 2.8653336,156.48455 5.9547227,156.48455 z " + style="fill:#5a769d;fill-opacity:1.0000000;stroke:#1a2584;stroke-width:0.72644013;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="path10599" + d="M 36.818548,33.100372 L 36.818548,44.447428 L 44.354378,38.817213 L 36.818548,33.100372 z " + style="fill:#b1d2ff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.36379874;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttons/randombutton-checked.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttons/randombutton-checked.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttons/randombutton-clicked.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttons/randombutton-clicked.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttons/randombutton-hover.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttons/randombutton-hover.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/buttons/randombutton.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/buttons/randombutton.png differ diff -Nru lincity-ng-2.0/data/images/gui/buttons/round/button-round.svg lincity-ng-2.9~git20150314/data/images/gui/buttons/round/button-round.svg --- lincity-ng-2.0/data/images/gui/buttons/round/button-round.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttons/round/button-round.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,541 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="50.000000px" + height="200.00000px" + id="svg5841" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttons/round" + sodipodi:docname="button-round.svg"> + <defs + id="defs3"> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4939" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,75.35825,712.3937)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4937" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,74.67327,712.1648)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4935" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,86.19294,712.3937)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4933" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,85.50803,712.1648)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="radialGradient4931" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + cx="142.69258" + cy="642.58405" + fx="142.69258" + fy="642.58405" + r="163.60149" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4929" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + x1="362.26712" + y1="528.35089" + x2="362.26712" + y2="315.58200" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4953" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954811,0.000000,0.000000,0.954811,-108.7130,-686.8166)" + x1="142.10399" + y1="761.95691" + x2="142.10399" + y2="728.53491" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4972" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.143872e-2,1.027095e-2,-6.832485e-3,4.087037e-2,235.3708,684.1136)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4970" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.112491e-2,0.000000,0.000000,5.048860e-2,234.5533,683.8408)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4968" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,82.37292,420.7108)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4966" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,73.11722,421.5058)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + id="linearGradient2900"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop2902" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop2904" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4964" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,228.6046,420.7108)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + id="linearGradient2130"> + <stop + style="stop-color:#f9ff28;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2132" /> + <stop + style="stop-color:#ff8d00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2134" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4962" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,218.9398,421.5058)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + id="linearGradient3572" + inkscape:collect="always"> + <stop + id="stop3574" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop3576" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4940" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064551,0.000000,0.000000,0.603992,-121.3425,-547.3395)" + x1="137.11369" + y1="916.76855" + x2="137.11369" + y2="937.80872" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient5900" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,12.76315,57.26500)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient5903" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,12.07817,57.03610)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient5906" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,23.59784,57.26500)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient5910" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,22.91293,57.03610)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient5937" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954811,0.000000,0.000000,0.954811,-108.7130,-686.8166)" + x1="142.10399" + y1="761.95691" + x2="142.10399" + y2="728.53491" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient5939" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064551,0.000000,0.000000,0.603992,-121.3425,-547.3395)" + x1="137.11369" + y1="916.76855" + x2="137.11369" + y2="937.80872" /> + <linearGradient + y2="728.53491" + x2="142.10399" + y1="761.95691" + x1="142.10399" + gradientTransform="matrix(0.954811,0.000000,0.000000,0.954811,-108.7130,-686.8166)" + gradientUnits="userSpaceOnUse" + id="linearGradient1345" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="937.80872" + x2="137.11369" + y1="916.76855" + x1="137.11369" + gradientTransform="matrix(1.064551,0.000000,0.000000,0.603992,-121.3425,-547.3395)" + gradientUnits="userSpaceOnUse" + id="linearGradient1347" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient2920" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.137690,0.000000,0.000000,0.645489,-131.3229,-433.9075)" + x1="137.11369" + y1="916.76855" + x2="137.11369" + y2="937.80872" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient2923" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.005515,0.000000,0.000000,1.005515,-115.7397,-571.9903)" + x1="142.10399" + y1="761.95691" + x2="142.10399" + y2="728.53491" /> + <linearGradient + y2="728.53491" + x2="142.10399" + y1="761.95691" + x1="142.10399" + gradientTransform="matrix(0.954811,0.000000,0.000000,0.954811,-108.7130,-686.8166)" + gradientUnits="userSpaceOnUse" + id="linearGradient4208" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="937.80872" + x2="137.11369" + y1="916.76855" + x1="137.11369" + gradientTransform="matrix(1.064551,0.000000,0.000000,0.603992,-121.3425,-547.3395)" + gradientUnits="userSpaceOnUse" + id="linearGradient4210" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="3.6491141" + inkscape:cx="13.923216" + inkscape:cy="58.065115" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="766" + inkscape:window-height="717" + inkscape:window-x="-1" + inkscape:window-y="5" + showguides="true" + inkscape:guide-bbox="true"> + <sodipodi:guide + orientation="horizontal" + position="49.810008" + id="guide1336" /> + <sodipodi:guide + orientation="horizontal" + position="99.815349" + id="guide1338" /> + <sodipodi:guide + orientation="horizontal" + position="149.82069" + id="guide1340" /> + </sodipodi:namedview> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <g + inkscape:export-ydpi="36.669998" + inkscape:export-xdpi="36.669998" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-checked-20.png" + id="g1350"> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.71733892;stroke:#222222;fill-opacity:1.0000000;fill:#002457" + d="M 25.073920,0.81862925 C 38.472171,0.81862925 49.258489,11.604947 49.258489,25.003198 C 49.258489,38.401449 38.472171,49.187767 25.073920,49.187767 C 11.675669,49.187767 0.88935130,38.401449 0.88935130,25.003198 C 0.88935130,11.604947 11.675669,0.81862925 25.073920,0.81862925 z " + id="rect4031" /> + <g + inkscape:export-ydpi="110.25864" + inkscape:export-xdpi="110.25864" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-checked.png" + transform="matrix(1.202713,0.000000,0.000000,1.202713,-4.993899,-2.751169)" + id="g5927"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="38.234985" + rx="38.234985" + y="4.2949648" + x="6.2184892" + height="37.563015" + width="37.563015" + id="rect3396" + style="fill:url(#linearGradient4953);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="25.169258" + rx="25.169258" + y="4.7848940" + x="11.561118" + height="15.249610" + width="26.877748" + id="rect1860" + style="opacity:0.67948717;fill:url(#linearGradient4940);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:export-ydpi="37.209999" + inkscape:export-xdpi="37.209999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-20.png" + id="g1344"> + <path + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 25.073920,51.456845 C 38.472171,51.456845 49.258489,62.243162 49.258489,75.641414 C 49.258489,89.039665 38.472171,99.825982 25.073920,99.825982 C 11.675669,99.825982 0.88935130,89.039665 0.88935130,75.641414 C 0.88935130,62.243162 11.675669,51.456845 25.073920,51.456845 z " + id="rect4075" /> + <g + inkscape:export-ydpi="110.25864" + inkscape:export-xdpi="110.25864" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round.png" + id="g5931" + transform="matrix(1.202713,0.000000,0.000000,1.202713,-4.993899,47.88703)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="38.234985" + rx="38.234985" + y="4.2949648" + x="6.2184892" + height="37.563015" + width="37.563015" + id="rect5933" + style="fill:url(#linearGradient5937);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="25.169258" + rx="25.169258" + y="4.7848940" + x="11.561118" + height="15.249610" + width="26.877748" + id="rect5935" + style="opacity:0.67948717;fill:url(#linearGradient5939);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <g + id="g3685" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-clicked-20.png" + inkscape:export-xdpi="37.209999" + inkscape:export-ydpi="37.209999"> + <path + style="fill:none;fill-opacity:0.0000000;stroke:none;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.0000000" + d="M 25.073920,151.12308 C 38.472171,151.12308 49.258489,161.90939 49.258489,175.30764 C 49.258489,188.70589 38.472171,199.49222 25.073920,199.49222 C 11.675669,199.49222 0.88935130,188.70589 0.88935130,175.30764 C 0.88935130,161.90939 11.675669,151.12308 25.073920,151.12308 z " + id="path1354" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-hover-clicked.png" + inkscape:export-xdpi="91.669998" + inkscape:export-ydpi="91.669998" /> + <path + style="fill:#002457;fill-opacity:1.0000000;stroke:#222222;stroke-width:0.72000003;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 25.073920,154.50031 C 36.766040,154.50031 46.178831,163.91310 46.178831,175.60522 C 46.178831,187.29733 36.766040,196.71014 25.073920,196.71014 C 13.381800,196.71014 3.9690102,187.29733 3.9690102,175.60522 C 3.9690102,163.91310 13.381800,154.50031 25.073920,154.50031 z " + id="path2134" /> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="45.985722" + rx="45.985722" + y="155.82175" + x="5.2950540" + height="39.557743" + width="39.557743" + id="rect1346" + style="fill:url(#linearGradient2923);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="30.271400" + rx="30.271400" + y="156.15001" + x="10.711743" + height="16.297319" + width="28.724358" + id="rect1348" + style="opacity:0.67948717;fill:url(#linearGradient2920);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + transform="translate(0.000000,49.60108)" + inkscape:export-ydpi="37.209999" + inkscape:export-xdpi="37.209999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-20.png" + id="g4198"> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.71733892;stroke:#1a2584;fill-opacity:1.0000000;fill:#5a769d" + d="M 25.073920,51.456845 C 38.472171,51.456845 49.258489,62.243162 49.258489,75.641414 C 49.258489,89.039665 38.472171,99.825982 25.073920,99.825982 C 11.675669,99.825982 0.88935130,89.039665 0.88935130,75.641414 C 0.88935130,62.243162 11.675669,51.456845 25.073920,51.456845 z " + id="path4200" /> + <g + inkscape:export-ydpi="110.25864" + inkscape:export-xdpi="110.25864" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round.png" + id="g4202" + transform="matrix(1.202713,0.000000,0.000000,1.202713,-4.993899,47.88703)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="38.234985" + rx="38.234985" + y="4.2949648" + x="6.2184892" + height="37.563015" + width="37.563015" + id="rect4204" + style="fill:url(#linearGradient4208);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="25.169258" + rx="25.169258" + y="4.7848940" + x="11.561118" + height="15.249610" + width="26.877748" + id="rect4206" + style="opacity:0.67948717;fill:url(#linearGradient4210);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttons/savebutton.svg lincity-ng-2.9~git20150314/data/images/gui/buttons/savebutton.svg --- lincity-ng-2.0/data/images/gui/buttons/savebutton.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttons/savebutton.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,125 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="400.00000px" + height="50.000000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttons" + sodipodi:docname="savebutton.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/savebutton-hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + inkscape:collect="always" + id="linearGradient3572"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop3574" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop3576" /> + </linearGradient> + <linearGradient + y2="315.58200" + x2="362.26712" + y1="528.35089" + x1="362.26712" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + gradientUnits="userSpaceOnUse" + id="linearGradient1312" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1531.2733" + x2="191.11186" + y1="170.92076" + x1="191.11186" + gradientTransform="scale(7.943629,0.125887)" + id="linearGradient2076" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.9798990" + inkscape:cx="89.973562" + inkscape:cy="19.635064" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="925" + inkscape:window-height="546" + inkscape:window-x="287" + inkscape:window-y="381" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:nodetypes="ccccccccc" + id="button-blue" + d="M 10.036787,4.5309455 L 390.35262,4.5309455 C 393.43422,4.5309455 395.91507,7.0117973 395.91507,10.093394 L 395.91507,39.917862 C 395.91507,42.999457 393.43422,45.480309 390.35262,45.480309 L 10.036787,45.480309 C 6.9551913,45.480309 4.4743394,42.999457 4.4743394,39.917862 L 4.4743394,10.093394 C 4.4743394,7.0117973 6.9551913,4.5309455 10.036787,4.5309455 z " + style="fill:#889fc6;fill-opacity:1.0000000;stroke:#3d4652;stroke-width:0.60729992;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccc" + id="path1316" + d="M 10.036787,4.5309455 L 390.38419,4.5309455 C 393.46578,4.5309455 395.94664,7.0117973 395.94664,10.093394 L 395.94664,39.917862 C 395.94664,42.999457 393.46578,45.480309 390.38419,45.480309 L 10.036787,45.480309 C 6.9551913,45.480309 4.4743394,42.999457 4.4743394,39.917862 L 4.4743394,10.093394 C 4.4743394,7.0117973 6.9551913,4.5309455 10.036787,4.5309455 z " + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.60729992;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccc" + id="path2078" + d="M 10.036787,4.5309455 L 390.38419,4.5309455 C 393.46578,4.5309455 395.94664,7.0117973 395.94664,10.093394 L 395.94664,39.917862 C 395.94664,42.999457 393.46578,45.480309 390.38419,45.480309 L 10.036787,45.480309 C 6.9551913,45.480309 4.4743394,42.999457 4.4743394,39.917862 L 4.4743394,10.093394 C 4.4743394,7.0117973 6.9551913,4.5309455 10.036787,4.5309455 z " + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.60729992;stroke:#ffffff;fill-opacity:1.0000000;fill:#d0d0d0" /> + <g + transform="matrix(0.120961,0.000000,0.000000,0.120961,5.579865e-3,5.533878e-2)" + id="highlights"> + <path + sodipodi:nodetypes="ccccccccc" + id="highlight-body" + d="M 82.604334,53.229813 L 3227.0001,53.229813 C 3243.7705,53.229813 3257.2715,66.730868 3257.2715,83.501238 L 3257.2715,329.03538 C 3257.2715,345.80575 3243.7705,359.30681 3227.0001,359.30681 L 82.604334,359.30681 C 65.833964,359.30681 52.332909,345.80575 52.332909,329.03538 L 52.332909,83.501238 C 52.332909,66.730868 65.833964,53.229813 82.604334,53.229813 z " + style="opacity:0.67948717;fill:url(#linearGradient1312);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + style="opacity:0.67948717;fill:url(#linearGradient2076);fill-opacity:1.0;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 82.729374,53.229814 L 3223.7434,53.229814 C 3240.5831,53.229814 3254.1399,71.335791 3254.1399,73.574330 C 3254.1399,84.824778 3240.5831,103.97078 3223.7434,103.97078 L 82.729374,103.97078 C 65.889734,103.97078 52.332909,84.824778 52.332909,73.574330 C 52.332909,71.335791 65.889734,53.229814 82.729374,53.229814 z " + id="highlight-top" + sodipodi:nodetypes="ccsccsc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/buttons/tabbed/tabbed.svg lincity-ng-2.9~git20150314/data/images/gui/buttons/tabbed/tabbed.svg --- lincity-ng-2.0/data/images/gui/buttons/tabbed/tabbed.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/buttons/tabbed/tabbed.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,448 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="tabbed.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/buttons/tabbed" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg5841" + height="100.00000pt" + width="120.00000pt" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/tabbed/tabbed-hover.png" + inkscape:export-xdpi="24.000000" + inkscape:export-ydpi="24.000000"> + <defs + id="defs3"> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,75.35825,712.3937)" + gradientUnits="userSpaceOnUse" + id="linearGradient4939" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,74.67327,712.1648)" + gradientUnits="userSpaceOnUse" + id="radialGradient4937" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,86.19294,712.3937)" + gradientUnits="userSpaceOnUse" + id="linearGradient4935" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,85.50803,712.1648)" + gradientUnits="userSpaceOnUse" + id="radialGradient4933" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <radialGradient + r="163.60149" + fy="642.58405" + fx="142.69258" + cy="642.58405" + cx="142.69258" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + gradientUnits="userSpaceOnUse" + id="radialGradient4931" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="315.58200" + x2="362.26712" + y1="528.35089" + x1="362.26712" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + gradientUnits="userSpaceOnUse" + id="linearGradient4929" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(6.143872e-2,1.027095e-2,-6.832485e-3,4.087037e-2,235.3708,684.1136)" + gradientUnits="userSpaceOnUse" + id="linearGradient4972" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(5.112491e-2,0.000000,0.000000,5.048860e-2,234.5533,683.8408)" + gradientUnits="userSpaceOnUse" + id="radialGradient4970" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,82.37292,420.7108)" + gradientUnits="userSpaceOnUse" + id="linearGradient4968" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,73.11722,421.5058)" + gradientUnits="userSpaceOnUse" + id="radialGradient4966" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + id="linearGradient2900" + inkscape:collect="always"> + <stop + id="stop2902" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop2904" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,228.6046,420.7108)" + gradientUnits="userSpaceOnUse" + id="linearGradient4964" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <linearGradient + id="linearGradient2130"> + <stop + id="stop2132" + offset="0.0000000" + style="stop-color:#f9ff28;stop-opacity:1.0000000;" /> + <stop + id="stop2134" + offset="1.0000000" + style="stop-color:#ff8d00;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,218.9398,421.5058)" + gradientUnits="userSpaceOnUse" + id="radialGradient4962" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + id="linearGradient3572"> + <stop + style="stop-color:#ffffff;stop-opacity:0.64754099;" + offset="0.0000000" + id="stop3574" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop3576" /> + </linearGradient> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,12.76315,57.26500)" + gradientUnits="userSpaceOnUse" + id="linearGradient5900" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,12.07817,57.03610)" + gradientUnits="userSpaceOnUse" + id="radialGradient5903" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,23.59784,57.26500)" + gradientUnits="userSpaceOnUse" + id="linearGradient5906" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,22.91293,57.03610)" + gradientUnits="userSpaceOnUse" + id="radialGradient5910" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient3235" + gradientUnits="userSpaceOnUse" + x1="63.799751" + y1="92.719894" + x2="63.799751" + y2="17.526787" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient3237" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.327601,0.753238)" + x1="47.899021" + y1="14.893488" + x2="47.899021" + y2="32.709442" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4007" + gradientUnits="userSpaceOnUse" + x1="65.366478" + y1="51.760956" + x2="65.366478" + y2="16.246834" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4009" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.327601,0.753238)" + x1="51.888500" + y1="9.9966040" + x2="51.888500" + y2="24.573294" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4779" + gradientUnits="userSpaceOnUse" + x1="65.366478" + y1="51.760956" + x2="65.366478" + y2="16.246834" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4781" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.327601,0.753238)" + x1="51.888500" + y1="9.9966040" + x2="51.888500" + y2="24.573294" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="263" + inkscape:window-x="567" + inkscape:window-height="742" + inkscape:window-width="708" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="33.871015" + inkscape:cx="81.441852" + inkscape:zoom="2.1731748" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <g + id="g4769" + transform="matrix(1.000000,0.000000,0.000000,0.920354,2.344000,218.5240)"> + <path + id="path4771" + d="M 25.073920,0.81862925 C 38.472171,0.81862925 111.68635,0.81862925 125.08460,0.81862925 C 138.48285,0.81862925 149.26917,11.604947 149.26917,25.003198 L 149.25765,49.151828 L 0.90087370,49.151828 L 0.88935130,25.003198 C 0.88935130,11.604947 11.675669,0.81862925 25.073920,0.81862925 z " + style="fill:#575757;fill-opacity:1.0000000;stroke:#222222;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccccc" /> + <g + id="g4773" + transform="matrix(1.202713,0.000000,0.000000,1.223514,-4.212566,-3.621840)" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-checked.png" + inkscape:export-xdpi="110.25864" + inkscape:export-ydpi="110.25864"> + <rect + style="fill:url(#linearGradient4779);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4775" + width="120.71725" + height="37.563015" + x="6.2184892" + y="4.2949648" + rx="18.781507" + ry="18.672171" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + <rect + style="opacity:0.67948717;fill:url(#linearGradient4781);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4777" + width="108.73270" + height="15.249610" + x="11.561118" + y="4.7848940" + rx="13.438874" + ry="7.1030049" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + </g> + </g> + <g + id="g3997" + transform="translate(2.344000,164.5754)"> + <path + id="path3999" + d="M 25.073920,0.81862925 C 38.472171,0.81862925 111.68635,0.81862925 125.08460,0.81862925 C 138.48285,0.81862925 149.26917,11.604947 149.26917,25.003198 L 149.25765,49.151828 L 0.90087370,49.151828 L 0.88935130,25.003198 C 0.88935130,11.604947 11.675669,0.81862925 25.073920,0.81862925 z " + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccccc" /> + <g + id="g4001" + transform="matrix(1.202713,0.000000,0.000000,1.223514,-4.212566,-3.621840)" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-checked.png" + inkscape:export-xdpi="110.25864" + inkscape:export-ydpi="110.25864"> + <rect + style="fill:url(#linearGradient4007);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4003" + width="120.71725" + height="37.563015" + x="6.2184892" + y="4.2949648" + rx="18.781507" + ry="17.185011" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + <rect + style="opacity:0.67948717;fill:url(#linearGradient4009);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4005" + width="108.73270" + height="15.249610" + x="11.561118" + y="4.7848940" + rx="13.438874" + ry="6.5372806" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + </g> + </g> + <path + id="button-bg-normal" + d="M 25.073920,0.92327625 C 38.472171,0.92327625 111.68635,0.92327625 125.08460,0.92327625 C 138.48285,0.92327625 149.26917,11.709594 149.26917,25.107845 L 149.25765,124.26449 L 0.90087324,124.26449 L 0.88935084,25.107845 C 0.88935084,11.709594 11.675669,0.92327625 25.073920,0.92327625 z " + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#222222;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccccc" /> + <path + id="button-bg-hover" + d="M 25.073920,0.92327625 C 38.472171,0.92327625 111.68635,0.92327625 125.08460,0.92327625 C 138.48285,0.92327625 149.26917,11.709594 149.26917,25.107845 L 149.25765,124.26449 L 0.90087324,124.26449 L 0.88935084,25.107845 C 0.88935084,11.709594 11.675669,0.92327625 25.073920,0.92327625 z " + style="fill:#5a769d;fill-opacity:1.0000000;stroke:#1a2584;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccccc" /> + <path + id="button-bg-checked1" + d="M 25.073920,0.92327625 C 38.472171,0.92327625 111.68635,0.92327625 125.08460,0.92327625 C 138.48285,0.92327625 149.26917,11.709594 149.26917,25.107845 L 149.25765,124.26449 L 0.90087324,124.26449 L 0.88935084,25.107845 C 0.88935084,11.709594 11.675669,0.92327625 25.073920,0.92327625 z " + style="fill:#002457;fill-opacity:1.0000000;stroke:#222222;stroke-width:0.71733892;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccccc" /> + <g + id="g3229" + transform="matrix(1.202713,0.000000,0.000000,1.223514,-4.212566,-3.517193)" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttons/button-round-checked.png" + inkscape:export-xdpi="110.25864" + inkscape:export-ydpi="110.25864"> + <rect + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.58344406;stroke:none;fill-opacity:1.0;fill:url(#linearGradient3235)" + id="rect3231" + width="120.06760" + height="87.098679" + x="6.2184892" + y="16.064699" + rx="4.3978157" + ry="4.3978157" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + <rect + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:13.632646;stroke:none;fill-opacity:1.0;fill:url(#linearGradient3237);opacity:0.67948717" + id="rect3233" + width="108.73270" + height="15.249610" + x="11.561118" + y="5.4234920" + rx="13.438874" + ry="7.6248050" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/checkbox/checkbox.svg lincity-ng-2.9~git20150314/data/images/gui/checkbox/checkbox.svg --- lincity-ng-2.0/data/images/gui/checkbox/checkbox.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/checkbox/checkbox.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,246 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="checkbox.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="315.00000pt" + width="210mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + y2="303.58148" + x2="197.87488" + y1="444.14270" + x1="482.88602" + gradientTransform="matrix(0.948836,0.000000,0.000000,0.738747,-133.7684,-70.90894)" + gradientUnits="userSpaceOnUse" + id="linearGradient3453" + xlink:href="#linearGradient1738" + inkscape:collect="always" /> + <linearGradient + y2="737.44690" + x2="681.54474" + y1="721.96411" + x1="680.29120" + gradientTransform="matrix(5.683406,0.000000,0.000000,4.909315,-3569.570,-3436.947)" + gradientUnits="userSpaceOnUse" + id="linearGradient3450" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.73092371;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + y2="728.05103" + x2="652.25720" + y1="720.26569" + x1="651.09534" + gradientTransform="matrix(5.683406,0.000000,0.000000,4.909315,-3569.240,-3440.256)" + gradientUnits="userSpaceOnUse" + id="linearGradient3447" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + id="linearGradient2101"> + <stop + id="stop2103" + offset="0.0000000" + style="stop-color:#404040;stop-opacity:1.0000000;" /> + <stop + id="stop2105" + offset="1.0000000" + style="stop-color:#ababab;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2091"> + <stop + id="stop2093" + offset="0.0000000" + style="stop-color:#313131;stop-opacity:1.0000000;" /> + <stop + id="stop2095" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + y2="345.99414" + x2="667.91943" + y1="58.899452" + x1="382.30457" + gradientUnits="userSpaceOnUse" + id="linearGradient2978" + xlink:href="#linearGradient2101" + inkscape:collect="always" /> + <linearGradient + y2="55.753906" + x2="373.55722" + y1="350.72879" + x1="674.28479" + gradientUnits="userSpaceOnUse" + id="linearGradient2980" + xlink:href="#linearGradient2101" + inkscape:collect="always" /> + <linearGradient + y2="262.03778" + x2="628.72760" + y1="69.620697" + x1="474.40027" + gradientTransform="matrix(0.968482,0.000000,0.000000,0.968482,16.43406,6.287867)" + gradientUnits="userSpaceOnUse" + id="linearGradient2982" + xlink:href="#linearGradient2091" + inkscape:collect="always" /> + <linearGradient + y2="344.30698" + x2="646.80865" + y1="50.686272" + x1="425.06354" + gradientTransform="matrix(0.968482,0.000000,0.000000,0.968482,16.43406,6.287867)" + gradientUnits="userSpaceOnUse" + id="linearGradient2984" + xlink:href="#linearGradient2101" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + inkscape:window-y="0" + inkscape:window-x="0" + inkscape:window-height="997" + inkscape:window-width="1272" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="426.89802" + inkscape:cx="382.41847" + inkscape:zoom="0.70000000" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <g + id="g3472"> + <use + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + height="1052.3622" + width="744.09448" + transform="translate(-355.7142,0.000000)" + id="use2976" + xlink:href="#g2971" + y="0.0000000" + x="0.0000000" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" + d="M 47.312152,145.93379 L 147.74452,346.79823 L 359.26089,165.71592 L 336.43542,129.19509 L 187.30868,212.88857 L 159.91806,104.84781 L 47.312152,145.93379 z " + id="path3839" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient3453);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:4.1861291;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 46.551392,125.39080 L 146.98366,326.25534 L 358.50003,145.17293 L 335.67456,108.65210 L 186.54782,192.34568 L 159.15720,84.304916 L 46.551392,125.39080 z " + id="path3841" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient3450);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 330.12469,119.30179 C 320.54047,123.23026 283.71372,145.08190 267.10561,156.19669 C 250.49741,167.31147 260.86527,170.26653 264.49442,167.72816 C 316.76567,131.16716 312.97419,133.32403 347.34466,146.78282 C 353.97606,149.37957 338.67213,115.79834 330.12469,119.30179 z " + id="path3843" + sodipodi:nodetypes="cssss" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient3447);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 148.26240,96.071737 C 133.22321,97.081469 93.490521,116.87387 102.08484,116.75264 C 145.41200,116.14180 143.62341,105.31718 158.08695,125.25482 C 162.26878,131.01938 161.36340,95.192188 148.26240,96.071737 z " + id="path3845" + sodipodi:nodetypes="csss" /> + </g> + <g + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox.png" + transform="translate(35.71428,-1.428571)" + id="g2971"> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox.png" + id="path1330" + d="M 392.86224,55.218750 C 384.14215,55.218750 377.13839,62.222501 377.13839,70.942594 L 377.13839,328.03318 C 377.13839,336.75327 384.14215,343.78572 392.86224,343.78572 L 649.95282,343.78572 C 658.67291,343.78572 665.70537,336.75326 665.70536,328.03318 L 665.70536,70.942594 C 665.70536,62.222501 658.67292,55.218750 649.95282,55.218750 L 392.86224,55.218750 z M 415.15681,77.513324 L 627.65825,77.513324 C 636.37833,77.513324 643.41078,84.517075 643.41078,93.237168 L 643.41078,305.73861 C 643.41077,314.45871 636.37834,321.49114 627.65825,321.49114 L 415.15681,321.49114 C 406.43672,321.49116 399.43297,314.45870 399.43297,305.73861 L 399.43297,93.237168 C 399.43297,84.517078 406.43672,77.513324 415.15681,77.513324 z " + style="fill:url(#linearGradient2978);fill-opacity:1.0000000;stroke:none;stroke-width:1.0000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.62323946" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox.png" + id="rect1317" + d="M 375.71875,36.642857 C 366.22161,36.642857 358.56250,44.301968 358.56250,53.799107 L 358.56250,345.20536 C 358.56250,354.70250 366.22161,362.36161 375.71875,362.36161 L 667.15625,362.36161 C 676.65339,362.36161 684.28122,354.70250 684.28125,345.20536 L 684.28125,53.799107 C 684.28125,44.301964 676.65339,36.642857 667.15625,36.642857 L 375.71875,36.642857 z M 405.71875,66.642857 L 637.15625,66.642857 C 646.65339,66.642857 654.28125,74.301964 654.28125,83.799107 L 654.28125,315.20536 C 654.28122,324.70250 646.65339,332.36161 637.15625,332.36161 L 405.71875,332.36161 C 396.22161,332.36161 388.56250,324.70250 388.56250,315.20536 L 388.56250,83.799107 C 388.56250,74.301968 396.22161,66.642857 405.71875,66.642857 z " + style="fill:url(#linearGradient2980);fill-opacity:1.0000000;stroke:none;stroke-width:1.0000002;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.62323946" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox.png" + id="rect1319" + d="M 385.81923,47.314330 C 376.62142,47.314330 369.23397,54.701774 369.23397,63.899588 L 369.23397,335.07461 C 369.23397,344.27242 376.62142,351.69014 385.81923,351.69014 L 656.99425,351.69014 C 666.19206,351.69014 673.60979,344.27242 673.60978,335.07461 L 673.60978,63.899588 C 673.60978,54.701774 666.19207,47.314330 656.99425,47.314330 L 385.81923,47.314330 z M 409.33519,70.830289 L 633.47829,70.830289 C 642.67610,70.830289 650.09382,78.217733 650.09382,87.415547 L 650.09382,311.55865 C 650.09381,320.75648 642.67611,328.17418 633.47829,328.17418 L 409.33519,328.17418 C 400.13738,328.17420 392.74993,320.75647 392.74993,311.55865 L 392.74993,87.415547 C 392.74993,78.217737 400.13738,70.830289 409.33519,70.830289 z " + style="fill:url(#linearGradient2982);fill-opacity:1.0000000;stroke:url(#linearGradient2984);stroke-width:2.9054468;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.62323946" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/dialogs/buttons.svg lincity-ng-2.9~git20150314/data/images/gui/dialogs/buttons.svg --- lincity-ng-2.0/data/images/gui/dialogs/buttons.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/dialogs/buttons.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,1298 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320.00000px" + height="64.000000px" + id="svg2682" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/dialogs" + sodipodi:docname="buttons.svg" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/continue.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient1846" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.185668,0.000000,0.000000,0.144558,-24.17608,-22.48570)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient1843" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112122,0.000000,0.000000,0.960649,-696.4895,-681.1477)" + x1="680.29120" + y1="721.96411" + x2="681.54474" + y2="737.44690" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient1840" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112122,0.000000,0.000000,0.960649,-696.4248,-681.7953)" + x1="651.09534" + y1="720.26569" + x2="652.25720" + y2="728.05103" /> + <linearGradient + id="linearGradient5619"> + <stop + id="stop5621" + offset="0.0000000" + style="stop-color:#4646db;stop-opacity:1.0000000;" /> + <stop + id="stop5623" + offset="1.0000000" + style="stop-color:#0000ad;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5611"> + <stop + id="stop5613" + offset="0.0000000" + style="stop-color:#6a6ab9;stop-opacity:1.0000000;" /> + <stop + id="stop5615" + offset="1.0000000" + style="stop-color:#0000b9;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4305"> + <stop + id="stop4307" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.73333335;" /> + <stop + id="stop4309" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4255"> + <stop + id="stop4257" + offset="0.0000000" + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" /> + <stop + id="stop4259" + offset="1.0000000" + style="stop-color:#bac320;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <linearGradient + id="linearGradient2250"> + <stop + id="stop2252" + offset="0.0000000" + style="stop-color:#08ff00;stop-opacity:1.0000000;" /> + <stop + id="stop2254" + offset="1.0000000" + style="stop-color:#047c00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5873"> + <stop + id="stop5875" + offset="0.0000000" + style="stop-color:#cd0000;stop-opacity:1.0000000;" /> + <stop + id="stop5877" + offset="1.0000000" + style="stop-color:#5d0000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient6641"> + <stop + id="stop6643" + offset="0.0000000" + style="stop-color:#cdcdcd;stop-opacity:1.0000000;" /> + <stop + id="stop6645" + offset="1.0000000" + style="stop-color:#7e7e7e;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient7409"> + <stop + id="stop7411" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop7413" + offset="1.0000000" + style="stop-color:#dadada;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5083"> + <stop + id="stop5085" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop5087" + offset="1.0000000" + style="stop-color:#c7c7c7;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + id="stop4962" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:0.73092371;" /> + <stop + id="stop4964" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient4819" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <linearGradient + y2="105.80302" + x2="147.37901" + y1="54.015789" + x1="-11.401763" + gradientTransform="matrix(1.006060,0.000000,0.000000,0.993976,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="linearGradient4821" + xlink:href="#linearGradient5873" + inkscape:collect="always" /> + <radialGradient + r="32.320759" + fy="130.17122" + fx="66.017220" + cy="130.17122" + cx="66.017220" + gradientTransform="matrix(1.094547,0.000000,0.000000,0.913620,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="radialGradient4823" + xlink:href="#linearGradient6641" + inkscape:collect="always" /> + <linearGradient + y2="67.411362" + x2="108.55267" + y1="40.738884" + x1="42.912979" + gradientTransform="matrix(1.046660,0.000000,0.000000,0.955420,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="linearGradient4825" + xlink:href="#linearGradient7409" + inkscape:collect="always" /> + <radialGradient + r="16.361969" + fy="21.519323" + fx="44.846992" + cy="21.519323" + cx="44.846992" + gradientTransform="matrix(0.895747,0.000000,0.000000,1.116387,1.553001,-66.94390)" + gradientUnits="userSpaceOnUse" + id="radialGradient4827" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient5675" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,328.5124,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient5681" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5735" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5737" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5739" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5741" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5743" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5745" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5747" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5749" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5751" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5753" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5755" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5757" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5759" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5761" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5763" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.111036,0.000000,0.000000,0.105483,-7.029064,68.69130)" + gradientUnits="userSpaceOnUse" + id="linearGradient5772" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-7.044215,-299.8652)" + gradientUnits="userSpaceOnUse" + id="linearGradient5774" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-23.30408,-298.9517)" + gradientUnits="userSpaceOnUse" + id="linearGradient5776" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.111036,0.000000,0.000000,0.105483,-7.029064,68.69130)" + gradientUnits="userSpaceOnUse" + id="linearGradient5786" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-7.044215,-299.8652)" + gradientUnits="userSpaceOnUse" + id="linearGradient5788" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-23.30408,-298.9517)" + gradientUnits="userSpaceOnUse" + id="linearGradient5790" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="-66.948143" + x2="39.943436" + y1="213.50429" + x1="109.87711" + gradientTransform="scale(2.267604,0.440994)" + gradientUnits="userSpaceOnUse" + id="linearGradient6576" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-42.57266,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient6578" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,661.3695,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient6582" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,659.8543,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient11496" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="16.361969" + fy="21.519323" + fx="44.846992" + cy="21.519323" + cx="44.846992" + gradientTransform="matrix(0.895747,0.000000,0.000000,1.116387,1.553001,-66.94390)" + gradientUnits="userSpaceOnUse" + id="radialGradient11575" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient11601" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <linearGradient + y2="204.51534" + x2="117.04985" + y1="-50.768177" + x1="43.171165" + gradientTransform="scale(2.267603,0.440994)" + gradientUnits="userSpaceOnUse" + id="linearGradient11755" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-42.57266,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient11757" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,328.5124,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient11760" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5611" + id="linearGradient1617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.267604,0.000000,0.000000,0.440994,660.0000,0.000000)" + x1="109.87711" + y1="213.50429" + x2="39.943436" + y2="-66.948143" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="radialGradient1619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,617.4273,-39.20266)" + cx="136.72566" + cy="182.32797" + fx="136.72566" + fy="182.32797" + r="223.02463" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="radialGradient1861" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-48.74064,-43.47821)" + cx="136.72566" + cy="182.32797" + fx="136.72566" + fy="182.32797" + r="223.02463" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5619" + id="linearGradient1864" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.945449,0.000000,0.000000,0.440994,-0.203957,-0.601013)" + x1="41.377975" + y1="-104.70135" + x2="102.70443" + y2="206.31320" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5611" + id="linearGradient2671" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.945449,0.000000,0.000000,0.440994,-0.203957,-0.601013)" + x1="41.377975" + y1="-104.70135" + x2="102.70443" + y2="206.31320" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="radialGradient2673" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-48.74064,-43.47821)" + cx="136.72566" + cy="182.32797" + fx="136.72566" + fy="182.32797" + r="223.02463" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5611" + id="linearGradient2683" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.100359,0.476109)" + x1="97.365501" + y1="206.21461" + x2="41.545345" + y2="-90.737816" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="radialGradient2685" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-48.74064,-43.47821)" + cx="136.72566" + cy="182.32797" + fx="136.72566" + fy="182.32797" + r="223.02463" /> + <linearGradient + y2="206.31320" + x2="102.70443" + y1="-104.70135" + x1="41.377975" + gradientTransform="matrix(1.945449,0.000000,0.000000,0.440994,-0.203957,-0.601013)" + gradientUnits="userSpaceOnUse" + id="linearGradient1661" + xlink:href="#linearGradient5619" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-48.74064,-43.47821)" + gradientUnits="userSpaceOnUse" + id="radialGradient1663" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="206.31320" + x2="102.70443" + y1="-104.70135" + x1="41.377975" + gradientTransform="matrix(1.945449,0.000000,0.000000,0.440994,-0.203957,-0.601013)" + gradientUnits="userSpaceOnUse" + id="linearGradient1665" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-48.74064,-43.47821)" + gradientUnits="userSpaceOnUse" + id="radialGradient1667" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="-90.737816" + x2="41.545345" + y1="206.21461" + x1="97.365501" + gradientTransform="scale(2.100359,0.476109)" + gradientUnits="userSpaceOnUse" + id="linearGradient1669" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-48.74064,-43.47821)" + gradientUnits="userSpaceOnUse" + id="radialGradient1671" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="303.58148" + x2="197.87488" + y1="444.14270" + x1="482.88602" + gradientTransform="matrix(0.185668,0.000000,0.000000,0.144558,-24.17608,-22.48570)" + gradientUnits="userSpaceOnUse" + id="linearGradient1825" + xlink:href="#linearGradient1738" + inkscape:collect="always" /> + <linearGradient + y2="737.44690" + x2="681.54474" + y1="721.96411" + x1="680.29120" + gradientTransform="matrix(1.112122,0.000000,0.000000,0.960649,-696.4895,-681.1477)" + gradientUnits="userSpaceOnUse" + id="linearGradient1827" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="728.05103" + x2="652.25720" + y1="720.26569" + x1="651.09534" + gradientTransform="matrix(1.112122,0.000000,0.000000,0.960649,-696.4248,-681.7953)" + gradientUnits="userSpaceOnUse" + id="linearGradient1829" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.111036,0.000000,0.000000,0.105483,-7.029064,68.69130)" + gradientUnits="userSpaceOnUse" + id="linearGradient1831" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-7.044215,-299.8652)" + gradientUnits="userSpaceOnUse" + id="linearGradient1833" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-23.30408,-298.9517)" + gradientUnits="userSpaceOnUse" + id="linearGradient1835" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="303.58148" + x2="197.87488" + y1="444.14270" + x1="482.88602" + gradientTransform="matrix(0.185668,0.000000,0.000000,0.144558,-24.17608,-22.48570)" + gradientUnits="userSpaceOnUse" + id="linearGradient1857" + xlink:href="#linearGradient1738" + inkscape:collect="always" /> + <linearGradient + y2="737.44690" + x2="681.54474" + y1="721.96411" + x1="680.29120" + gradientTransform="matrix(1.112122,0.000000,0.000000,0.960649,-696.4895,-681.1477)" + gradientUnits="userSpaceOnUse" + id="linearGradient1859" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="728.05103" + x2="652.25720" + y1="720.26569" + x1="651.09534" + gradientTransform="matrix(1.112122,0.000000,0.000000,0.960649,-696.4248,-681.7953)" + gradientUnits="userSpaceOnUse" + id="linearGradient1861" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.111036,0.000000,0.000000,0.105483,-7.029064,68.69130)" + gradientUnits="userSpaceOnUse" + id="linearGradient1863" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-7.044215,-299.8652)" + gradientUnits="userSpaceOnUse" + id="linearGradient1865" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-23.30408,-298.9517)" + gradientUnits="userSpaceOnUse" + id="linearGradient1867" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.3684178" + inkscape:cx="476.48889" + inkscape:cy="-28.254664" + inkscape:document-units="px" + inkscape:current-layer="normal" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="966" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:creator + id="creator1530"> + <cc:Agent + id="Agent1532"> + <dc:title + id="title1534">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <cc:license + id="license1536" + rdf:resource="http://web.resource.org/cc/PublicDomain" /> + <dc:title + id="title1546">Main Menu Buttons for lincity-ng</dc:title> + <dc:date + id="date1548">2005-03-30</dc:date> + </cc:Work> + <cc:License + rdf:about="http://web.resource.org/cc/PublicDomain" + id="License1538"> + <cc:permits + rdf:resource="http://web.resource.org/cc/Reproduction" + id="permits1540" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/Distribution" + id="permits1542" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/DerivativeWorks" + id="permits1544" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + inkscape:label="Normal" + inkscape:groupmode="layer" + id="normal"> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/nobutton.png" + transform="translate(0.000000,73.37610)" + id="g1637"> + <rect + ry="11.545874" + rx="11.545874" + y="3.1025240" + x="3.6166751" + height="60.887047" + width="271.98602" + id="rect1639" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <rect + ry="11.545874" + rx="11.545874" + y="0.47785056" + x="0.46706694" + height="60.887047" + width="271.98602" + id="rect1641" + style="fill:url(#linearGradient1661);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path1643" + d="M 5.8153024,14.128544 C 2.9045644,15.314034 3.2545356,4.9257225 13.278670,2.8473072 C 18.223200,1.8221028 141.78467,2.7484237 146.38299,3.4347599 C 149.00358,3.8259022 73.089532,2.9702836 38.435123,5.0805588 C 3.7807175,7.1908341 10.385950,12.267003 5.8153024,14.128544 z " + style="fill:url(#radialGradient1663);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/nobutton-hover.png" + id="g1645" + transform="translate(298.1629,73.37610)"> + <rect + ry="11.545874" + rx="11.545874" + y="3.1025240" + x="3.6166751" + height="60.887047" + width="271.98602" + id="rect1647" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <rect + ry="11.545874" + rx="11.545874" + y="0.47785056" + x="0.46706694" + height="60.887047" + width="271.98602" + id="rect1649" + style="fill:url(#linearGradient1665);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path1651" + d="M 5.8153024,14.128544 C 2.9045644,15.314034 3.2545356,4.9257225 13.278670,2.8473072 C 18.223200,1.8221028 141.78467,2.7484237 146.38299,3.4347599 C 149.00358,3.8259022 73.089532,2.9702836 38.435123,5.0805588 C 3.7807175,7.1908341 10.385950,12.267003 5.8153024,14.128544 z " + style="fill:url(#radialGradient1667);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/nobutton-clicked.png" + id="g1653" + transform="translate(598.4256,73.37610)"> + <rect + ry="11.545874" + rx="11.545874" + y="3.1025240" + x="3.6166751" + height="60.887047" + width="271.98602" + id="rect1655" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <rect + ry="11.545874" + rx="11.545874" + y="0.47785056" + x="0.46706694" + height="60.887047" + width="271.98602" + id="rect1657" + style="fill:url(#linearGradient1669);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path1659" + d="M 5.8153024,14.128544 C 2.9045644,15.314034 3.2545356,4.9257225 13.278670,2.8473072 C 18.223200,1.8221028 141.78467,2.7484237 146.38299,3.4347599 C 149.00358,3.8259022 73.089532,2.9702836 38.435123,5.0805588 C 3.7807175,7.1908341 10.385950,12.267003 5.8153024,14.128544 z " + style="fill:url(#radialGradient1671);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/yesbutton.png" + id="g2648"> + <rect + ry="11.545874" + rx="11.545874" + y="3.1025240" + x="3.6166751" + height="60.887047" + width="271.98602" + id="rect1867" + style="stroke-opacity:0.63667822;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.88167548;stroke:none;fill-rule:nonzero;fill-opacity:0.55294120;fill:#000000" /> + <rect + ry="11.545874" + rx="11.545874" + y="0.47785056" + x="0.46706694" + height="60.887047" + width="271.98602" + id="rect1529" + style="fill:url(#linearGradient1864);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path1531" + d="M 5.8153024,14.128544 C 2.9045644,15.314034 3.2545356,4.9257225 13.278670,2.8473072 C 18.223200,1.8221028 141.78467,2.7484237 146.38299,3.4347599 C 149.00358,3.8259022 73.089532,2.9702836 38.435123,5.0805588 C 3.7807175,7.1908341 10.385950,12.267003 5.8153024,14.128544 z " + style="fill:url(#radialGradient1861);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/yesbutton-hover.png" + id="g2663" + transform="translate(298.1629,0.000000)"> + <rect + ry="11.545874" + rx="11.545874" + y="3.1025240" + x="3.6166751" + height="60.887047" + width="271.98602" + id="rect2665" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <rect + ry="11.545874" + rx="11.545874" + y="0.47785056" + x="0.46706694" + height="60.887047" + width="271.98602" + id="rect2667" + style="stroke-opacity:0.63667822;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:0.88167548;stroke:#4494e1;fill-rule:nonzero;fill-opacity:1.0;fill:url(#linearGradient2671)" /> + <path + sodipodi:nodetypes="cssss" + id="path2669" + d="M 5.8153024,14.128544 C 2.9045644,15.314034 3.2545356,4.9257225 13.278670,2.8473072 C 18.223200,1.8221028 141.78467,2.7484237 146.38299,3.4347599 C 149.00358,3.8259022 73.089532,2.9702836 38.435123,5.0805588 C 3.7807175,7.1908341 10.385950,12.267003 5.8153024,14.128544 z " + style="fill:url(#radialGradient2673);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/yesbutton-clicked.png" + id="g2675" + transform="translate(598.4256,0.000000)"> + <rect + ry="11.545874" + rx="11.545874" + y="3.1025240" + x="3.6166751" + height="60.887047" + width="271.98602" + id="rect2677" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <rect + ry="11.545874" + rx="11.545874" + y="0.47785056" + x="0.46706694" + height="60.887047" + width="271.98602" + id="rect2679" + style="fill:url(#linearGradient2683);fill-opacity:1.0;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.88167548;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path2681" + d="M 5.8153024,14.128544 C 2.9045644,15.314034 3.2545356,4.9257225 13.278670,2.8473072 C 18.223200,1.8221028 141.78467,2.7484237 146.38299,3.4347599 C 149.00358,3.8259022 73.089532,2.9702836 38.435123,5.0805588 C 3.7807175,7.1908341 10.385950,12.267003 5.8153024,14.128544 z " + style="fill:url(#radialGradient2685);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/yesbutton.png" + id="g2642"> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" + d="M 11.257560,19.945867 L 30.910044,59.250784 L 72.299313,23.816810 L 67.832849,16.670458 L 38.651910,33.047495 L 33.292147,11.906212 L 11.257560,19.945867 z " + id="path3839" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1846);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:0.81913668;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 11.108696,15.926040 L 30.761159,55.230970 L 72.150422,19.796983 L 67.683966,12.650631 L 38.503026,29.027689 L 33.143263,7.8864048 L 11.108696,15.926040 z " + id="path3841" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1843);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 66.597974,14.734549 C 64.722544,15.503268 57.516330,19.779171 54.266480,21.954100 C 51.016603,24.129025 53.045374,24.707268 53.755524,24.210563 C 63.983894,17.056352 63.241981,17.478405 69.967554,20.112004 C 71.265179,20.620134 68.270523,14.048999 66.597974,14.734549 z " + id="path3843" + sodipodi:nodetypes="cssss" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1840);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 31.011382,10.188922 C 28.068532,10.386505 20.293686,14.259457 21.975413,14.235734 C 30.453619,14.116207 30.103629,11.998057 32.933837,15.899432 C 33.752132,17.027434 33.574969,10.016813 31.011382,10.188922 z " + id="path3845" + sodipodi:nodetypes="csss" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/nobutton.png" + transform="matrix(1.223034,0.000000,0.000000,1.223034,-4.627883,-100.2161)" + id="quit"> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 16.673622,162.71522 L 28.279067,149.33944 L 36.540580,160.35478 L 44.015270,148.74934 L 55.620714,161.33830 L 43.621866,168.61629 L 56.604220,177.07450 L 44.408676,189.27004 L 37.524088,176.28769 L 29.459280,188.67993 L 17.657130,177.66461 L 29.655989,169.00969 L 16.673622,162.71522 z " + id="path4863" + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:url(#linearGradient5772);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.54111958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 15.985167,161.14159 L 27.590612,147.76582 L 35.852114,158.78116 L 43.326815,147.17572 L 54.932259,159.76467 L 42.933410,167.04266 L 55.915764,175.50087 L 43.720209,187.69642 L 36.835632,174.71407 L 28.770825,187.10630 L 16.968674,176.09098 L 28.967522,167.43607 L 15.985167,161.14159 z " + id="path2992" + sodipodi:nodetypes="ccccccccccccc" /> + <path + sodipodi:nodetypes="csss" + id="path5732" + d="M 43.333661,149.08419 C 41.096585,150.54764 37.375768,158.41319 37.897195,158.02414 C 44.623046,153.00583 42.401917,150.85092 46.837156,152.58768 C 47.692887,152.92277 44.351205,148.41852 43.333661,149.08419 z " + style="fill:url(#linearGradient5774);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path6502" + d="M 27.073860,149.99750 C 24.706039,151.23834 22.205413,155.06277 23.207927,154.58829 C 28.969811,151.86127 26.987791,154.18044 30.818985,154.10505 C 31.737805,154.08752 28.574652,149.21103 27.073860,149.99750 z " + style="fill:url(#linearGradient5776);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/yesbutton-hover.png" + transform="translate(298.1545,0.000000)" + id="g1805"> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" + d="M 11.257560,19.945867 L 30.910044,59.250784 L 72.299313,23.816810 L 67.832849,16.670458 L 38.651910,33.047495 L 33.292147,11.906212 L 11.257560,19.945867 z " + id="path1807" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1825);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:0.81913668;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 11.108696,15.926040 L 30.761159,55.230970 L 72.150422,19.796983 L 67.683966,12.650631 L 38.503026,29.027689 L 33.143263,7.8864048 L 11.108696,15.926040 z " + id="path1809" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1827);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 66.597974,14.734549 C 64.722544,15.503268 57.516330,19.779171 54.266480,21.954100 C 51.016603,24.129025 53.045374,24.707268 53.755524,24.210563 C 63.983894,17.056352 63.241981,17.478405 69.967554,20.112004 C 71.265179,20.620134 68.270523,14.048999 66.597974,14.734549 z " + id="path1811" + sodipodi:nodetypes="cssss" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1829);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 31.011382,10.188922 C 28.068532,10.386505 20.293686,14.259457 21.975413,14.235734 C 30.453619,14.116207 30.103629,11.998057 32.933837,15.899432 C 33.752132,17.027434 33.574969,10.016813 31.011382,10.188922 z " + id="path1813" + sodipodi:nodetypes="csss" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/nobutton-hover.png" + transform="matrix(1.223034,0.000000,0.000000,1.223034,293.5266,-100.2161)" + id="g1815"> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 16.673622,162.71522 L 28.279067,149.33944 L 36.540580,160.35478 L 44.015270,148.74934 L 55.620714,161.33830 L 43.621866,168.61629 L 56.604220,177.07450 L 44.408676,189.27004 L 37.524088,176.28769 L 29.459280,188.67993 L 17.657130,177.66461 L 29.655989,169.00969 L 16.673622,162.71522 z " + id="path1817" + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:url(#linearGradient1831);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.54111958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 15.985167,161.14159 L 27.590612,147.76582 L 35.852114,158.78116 L 43.326815,147.17572 L 54.932259,159.76467 L 42.933410,167.04266 L 55.915764,175.50087 L 43.720209,187.69642 L 36.835632,174.71407 L 28.770825,187.10630 L 16.968674,176.09098 L 28.967522,167.43607 L 15.985167,161.14159 z " + id="path1819" + sodipodi:nodetypes="ccccccccccccc" /> + <path + sodipodi:nodetypes="csss" + id="path1821" + d="M 43.333661,149.08419 C 41.096585,150.54764 37.375768,158.41319 37.897195,158.02414 C 44.623046,153.00583 42.401917,150.85092 46.837156,152.58768 C 47.692887,152.92277 44.351205,148.41852 43.333661,149.08419 z " + style="fill:url(#linearGradient1833);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path1823" + d="M 27.073860,149.99750 C 24.706039,151.23834 22.205413,155.06277 23.207927,154.58829 C 28.969811,151.86127 26.987791,154.18044 30.818985,154.10505 C 31.737805,154.08752 28.574652,149.21103 27.073860,149.99750 z " + style="fill:url(#linearGradient1835);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/yesbutton-clicked.png" + transform="translate(599.2321,0.000000)" + id="g1837"> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" + d="M 11.257560,19.945867 L 30.910044,59.250784 L 72.299313,23.816810 L 67.832849,16.670458 L 38.651910,33.047495 L 33.292147,11.906212 L 11.257560,19.945867 z " + id="path1839" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1857);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:0.81913668;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 11.108696,15.926040 L 30.761159,55.230970 L 72.150422,19.796983 L 67.683966,12.650631 L 38.503026,29.027689 L 33.143263,7.8864048 L 11.108696,15.926040 z " + id="path1841" + sodipodi:nodetypes="ccccccc" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1859);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 66.597974,14.734549 C 64.722544,15.503268 57.516330,19.779171 54.266480,21.954100 C 51.016603,24.129025 53.045374,24.707268 53.755524,24.210563 C 63.983894,17.056352 63.241981,17.478405 69.967554,20.112004 C 71.265179,20.620134 68.270523,14.048999 66.597974,14.734549 z " + id="path1843" + sodipodi:nodetypes="cssss" /> + <path + inkscape:export-ydpi="8.8400002" + inkscape:export-xdpi="8.8400002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/checkbox_checked.png" + style="fill:url(#linearGradient1861);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 31.011382,10.188922 C 28.068532,10.386505 20.293686,14.259457 21.975413,14.235734 C 30.453619,14.116207 30.103629,11.998057 32.933837,15.899432 C 33.752132,17.027434 33.574969,10.016813 31.011382,10.188922 z " + id="path1845" + sodipodi:nodetypes="csss" /> + </g> + <g + inkscape:export-ydpi="32.660000" + inkscape:export-xdpi="32.660000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/nobutton-clicked.png" + transform="matrix(1.223034,0.000000,0.000000,1.223034,594.6042,-100.2161)" + id="g1847"> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 16.673622,162.71522 L 28.279067,149.33944 L 36.540580,160.35478 L 44.015270,148.74934 L 55.620714,161.33830 L 43.621866,168.61629 L 56.604220,177.07450 L 44.408676,189.27004 L 37.524088,176.28769 L 29.459280,188.67993 L 17.657130,177.66461 L 29.655989,169.00969 L 16.673622,162.71522 z " + id="path1849" + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:url(#linearGradient1863);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.54111958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 15.985167,161.14159 L 27.590612,147.76582 L 35.852114,158.78116 L 43.326815,147.17572 L 54.932259,159.76467 L 42.933410,167.04266 L 55.915764,175.50087 L 43.720209,187.69642 L 36.835632,174.71407 L 28.770825,187.10630 L 16.968674,176.09098 L 28.967522,167.43607 L 15.985167,161.14159 z " + id="path1851" + sodipodi:nodetypes="ccccccccccccc" /> + <path + sodipodi:nodetypes="csss" + id="path1853" + d="M 43.333661,149.08419 C 41.096585,150.54764 37.375768,158.41319 37.897195,158.02414 C 44.623046,153.00583 42.401917,150.85092 46.837156,152.58768 C 47.692887,152.92277 44.351205,148.41852 43.333661,149.08419 z " + style="fill:url(#linearGradient1865);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path1855" + d="M 27.073860,149.99750 C 24.706039,151.23834 22.205413,155.06277 23.207927,154.58829 C 28.969811,151.86127 26.987791,154.18044 30.818985,154.10505 C 31.737805,154.08752 28.574652,149.21103 27.073860,149.99750 z " + style="fill:url(#linearGradient1867);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:label="Hover" + id="hover" + inkscape:groupmode="layer" /> + <g + inkscape:label="Clicked" + id="clicked" + inkscape:groupmode="layer" /> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/dialogs/icons.svg lincity-ng-2.9~git20150314/data/images/gui/dialogs/icons.svg --- lincity-ng-2.0/data/images/gui/dialogs/icons.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/dialogs/icons.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,159 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="210mm" + height="297mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/dialogs" + sodipodi:docname="icons.svg"> + <defs + id="defs3"> + <linearGradient + id="linearGradient5102"> + <stop + style="stop-color:#312fc8;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5104" /> + <stop + style="stop-color:#17174b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop5106" /> + </linearGradient> + <linearGradient + id="linearGradient3570"> + <stop + style="stop-color:#feff9a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3572" /> + <stop + style="stop-color:#fcff00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3574" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3570" + id="radialGradient3578" + gradientTransform="matrix(1.068198,0.000000,0.000000,0.936156,11.42857,-217.1429)" + cx="236.79675" + cy="391.70065" + fx="236.79675" + fy="391.70065" + r="361.68243" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5102" + id="radialGradient5110" + cx="254.23604" + cy="668.03564" + fx="254.23604" + fy="668.03564" + r="336.44424" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.35000000" + inkscape:cx="0.85989816" + inkscape:cy="377.52075" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="796" + inkscape:window-height="679" + inkscape:window-x="361" + inkscape:window-y="287" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient3578);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:8.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 390.92261,35.891513 L 623.73629,439.13664 C 629.27751,448.73432 618.21268,467.93986 607.13023,467.93986 L 141.83167,467.93986 C 130.74530,467.93986 119.66481,448.74110 125.20212,439.13664 L 357.68700,35.891513 C 363.22039,26.293823 385.38334,26.297213 390.92261,35.891513 z " + id="path1291" + sodipodi:nodetypes="cssssss" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/warning" + inkscape:export-xdpi="8.8299999" + inkscape:export-ydpi="8.8299999" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:8.0299129;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 387.54193,84.491803 L 572.51477,411.75061 C 576.91733,419.53974 568.12621,435.12625 559.32109,435.12625 L 189.63664,435.12625 C 180.82841,435.12625 172.02485,419.54524 176.42430,411.75061 L 361.13590,84.491803 C 365.53224,76.702683 383.14092,76.705433 387.54193,84.491803 z " + id="path2052" + sodipodi:nodetypes="cssssss" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/warning" + inkscape:export-xdpi="8.8299999" + inkscape:export-ydpi="8.8299999" /> + <text + xml:space="preserve" + style="font-size:338.85992;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Bitstream Vera Sans;text-anchor:start;writing-mode:lr-tb" + x="298.94357" + y="407.9545" + id="text3580" + sodipodi:linespacing="100%" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/warning" + inkscape:export-xdpi="8.8299999" + inkscape:export-ydpi="8.8299999"><tspan + sodipodi:role="line" + id="tspan3582" + x="298.94357" + y="407.95450">!</tspan></text> + <path + sodipodi:type="arc" + style="opacity:1.0000000;fill:url(#radialGradient5110);fill-opacity:1.0;stroke:#64beff;stroke-width:8.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path4342" + sodipodi:cx="368.57144" + sodipodi:cy="812.36218" + sodipodi:rx="248.57143" + sodipodi:ry="248.57143" + d="M 617.14287 812.36218 A 248.57143 248.57143 0 1 1 120.00002,812.36218 A 248.57143 248.57143 0 1 1 617.14287 812.36218 z" + transform="translate(17.14286,-42.85714)" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/dialogs/info.png" + inkscape:export-xdpi="8.8299999" + inkscape:export-ydpi="8.8299999" /> + <text + xml:space="preserve" + style="writing-mode:lr-tb;text-anchor:start;font-family:Bitstream Charter;stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:4.0000000;stroke:none;fill-opacity:1.0000000;fill:#ffffff;font-stretch:normal;font-weight:bold;font-variant:normal;font-style:normal;font-size:436.94308;stroke-dasharray:none;stroke-miterlimit:4.0000000" + x="317.09695" + y="923.79077" + id="text5112" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan5114" + x="317.09695" + y="923.79077" + style="fill-opacity:1.0000000;fill:#ffffff;stroke-opacity:1.0000000;stroke:none;stroke-dasharray:none;stroke-miterlimit:4.0000000;stroke-width:4.0000000">i</tspan></text> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/dialogs/invention.svg lincity-ng-2.9~git20150314/data/images/gui/dialogs/invention.svg --- lincity-ng-2.0/data/images/gui/dialogs/invention.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/dialogs/invention.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,181 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" +"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd"> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + id="svg593" + sodipodi:version="0.32" + inkscape:version="0.37" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + xmlns:xlink="http://www.w3.org/1999/xlink" + width="210mm" + height="297mm" + sodipodi:docbase="/home/matze/projects/lincity-ng/data/images/gui/dialogs" + sodipodi:docname="invention.svg"> + <defs + id="defs595"> + <linearGradient + id="linearGradient620"> + <stop + style="stop-color:#e5e5e5;stop-opacity:1;" + offset="0.00000000" + id="stop621" /> + <stop + style="stop-color:#767676;stop-opacity:1;" + offset="1.00000000" + id="stop622" /> + </linearGradient> + <linearGradient + id="linearGradient604"> + <stop + style="stop-color:#ffff00;stop-opacity:1;" + offset="0.00000000" + id="stop605" /> + <stop + style="stop-color:#feffb6;stop-opacity:1;" + offset="1.00000000" + id="stop606" /> + </linearGradient> + <radialGradient + xlink:href="#linearGradient604" + id="radialGradient607" + cx="0.45238096" + cy="0.33103448" + r="0.19261363" + fx="0.45238096" + fy="0.33103448" /> + <linearGradient + xlink:href="#linearGradient620" + id="linearGradient619" + x1="0.49019608" + y1="0.49655172" + x2="1.05882359" + y2="0.48275861" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.68655071" + inkscape:cx="297.637782" + inkscape:cy="420.944873" + inkscape:window-width="866" + inkscape:window-height="711" + inkscape:window-x="74" + inkscape:window-y="195" /> + <g + id="g642" + transform="translate(-12.74487,-27.31044)"> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 583.37012 313.10218 C 608.50441 294.94733 700.22041 227.64448 700.22041 227.64448 " + id="path633" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 503.73031 231.31239 C 521.68578 206.03528 586.86646 112.79914 586.86646 112.79914 " + id="path634" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 589.50127 422.16037 C 620.47239 422.05711 734.14454 420.82182 734.14454 420.82182 " + id="path635" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 585.65371 525.35177 C 614.3121 537.18512 719.78514 579.81064 719.78514 579.81064 " + id="path636" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 391.94868 200.6282 C 393.86752 169.6823 400.05398 56.089923 400.05398 56.089923 " + id="path637" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 276.04553 225.3857 C 260.5158 198.54994 202.79743 100.51887 202.79743 100.51887 " + id="path638" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 192.09335 316.23286 C 169.59765 294.89571 86.473064 217.23103 86.473064 217.23103 " + id="path639" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 180.69987 410.95438 C 149.69753 411.38513 35.962904 413.82081 35.962904 413.82081 " + id="path640" /> + <path + style="fill:#000000;fill-rule:evenodd;stroke:#000000;stroke-opacity:0.554545;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.304545;stroke-dasharray:none;" + d="M 196.43199 535.98524 C 168.74955 549.94994 67.568869 601.94963 67.568869 601.94963 " + id="path641" /> + </g> + <path + style="fill:#000000;fill-rule:evenodd;stroke:black;stroke-opacity:1;stroke-width:1pt;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:0.727273;" + d="M 379.45083 223.14806 C 300.75451 226.0272 204.89934 317.86319 216.38833 426.08556 C 231.25799 524.45194 257.29203 579.56938 290.85708 636.64806 L 293.38833 825.36681 L 375.51333 851.30431 L 453.48208 823.14806 L 457.04458 631.96056 C 502.74177 571.97169 549.72619 508.0107 555.70083 429.83556 C 566.72373 303.4774 478.30109 227.94662 379.45083 223.14806 z " + id="path632" /> + <path + style="fill:url(#linearGradient619);fill-rule:evenodd;stroke:black;stroke-opacity:1;stroke-width:1pt;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:0.75;" + d="M 285.03424 600.33818 L 287.91338 816.27321 L 370.03573 842.18542 L 448.02477 814.05668 L 452.024 600.33818 L 285.03424 600.33818 z " + id="path598" + sodipodi:nodetypes="cccccc" /> + <path + style="font-size:12;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:16.6387;stroke-linecap:round;" + d="M 462.47555 692.82732 C 434.0626 698.34524 274.63444 725.93485 274.63444 725.93485 " + id="path600" /> + <path + style="font-size:12;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:16.6387;stroke-linecap:round;" + d="M 465.80525 732.88263 C 437.3923 738.40055 277.96414 765.99016 277.96414 765.99016 " + id="path601" /> + <path + style="font-size:12;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:16.6387;stroke-linecap:round;" + d="M 462.47555 774.75863 C 434.0626 780.27655 274.63444 807.86616 274.63444 807.86616 " + id="path602" /> + <path + style="fill:url(#radialGradient607);fill-rule:evenodd;stroke:black;stroke-opacity:1;stroke-width:1pt;stroke-linejoin:miter;stroke-linecap:butt;fill-opacity:0.75;" + d="M 210.93903 416.96673 C 199.45004 308.74436 295.29489 216.90827 373.99121 214.02913 C 472.84147 218.82769 561.27725 294.37624 550.25435 420.7344 C 542.97158 516.02594 474.46471 590.52756 422.04795 661.98471 L 306.07673 661.98472 C 262.39609 590.55512 228.75108 534.79771 210.93903 416.96673 z " + id="path597" + sodipodi:nodetypes="cccccc" /> + <path + style="font-size:12;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:16.6387;stroke-linecap:round;" + d="M 462.47555 654.59271 C 434.0626 660.11063 274.63444 687.70024 274.63444 687.70024 " + id="path599" /> + <path + style="font-size:12;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ff5800;stroke-width:11.2373;stroke-linejoin:bevel;" + d="M 391.4496 282.20785 L 336.82873 304.63497 L 395.09099 347.24648 L 338.64942 376.40173 L 438.78769 398.82884 L 294.95272 445.92578 L 376.88403 445.92578 L 362.31847 486.29459 L 436.96699 526.66339 L 329.54594 620.85727 " + id="path608" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 568.80456 282.15035 C 593.93885 263.9955 685.65485 196.69265 685.65485 196.69265 " + id="path609" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 489.16475 200.36056 C 507.12022 175.08345 572.3009 81.847308 572.3009 81.847308 " + id="path610" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 574.93571 391.20854 C 605.90683 391.10528 719.57898 389.86999 719.57898 389.86999 " + id="path611" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 571.08815 494.39994 C 599.74654 506.23329 705.21958 548.85881 705.21958 548.85881 " + id="path612" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 377.38312 169.67637 C 379.30196 138.73047 385.48842 25.138094 385.48842 25.138094 " + id="path614" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 261.47997 194.43387 C 245.95024 167.59811 188.23187 69.56704 188.23187 69.56704 " + id="path615" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 177.52779 285.28103 C 155.03209 263.94388 71.907497 186.2792 71.907497 186.2792 " + id="path616" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 166.13431 380.00255 C 135.13197 380.4333 21.397337 382.86898 21.397337 382.86898 " + id="path617" /> + <path + style="fill:none;fill-rule:evenodd;stroke:#fff500;stroke-opacity:1;stroke-width:14.25;stroke-linejoin:miter;stroke-linecap:round;fill-opacity:0.75;stroke-dasharray:none;" + d="M 181.86643 505.03341 C 154.18399 518.99811 53.003302 570.9978 53.003302 570.9978 " + id="path618" /> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/import-export.svg lincity-ng-2.9~git20150314/data/images/gui/import-export.svg --- lincity-ng-2.0/data/images/gui/import-export.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/import-export.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,165 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="import-export.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui" + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/import-export.png" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="25.600000pt" + width="25.600000pt"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2838"> + <stop + id="stop2840" + offset="0.0000000" + style="stop-color:#dc0000;stop-opacity:1.0000000;" /> + <stop + id="stop2842" + offset="1.0000000" + style="stop-color:#6f0000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2066"> + <stop + id="stop2068" + offset="0.0000000" + style="stop-color:#13dc00;stop-opacity:1.0000000;" /> + <stop + id="stop2070" + offset="1.0000000" + style="stop-color:#096f00;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="16.339140" + fy="8.4689102" + fx="12.086792" + cy="8.4689102" + cx="12.086792" + gradientTransform="matrix(1.000948,0.000000,0.000000,0.999053,5.024793,-0.705234)" + id="radialGradient2074" + xlink:href="#linearGradient2066" + inkscape:collect="always" /> + <radialGradient + r="12.825411" + fy="-17.523775" + fx="-7.8421760" + cy="-17.523775" + cx="-7.8421760" + gradientTransform="matrix(-1.000948,0.000000,0.000000,-0.999053,0.000000,-0.793388)" + gradientUnits="userSpaceOnUse" + id="radialGradient2078" + xlink:href="#linearGradient2838" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="153" + inkscape:window-x="370" + inkscape:window-height="827" + inkscape:window-width="812" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="16.000000" + inkscape:cx="16.000000" + inkscape:zoom="11.343750" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + <dc:title + id="title4368">Import and Export Icon for lincity-ng</dc:title> + <dc:date + id="date4370">03.06.2005</dc:date> + <dc:creator + id="creator4372"> + <cc:Agent + id="Agent4374"> + <dc:title + id="title4376">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <cc:license + rdf:resource="http://creativecommons.org/licenses/by/2.0/" + id="license4378" /> + </cc:Work> + <cc:License + id="License4396" + rdf:about="http://creativecommons.org/licenses/by/2.0/"> + <cc:permits + id="permits4398" + rdf:resource="http://web.resource.org/cc/Reproduction" /> + <cc:permits + id="permits4400" + rdf:resource="http://web.resource.org/cc/Distribution" /> + <cc:requires + id="requires4402" + rdf:resource="http://web.resource.org/cc/Notice" /> + <cc:requires + id="requires4404" + rdf:resource="http://web.resource.org/cc/Attribution" /> + <cc:prohibits + id="prohibits4406" + rdf:resource="http://web.resource.org/cc/CommercialUse" /> + <cc:permits + id="permits4408" + rdf:resource="http://web.resource.org/cc/DerivativeWorks" /> + <cc:requires + id="requires4410" + rdf:resource="http://web.resource.org/cc/ShareAlike" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:nodetypes="cccccccc" + id="path2844" + d="M 23.272727,27.063362 L 8.9917355,27.063362 L 8.9917355,31.669422 L 1.2341601,20.407714 L 8.9917355,9.6749316 L 8.9917355,13.752067 L 23.272727,13.752067 L 23.272727,27.063362 z " + style="fill:none;fill-opacity:1.0000000;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:0.72023809" /> + <path + sodipodi:nodetypes="cccccccc" + id="path2076" + d="M 22.743801,26.446282 L 8.4628099,26.446282 L 8.4628099,31.052342 L 0.70523444,19.790634 L 8.4628099,9.0578515 L 8.4628099,13.134987 L 22.743801,13.134987 L 22.743801,26.446282 z " + style="fill:url(#radialGradient2078);fill-opacity:1.0000000;stroke:#3b0000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccccc" + id="path2846" + d="M 9.5206614,5.5537190 L 23.801651,5.5537190 L 23.801651,0.94765842 L 31.559227,12.209367 L 23.801651,22.942149 L 23.801651,18.865014 L 9.5206614,18.865014 L 9.5206614,5.5537190 z " + style="fill:none;fill-opacity:1.0000000;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:0.72321427" /> + <path + sodipodi:nodetypes="cccccccc" + id="rect1291" + d="M 9.1680438,4.8484848 L 23.449035,4.8484848 L 23.449035,0.24242429 L 31.206611,11.504133 L 23.449035,22.236915 L 23.449035,18.159780 L 9.1680438,18.159780 L 9.1680438,4.8484848 z " + style="fill:url(#radialGradient2074);fill-opacity:1.0000000;stroke:#003b00;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/info/info.svg lincity-ng-2.9~git20150314/data/images/gui/info/info.svg --- lincity-ng-2.0/data/images/gui/info/info.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/info/info.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,89 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="43.200001" + inkscape:export-xdpi="43.200001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/info/info.png" + sodipodi:docname="info.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/info" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="50.000000px" + width="50.000000px"> + <defs + id="defs3" /> + <sodipodi:namedview + inkscape:window-y="380" + inkscape:window-x="584" + inkscape:window-height="618" + inkscape:window-width="688" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="22.140054" + inkscape:cx="25.243607" + inkscape:zoom="6.2225397" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + transform="matrix(1.806271,0.000000,0.000000,1.806271,0.991189,-6.853599)" + d="M 18.750000 9.2613640 A 4.1477275 4.1477275 0 1 1 10.454545,9.2613640 A 4.1477275 4.1477275 0 1 1 18.750000 9.2613640 z" + sodipodi:ry="4.1477275" + sodipodi:rx="4.1477275" + sodipodi:cy="9.2613640" + sodipodi:cx="14.602273" + id="path2844" + style="fill:none;fill-opacity:1.0000000;stroke:#000000;stroke-width:1.1072536;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="cccssccccsc" + id="path2846" + d="M 34.085231,20.473042 L 16.317958,20.921042 L 16.317958,26.571405 C 19.613413,26.514587 21.309958,26.891411 21.309958,29.803315 L 21.309958,39.586678 C 21.309958,42.154417 18.947867,42.444284 16.317958,42.594678 L 16.317958,48.585950 L 39.077231,48.585950 L 39.077231,42.594678 C 39.077231,42.594678 34.021231,42.714847 34.028413,40.218860 L 34.085231,20.473042" + style="font-size:64.000000;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:none;fill-opacity:1.0000000;stroke:#000000;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558;font-family:Century Schoolbook L;text-anchor:start;writing-mode:lr-tb" /> + <path + transform="matrix(1.806271,0.000000,0.000000,1.806271,-0.294460,-7.817836)" + d="M 18.750000 9.2613640 A 4.1477275 4.1477275 0 1 1 10.454545,9.2613640 A 4.1477275 4.1477275 0 1 1 18.750000 9.2613640 z" + sodipodi:ry="4.1477275" + sodipodi:rx="4.1477275" + sodipodi:cy="9.2613640" + sodipodi:cx="14.602273" + id="path1298" + style="fill:#7f85ff;fill-opacity:1.0000000;stroke:#3735b6;stroke-width:1.1072536;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="cccssccccsc" + id="path1296" + d="M 32.799582,19.508805 L 15.032309,19.956805 L 15.032309,25.607168 C 18.327764,25.550350 20.024309,25.927174 20.024309,28.839078 L 20.024309,38.622441 C 20.024309,41.190180 17.662218,41.480047 15.032309,41.630441 L 15.032309,47.621713 L 37.791582,47.621713 L 37.791582,41.630441 C 37.791582,41.630441 32.735582,41.750610 32.742764,39.254623 L 32.799582,19.508805" + style="font-size:64.000000;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;fill:#7f85ff;fill-opacity:1.0000000;stroke:#3735b6;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;font-family:Century Schoolbook L;text-anchor:start;writing-mode:lr-tb" /> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/info/mapoverlay.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/info/mapoverlay.png differ diff -Nru lincity-ng-2.0/data/images/gui/info/statistics.svg lincity-ng-2.9~git20150314/data/images/gui/info/statistics.svg --- lincity-ng-2.0/data/images/gui/info/statistics.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/info/statistics.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,92 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="50.000000px" + height="50.000000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/info" + sodipodi:docname="statistics.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/info/statistics.png" + inkscape:export-xdpi="43.200001" + inkscape:export-ydpi="43.200001"> + <defs + id="defs3" /> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.55000000" + inkscape:cx="420.22487" + inkscape:cy="-147.10688" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="688" + inkscape:window-height="618" + inkscape:window-x="107" + inkscape:window-y="122" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + id="path1298" + d="M 5.9461252,11.430539 L 11.570838,32.483037 L 13.499311,9.8234785 L 18.320494,16.894546 L 26.998622,7.7342994 L 30.855569,13.680425 L 38.248048,10.144891 L 43.551349,20.590786 L 46.122647,20.430080" + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000px;stroke:#ff0000;fill-rule:evenodd;fill-opacity:1.0000000;fill:none" /> + <path + sodipodi:nodetypes="ccccccccc" + id="path2060" + d="M 5.6247130,38.429162 L 10.124483,14.644661 L 18.159788,21.876435 L 26.516504,25.894087 L 31.819805,27.019030 L 36.962400,15.448192 L 42.265701,27.822560 L 46.283353,27.340442 L 46.283353,27.340442" + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000px;stroke:#25ff00;fill-rule:evenodd;fill-opacity:0.75000000;fill:none" /> + <path + sodipodi:nodetypes="ccccccc" + id="path2822" + d="M 5.4640069,40.518341 L 15.106372,31.518800 L 27.320035,37.143513 L 31.016274,7.4128870 L 37.765930,14.483955 L 41.462170,35.215040 L 45.640528,37.143513" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#0000ff;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + id="path1296" + d="M 1.4463548,43.411050 L 45.961941,43.411050" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path1294" + d="M 5.6247130,47.428703 L 5.6247130,4.1987655" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path3584" + d="M 2.4105913,7.7342994 L 5.7854191,2.9131168 L 8.9995408,7.7342994 L 2.4105913,7.7342994 z " + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path4344" + d="M 42.185347,39.795164 L 47.006530,43.169992 L 42.185347,46.384114 L 42.185347,39.795164 z " + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/gui/info/terrainheight.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/gui/info/terrainheight.png differ diff -Nru lincity-ng-2.0/data/images/gui/mapview/minimap_bg.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/minimap_bg.svg --- lincity-ng-2.0/data/images/gui/mapview/minimap_bg.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/minimap_bg.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,123 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/matze/projects/lincity-ng/data/images/gui/mapview/minimap_bg.png" + id="svg1340" + sodipodi:version="0.32" + inkscape:version="0.41" + width="384.00000px" + height="270.00000px" + sodipodi:docbase="/home/matze/projects/lincity-ng/data/images/gui/mapview" + sodipodi:docname="minimap_bg.svg"> + <metadata + id="metadata1345"> + <rdf:RDF + id="RDF1347"> + <cc:Work + rdf:about="" + id="Work1349"> + <dc:format + id="format1351">image/svg+xml</dc:format> + <dc:type + id="type1353" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:title + id="title2945">Right Border of Lincity NG</dc:title> + <dc:date + id="date2947">2005-05-28</dc:date> + <dc:creator + id="creator2949"> + <cc:Agent + id="Agent2951"> + <dc:title + id="title2953">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <cc:license + id="license2955" + rdf:resource="http://creativecommons.org/licenses/by/2.0/" /> + </cc:Work> + <cc:License + rdf:about="http://creativecommons.org/licenses/by/2.0/" + id="License2957"> + <cc:permits + rdf:resource="http://web.resource.org/cc/Reproduction" + id="permits2959" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/Distribution" + id="permits2961" /> + <cc:requires + rdf:resource="http://web.resource.org/cc/Notice" + id="requires2963" /> + <cc:requires + rdf:resource="http://web.resource.org/cc/Attribution" + id="requires2965" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/DerivativeWorks" + id="permits2967" /> + <cc:requires + rdf:resource="http://web.resource.org/cc/ShareAlike" + id="requires2969" /> + </cc:License> + </rdf:RDF> + </metadata> + <defs + id="defs1343"> + <linearGradient + inkscape:collect="always" + id="linearGradient2135"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop2137" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop2139" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2135" + id="linearGradient2141" + gradientTransform="scale(1.992020,0.502003)" + x1="91.766640" + y1="547.62659" + x2="91.766640" + y2="241.90137" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:window-width="640" + inkscape:window-height="540" + inkscape:zoom="0.97294509" + inkscape:cx="203.80823" + inkscape:cy="20.665832" + inkscape:window-x="439" + inkscape:window-y="390" + inkscape:current-layer="svg1340" /> + <path + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.2500000;stroke:#afafaf;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient2141)" + d="M 0.090846183,270.90846 L 384.82443,271.09015 L 384.73359,174.06643 L 175.42398,173.97558 C 148.95746,211.73731 88.332772,252.04273 0.090846183,270.90846 z " + id="path1361" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:#000000" + d="" + id="path1357" /> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_electrics.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_electrics.svg --- lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_electrics.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_electrics.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,137 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/workspace/lincity-images" + sodipodi:docname="electrics.svg" + inkscape:export-filename="/home/egore/workspace/lincity-images/electrics.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2174" + inkscape:collect="always"> + <stop + id="stop2176" + offset="0" + style="stop-color:#f2f2f2;stop-opacity:1;" /> + <stop + id="stop2178" + offset="1" + style="stop-color:#f2f2f2;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2810"> + <stop + style="stop-color:#ffff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2812" /> + <stop + style="stop-color:#ecb300;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2814" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2810" + id="radialGradient2818" + gradientTransform="matrix(0.744942,0.000000,0.000000,1.342387,7.107795,-21.32337)" + cx="199.94331" + cy="145.56943" + fx="199.94331" + fy="145.56943" + r="794.10278" + gradientUnits="userSpaceOnUse" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="124.51584" + x2="518.44604" + y1="82.724007" + x1="740.46515" + gradientTransform="scale(0.684568,1.460775)" + id="linearGradient2180" + xlink:href="#linearGradient2174" + inkscape:collect="always" /> + <linearGradient + y2="249.54626" + x2="613.30701" + y1="229.31390" + x1="773.31219" + gradientTransform="scale(0.684568,1.460775)" + gradientUnits="userSpaceOnUse" + id="linearGradient2184" + xlink:href="#linearGradient2174" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.1938000" + inkscape:cx="354.33072" + inkscape:cy="354.33072" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1274" + inkscape:window-height="1001" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:#000000;fill-opacity:0.52549022;fill-rule:evenodd;stroke:#000000;stroke-width:20.000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:0.52525252" + d="M 351.19916,39.890020 L 223.03698,405.94798 L 337.79657,427.72717 L 218.84867,697.45411 L 574.85472,330.55846 L 400.62117,318.83121 L 513.70544,115.27952 L 351.19916,39.890020 z " + id="path2820" + sodipodi:nodetypes="cccccccc" /> + <path + style="fill:url(#radialGradient2818);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#ffba22;stroke-width:20.000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 337.98399,14.696060 L 209.82181,380.75403 L 324.58140,402.53322 L 205.63350,672.26016 L 561.63955,305.36451 L 387.40600,293.63726 L 500.49027,90.085573 L 337.98399,14.696060 z " + id="path1291" + sodipodi:nodetypes="cccccccc" /> + <path + sodipodi:nodetypes="csss" + id="path1411" + d="M 398.72675,75.389533 C 388.78979,63.010957 456.14231,84.793349 461.55135,100.51937 C 468.34914,120.28298 388.94221,256.26379 378.62288,252.13606 C 368.00068,247.88718 429.79855,114.09602 398.72675,75.389533 z " + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient2180)" /> + <path + sodipodi:nodetypes="csss" + id="path2182" + d="M 446.05153,320.51039 C 436.41285,307.68270 507.42438,311.90390 505.94431,328.46817 C 504.36549,346.13763 426.26313,425.32696 421.75935,415.16611 C 416.16312,402.54062 471.83994,354.83103 446.05153,320.51039 z " + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:1.0;fill:url(#linearGradient2184)" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_health.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_health.svg --- lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_health.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_health.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,132 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/health2.png" + sodipodi:docname="round_health.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2861" + inkscape:collect="always"> + <stop + id="stop2863" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop2865" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2091"> + <stop + id="stop2093" + offset="0" + style="stop-color:#fe0000;stop-opacity:1;" /> + <stop + id="stop2095" + offset="1.0000000" + style="stop-color:#6e0000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="24.732445" + x2="318.89774" + y1="-164.67657" + x1="347.56931" + gradientTransform="matrix(1.220315,0.374651,-0.229913,0.748875,0.000000,0.000000)" + id="linearGradient2867" + xlink:href="#linearGradient2861" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2861" + id="linearGradient5487" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.220315,0.374651,-0.229913,0.748875,191.8593,205.6859)" + x1="347.56931" + y1="-164.67657" + x2="318.89774" + y2="24.732445" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2091" + id="radialGradient6247" + cx="453.19818" + cy="243.61798" + fx="453.19818" + fy="243.61798" + r="532.87976" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="815" + inkscape:window-width="765" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="354.33072" + inkscape:cx="354.33072" + inkscape:zoom="0.90875553" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + style="fill:#000000;fill-opacity:0.59607846;stroke:none;stroke-width:4.7801518;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 218.62615,22.966392 L 218.62615,223.50839 L 18.084157,223.50839 L 18.084157,502.25839 L 218.62615,502.25839 L 218.62615,702.80042 L 497.37615,702.80042 L 497.37615,502.25839 L 697.91814,502.25839 L 697.91814,223.50839 L 497.37615,223.50839 L 497.37615,22.966392 L 218.62615,22.966392 z " + id="path3201" /> + <path + style="fill:url(#radialGradient6247);fill-opacity:1.0;stroke:#000000;stroke-width:4.8994842;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 210.31696,10.690596 L 210.31696,211.23259 L 9.7749547,211.23259 L 9.7749547,489.98259 L 210.31696,489.98259 L 210.31696,690.52456 L 489.06696,690.52456 L 489.06696,489.98259 L 689.60895,489.98259 L 689.60895,211.23259 L 489.06696,211.23259 L 489.06696,10.690596 L 210.31696,10.690596 z " + id="rect1666" /> + <path + sodipodi:nodetypes="cssss" + id="path2101" + d="M 311.49755,24.850237 C 290.67994,21.135376 455.22867,5.7515434 471.44936,36.000441 C 483.34137,58.177067 478.64115,138.10490 467.41410,126.54408 C 452.66825,111.35986 466.68624,88.014336 437.54540,59.325494 C 399.66579,22.033436 335.85639,29.197023 311.49755,24.850237 z " + style="fill:url(#linearGradient2867);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path5485" + d="M 503.35686,230.53618 C 482.53925,226.82132 647.08798,211.43749 663.30867,241.68639 C 675.20068,263.86301 670.50046,343.79085 659.27341,332.23003 C 644.52756,317.04581 658.54555,293.70028 629.40471,265.01144 C 591.52510,227.71938 527.71570,234.88297 503.35686,230.53618 z " + style="fill:url(#linearGradient5487);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_pollution2.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_pollution2.svg --- lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_pollution2.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_pollution2.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,201 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons" + sodipodi:docname="round_pollution.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/health2.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient3616" + inkscape:collect="always"> + <stop + id="stop3618" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop3620" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2844"> + <stop + id="stop2846" + offset="0" + style="stop-color:#fcff00;stop-opacity:1;" /> + <stop + id="stop2852" + offset="0" + style="stop-color:#fcff00;stop-opacity:0.49803922;" /> + <stop + id="stop2848" + offset="1.0000000" + style="stop-color:#fcff00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2070"> + <stop + id="stop2072" + offset="0.0000000" + style="stop-color:#b2ff00;stop-opacity:1.0000000;" /> + <stop + id="stop2074" + offset="1.0000000" + style="stop-color:#0eff00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2091"> + <stop + style="stop-color:#fe0000;stop-opacity:1;" + offset="0" + id="stop2093" /> + <stop + style="stop-color:#6e0000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2095" /> + </linearGradient> + <radialGradient + spreadMethod="reflect" + gradientUnits="userSpaceOnUse" + r="106.75381" + fy="818.87225" + fx="182.24072" + cy="818.87225" + cx="182.24072" + gradientTransform="matrix(1.543293,0.000000,0.000000,0.699482,-8.315362,-87.19165)" + id="radialGradient2082" + xlink:href="#linearGradient2070" + inkscape:collect="always" /> + <radialGradient + spreadMethod="reflect" + gradientUnits="userSpaceOnUse" + r="102.34977" + fy="212.80266" + fx="690.75165" + cy="212.80266" + cx="690.75165" + gradientTransform="matrix(0.807513,0.000000,0.000000,1.336826,-8.315362,-87.19165)" + id="radialGradient2854" + xlink:href="#linearGradient2844" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="120.38028" + fy="836.22858" + fx="229.87096" + cy="836.22858" + cx="229.87096" + gradientTransform="scale(1.937046,0.516250)" + id="radialGradient3624" + xlink:href="#linearGradient3616" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="225.87238" + fy="342.32733" + fx="511.73035" + cy="342.32733" + cx="511.73035" + gradientTransform="scale(0.913415,1.094793)" + id="radialGradient4394" + xlink:href="#linearGradient3616" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.64258720" + inkscape:cx="279.46777" + inkscape:cy="285.64709" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="765" + inkscape:window-height="815" + inkscape:window-x="0" + inkscape:window-y="5" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + transform="matrix(1.028963,-0.144016,0.144016,1.028963,-55.76230,1.425289)" + d="M 683.35210 439.61218 A 241.53911 63.273342 0 1 1 200.27388,439.61218 A 241.53911 63.273342 0 1 1 683.35210 439.61218 z" + sodipodi:ry="63.273342" + sodipodi:rx="241.53911" + sodipodi:cy="439.61218" + sodipodi:cx="441.81299" + id="path2856" + style="opacity:0.42886177;fill:url(#radialGradient3624);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="csscsss" + id="path1305" + d="M 649.65029,166.28971 C 661.55512,255.25777 635.20654,331.75342 580.40788,347.12758 C 553.52964,354.66846 364.27686,415.71390 331.27804,423.04068 C 284.52716,433.42087 303.78070,267.27725 296.38800,222.98045 C 288.99530,178.68363 243.77273,125.09521 271.68088,105.77805 C 302.11062,84.715531 497.80952,51.109211 526.83756,43.285891 C 584.89366,27.639247 639.98750,94.076919 649.65029,166.28971 z " + style="fill:#7b7b7b;fill-opacity:1.0000000;stroke:#000000;stroke-width:5.1949606;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csssss" + id="path2084" + d="M 447.86657,227.21945 C 445.25082,203.65406 476.51859,168.23702 490.80561,138.69851 C 505.09263,109.15999 520.12725,61.664819 537.04498,72.872178 C 602.39415,116.16354 622.19827,238.95533 579.34757,325.54439 C 574.31412,335.71555 544.20185,301.86260 510.11472,279.32393 C 476.02759,256.78527 450.16678,247.94217 447.86657,227.21945 z " + style="fill:url(#radialGradient2854);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:5.1949606;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.799812,-0.215557,0.169625,1.016386,-44.45171,-121.3527)" + d="M 472.07416 450.61624 A 131.49850 157.90825 0 1 1 209.07715,450.61624 A 131.49850 157.90825 0 1 1 472.07416 450.61624 z" + sodipodi:ry="157.90825" + sodipodi:rx="131.49850" + sodipodi:cy="450.61624" + sodipodi:cx="340.57565" + id="path1303" + style="fill:#6a6a6a;fill-opacity:1.0000000;stroke:#000000;stroke-width:5.6364460;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="cssscssssssss" + id="path1310" + d="M 11.120960,445.59226 C 93.820609,359.84377 6.5477127,365.56034 24.840722,355.27052 C 45.861570,343.44629 117.59944,361.28336 142.60197,355.27051 C 191.37081,343.54211 218.06063,372.99187 230.63707,381.56673 C 243.21352,390.14157 364.78581,355.84218 389.55759,366.70364 C 387.08043,377.85095 376.45714,386.47344 369.76399,401.28886 C 363.07085,416.10430 353.44795,421.10630 381.55440,428.44256 C 437.76730,443.11507 593.49286,423.82444 621.65016,437.58907 C 724.16723,487.70429 550.57420,492.08699 532.47173,519.90760 C 514.36928,547.72823 651.99723,589.09095 610.21703,642.78296 C 565.43726,700.32972 186.81007,684.32334 115.16244,670.22247 C 43.514832,656.12161 171.50211,550.45934 154.16187,520.54264 C 136.82162,490.62596 -13.890868,471.52619 11.120960,445.59226 z " + style="fill:url(#radialGradient2082);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#063500;stroke-width:5.1949606;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + transform="matrix(0.799812,-0.215557,0.169625,1.016386,-44.45171,-121.3527)" + d="M 472.07416 450.61624 A 131.49850 157.90825 0 1 1 209.07715,450.61624 A 131.49850 157.90825 0 1 1 472.07416 450.61624 z" + sodipodi:ry="157.90825" + sodipodi:rx="131.49850" + sodipodi:cy="450.61624" + sodipodi:cx="340.57565" + id="path3626" + style="fill:url(#radialGradient4394);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_pollution.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_pollution.svg --- lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_pollution.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_pollution.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,154 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/health2.png" + sodipodi:docname="round_pollution.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2073"> + <stop + id="stop2075" + offset="0.0000000" + style="stop-color:#fcff00;stop-opacity:1.0000000;" /> + <stop + id="stop2077" + offset="1.0000000" + style="stop-color:#ccce00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2844"> + <stop + style="stop-color:#fcff00;stop-opacity:1;" + offset="0" + id="stop2846" /> + <stop + style="stop-color:#fcff00;stop-opacity:0.49803922;" + offset="0" + id="stop2852" /> + <stop + style="stop-color:#fcff00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2848" /> + </linearGradient> + <linearGradient + id="linearGradient2070"> + <stop + style="stop-color:#b2ff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2072" /> + <stop + style="stop-color:#0eff00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2074" /> + </linearGradient> + <linearGradient + id="linearGradient2091"> + <stop + id="stop2093" + offset="0" + style="stop-color:#fe0000;stop-opacity:1;" /> + <stop + id="stop2095" + offset="1.0000000" + style="stop-color:#6e0000;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="689.05170" + fy="177.99417" + fx="211.10156" + cy="177.99417" + cx="211.10156" + id="radialGradient2081" + xlink:href="#linearGradient2073" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="5" + inkscape:window-x="0" + inkscape:window-height="815" + inkscape:window-width="765" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="367.53559" + inkscape:cx="-3819.2587" + inkscape:zoom="0.056797221" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + transform="translate(3.112418,0.000000)" + d="M 701.85028 353.84579 A 351.70325 351.70325 0 1 1 -1.5562134,353.84579 A 351.70325 351.70325 0 1 1 701.85028 353.84579 z" + sodipodi:ry="351.70325" + sodipodi:rx="351.70325" + sodipodi:cy="353.84579" + sodipodi:cx="350.14703" + id="path1313" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:3.0000000;stroke:none;fill-opacity:1.0;fill:url(#radialGradient2081)" + sodipodi:type="arc" /> + <path + transform="matrix(0.236747,0.000000,0.000000,0.236747,270.3634,267.2806)" + d="M 701.85028 353.84579 A 351.70325 351.70325 0 1 1 -1.5562134,353.84579 A 351.70325 351.70325 0 1 1 701.85028 353.84579 z" + sodipodi:ry="351.70325" + sodipodi:rx="351.70325" + sodipodi:cy="353.84579" + sodipodi:cx="350.14703" + id="path2083" + style="fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccc" + id="path2093" + d="M 236.15317,369.64224 C 241.15771,401.67131 261.17587,430.69766 282.69541,446.21173 L 200.12047,642.89023 C 87.518271,569.82392 42.477395,475.73853 19.956955,369.64224 L 236.15317,369.64224 z " + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.96475643px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2095" + d="M 470.36574,369.64224 C 465.36119,401.67131 445.34302,430.69766 423.82349,446.21173 L 506.39843,642.89023 C 619.00063,569.82392 664.04150,475.73853 686.56195,369.64224 L 470.36574,369.64224 z " + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.96475643px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2097" + d="M 308.23888,246.54836 C 338.08668,233.89868 373.30607,235.58676 397.83972,245.68017 L 513.82891,67.251418 C 392.34594,8.6551586 306.67479,11.033141 191.15577,65.903408 L 308.23888,246.54836 z " + style="fill:#000000;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.96475643px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_sport.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_sport.svg --- lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_sport.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_sport.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,258 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="4.0599999" + inkscape:export-xdpi="4.0599999" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/misc/sports.png" + sodipodi:docname="round_sport.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1" + height="200.00000mm" + width="200.00000mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2108"> + <stop + style="stop-color:#000000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2110" /> + <stop + style="stop-color:#000000;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop2112" /> + </linearGradient> + <linearGradient + id="linearGradient8562"> + <stop + id="stop8563" + offset="0.0000000" + style="stop-color:#dc7b33;stop-opacity:1.0000000;" /> + <stop + id="stop8565" + offset="0.59259260" + style="stop-color:#dc5b00;stop-opacity:1.0000000;" /> + <stop + id="stop8564" + offset="1.0000000" + style="stop-color:#ac4700;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4809"> + <stop + id="stop4810" + offset="0.0000000" + style="stop-color:#f2ebd4;stop-opacity:1.0000000;" /> + <stop + id="stop4811" + offset="1.0000000" + style="stop-color:#f3d1a5;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2307"> + <stop + id="stop2308" + offset="0.0000000" + style="stop-color:#814600;stop-opacity:1.0000000;" /> + <stop + id="stop2309" + offset="1.0000000" + style="stop-color:#d9a45f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="343.34235" + x2="489.62009" + y1="443.99197" + x1="561.82520" + gradientTransform="matrix(1.158036,0.173942,-0.252723,1.682534,-106.1128,-533.2579)" + id="linearGradient2310" + xlink:href="#linearGradient2307" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="696.00262" + x2="327.25049" + y1="702.76447" + x1="264.12347" + gradientTransform="scale(0.861915,1.160207)" + id="linearGradient1693" + xlink:href="#linearGradient2307" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="793.12274" + x2="239.47406" + y1="826.96564" + x1="197.66812" + gradientTransform="matrix(1.414605,0.212480,-0.206886,1.377369,-105.8617,-533.2202)" + id="linearGradient4183" + xlink:href="#linearGradient2307" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="687.39569" + x2="315.12735" + y1="687.39569" + x1="277.52536" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-106.1128,-533.2579)" + id="linearGradient4808" + xlink:href="#linearGradient4809" + inkscape:collect="always" /> + <linearGradient + y2="687.39569" + x2="315.12735" + y1="687.39569" + x1="277.52536" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-87.81681,-553.5406)" + gradientUnits="userSpaceOnUse" + id="linearGradient5434" + xlink:href="#linearGradient4809" + inkscape:collect="always" /> + <linearGradient + y2="687.39569" + x2="315.12735" + y1="687.39569" + x1="277.52536" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-69.13019,-575.1741)" + gradientUnits="userSpaceOnUse" + id="linearGradient6057" + xlink:href="#linearGradient4809" + inkscape:collect="always" /> + <linearGradient + y2="687.39569" + x2="315.12735" + y1="687.39569" + x1="277.52536" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-51.07121,-596.2536)" + gradientUnits="userSpaceOnUse" + id="linearGradient6059" + xlink:href="#linearGradient4809" + inkscape:collect="always" /> + <linearGradient + y2="687.39569" + x2="315.12735" + y1="687.39569" + x1="277.52536" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-30.03709,-617.7941)" + gradientUnits="userSpaceOnUse" + id="linearGradient6061" + xlink:href="#linearGradient4809" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient8562" + id="radialGradient1345" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.978897,1.021558)" + cx="32.200165" + cy="315.64005" + fx="32.200165" + fy="315.64005" + r="148.00626" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2108" + id="radialGradient2116" + gradientTransform="scale(2.066485,0.483913)" + cx="-96.915230" + cy="1949.4631" + fx="-96.915230" + fy="1949.4631" + r="133.99374" + gradientUnits="userSpaceOnUse" /> + </defs> + <sodipodi:namedview + inkscape:window-y="233" + inkscape:window-x="0" + inkscape:window-height="738" + inkscape:window-width="1006" + inkscape:current-layer="layer1" + inkscape:cy="204.99335" + inkscape:cx="137.80887" + inkscape:zoom="0.55174445" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + <dc:creator + id="creator1322"> + <cc:Agent + id="Agent1324"> + <dc:title + id="title1326">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <dc:date + id="date1328">2005</dc:date> + <dc:description + id="description1330">An sports Icon I drew for lincity-ng</dc:description> + <dc:title + id="title1332">Sports</dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <g + id="g1328" + transform="matrix(1.189573,0.000000,0.000000,1.189573,-124.9089,-97.37697)"> + <path + transform="matrix(2.431848,0.000000,0.000000,2.431848,166.5821,-583.9428)" + d="M 212.74684 396.30789 A 115.53477 120.62441 0 1 1 -18.322693,396.30789 A 115.53477 120.62441 0 1 1 212.74684 396.30789 z" + sodipodi:ry="120.62441" + sodipodi:rx="115.53477" + sodipodi:cy="396.30789" + sodipodi:cx="97.212074" + id="path6066" + style="fill:url(#radialGradient1345);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#aa4600;stroke-width:2.5000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.85882354" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="cc" + id="path7310" + d="M 124.26141,410.76177 C 347.13305,552.44058 712.22842,481.60117 681.71297,340.46729" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path7932" + d="M 447.73104,669.13450 C 689.12989,619.54692 642.81186,179.25280 361.08898,88.796342" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csc" + id="path7933" + d="M 280.84655,643.71440 C 381.92893,592.76454 564.34032,583.90961 560.38968,463.68698 C 556.68159,350.84654 276.21471,280.25380 192.56974,190.88717" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csc" + id="path7935" + d="M 643.26465,530.91628 C 639.72272,501.21824 647.21529,476.01576 646.53419,429.35711 C 644.88611,316.46780 666.42373,268.81052 594.22198,164.73109" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:10.037278;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_ub40.svg lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_ub40.svg --- lincity-ng-2.0/data/images/gui/mapview/roundbuttons/round_ub40.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/mapview/roundbuttons/round_ub40.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,305 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="200.00000mm" + height="200.00000mm" + id="svg1" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons" + sodipodi:docname="round_ub40.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/misc/sports.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient5173"> + <stop + id="stop5175" + offset="0.0000000" + style="stop-color:#733c0c;stop-opacity:1.0000000;" /> + <stop + id="stop5177" + offset="1.0000000" + style="stop-color:#331a05;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4391"> + <stop + id="stop4393" + offset="0.0000000" + style="stop-color:#494949;stop-opacity:1.0000000;" /> + <stop + id="stop4395" + offset="1.0000000" + style="stop-color:#7b7b7b;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2099"> + <stop + id="stop2101" + offset="0.0000000" + style="stop-color:#f30000;stop-opacity:1.0000000;" /> + <stop + id="stop2103" + offset="1.0000000" + style="stop-color:#c50000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2108"> + <stop + id="stop2110" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:1.0000000;" /> + <stop + id="stop2112" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient8562"> + <stop + style="stop-color:#dc7b33;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop8563" /> + <stop + style="stop-color:#dc5b00;stop-opacity:1.0000000;" + offset="0.59259260" + id="stop8565" /> + <stop + style="stop-color:#ac4700;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop8564" /> + </linearGradient> + <linearGradient + id="linearGradient4809"> + <stop + style="stop-color:#f2ebd4;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4810" /> + <stop + style="stop-color:#f3d1a5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4811" /> + </linearGradient> + <linearGradient + id="linearGradient2307"> + <stop + style="stop-color:#814600;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2308" /> + <stop + style="stop-color:#d9a45f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2309" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2307" + id="linearGradient2310" + gradientTransform="matrix(1.158036,0.173942,-0.252723,1.682534,-106.1128,-533.2579)" + x1="561.82520" + y1="443.99197" + x2="489.62009" + y2="343.34235" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2307" + id="linearGradient1693" + gradientTransform="scale(0.861915,1.160207)" + x1="264.12347" + y1="702.76447" + x2="327.25049" + y2="696.00262" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2307" + id="linearGradient4183" + gradientTransform="matrix(1.414605,0.212480,-0.206886,1.377369,-105.8617,-533.2202)" + x1="197.66812" + y1="826.96564" + x2="239.47406" + y2="793.12274" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient4808" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-106.1128,-533.2579)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient5434" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-87.81681,-553.5406)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient6057" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-69.13019,-575.1741)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient6059" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-51.07121,-596.2536)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4809" + id="linearGradient6061" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280792,0.192380,-0.228502,1.521272,-30.03709,-617.7941)" + x1="277.52536" + y1="687.39569" + x2="315.12735" + y2="687.39569" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="133.99374" + fy="1949.4631" + fx="-96.915230" + cy="1949.4631" + cx="-96.915230" + gradientTransform="scale(2.066485,0.483913)" + id="radialGradient2116" + xlink:href="#linearGradient2108" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="583.18829" + fy="142.04736" + fx="144.68968" + cy="142.04736" + cx="144.68968" + id="radialGradient2107" + xlink:href="#linearGradient2099" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="165.25584" + x2="735.58444" + y1="165.25584" + x1="406.44978" + gradientTransform="matrix(1.014715,0.000000,0.000000,1.203558,-54.40533,8.024631)" + id="linearGradient4397" + xlink:href="#linearGradient4391" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="405.76074" + x2="352.41095" + y1="344.80994" + x1="291.15155" + gradientTransform="scale(0.996190,1.003824)" + id="linearGradient5179" + xlink:href="#linearGradient5173" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="405.76074" + x2="352.41095" + y1="344.80994" + x1="291.15155" + gradientTransform="matrix(0.996190,0.000000,0.000000,1.003824,2.499688,4.999375)" + id="linearGradient5181" + xlink:href="#linearGradient5173" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.070719515" + inkscape:cx="-1034.1663" + inkscape:cy="297.99679" + inkscape:current-layer="layer1" + inkscape:window-width="741" + inkscape:window-height="738" + inkscape:window-x="0" + inkscape:window-y="233" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:creator + id="creator1322"> + <cc:Agent + id="Agent1324"> + <dc:title + id="title1326">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <dc:date + id="date1328">2005</dc:date> + <dc:description + id="description1330">An sports Icon I drew for lincity-ng</dc:description> + <dc:title + id="title1332">Sports</dc:title> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + id="path1325" + d="M 354.34375 1.8125000 C 158.75319 1.8125000 0.0000000 160.56569 0.0000000 356.15625 C 0.0000000 551.74681 158.75319 710.46875 354.34375 710.46875 C 549.93431 710.46875 708.65625 551.74681 708.65625 356.15625 C 708.65625 160.56569 549.93431 1.8125000 354.34375 1.8125000 z M 354.34375 94.250000 C 498.91060 94.250002 616.21875 211.58940 616.21875 356.15625 C 616.21874 412.08835 598.59152 463.88101 568.68750 506.43750 L 204.06250 141.78125 C 246.62125 111.87942 298.41977 94.250000 354.34375 94.250000 z M 139.96875 205.87500 L 504.62500 570.50000 C 462.06851 600.40402 410.27585 618.03125 354.34375 618.03125 C 209.77690 618.03123 92.437500 500.72310 92.437500 356.15625 C 92.437501 300.23227 110.06692 248.43375 139.96875 205.87500 z " + style="stroke-dasharray:none;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:12.500000;stroke:#000000;fill-opacity:1.0;fill:url(#radialGradient2107)" /> + <path + sodipodi:nodetypes="ccccc" + id="path2109" + d="M 277.46532,343.70704 L 47.494065,556.18049 L 151.23110,659.91753 L 361.20486,427.44658 L 277.46532,343.70704 z " + style="fill:url(#linearGradient5179);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:12.500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2869" + d="M 578.67768,74.990621 L 348.70642,284.96439 L 422.44720,362.45471 L 633.67081,128.73392 L 578.67768,74.990621 z " + style="fill:url(#linearGradient5181);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:12.500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccccc" + id="path3631" + d="M 470.45634,9.4058442 L 691.45072,238.68753 L 687.30708,382.33387 L 667.97008,404.43331 L 358.57794,108.85332 L 470.45634,9.4058442 z " + style="fill:url(#linearGradient4397);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:13.813875;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/panel.svg lincity-ng-2.9~git20150314/data/images/gui/panel.svg --- lincity-ng-2.0/data/images/gui/panel.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/panel.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,4155 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1024.0000px" + height="768.00000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui" + sodipodi:docname="panel.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/panel.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2622"> + <stop + style="stop-color:#ffffff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2624" /> + <stop + style="stop-color:#a5a5a5;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2626" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient5732"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop5734" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop5736" /> + </linearGradient> + <linearGradient + id="linearGradient2849"> + <stop + style="stop-color:#5e5e5e;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2851" /> + <stop + style="stop-color:#1f1f1f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2853" /> + </linearGradient> + <linearGradient + id="linearGradient2857"> + <stop + style="stop-color:#3b2200;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop5072" /> + <stop + style="stop-color:#855700;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2861" /> + </linearGradient> + <linearGradient + id="linearGradient2873"> + <stop + style="stop-color:#3f3f3f;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2875" /> + <stop + style="stop-color:#c0c0c0;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2877" /> + </linearGradient> + <linearGradient + id="linearGradient2072"> + <stop + id="stop2074" + offset="0.0000000" + style="stop-color:#c20000;stop-opacity:1.0000000;" /> + <stop + id="stop2076" + offset="1.0000000" + style="stop-color:#370000;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,218.9398,421.5058)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,228.6046,420.7108)" + gradientUnits="userSpaceOnUse" + id="linearGradient4054" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4498" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,73.11722,421.5058)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,82.37292,420.7108)" + gradientUnits="userSpaceOnUse" + id="linearGradient4050" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <linearGradient + id="linearGradient2130"> + <stop + style="stop-color:#f9ff28;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2132" /> + <stop + style="stop-color:#ff8d00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2134" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient2900"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop2902" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop2904" /> + </linearGradient> + <linearGradient + id="linearGradient4542"> + <stop + style="stop-color:#717171;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4544" /> + <stop + style="stop-color:#1c1c1c;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4546" /> + </linearGradient> + <linearGradient + id="linearGradient5307"> + <stop + style="stop-color:#e1ffff;stop-opacity:0.74117649;" + offset="0.0000000" + id="stop5309" /> + <stop + style="stop-color:#afe6ff;stop-opacity:0.65882355;" + offset="1.0000000" + id="stop5311" /> + </linearGradient> + <linearGradient + id="linearGradient3768"> + <stop + style="stop-color:#9f9f9f;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3770" /> + <stop + style="stop-color:#494949;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3772" /> + </linearGradient> + <linearGradient + id="linearGradient7591"> + <stop + style="stop-color:#3cff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7593" /> + <stop + style="stop-color:#1c470f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7595" /> + </linearGradient> + <linearGradient + id="linearGradient3572" + inkscape:collect="always"> + <stop + id="stop3574" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop3576" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2855"> + <stop + id="stop2857" + offset="0.0000000" + style="stop-color:#d7d7d7;stop-opacity:1.0000000;" /> + <stop + id="stop2859" + offset="1.0000000" + style="stop-color:#464646;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5901"> + <stop + id="stop5903" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.89075631;" /> + <stop + id="stop5905" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2085"> + <stop + id="stop2087" + offset="0.0000000" + style="stop-color:#3f32d2;stop-opacity:1.0000000;" /> + <stop + id="stop2089" + offset="1.0000000" + style="stop-color:#100d36;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient18203"> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop18205" /> + <stop + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop18209" /> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop18207" /> + </linearGradient> + <linearGradient + id="linearGradient4850"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop4852" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop4854" /> + </linearGradient> + <linearGradient + id="linearGradient4255"> + <stop + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4257" /> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4259" /> + </linearGradient> + <linearGradient + id="linearGradient4305"> + <stop + style="stop-color:#000000;stop-opacity:0.73333335;" + offset="0.0000000" + id="stop4307" /> + <stop + style="stop-color:#000000;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4309" /> + </linearGradient> + <linearGradient + id="linearGradient2380"> + <stop + style="stop-color:#a9ab1d;stop-opacity:1;" + offset="0" + id="stop2382" /> + <stop + style="stop-color:#a9ab1d;stop-opacity:0;" + offset="1" + id="stop2384" /> + </linearGradient> + <linearGradient + id="linearGradient2542"> + <stop + id="stop2544" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop2546" + offset="1.0000000" + style="stop-color:#e2ecff;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient22165" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient11999"> + <stop + style="stop-color:#e2e2e2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12001" /> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12003" /> + </linearGradient> + <linearGradient + id="linearGradient11991"> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11993" /> + <stop + style="stop-color:#8b8b8b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11995" /> + </linearGradient> + <linearGradient + id="linearGradient12007"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12009" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12011" /> + </linearGradient> + <linearGradient + id="linearGradient14361"> + <stop + style="stop-color:#c3cde9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14363" /> + <stop + style="stop-color:#698ef6;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14365" /> + </linearGradient> + <linearGradient + id="linearGradient19109"> + <stop + style="stop-color:#000000;stop-opacity:0.45378152;" + offset="0.0000000" + id="stop19111" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19113" /> + </linearGradient> + <linearGradient + id="linearGradient9030"> + <stop + style="stop-color:#00bfff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9032" /> + <stop + style="stop-color:#0021c8;stop-opacity:0.51405621;" + offset="1.0000000" + id="stop9034" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.35294119;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient3617" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,-1.360206,385.5420)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient1742" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,648.7695,483.3827)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4812" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4811" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4810" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient3554" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2931" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2308" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient2304"> + <stop + style="stop-color:#6a57ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2305" /> + <stop + style="stop-color:#1300a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2306" /> + </linearGradient> + <linearGradient + id="linearGradient4802"> + <stop + style="stop-color:#8879ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4803" /> + <stop + style="stop-color:#4e42a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4804" /> + </linearGradient> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6500" + gradientTransform="scale(1.075954,0.929408)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + x1="680.29120" + y1="721.96411" + x2="681.54474" + y2="737.44690" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6512" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.075954,0.929408)" + x1="651.09534" + y1="720.26569" + x2="652.25720" + y2="728.05103" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient12124" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient13654" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0.000000,0.000000,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient23468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,741.3971,-280.0799)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23470" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,755.6905,-135.5312)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23472" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,755.6905,-135.5312)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23474" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,755.6905,-135.5312)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23476" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,749.5288,-149.6013)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23478" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,749.5288,-149.6013)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23480" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,749.5288,-149.6013)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23482" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,718.3285,-149.3086)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23484" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,718.3285,-149.3086)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23486" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,718.3285,-149.3086)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23488" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,765.0778,-199.5904)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23490" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,765.0778,-199.5904)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23492" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,765.0778,-199.5904)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23494" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,745.7026,-201.9960)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23496" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,745.7026,-201.9960)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23498" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,745.7026,-201.9960)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23500" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,721.0845,-209.0808)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23502" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,721.0845,-209.0808)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,721.0845,-209.0808)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23506" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,782.3408,-266.2137)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,782.3408,-266.2137)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23510" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.763570,1.309637)" + spreadMethod="pad" + x1="990.44958" + y1="122.82517" + x2="1026.7732" + y2="145.52820" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23512" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,763.4423,-270.0809)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23514" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,763.4423,-270.0809)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,763.4423,-270.0809)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23518" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,741.3971,-280.0799)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23520" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,741.3971,-280.0799)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23522" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,741.3971,-280.0799)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient23524" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,741.3971,-280.0799)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient23526" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,741.3971,-280.0799)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient23528" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,741.3971,-280.0799)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient23530" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.146091,0.000000,0.000000,0.653803,364.2777,-102.2402)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="247.83467" + fy="776.96881" + fx="60.051296" + cy="776.96881" + cx="60.051296" + gradientTransform="matrix(1.883522,0.000000,0.000000,0.846568,19.44520,10.81907)" + id="radialGradient28433" + xlink:href="#linearGradient28427" + inkscape:collect="always" /> + <radialGradient + r="279.10022" + fy="823.55896" + fx="72.217499" + cy="823.55896" + cx="72.217499" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,19.44520,10.81907)" + gradientUnits="userSpaceOnUse" + id="radialGradient23847" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <linearGradient + spreadMethod="pad" + gradientUnits="userSpaceOnUse" + y2="864.99774" + x2="149.30901" + y1="611.94214" + x1="33.550251" + gradientTransform="matrix(1.709511,0.000000,0.000000,0.932741,19.44520,10.81907)" + id="linearGradient23831" + xlink:href="#linearGradient23833" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.099226,-8.979644e-2,0.154015,1.885338,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23057" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.811295,-6.627516e-2,0.208675,2.554449,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23055" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.722194,-0.140686,9.830286e-2,1.203356,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23053" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025909,-0.125048,0.214475,1.759586,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23051" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.757182,-9.229261e-2,0.290593,2.384068,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23049" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.607324,-0.195916,0.136893,1.123092,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23047" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.096066,-0.122485,0.210081,1.879917,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23033" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.808962,-9.040137e-2,0.284638,2.547103,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23031" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.717241,-0.191901,0.134089,1.199896,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23029" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025112,-0.131424,0.225413,1.758220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23027" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.756594,-9.699938e-2,0.305413,2.382215,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23025" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.606075,-0.205907,0.143875,1.122220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23023" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23009" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23007" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23005" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23003" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23001" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient22999" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22985" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22983" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22981" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22973" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22971" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22969" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="101.66785" + fy="134.69154" + fx="33.917580" + cy="134.69154" + cx="33.917580" + gradientTransform="matrix(1.369330,0.000000,0.000000,1.164460,19.44520,10.81907)" + id="radialGradient22961" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="171.45183" + x2="42.257313" + y1="104.70185" + x1="-45.389553" + gradientTransform="matrix(0.652578,0.000000,0.000000,2.443434,19.44520,10.81907)" + id="linearGradient22945" + xlink:href="#linearGradient22939" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="199.91158" + x2="247.58649" + y1="135.30980" + x1="92.894203" + gradientTransform="matrix(0.654723,0.000000,0.000000,2.435427,19.44520,10.81907)" + id="linearGradient22937" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-214.8070,-47.29036)" + gradientUnits="userSpaceOnUse" + id="radialGradient22171" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + id="linearGradient22931"> + <stop + id="stop22933" + offset="0" + style="stop-color:#c6bc96;stop-opacity:1;" /> + <stop + id="stop22935" + offset="1.0000000" + style="stop-color:#9f956f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22939"> + <stop + id="stop22941" + offset="0.0000000" + style="stop-color:#e0d6b3;stop-opacity:1.0000000;" /> + <stop + id="stop22943" + offset="1.0000000" + style="stop-color:#c6bc96;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient23833"> + <stop + id="stop23835" + offset="0.0000000" + style="stop-color:#545454;stop-opacity:1.0000000;" /> + <stop + id="stop23837" + offset="1.0000000" + style="stop-color:#949494;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient26137"> + <stop + id="stop26139" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.40160644;" /> + <stop + id="stop26141" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient28427"> + <stop + id="stop28429" + offset="0.0000000" + style="stop-color:#0fa900;stop-opacity:1.0000000;" /> + <stop + id="stop28431" + offset="1.0000000" + style="stop-color:#085400;stop-opacity:0.97991967;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28579" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.824921,0.000000,0.000000,0.547969,434.5858,-14.91216)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient28581" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,434.5858,-14.91216)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient28583" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,434.5858,-14.91216)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient28585" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,434.5858,-14.91216)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28587" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,434.5858,-14.91216)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28589" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,434.5858,-14.91216)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28591" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,434.5858,-14.91216)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28593" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,456.6310,-4.913168)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28595" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,456.6310,-4.913168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28597" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,456.6310,-4.913168)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28599" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818455,0.000000,0.000000,1.403773,475.5295,-1.046018)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28601" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,475.5295,-1.046018)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28603" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,475.5295,-1.046018)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28605" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,414.2732,56.08694)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28607" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,414.2732,56.08694)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28609" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,414.2732,56.08694)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28611" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,438.8913,63.17166)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28613" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,438.8913,63.17166)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28615" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,438.8913,63.17166)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,458.2665,65.57730)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,458.2665,65.57730)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28621" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,458.2665,65.57730)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28623" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,411.5172,115.8591)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28625" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,411.5172,115.8591)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28627" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,411.5172,115.8591)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28629" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,442.7175,115.5664)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28631" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,442.7175,115.5664)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28633" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,442.7175,115.5664)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28635" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,448.8792,129.6365)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28637" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,448.8792,129.6365)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28639" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,448.8792,129.6365)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient28641" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,434.5858,-14.91216)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28643" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28645" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,309.6471,-268.0035)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28647" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,309.6471,-268.0035)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28649" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,309.6471,-268.0035)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28651" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,388.1837,-260.9011)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28653" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,388.1837,-260.9011)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28655" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,388.1837,-260.9011)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28657" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,295.3669,-193.6045)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28659" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,295.3669,-193.6045)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28661" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,295.3669,-193.6045)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28663" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,373.9035,-186.5021)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28665" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,373.9035,-186.5021)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28667" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,373.9035,-186.5021)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28669" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,287.5684,-121.2913)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28671" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,287.5684,-121.2913)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28673" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,287.5684,-121.2913)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28675" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,366.1050,-114.1889)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28677" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,366.1050,-114.1889)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28679" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,366.1050,-114.1889)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient28683" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient28687" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11099" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11101" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11103" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11147" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11149" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11151" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11157" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11159" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11161" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11939" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.724296,1.380651)" + x1="1483.8276" + y1="127.65721" + x2="1517.2938" + y2="163.18713" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11941" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.875390,1.142348)" + x1="1190.4481" + y1="256.72067" + x2="1204.2202" + y2="275.25522" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11943" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.967340,1.033763)" + x1="1084.2196" + y1="261.09338" + x2="1104.3732" + y2="285.89426" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient16669" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient16671" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient16673" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="280.70599" + x2="530.02094" + y1="258.33243" + x1="504.38077" + gradientTransform="scale(1.131006,0.884169)" + id="linearGradient8732" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + gradientTransform="translate(3.923714,-32.08710)" + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient5176" + x1="824.07269" + y1="564.76642" + x2="1012.7684" + y2="756.67120" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient5938" + gradientUnits="userSpaceOnUse" + x1="824.07269" + y1="564.76642" + x2="1012.7684" + y2="756.67120" + gradientTransform="matrix(0.503726,0.000000,0.000000,0.175510,416.4194,401.6383)" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2085" + id="radialGradient12588" + gradientUnits="userSpaceOnUse" + cx="5.5026450" + cy="4.4912281" + fx="5.5026450" + fy="4.4912281" + r="30.800863" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5901" + id="radialGradient12590" + gradientUnits="userSpaceOnUse" + cx="10.765802" + cy="6.9473686" + fx="10.765802" + fy="6.9473686" + r="19.265682" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2855" + id="radialGradient12592" + gradientUnits="userSpaceOnUse" + cx="12.675861" + cy="9.4736843" + fx="12.675861" + fy="9.4736843" + r="26.545149" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4542" + id="linearGradient14121" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.287091,0.000000,0.000000,0.157309,281.3415,686.4727)" + x1="1.9051772" + y1="37.666012" + x2="69.858246" + y2="37.666012" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5307" + id="radialGradient14123" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.246561,0.000000,0.000000,0.183167,281.3415,686.4727)" + cx="41.961208" + cy="51.008999" + fx="41.961208" + fy="51.008999" + r="39.440468" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3768" + id="linearGradient14125" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.279513,0.000000,0.000000,0.161574,281.3415,686.4727)" + x1="17.216179" + y1="60.447464" + x2="59.329948" + y2="81.568985" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="linearGradient14127" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.219650,0.000000,0.000000,0.205609,282.2410,686.8324)" + x1="71.189911" + y1="123.00367" + x2="109.37925" + y2="106.20147" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="radialGradient14129" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.225449,0.000000,0.000000,0.200320,280.9587,687.4803)" + cx="86.700439" + cy="120.32793" + fx="86.700439" + fy="120.32793" + r="25.698910" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4542" + id="linearGradient14131" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.287091,0.000000,0.000000,0.157309,195.1193,686.4727)" + x1="1.9051772" + y1="37.666012" + x2="69.858246" + y2="37.666012" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5307" + id="radialGradient14133" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.246561,0.000000,0.000000,0.183167,195.1193,686.4727)" + cx="41.961208" + cy="51.008999" + fx="41.961208" + fy="51.008999" + r="39.440468" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3768" + id="linearGradient14135" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.279513,0.000000,0.000000,0.161574,195.1193,686.4727)" + x1="17.216179" + y1="60.447464" + x2="59.329948" + y2="81.568985" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="linearGradient14137" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.219650,0.000000,0.000000,0.205609,196.0188,686.8324)" + x1="71.189911" + y1="123.00367" + x2="109.37925" + y2="106.20147" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="radialGradient14139" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.225449,0.000000,0.000000,0.200320,194.7365,687.4803)" + cx="86.700439" + cy="120.32793" + fx="86.700439" + fy="120.32793" + r="25.698910" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4542" + id="linearGradient14141" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.287091,0.000000,0.000000,0.157309,238.6749,686.4727)" + x1="1.9051772" + y1="37.666012" + x2="69.858246" + y2="37.666012" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5307" + id="radialGradient14143" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.246561,0.000000,0.000000,0.183167,238.6749,686.4727)" + cx="41.961208" + cy="51.008999" + fx="41.961208" + fy="51.008999" + r="39.440468" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3768" + id="linearGradient14145" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.279513,0.000000,0.000000,0.161574,238.6749,686.4727)" + x1="17.216179" + y1="60.447464" + x2="59.329948" + y2="81.568985" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="linearGradient14147" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.219650,0.000000,0.000000,0.205609,239.5744,686.8324)" + x1="71.189911" + y1="123.00367" + x2="109.37925" + y2="106.20147" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="radialGradient14149" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.225449,0.000000,0.000000,0.200320,238.2921,687.4803)" + cx="86.700439" + cy="120.32793" + fx="86.700439" + fy="120.32793" + r="25.698910" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient14400" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.143872e-2,1.027095e-2,-6.832485e-3,4.087037e-2,158.3846,1108.607)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient14402" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.112491e-2,0.000000,0.000000,5.048860e-2,157.5671,1108.334)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient14415" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.143872e-2,1.027095e-2,-6.832485e-3,4.087037e-2,-1820.282,458.1623)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient14417" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.112491e-2,0.000000,0.000000,5.048860e-2,-1821.099,457.8895)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient14419" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,-1973.280,194.7595)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient14421" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,-1982.536,195.5545)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient14423" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,-1827.048,194.7595)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient14425" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,-1836.713,195.5545)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2085" + id="radialGradient3475" + gradientUnits="userSpaceOnUse" + cx="5.5026450" + cy="4.4912281" + fx="5.5026450" + fy="4.4912281" + r="30.800863" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5901" + id="radialGradient3477" + gradientUnits="userSpaceOnUse" + cx="10.765802" + cy="6.9473686" + fx="10.765802" + fy="6.9473686" + r="19.265682" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2855" + id="radialGradient3479" + gradientUnits="userSpaceOnUse" + cx="12.675861" + cy="9.4736843" + fx="12.675861" + fy="9.4736843" + r="26.545149" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2085" + id="radialGradient3481" + gradientUnits="userSpaceOnUse" + cx="5.5026450" + cy="4.4912281" + fx="5.5026450" + fy="4.4912281" + r="30.800863" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5901" + id="radialGradient3483" + gradientUnits="userSpaceOnUse" + cx="10.765802" + cy="6.9473686" + fx="10.765802" + fy="6.9473686" + r="19.265682" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2855" + id="radialGradient3485" + gradientUnits="userSpaceOnUse" + cx="12.675861" + cy="9.4736843" + fx="12.675861" + fy="9.4736843" + r="26.545149" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2085" + id="radialGradient3487" + gradientUnits="userSpaceOnUse" + cx="5.5026450" + cy="4.4912281" + fx="5.5026450" + fy="4.4912281" + r="30.800863" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5901" + id="radialGradient3489" + gradientUnits="userSpaceOnUse" + cx="10.765802" + cy="6.9473686" + fx="10.765802" + fy="6.9473686" + r="19.265682" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2855" + id="radialGradient3491" + gradientUnits="userSpaceOnUse" + cx="12.675861" + cy="9.4736843" + fx="12.675861" + fy="9.4736843" + r="26.545149" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="radialGradient3976" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.099386e-2,0.000000,0.000000,4.530998e-2,794.9361,878.5509)" + cx="86.700439" + cy="120.32793" + fx="86.700439" + fy="120.32793" + r="25.698910" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="linearGradient3979" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.968219e-2,0.000000,0.000000,4.650629e-2,795.2261,878.4043)" + x1="71.189911" + y1="123.00367" + x2="109.37925" + y2="106.20147" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3768" + id="linearGradient3982" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.322249e-2,0.000000,0.000000,3.654610e-2,815.3293,878.3229)" + x1="17.216179" + y1="60.447464" + x2="59.329948" + y2="81.568985" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5307" + id="radialGradient3986" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.576914e-2,0.000000,0.000000,4.143018e-2,815.3293,878.3229)" + cx="41.961208" + cy="51.008999" + fx="41.961208" + fy="51.008999" + r="39.440468" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4542" + id="linearGradient3989" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.493654e-2,0.000000,0.000000,3.558141e-2,815.3293,878.3229)" + x1="1.9051772" + y1="37.666012" + x2="69.858246" + y2="37.666012" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="radialGradient3995" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.099386e-2,0.000000,0.000000,4.530998e-2,842.8250,878.5509)" + cx="86.700439" + cy="120.32793" + fx="86.700439" + fy="120.32793" + r="25.698910" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="linearGradient3998" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.968219e-2,0.000000,0.000000,4.650629e-2,843.1150,878.4043)" + x1="71.189911" + y1="123.00367" + x2="109.37925" + y2="106.20147" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3768" + id="linearGradient4001" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.322249e-2,0.000000,0.000000,3.654610e-2,863.2182,878.3229)" + x1="17.216179" + y1="60.447464" + x2="59.329948" + y2="81.568985" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5307" + id="radialGradient4005" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.576914e-2,0.000000,0.000000,4.143018e-2,863.2182,878.3229)" + cx="41.961208" + cy="51.008999" + fx="41.961208" + fy="51.008999" + r="39.440468" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4542" + id="linearGradient4008" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.493654e-2,0.000000,0.000000,3.558141e-2,863.2182,878.3229)" + x1="1.9051772" + y1="37.666012" + x2="69.858246" + y2="37.666012" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4886" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + x1="362.26712" + y1="528.35089" + x2="362.26712" + y2="315.58200" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="radialGradient4888" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + cx="142.69258" + cy="642.58405" + fx="142.69258" + fy="642.58405" + r="163.60149" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4890" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.009743e-2,0.000000,0.000000,3.959823e-2,12.15718,647.0564)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4892" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.885530e-2,0.000000,0.000000,3.249955e-2,12.15718,647.0559)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4894" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.009743e-2,0.000000,0.000000,3.959823e-2,23.67270,647.0564)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4896" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.885530e-2,0.000000,0.000000,3.249955e-2,23.89681,647.7283)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4908" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + x1="362.26712" + y1="528.35089" + x2="362.26712" + y2="315.58200" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="radialGradient4910" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + cx="142.69258" + cy="642.58405" + fx="142.69258" + fy="642.58405" + r="163.60149" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4912" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.006283,0.993756)" + cx="41.543678" + cy="713.57623" + fx="41.543678" + fy="713.57623" + r="27.917938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4914" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.622692e-3,0.000000,0.000000,1.744668e-3,45.30612,712.8746)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4929" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + x1="362.26712" + y1="528.35089" + x2="362.26712" + y2="315.58200" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="radialGradient4931" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + cx="142.69258" + cy="642.58405" + fx="142.69258" + fy="642.58405" + r="163.60149" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4933" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,85.50803,712.1648)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4935" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,86.19294,712.3937)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4937" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.283577e-2,0.000000,0.000000,4.230263e-2,74.67327,712.1648)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4939" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.147738e-2,8.605674e-3,-5.724703e-3,3.424387e-2,75.35825,712.3937)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4962" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,218.9398,421.5058)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4964" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,228.6046,420.7108)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4966" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,73.11722,421.5058)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4968" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,82.37292,420.7108)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2130" + id="radialGradient4970" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(5.112491e-2,0.000000,0.000000,5.048860e-2,234.5533,683.8408)" + cx="233.28516" + cy="295.41855" + fx="233.28516" + fy="295.41855" + r="406.57501" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4972" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(6.143872e-2,1.027095e-2,-6.832485e-3,4.087037e-2,235.3708,684.1136)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient5732" + id="linearGradient5738" + gradientTransform="scale(1.161404,0.861027)" + x1="13.933916" + y1="881.85107" + x2="128.05193" + y2="760.95917" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="315.58200" + x2="362.26712" + y1="528.35089" + x1="362.26712" + gradientTransform="matrix(9.573871e-2,0.000000,0.000000,9.573871e-2,-14.59958,710.6142)" + gradientUnits="userSpaceOnUse" + id="linearGradient1823" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <radialGradient + r="1277.4088" + fy="250.27718" + fx="455.07556" + cy="250.27718" + cx="455.07556" + gradientTransform="matrix(1.119196e-2,0.000000,0.000000,3.942458e-2,11.41825,740.0475)" + gradientUnits="userSpaceOnUse" + id="radialGradient1825" + xlink:href="#linearGradient2072" + inkscape:collect="always" /> + <radialGradient + r="1277.4088" + fy="250.27718" + fx="455.07556" + cy="250.27718" + cx="455.07556" + gradientTransform="matrix(1.119196e-2,0.000000,0.000000,3.942458e-2,11.71476,739.9310)" + gradientUnits="userSpaceOnUse" + id="radialGradient1827" + xlink:href="#linearGradient2072" + inkscape:collect="always" /> + <linearGradient + y2="315.58200" + x2="362.26712" + y1="528.35089" + x1="362.26712" + gradientTransform="matrix(9.573871e-2,0.000000,0.000000,9.573871e-2,-14.67219,710.6562)" + gradientUnits="userSpaceOnUse" + id="linearGradient1839" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="14.851369" + x2="21.395046" + y1="18.015032" + x1="17.780584" + gradientTransform="scale(0.910996,1.097699)" + gradientUnits="userSpaceOnUse" + id="linearGradient1841" + xlink:href="#linearGradient2857" + inkscape:collect="always" /> + <linearGradient + y2="9.7735777" + x2="11.449580" + y1="4.2269511" + x1="5.7898483" + gradientTransform="scale(1.035166,0.966029)" + gradientUnits="userSpaceOnUse" + id="linearGradient1843" + xlink:href="#linearGradient2849" + inkscape:collect="always" /> + <linearGradient + y2="7.0181575" + x2="15.225430" + y1="18.332209" + x1="24.526999" + gradientTransform="scale(1.020352,0.980054)" + gradientUnits="userSpaceOnUse" + id="linearGradient1845" + xlink:href="#linearGradient2873" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4162" + x1="142.10399" + y1="761.95691" + x2="142.10399" + y2="728.53491" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954811,0.000000,0.000000,0.954811,4.550582,36.26440)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4164" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064551,0.000000,0.000000,0.603992,-8.078981,175.7415)" + x1="137.11369" + y1="916.76855" + x2="137.11369" + y2="937.80872" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4940" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064551,0.000000,0.000000,0.603992,-8.078981,175.7415)" + x1="137.11369" + y1="916.76855" + x2="137.11369" + y2="937.80872" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4953" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.954811,0.000000,0.000000,0.954811,4.550582,36.26440)" + x1="142.10399" + y1="761.95691" + x2="142.10399" + y2="728.53491" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3572" + id="linearGradient4958" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.327602,0.753238)" + x1="14.059241" + y1="975.01807" + x2="14.059241" + y2="986.08575" /> + <linearGradient + y2="760.95917" + x2="128.05193" + y1="881.85107" + x1="13.933916" + gradientTransform="matrix(-1.217184,0.000000,0.000000,0.929741,813.2253,-59.42199)" + gradientUnits="userSpaceOnUse" + id="linearGradient1796" + xlink:href="#linearGradient5732" + inkscape:collect="always" /> + <radialGradient + r="30.800863" + fy="4.4912281" + fx="5.5026450" + cy="4.4912281" + cx="5.5026450" + gradientUnits="userSpaceOnUse" + id="radialGradient1848" + xlink:href="#linearGradient2085" + inkscape:collect="always" /> + <radialGradient + r="19.265682" + fy="6.9473686" + fx="10.765802" + cy="6.9473686" + cx="10.765802" + gradientUnits="userSpaceOnUse" + id="radialGradient1850" + xlink:href="#linearGradient5901" + inkscape:collect="always" /> + <radialGradient + r="26.545149" + fy="9.4736843" + fx="12.675861" + cy="9.4736843" + cx="12.675861" + gradientUnits="userSpaceOnUse" + id="radialGradient1852" + xlink:href="#linearGradient2855" + inkscape:collect="always" /> + <radialGradient + r="30.800863" + fy="4.4912281" + fx="5.5026450" + cy="4.4912281" + cx="5.5026450" + gradientUnits="userSpaceOnUse" + id="radialGradient1886" + xlink:href="#linearGradient2085" + inkscape:collect="always" /> + <radialGradient + r="19.265682" + fy="6.9473686" + fx="10.765802" + cy="6.9473686" + cx="10.765802" + gradientUnits="userSpaceOnUse" + id="radialGradient1888" + xlink:href="#linearGradient5901" + inkscape:collect="always" /> + <radialGradient + r="26.545149" + fy="9.4736843" + fx="12.675861" + cy="9.4736843" + cx="12.675861" + gradientUnits="userSpaceOnUse" + id="radialGradient1890" + xlink:href="#linearGradient2855" + inkscape:collect="always" /> + <radialGradient + r="30.800863" + fy="4.4912281" + fx="5.5026450" + cy="4.4912281" + cx="5.5026450" + gradientUnits="userSpaceOnUse" + id="radialGradient1892" + xlink:href="#linearGradient2085" + inkscape:collect="always" /> + <radialGradient + r="19.265682" + fy="6.9473686" + fx="10.765802" + cy="6.9473686" + cx="10.765802" + gradientUnits="userSpaceOnUse" + id="radialGradient1894" + xlink:href="#linearGradient5901" + inkscape:collect="always" /> + <radialGradient + r="26.545149" + fy="9.4736843" + fx="12.675861" + cy="9.4736843" + cx="12.675861" + gradientUnits="userSpaceOnUse" + id="radialGradient1896" + xlink:href="#linearGradient2855" + inkscape:collect="always" /> + <radialGradient + r="30.800863" + fy="4.4912281" + fx="5.5026450" + cy="4.4912281" + cx="5.5026450" + gradientUnits="userSpaceOnUse" + id="radialGradient1898" + xlink:href="#linearGradient2085" + inkscape:collect="always" /> + <radialGradient + r="19.265682" + fy="6.9473686" + fx="10.765802" + cy="6.9473686" + cx="10.765802" + gradientUnits="userSpaceOnUse" + id="radialGradient1900" + xlink:href="#linearGradient5901" + inkscape:collect="always" /> + <radialGradient + r="26.545149" + fy="9.4736843" + fx="12.675861" + cy="9.4736843" + cx="12.675861" + gradientUnits="userSpaceOnUse" + id="radialGradient1902" + xlink:href="#linearGradient2855" + inkscape:collect="always" /> + <radialGradient + r="30.800863" + fy="4.4912281" + fx="5.5026450" + cy="4.4912281" + cx="5.5026450" + gradientUnits="userSpaceOnUse" + id="radialGradient1904" + xlink:href="#linearGradient2085" + inkscape:collect="always" /> + <radialGradient + r="19.265682" + fy="6.9473686" + fx="10.765802" + cy="6.9473686" + cx="10.765802" + gradientUnits="userSpaceOnUse" + id="radialGradient1906" + xlink:href="#linearGradient5901" + inkscape:collect="always" /> + <radialGradient + r="26.545149" + fy="9.4736843" + fx="12.675861" + cy="9.4736843" + cx="12.675861" + gradientUnits="userSpaceOnUse" + id="radialGradient1908" + xlink:href="#linearGradient2855" + inkscape:collect="always" /> + <linearGradient + y2="315.58200" + x2="362.26712" + y1="528.35089" + x1="362.26712" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + gradientUnits="userSpaceOnUse" + id="linearGradient1934" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <radialGradient + r="163.60149" + fy="642.58405" + fx="142.69258" + cy="642.58405" + cx="142.69258" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + gradientUnits="userSpaceOnUse" + id="radialGradient1936" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="315.58200" + x2="362.26712" + y1="528.35089" + x1="362.26712" + gradientTransform="matrix(1.157577,0.000000,0.000000,1.157577,-208.0488,-280.9944)" + gradientUnits="userSpaceOnUse" + id="linearGradient1979" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <radialGradient + r="163.60149" + fy="642.58405" + fx="142.69258" + cy="642.58405" + cx="142.69258" + gradientTransform="matrix(2.466187,0.000000,0.000000,0.408841,-152.4062,-216.4038)" + gradientUnits="userSpaceOnUse" + id="radialGradient1981" + xlink:href="#linearGradient3572" + inkscape:collect="always" /> + <linearGradient + y2="760.95917" + x2="128.05193" + y1="881.85107" + x1="13.933916" + gradientTransform="matrix(-1.161404,0.000000,0.000000,0.861027,812.8571,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient3507" + xlink:href="#linearGradient5732" + inkscape:collect="always" /> + <linearGradient + y2="760.95917" + x2="128.05193" + y1="881.85107" + x1="13.933916" + gradientTransform="matrix(1.161404,0.000000,0.000000,0.861027,0.366302,-0.725693)" + gradientUnits="userSpaceOnUse" + id="linearGradient3515" + xlink:href="#linearGradient5732" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.74853882" + inkscape:cx="480.46487" + inkscape:cy="225.07685" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="997" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + style="fill:#4fa244;fill-opacity:1.0000000;stroke:#b2b2b2;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect6498" + width="1314.9043" + height="945.32318" + x="-63.290527" + y="-122.81441" + rx="9.4203243" + ry="9.4203243" /> + <path + style="fill:url(#linearGradient3515);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#b2b2b2;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 0.45183262,665.05113 C 26.660222,720.29868 96.652282,753.48415 172.65628,767.53462 L 0.55043262,767.53462 L 0.45183262,665.05113 z " + id="path3513" + sodipodi:nodetypes="cccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/speedpanel.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:url(#linearGradient3507);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#b2b2b2;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 815.88265,673.13524 C 800.35943,706.38390 704.62884,759.23820 640.56710,768.26035 L 1024.0112,767.81590 L 1024.0463,673.09056 L 815.88265,673.13524 z " + id="path3505" + sodipodi:nodetypes="ccccc" /> + <rect + style="fill:#ffffff;fill-opacity:1.0000000;stroke:#000000;stroke-width:1.0000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect11039" + width="417.35623" + height="36.455280" + x="309.60544" + y="726.00226" + rx="10.244126" + ry="10.244126" /> + <text + xml:space="preserve" + style="font-size:24.069710;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Bitstream Vera Sans" + x="458.6499" + y="750.7431" + id="text12571"><tspan + sodipodi:role="line" + id="tspan12573" + x="458.64990" + y="750.74310">Messages</tspan></text> + <g + transform="translate(-0.350574,-0.736987)" + id="g1809" + inkscape:export-filename="/home/egore/test.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <rect + style="fill:#666666;fill-opacity:1.0000000;stroke:#2d2d2d;stroke-width:0.43098083;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4858" + width="29.060423" + height="29.060423" + x="5.0624208" + y="736.38354" + rx="45.985710" + ry="45.985710" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + <rect + style="opacity:0.67948717;fill:url(#linearGradient1823);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4860" + width="25.314348" + height="25.314348" + x="6.9354525" + y="738.25659" + rx="30.271477" + ry="30.271477" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + inkscape:export-xdpi="13.150000" + inkscape:export-ydpi="13.150000" /> + <path + id="path1299" + d="M 16.023935,741.77219 C 12.566596,743.33578 10.157411,746.81409 10.157411,750.85327 C 10.157411,756.35270 14.619969,760.81658 20.119412,760.81658 C 25.618847,760.81658 30.082728,756.35270 30.082728,750.85327 C 30.082728,746.81450 27.674005,743.33667 24.216857,741.77285 L 24.216857,745.94512 C 25.620631,747.11854 26.514365,748.88210 26.514365,750.85327 C 26.514365,754.38308 23.649221,757.24822 20.119412,757.24822 C 16.589602,757.24822 13.725767,754.38308 13.725767,750.85327 C 13.725767,748.88176 14.620112,747.11788 16.023935,745.94447 L 16.023935,741.77219 z " + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:0.36927125;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + rx="2.3141305" + ry="2.7813830" + y="738.76666" + x="18.474577" + height="13.581882" + width="3.2909527" + id="rect1301" + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:0.36927125;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + id="path1291" + d="M 15.364061,741.38403 C 11.906715,742.94762 9.4975299,746.42593 9.4975299,750.46510 C 9.4975299,755.96454 13.960095,760.42842 19.459537,760.42842 C 24.958972,760.42842 29.422847,755.96454 29.422847,750.46510 C 29.422847,746.42635 27.014123,742.94851 23.556976,741.38468 L 23.556976,745.55697 C 24.960757,746.73037 25.854490,748.49394 25.854490,750.46510 C 25.854490,753.99491 22.989347,756.86005 19.459537,756.86005 C 15.929727,756.86005 13.065893,753.99491 13.065893,750.46510 C 13.065893,748.49360 13.960237,746.72971 15.364061,745.55631 L 15.364061,741.38403 z " + style="fill:url(#radialGradient1825);fill-opacity:1.0000000;stroke:#000000;stroke-width:0.26257253;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + rx="1.6454763" + ry="1.6454763" + y="738.37848" + x="17.814734" + height="13.581882" + width="3.2909527" + id="rect1312" + style="fill:url(#radialGradient1827);fill-opacity:1.0000000;stroke:#000000;stroke-width:0.26257253;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + id="g4873" + transform="translate(-1.203172,26.75283)" + inkscape:export-filename="/home/egore/test.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <g + id="g4101" + transform="translate(-136.4763,-79.88066)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="45.985710" + rx="45.985710" + y="722.37427" + x="141.56622" + height="40.216694" + width="40.216694" + id="rect4103" + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.59643406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g4105" + transform="matrix(0.118796,0.000000,0.000000,0.118796,137.2772,717.9787)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="254.81828" + rx="254.81828" + y="53.229813" + x="52.332909" + height="306.07700" + width="306.07700" + id="rect4107" + style="opacity:0.67948717;fill:url(#linearGradient4886);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + sodipodi:nodetypes="ccsccsc" + id="path4109" + d="M 156.14080,53.229814 L 253.94065,53.229814 C 270.78029,53.229814 284.33712,71.335791 284.33712,73.574330 C 284.33712,84.824778 270.78029,103.97078 253.94065,103.97078 L 156.14080,103.97078 C 139.30116,103.97078 125.74433,84.824778 125.74433,73.574330 C 125.74433,71.335791 139.30116,53.229814 156.14080,53.229814 z " + style="opacity:0.67948717;fill:url(#radialGradient4888);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 25.539842,650.46329 C 26.890738,658.11110 28.391037,665.36669 27.650232,674.77938 C 30.937198,675.26497 34.170470,675.77855 37.202982,674.17943 C 37.471447,667.79923 35.970370,653.70357 35.017891,650.96752 C 30.968318,650.05242 28.851709,650.34189 25.539842,650.46329 z " + id="path7777" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 14.024294,649.93769 C 15.375190,657.58551 16.875497,665.36405 16.134684,674.77674 C 19.421650,675.26230 22.654922,675.77589 25.687435,674.17676 C 25.955899,667.79660 24.454822,653.17799 23.502351,650.44195 C 19.452778,649.52683 17.336169,649.81631 14.024294,649.93769 z " + id="path6241" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient4890);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000030;stroke-width:0.23908220;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 13.315088,649.08226 C 14.665974,656.73007 16.166281,664.50862 15.425468,673.92130 C 18.712443,674.40686 21.945716,674.92044 24.978227,673.32131 C 25.246700,666.94113 23.745614,652.32255 22.793136,649.58651 C 18.743562,648.67139 16.626954,648.96086 13.315088,649.08226 z " + id="path5202" + sodipodi:nodetypes="ccccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4892);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 15.425468,656.65069 C 15.016247,656.25466 13.566274,649.64814 14.052786,649.49312 C 15.191861,649.13018 21.094734,649.39336 22.531676,650.18414 C 22.891312,650.38204 18.118829,649.55629 16.023105,650.46894 C 15.149382,650.84943 15.691691,656.90832 15.425468,656.65069 z " + id="path5204" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#radialGradient4894);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000030;stroke-width:0.23908220;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 24.830634,649.60519 C 26.181522,657.25299 27.681821,664.50862 26.941008,673.92130 C 30.227982,674.40686 33.461256,674.92044 36.493775,673.32131 C 36.762240,666.94113 35.261154,652.84546 34.308683,650.10943 C 30.259118,649.19431 28.142501,649.48379 24.830634,649.60519 z " + id="path7769" + sodipodi:nodetypes="ccccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4896);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 27.165122,657.32302 C 26.755899,656.92700 25.305934,650.32047 25.792446,650.16547 C 26.931529,649.80251 32.834403,650.06570 34.271328,650.85647 C 34.630972,651.05439 29.858489,650.22862 27.762758,651.14129 C 26.889042,651.52178 27.431344,657.58065 27.165122,657.32302 z " + id="path7771" + sodipodi:nodetypes="cssss" /> + </g> + <g + id="g4898" + transform="translate(4.382863,19.70422)" + inkscape:export-filename="/home/egore/test.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <g + id="g4087" + transform="translate(-109.8096,-42.99177)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="45.985710" + rx="45.985710" + y="722.37427" + x="141.56622" + height="40.216694" + width="40.216694" + id="rect4089" + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.59643406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g4091" + transform="matrix(0.118796,0.000000,0.000000,0.118796,137.2772,717.9787)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="254.81828" + rx="254.81828" + y="53.229813" + x="52.332909" + height="306.07700" + width="306.07700" + id="rect4093" + style="opacity:0.67948717;fill:url(#linearGradient4908);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + sodipodi:nodetypes="ccsccsc" + id="path4095" + d="M 156.14080,53.229814 L 253.94065,53.229814 C 270.78029,53.229814 284.33712,71.335791 284.33712,73.574330 C 284.33712,84.824778 270.78029,103.97078 253.94065,103.97078 L 156.14080,103.97078 C 139.30116,103.97078 125.74433,84.824778 125.74433,73.574330 C 125.74433,71.335791 139.30116,53.229814 156.14080,53.229814 z " + style="opacity:0.67948717;fill:url(#radialGradient4910);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <path + style="fill:#000000;fill-opacity:0.63132530;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 40.698593,686.96077 C 42.101192,694.90128 44.046728,704.06342 43.277566,713.83635 C 50.878742,707.86401 59.497927,703.24900 67.913511,699.58415 C 59.520550,694.29048 50.652509,690.01481 40.698593,686.96077 z " + id="path2908" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#radialGradient4912);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#053000;stroke-width:0.24823265;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 41.156198,685.40664 C 42.558797,693.34715 44.504333,702.50928 43.735171,712.28222 C 51.336347,706.30987 59.955532,701.69487 68.371116,698.03002 C 59.978155,692.73634 51.110123,688.46068 41.156198,685.40664 z " + id="path5275" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4914);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 43.735171,694.19550 C 43.310285,693.78432 41.804813,686.92494 42.309950,686.76399 C 43.492620,686.38716 53.045222,690.58951 53.440241,690.97179 C 53.746517,691.26818 46.454054,688.17638 44.278109,688.63036 C 43.309520,688.83244 44.011580,694.46299 43.735171,694.19550 z " + id="path5277" + sodipodi:nodetypes="cssss" /> + </g> + <g + id="g4916" + transform="translate(6.712920,10.43791)" + inkscape:export-filename="/home/egore/test.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <g + id="g4073" + transform="translate(-73.36519,-14.99177)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="45.985710" + rx="45.985710" + y="722.37427" + x="141.56622" + height="40.216694" + width="40.216694" + id="rect4075" + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.59643406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g4077" + transform="matrix(0.118796,0.000000,0.000000,0.118796,137.2772,717.9787)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="254.81828" + rx="254.81828" + y="53.229813" + x="52.332909" + height="306.07700" + width="306.07700" + id="rect4079" + style="opacity:0.67948717;fill:url(#linearGradient4929);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + sodipodi:nodetypes="ccsccsc" + id="path4081" + d="M 156.14080,53.229814 L 253.94065,53.229814 C 270.78029,53.229814 284.33712,71.335791 284.33712,73.574330 C 284.33712,84.824778 270.78029,103.97078 253.94065,103.97078 L 156.14080,103.97078 C 139.30116,103.97078 125.74433,84.824778 125.74433,73.574330 C 125.74433,71.335791 139.30116,53.229814 156.14080,53.229814 z " + style="opacity:0.67948717;fill:url(#radialGradient4931);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 86.128000,714.50685 L 88.781529,742.15944 L 104.80550,727.81440 L 86.128000,714.50685 z " + id="path6179" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#radialGradient4933);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#af4e00;stroke-width:0.25540930;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 86.345971,713.21253 L 88.999499,740.86511 L 105.02347,726.52009 L 86.345971,713.21253 z " + id="path6181" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 75.293252,714.50685 L 77.946780,742.15944 L 93.970748,727.81440 L 75.293252,714.50685 z " + id="path5314" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4935);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 87.802290,722.97421 C 87.440860,722.48485 87.077914,715.27586 87.616711,715.19072 C 89.001477,714.97189 96.209336,721.40167 96.335426,721.90245 C 96.442497,722.32771 91.707489,717.24049 88.884117,717.47094 C 87.869437,717.55375 88.037412,723.29257 87.802290,722.97421 z " + id="path3816" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#radialGradient4937);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#af4e00;stroke-width:0.25540930;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 75.511223,713.21253 L 78.164751,740.86511 L 94.188719,726.52009 L 75.511223,713.21253 z " + id="path1370" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4939);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 76.967542,722.97421 C 76.606112,722.48485 76.243165,715.27586 76.781963,715.19072 C 78.166728,714.97189 85.374592,721.40167 85.500674,721.90245 C 85.607745,722.32771 80.872749,717.24049 78.049377,717.47094 C 77.034697,717.55375 77.202672,723.29257 76.967542,722.97421 z " + id="path2140" + sodipodi:nodetypes="cssss" /> + </g> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/test.png" + ry="45.985710" + rx="45.985710" + y="726.04913" + x="118.15524" + height="40.216694" + width="40.216694" + id="rect4031" + style="fill:#828282;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.59643406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/test.png" + ry="45.985710" + rx="45.985710" + y="727.37598" + x="119.48208" + height="37.563015" + width="37.563015" + id="rect3396" + style="fill:url(#linearGradient4953);fill-opacity:1.0000000;stroke:none;stroke-width:0.58344406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g14427" + transform="matrix(4.131465e-2,0.000000,0.000000,4.131465e-2,125.4457,732.0258)" + inkscape:export-filename="/home/egore/test.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 308.76840,53.899515 L 371.10436,703.50583 L 698.48533,366.51669 L 308.76840,53.899515 z " + id="path4510" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#radialGradient4962);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#660000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 315.61094,21.618991 L 377.94690,671.22530 L 705.32786,334.23616 L 315.61094,21.618991 z " + id="path4512" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4964);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 347.31758,244.14084 C 338.64648,232.78038 327.41754,63.408966 340.07105,61.384986 C 369.69673,56.646232 537.10655,224.46388 540.25389,236.17984 C 542.92660,246.12899 424.33000,111.47605 370.68684,114.47423 C 346.80829,115.80883 352.95855,251.53136 347.31758,244.14084 z " + id="path4052" + sodipodi:nodetypes="cssss" /> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 162.94585,53.899515 L 225.28181,703.50583 L 552.66278,366.51669 L 162.94585,53.899515 z " + id="path4492" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#radialGradient4966);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#660000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 169.78839,21.618991 L 232.12435,671.22530 L 559.50531,334.23616 L 169.78839,21.618991 z " + id="path4494" + sodipodi:nodetypes="cccc" /> + <path + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 3.8667061,53.899515 L 66.202666,703.50583 L 393.58363,366.51669 L 3.8667061,53.899515 z " + id="path4472" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4968);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 201.08585,244.14084 C 192.41475,232.78038 181.18581,63.408966 193.83932,61.384986 C 223.46500,56.646232 390.87482,224.46388 394.02216,236.17984 C 396.69487,246.12899 278.09827,111.47605 224.45511,114.47423 C 200.57656,115.80883 206.72682,251.53136 201.08585,244.14084 z " + id="path4048" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#radialGradient4970);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#660000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 10.709238,21.618991 L 73.045198,671.22530 L 400.42616,334.23616 L 10.709238,21.618991 z " + id="path14446" + sodipodi:nodetypes="cccc" /> + <path + style="opacity:0.90067720;fill:url(#linearGradient4972);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 43.605533,244.14084 C 34.934425,232.78038 23.705488,63.408966 36.358998,61.384986 C 65.984681,56.646232 233.39450,224.46388 236.54184,236.17984 C 239.21455,246.12899 120.61795,111.47605 66.974787,114.47423 C 43.096241,115.80883 49.246503,251.53136 43.605533,244.14084 z " + id="path14448" + sodipodi:nodetypes="cssss" /> + </g> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/test.png" + ry="30.271393" + rx="30.271393" + y="727.86591" + x="124.82471" + height="15.249610" + width="26.877748" + id="rect1860" + style="opacity:0.67948717;fill:url(#linearGradient4940);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/test.png" + ry="30.271393" + rx="30.271393" + y="736.81964" + x="10.933412" + height="9.0273876" + width="15.910954" + id="rect4956" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:13.632646;stroke:none;fill-opacity:1.0;fill:url(#linearGradient4958);opacity:0.67948717" /> + <rect + style="fill:#000000;fill-opacity:0.58098590;stroke:none;stroke-width:0.50000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect9493" + width="93.156960" + height="36.272003" + x="826.61115" + y="499.85229" + rx="7.1014295" + ry="7.1014299" + inkscape:tile-w="90.498024" + inkscape:tile-h="57.308315" + inkscape:tile-cx="867.38024" + inkscape:tile-cy="559.18919" /> + <rect + style="fill:url(#linearGradient5938);fill-opacity:1.0000000;stroke:#000000;stroke-width:0.50000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect5936" + width="93.156960" + height="36.272003" + x="825.66833" + y="498.90948" + rx="7.1014295" + ry="7.1014299" + inkscape:tile-w="90.498024" + inkscape:tile-h="57.308315" + inkscape:tile-cx="867.38024" + inkscape:tile-cy="559.18919" /> + <use + x="0.0000000" + y="0.0000000" + inkscape:tiled-clone-of="#rect9493" + xlink:href="#rect9493" + transform="translate(96.78341,0.000000)" + id="use10261" + width="1024.0000" + height="768.00000" /> + <use + x="0.0000000" + y="0.0000000" + inkscape:tiled-clone-of="#rect5936" + xlink:href="#rect5936" + transform="translate(96.78341,0.000000)" + id="use6708" + width="1024.0000" + height="768.00000" /> + <rect + style="fill:#000000;fill-opacity:0.74295777;stroke:none;stroke-width:0.50000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect10263" + width="206.66666" + height="206.66666" + x="817.31097" + y="523.07794" + rx="7.1014295" + ry="7.1014295" /> + <rect + style="fill:url(#linearGradient5176);fill-opacity:1.0000000;stroke:#000000;stroke-width:0.50000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect2134" + width="206.66666" + height="206.66666" + x="816.36816" + y="522.13513" + rx="7.1014295" + ry="7.1014295" /> + <rect + style="fill:none;fill-opacity:1.0000000;stroke:#000000;stroke-width:0.50000000;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect3652" + width="196.88889" + height="196.88889" + x="821.25708" + y="527.02405" + rx="7.1014295" + ry="7.1014295" /> + <text + xml:space="preserve" + style="font-size:20.000000;font-style:normal;font-variant:normal;font-weight:200;font-stretch:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:FrizQuadrata;text-anchor:start;writing-mode:lr-tb" + x="857.7016" + y="517.24622" + id="text11031" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan11033" + x="857.70160" + y="517.24622">Map</tspan></text> + <text + xml:space="preserve" + style="font-size:20.000000;font-style:normal;font-variant:normal;font-weight:200;font-stretch:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:FrizQuadrata;text-anchor:start;writing-mode:lr-tb" + x="856.81274" + y="516.35736" + id="text6049" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan6051" + x="856.81274" + y="516.35736">Map</tspan></text> + <text + xml:space="preserve" + style="font-size:20.000000;font-style:normal;font-variant:normal;font-weight:200;font-stretch:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:FrizQuadrata;text-anchor:start;writing-mode:lr-tb" + x="955.03485" + y="518.13513" + id="text11035" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan11037" + x="955.03485" + y="518.13513">Info</tspan></text> + <text + xml:space="preserve" + style="font-size:20.000000;font-style:normal;font-variant:normal;font-weight:200;font-stretch:normal;fill:#ffffff;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:FrizQuadrata;text-anchor:start;writing-mode:lr-tb" + x="954.146" + y="517.24628" + id="text6053" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan6055" + x="954.14600" + y="517.24628">Info</tspan></text> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g3451" + transform="translate(990.2188,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3453" + style="fill:url(#radialGradient3475);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3455" + style="fill:url(#radialGradient3477);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3457" + style="fill:url(#radialGradient3479);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g3459" + transform="translate(953.9966,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3461" + style="fill:url(#radialGradient3481);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3463" + style="fill:url(#radialGradient3483);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3465" + style="fill:url(#radialGradient3485);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g3467" + transform="translate(918.6633,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3469" + style="fill:url(#radialGradient3487);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3471" + style="fill:url(#radialGradient3489);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path3473" + style="fill:url(#radialGradient3491);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g1834" + transform="translate(883.4651,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1836" + style="fill:url(#radialGradient1848);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1838" + style="fill:url(#radialGradient1850);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1840" + style="fill:url(#radialGradient1852);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g1854" + transform="translate(849.4260,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1856" + style="fill:url(#radialGradient1886);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1858" + style="fill:url(#radialGradient1888);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1860" + style="fill:url(#radialGradient1890);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g1862" + transform="translate(813.2038,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1864" + style="fill:url(#radialGradient1892);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1866" + style="fill:url(#radialGradient1894);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1868" + style="fill:url(#radialGradient1896);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g1870" + transform="translate(777.8705,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1872" + style="fill:url(#radialGradient1898);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1874" + style="fill:url(#radialGradient1900);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1876" + style="fill:url(#radialGradient1902);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/roundbuttons/roundbutton.png" + id="g1878" + transform="translate(742.6723,734.3113)" + inkscape:tile-w="32.000000" + inkscape:tile-h="32.000000" + inkscape:tile-cx="780.62960" + inkscape:tile-cy="698.69510"> + <path + transform="translate(-0.169312,0.000000)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1880" + style="fill:url(#radialGradient1904);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.901291,0.000000,0.000000,0.901291,1.020497,1.110596)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1882" + style="fill:url(#radialGradient1906);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(0.856369,0.000000,0.000000,0.856369,2.153103,2.298097)" + d="M 32.169312 16.000000 A 16.000000 16.000000 0 1 1 0.16931152,16.000000 A 16.000000 16.000000 0 1 1 32.169312 16.000000 z" + sodipodi:ry="16.000000" + sodipodi:rx="16.000000" + sodipodi:cy="16.000000" + sodipodi:cx="16.169312" + id="path1884" + style="fill:url(#radialGradient1908);fill-opacity:1.0000000;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + id="g1912" + transform="translate(630.8411,-58.59522)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="45.985710" + rx="45.985710" + y="722.37427" + x="141.56622" + height="40.216694" + width="40.216694" + id="rect1914" + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.59643406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g1916" + transform="matrix(0.118796,0.000000,0.000000,0.118796,137.2772,717.9787)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="254.81828" + rx="254.81828" + y="53.229813" + x="52.332909" + height="306.07700" + width="306.07700" + id="rect1918" + style="opacity:0.67948717;fill:url(#linearGradient1934);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + sodipodi:nodetypes="ccsccsc" + id="path1920" + d="M 156.14080,53.229814 L 253.94065,53.229814 C 270.78029,53.229814 284.33712,71.335791 284.33712,73.574330 C 284.33712,84.824778 270.78029,103.97078 253.94065,103.97078 L 156.14080,103.97078 C 139.30116,103.97078 125.74433,84.824778 125.74433,73.574330 C 125.74433,71.335791 139.30116,53.229814 156.14080,53.229814 z " + style="opacity:0.67948717;fill:url(#radialGradient1936);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <g + id="g1969" + transform="translate(592.1636,-30.27011)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="45.985710" + rx="45.985710" + y="722.37427" + x="141.56622" + height="40.216694" + width="40.216694" + id="rect1971" + style="fill:#d0d0d0;fill-opacity:1.0000000;stroke:#525252;stroke-width:0.59643406;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g1973" + transform="matrix(0.118796,0.000000,0.000000,0.118796,137.2772,717.9787)"> + <rect + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + ry="254.81828" + rx="254.81828" + y="53.229813" + x="52.332909" + height="306.07700" + width="306.07700" + id="rect1975" + style="opacity:0.67948717;fill:url(#linearGradient1979);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="13.150000" + inkscape:export-xdpi="13.150000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/buttonpanel/background/button-checked.png" + sodipodi:nodetypes="ccsccsc" + id="path1977" + d="M 156.14080,53.229814 L 253.94065,53.229814 C 270.78029,53.229814 284.33712,71.335791 284.33712,73.574330 C 284.33712,84.824778 270.78029,103.97078 253.94065,103.97078 L 156.14080,103.97078 C 139.30116,103.97078 125.74433,84.824778 125.74433,73.574330 C 125.74433,71.335791 139.30116,53.229814 156.14080,53.229814 z " + style="opacity:0.67948717;fill:url(#radialGradient1981);fill-opacity:1.0000000;stroke:none;stroke-width:13.632646;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <g + transform="matrix(0.853338,0.000000,0.000000,0.853338,128.9329,79.58165)" + id="g4021"> + <path + style="fill:#000000;fill-opacity:0.69803923;fill-rule:evenodd;stroke:none;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 715.46257,731.99434 C 715.08977,735.64693 715.32392,738.41892 717.78883,741.30135 C 719.70351,743.54036 723.84756,745.92336 728.40535,746.51850 C 732.38542,747.03820 736.38529,746.12376 738.84594,743.71175 C 740.85691,741.74051 740.42959,737.15627 739.81459,734.51077 C 739.88365,738.34103 739.33446,741.49972 731.92400,742.79416 C 727.60767,743.54812 717.34696,739.96937 715.46257,731.99434 z " + id="path3945" + sodipodi:nodetypes="cssscsc" /> + <path + sodipodi:nodetypes="ccssccc" + d="M 720.66245,728.37047 C 716.83627,729.29963 715.88712,731.14573 715.68266,732.80336 C 714.14953,728.58268 716.51323,726.18140 718.43226,725.35537 C 722.66825,723.53204 726.92877,723.77168 730.25568,724.69583 C 733.81556,725.68469 741.33330,729.94370 738.86019,736.98409 C 739.00415,735.12647 737.72156,733.64791 736.20784,732.18044 C 731.48219,727.59915 727.43918,726.72480 720.66245,728.37047 z " + style="fill:url(#linearGradient3989);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path3947" /> + <path + sodipodi:nodetypes="ccccc" + d="M 720.55931,726.69358 C 712.90694,728.55189 714.88536,735.67062 718.34412,738.92009 C 722.97999,743.27546 728.36781,744.75514 735.03001,742.91717 C 741.48235,741.13708 739.62337,733.49459 736.59594,730.55965 C 731.87028,725.97836 727.33603,725.04791 720.55931,726.69358 z " + style="fill:url(#radialGradient3986);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#4b7499;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path3949" /> + <path + sodipodi:nodetypes="ccccccc" + id="path3951" + d="M 731.94971,746.59075 L 740.29461,758.70521 L 740.30863,758.69820 C 741.13486,759.98077 742.79164,760.19828 744.97707,759.25196 C 747.18904,758.29416 749.13176,755.97291 748.60107,754.20500 L 737.59084,745.88762 L 731.94971,746.59075 z " + style="fill:#000000;fill-opacity:0.69803923;fill-rule:evenodd;stroke:none;stroke-width:2.3988314;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + style="fill:url(#linearGradient3982);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 715.17510,730.26879 C 714.80710,734.12195 715.03824,737.04614 717.47139,740.08685 C 719.36141,742.44880 723.45208,744.96265 727.95116,745.59046 C 731.87996,746.13869 735.82830,745.17406 738.25725,742.62959 C 740.24231,740.55012 739.82051,735.71416 739.21343,732.92340 C 739.28160,736.96397 738.73948,740.29611 731.42448,741.66162 C 727.16375,742.45698 717.03522,738.68173 715.17510,730.26879 z " + id="path3953" + sodipodi:nodetypes="cssscsc" /> + <path + style="fill:url(#linearGradient3979);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 731.77670,745.05961 L 740.39111,757.68184 L 748.41276,752.54038 L 737.65502,742.88544 C 737.14754,740.96247 732.65429,741.97189 731.77670,745.05961 z " + id="path3955" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient3976);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 740.34903,757.59833 C 739.38622,755.98084 742.12971,752.08521 744.17701,751.47409 C 746.99640,750.63250 748.31440,751.91249 748.69449,753.17868 C 749.22518,754.94659 747.28050,757.26908 745.06854,758.22688 C 742.83650,759.19339 741.15657,758.95500 740.34903,757.59833 z " + id="path3957" + sodipodi:nodetypes="cssss" /> + <path + sodipodi:nodetypes="ccccc" + id="path3961" + d="M 720.49902,733.95681 C 725.57029,731.19496 728.34359,730.41366 732.38905,729.81395 C 733.48000,730.54585 734.23953,731.44347 734.91620,732.58967 C 729.46484,733.44451 727.34516,734.18046 722.77759,736.93968 C 722.30807,735.82111 721.50712,734.74396 720.49902,733.95681 z " + style="fill:#003297;fill-opacity:0.87469882;fill-rule:evenodd;stroke:#020032;stroke-width:0.80712032;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.74939758" /> + </g> + <g + transform="matrix(0.862505,0.000000,0.000000,0.862505,119.2455,44.30838)" + id="g4011"> + <path + style="fill:#000000;fill-opacity:0.69803923;fill-rule:evenodd;stroke:none;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 763.35147,731.99434 C 762.97867,735.64693 763.21282,738.41892 765.67773,741.30135 C 767.59241,743.54036 771.73646,745.92336 776.29425,746.51850 C 780.27432,747.03820 784.27419,746.12376 786.73484,743.71175 C 788.74581,741.74051 788.31849,737.15627 787.70349,734.51077 C 787.77255,738.34103 787.22336,741.49972 779.81290,742.79416 C 775.49657,743.54812 765.23586,739.96937 763.35147,731.99434 z " + id="path9917" + sodipodi:nodetypes="cssscsc" /> + <path + sodipodi:nodetypes="ccssccc" + d="M 768.55135,728.37047 C 764.72517,729.29963 763.77602,731.14573 763.57156,732.80336 C 762.03843,728.58268 764.40213,726.18140 766.32116,725.35537 C 770.55715,723.53204 774.81767,723.77168 778.14458,724.69583 C 781.70446,725.68469 789.22220,729.94370 786.74909,736.98409 C 786.89305,735.12647 785.61046,733.64791 784.09674,732.18044 C 779.37109,727.59915 775.32808,726.72480 768.55135,728.37047 z " + style="fill:url(#linearGradient4008);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2248" /> + <path + sodipodi:nodetypes="ccccc" + d="M 768.44821,726.69358 C 760.79584,728.55189 762.77426,735.67062 766.23302,738.92009 C 770.86889,743.27546 776.25671,744.75514 782.91891,742.91717 C 789.37125,741.13708 787.51227,733.49459 784.48484,730.55965 C 779.75918,725.97836 775.22493,725.04791 768.44821,726.69358 z " + style="fill:url(#radialGradient4005);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#4b7499;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18903" /> + <path + sodipodi:nodetypes="ccccccc" + id="path4382" + d="M 779.83861,746.59075 L 788.18351,758.70521 L 788.19753,758.69820 C 789.02376,759.98077 790.68054,760.19828 792.86597,759.25196 C 795.07794,758.29416 797.02066,755.97291 796.48997,754.20500 L 785.47974,745.88762 L 779.83861,746.59075 z " + style="fill:#000000;fill-opacity:0.69803923;fill-rule:evenodd;stroke:none;stroke-width:2.3988314;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + style="fill:url(#linearGradient4001);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 763.06400,730.26879 C 762.69600,734.12195 762.92714,737.04614 765.36029,740.08685 C 767.25031,742.44880 771.34098,744.96265 775.84006,745.59046 C 779.76886,746.13869 783.71720,745.17406 786.14615,742.62959 C 788.13121,740.55012 787.70941,735.71416 787.10233,732.92340 C 787.17050,736.96397 786.62838,740.29611 779.31338,741.66162 C 775.05265,742.45698 764.92412,738.68173 763.06400,730.26879 z " + id="path2250" + sodipodi:nodetypes="cssscsc" /> + <path + style="fill:url(#linearGradient3998);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 779.66560,745.05961 L 788.28001,757.68184 L 796.30166,752.54038 L 785.54392,742.88544 C 785.03644,740.96247 780.54319,741.97189 779.66560,745.05961 z " + id="path2244" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient3995);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.53808022;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 788.23793,757.59833 C 787.27512,755.98084 790.01861,752.08521 792.06591,751.47409 C 794.88530,750.63250 796.20330,751.91249 796.58339,753.17868 C 797.11408,754.94659 795.16940,757.26908 792.95744,758.22688 C 790.72540,759.19339 789.04547,758.95500 788.23793,757.59833 z " + id="path2246" + sodipodi:nodetypes="cssss" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path1340" + d="M 768.57371,733.95681 C 769.95466,733.10062 771.37705,732.45157 772.96515,732.13395 C 772.24705,730.96705 771.15610,729.84157 770.06514,729.06823 C 771.39086,728.47442 772.26086,728.21204 773.79372,728.15680 C 775.07801,728.91633 775.96873,729.73799 776.77659,730.97395 C 778.00564,730.29728 779.11040,729.86919 780.46374,729.81395 C 781.55469,730.54585 782.31422,731.44347 782.99089,732.58967 C 781.47183,732.50681 780.53279,732.87967 779.17945,733.58396 C 780.62945,734.71634 781.58231,735.89015 782.28660,737.35397 C 780.90565,737.57492 779.48326,738.00301 778.26802,738.76254 C 777.52230,737.39539 776.65230,736.11111 775.45087,735.15825 C 773.93182,735.37920 772.12277,736.05587 770.85229,736.93968 C 770.38276,735.82111 769.58181,734.74396 768.57371,733.95681 z " + style="fill:#003297;fill-opacity:0.87469882;fill-rule:evenodd;stroke:#020032;stroke-width:0.80712032;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.74939758" /> + </g> + <rect + style="stroke-dasharray:none;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:round;stroke-width:1.0000000;stroke:#000000;fill-opacity:1.0000000;fill:#ffffff" + id="rect1807" + width="87.022209" + height="36.455280" + x="222.07870" + y="726.00226" + rx="10.244126" + ry="10.244126" /> + <text + xml:space="preserve" + style="font-size:24.069710;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Bitstream Vera Sans" + x="237.60193" + y="752.38928" + id="text3325"><tspan + sodipodi:role="line" + id="tspan3327" + x="237.60193" + y="752.38928">Date</tspan></text> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/scrollbar/scrollbar.svg lincity-ng-2.9~git20150314/data/images/gui/scrollbar/scrollbar.svg --- lincity-ng-2.0/data/images/gui/scrollbar/scrollbar.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/scrollbar/scrollbar.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,685 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="210mm" + height="297mm" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/scrollbar" + sodipodi:docname="scrollbar.svg"> + <defs + id="defs3"> + <linearGradient + id="linearGradient9067"> + <stop + style="stop-color:#adadad;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9069" /> + <stop + style="stop-color:#5a5a5a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9071" /> + </linearGradient> + <linearGradient + id="linearGradient7479"> + <stop + style="stop-color:#b3b3b3;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7481" /> + <stop + style="stop-color:#5a5a5a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7483" /> + </linearGradient> + <linearGradient + id="linearGradient4357"> + <stop + style="stop-color:#7d7d7d;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4359" /> + <stop + style="stop-color:#5a5a5a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4361" /> + </linearGradient> + <linearGradient + id="linearGradient3591"> + <stop + style="stop-color:#585858;stop-opacity:1;" + offset="0" + id="stop3593" /> + <stop + style="stop-color:#323232;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3595" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + id="linearGradient2065"> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="0" + id="stop2067" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop2069" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient5929" + gradientUnits="userSpaceOnUse" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" + gradientTransform="translate(354.2857,0.000000)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient5931" + gradientUnits="userSpaceOnUse" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" + gradientTransform="translate(354.2857,0.000000)" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7479" + id="radialGradient5933" + gradientUnits="userSpaceOnUse" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" + gradientTransform="translate(354.2857,0.000000)" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient5935" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.112298,0.899040)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient6713" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,0.000000)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient6715" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,0.000000)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4357" + id="radialGradient6717" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,0.000000)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient6719" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.112298,0.899040)" + x1="53.700134" + y1="96.215469" + x2="131.10864" + y2="185.20897" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient8251" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-1072.504,-402.6173)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8253" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1.000000,0.000000,0.000000,-1.000000,1072.504,402.6173)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7479" + id="radialGradient8255" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033962,0.000000,0.000000,1.033962,683.1551,-6.836898)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8257" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.829638,0.000000,0.000000,0.670574,446.9590,26.14025)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient8283" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(354.2857,339.4113)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8285" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(354.2857,339.4113)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7479" + id="radialGradient8287" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(354.2857,339.4113)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8289" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,0.000000,339.4113)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient8291" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,339.4113)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8293" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,339.4113)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4357" + id="radialGradient8295" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,339.4113)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8297" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,0.000000,339.4113)" + x1="53.700134" + y1="96.215469" + x2="131.10864" + y2="185.20897" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient8299" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-1072.504,-742.0286)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8301" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1.000000,0.000000,0.000000,-1.000000,1072.504,742.0286)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7479" + id="radialGradient8303" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033962,0.000000,0.000000,1.033962,683.1551,332.5744)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient8305" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.829638,0.000000,0.000000,0.670574,446.9590,365.5515)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient9075" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,2.857143,-13.13198)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient9083" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,-316.3616,389.7514)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient9089" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,345.0537,-13.13198)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient9091" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,27.26365,389.7514)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient9857" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,-1017.143,-354.2857)" + x1="1018.6630" + y1="498.66632" + x2="1060.3260" + y2="612.40533" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient10617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,-54.28571,1.153734)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient10650" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(354.2857,670.8399)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10652" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(354.2857,670.8399)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7479" + id="radialGradient10654" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(354.2857,670.8399)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient10656" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,670.8399)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10658" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,670.8399)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4357" + id="radialGradient10660" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(12.85414,670.8399)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3591" + id="linearGradient10662" + gradientUnits="userSpaceOnUse" + gradientTransform="translate(-1072.504,-1073.457)" + x1="107.86702" + y1="105.90907" + x2="317.74615" + y2="269.07529" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10664" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(-1.000000,0.000000,0.000000,-1.000000,941.0754,1076.314)" + x1="101.88446" + y1="128.64871" + x2="222.82086" + y2="252.87381" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient7479" + id="radialGradient10666" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033962,0.000000,0.000000,1.033962,524.5837,638.2887)" + cx="252.63994" + cy="218.03931" + fx="252.63994" + fy="218.03931" + r="180.71915" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient10668" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,2.857143,318.2966)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10670" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,-316.3616,721.1800)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient10672" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,345.0537,318.2966)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10674" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,27.26365,721.1800)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient10676" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,676.4823,318.2966)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10678" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,358.6922,721.1800)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient10684" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,346.3090,318.2966)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10686" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,27.09027,721.1800)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient10692" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,677.6390,318.2966)" + cx="85.433762" + cy="567.46954" + fx="85.433762" + fy="567.46954" + r="252.28673" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2065" + id="linearGradient10694" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.112298,0.000000,0.000000,0.899040,358.4203,721.1800)" + x1="367.26874" + y1="90.360641" + x2="461.66937" + y2="177.01219" /> + <linearGradient + y2="1279.6938" + x2="911.32306" + y1="1182.3771" + x1="897.83844" + gradientTransform="matrix(1.091190,-0.215661,0.174313,0.881979,-1017.143,-354.2857)" + gradientUnits="userSpaceOnUse" + id="linearGradient1405" + xlink:href="#linearGradient2065" + inkscape:collect="always" /> + <radialGradient + r="178.15950" + fy="973.71448" + fx="1035.5625" + cy="973.71448" + cx="1035.5625" + gradientTransform="matrix(1.105807,0.000000,0.000000,0.904317,-1017.143,-354.2857)" + gradientUnits="userSpaceOnUse" + id="radialGradient1407" + xlink:href="#linearGradient9067" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient9067" + id="radialGradient1413" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.105807,0.000000,0.000000,-0.904317,-1017.143,-354.2857)" + cx="1026.2793" + cy="-544.43732" + fx="1026.2793" + fy="-544.43732" + r="161.31776" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.17500000" + inkscape:cx="578.88602" + inkscape:cy="-207.43896" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="1272" + inkscape:window-height="966" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:url(#radialGradient1413);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 84.005844,101.29008 L 305.99414,101.01518 L 194.41704,292.28069 L 84.005844,101.29008 z " + id="path1411" + sodipodi:nodetypes="cccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/scrollbar/arrow_down.png" + inkscape:export-xdpi="6.0000000" + inkscape:export-ydpi="6.0000000" /> + <path + style="fill:url(#linearGradient9857);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 123.10904,148.04681 C 124.85014,166.58861 94.047944,106.67329 103.23774,106.92536 C 116.97634,107.30219 208.65274,109.55790 213.78364,113.79465 C 219.78914,118.75358 128.15044,108.93489 116.66874,116.28846 C 107.24994,122.32078 121.85234,134.66356 123.10904,148.04681 z " + id="path9853" + sodipodi:nodetypes="cssss" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/scrollbar/arrow_down_clicked.png" + inkscape:export-xdpi="6.0000000" + inkscape:export-ydpi="6.0000000" /> + <path + style="fill:url(#radialGradient1407);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 84.005844,662.00579 L 305.99414,662.28069 L 194.41704,471.01518 L 84.005844,662.00579 z " + id="path1401" + sodipodi:nodetypes="cccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/scrollbar/arrow_up.png" + inkscape:export-xdpi="6.0000000" + inkscape:export-ydpi="6.0000000" /> + <path + style="fill:url(#linearGradient1405);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 157.88784,547.40237 C 167.64214,531.53784 185.78194,494.56715 194.84634,493.03262 C 208.39724,490.73857 235.17274,564.97297 233.29574,570.69233 C 230.86724,578.09229 203.98084,509.75078 194.14274,519.19096 C 186.07234,526.93500 153.02234,555.31571 157.88784,547.40237 z " + id="path1403" + sodipodi:nodetypes="cssss" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/scrollbar/arrow_up.png" + inkscape:export-xdpi="6.0000000" + inkscape:export-ydpi="6.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/speed/speed.svg lincity-ng-2.9~git20150314/data/images/gui/speed/speed.svg --- lincity-ng-2.0/data/images/gui/speed/speed.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/speed/speed.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,535 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="700.00000px" + height="2800.0000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/speed" + sodipodi:docname="speed.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/speed/faster2.png" + inkscape:export-xdpi="4.0599999" + inkscape:export-ydpi="4.0599999"> + <defs + id="defs3"> + <linearGradient + id="linearGradient9265"> + <stop + id="stop9267" + offset="0.0000000" + style="stop-color:#2225e4;stop-opacity:1.0000000;" /> + <stop + id="stop9269" + offset="1.0000000" + style="stop-color:#1e1e74;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,325.3948,2087.892)" + gradientUnits="userSpaceOnUse" + id="radialGradient7773" + xlink:href="#linearGradient9265" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.226074,0.000000,0.000000,0.815611,331.0188,2118.022)" + gradientUnits="userSpaceOnUse" + id="linearGradient7775" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <linearGradient + id="linearGradient7603"> + <stop + id="stop7605" + offset="0.0000000" + style="stop-color:#32e422;stop-opacity:1.0000000;" /> + <stop + id="stop7607" + offset="1.0000000" + style="stop-color:#25741e;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2192"> + <stop + id="stop2194" + offset="0.0000000" + style="stop-color:#f9ff28;stop-opacity:1.0000000;" /> + <stop + id="stop2196" + offset="1.0000000" + style="stop-color:#ff8d00;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="406.57547" + fy="837.15094" + fx="398.60666" + cy="837.15094" + cx="398.60666" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,67.49153,208.0990)" + gradientUnits="userSpaceOnUse" + id="radialGradient6185" + xlink:href="#linearGradient2192" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient3818" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.209292,0.202162,-0.134483,0.804447,486.4328,1093.160)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + id="linearGradient2186"> + <stop + id="stop2188" + offset="0.0000000" + style="stop-color:#f9ff28;stop-opacity:1.0000000;" /> + <stop + id="stop2190" + offset="1.0000000" + style="stop-color:#ff8d00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2130"> + <stop + id="stop2132" + offset="0.0000000" + style="stop-color:#ff2020;stop-opacity:1.0000000;" /> + <stop + id="stop2134" + offset="1.0000000" + style="stop-color:#ab0000;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.001523,9.776692e-2,-9.654974e-2,0.989055,-18.07194,1384.399)" + id="radialGradient2138" + xlink:href="#linearGradient7603" + inkscape:collect="always" /> + <linearGradient + id="linearGradient2900" + inkscape:collect="always"> + <stop + id="stop2902" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop2904" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.220274,0.119121,-7.924182e-2,0.811752,-18.07194,1384.399)" + id="linearGradient2906" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,150.1034,-2.987307)" + gradientUnits="userSpaceOnUse" + id="radialGradient4498" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.226074,0.000000,0.000000,0.815611,150.1034,-2.987307)" + gradientUnits="userSpaceOnUse" + id="linearGradient4500" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.190078,0.294912,-0.196181,0.791666,19.78450,-19.07919)" + gradientUnits="userSpaceOnUse" + id="linearGradient4506" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.001930,9.351522e-2,-9.235098e-2,0.989456,8.903047,-19.29637)" + gradientUnits="userSpaceOnUse" + id="radialGradient4508" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.006284,0.000000,0.000000,0.993756,295.9260,-2.987307)" + gradientUnits="userSpaceOnUse" + id="radialGradient4516" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.226074,0.000000,0.000000,0.815611,295.9260,-2.987307)" + gradientUnits="userSpaceOnUse" + id="linearGradient4518" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4050" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,159.3591,-3.782297)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2900" + id="linearGradient4054" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.212334,0.183040,-0.121762,0.806471,305.5908,-3.782297)" + x1="79.663109" + y1="45.531235" + x2="222.74394" + y2="294.71729" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.189556,0.297007,-0.197575,0.791319,28.87910,705.4165)" + gradientUnits="userSpaceOnUse" + id="linearGradient4501" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.001763,9.527952e-2,-9.409331e-2,0.989291,16.12326,697.6808)" + gradientUnits="userSpaceOnUse" + id="radialGradient4503" + xlink:href="#linearGradient2192" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.226074,0.000000,0.000000,0.815611,723.0048,1974.668)" + gradientUnits="userSpaceOnUse" + id="linearGradient9284" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="292.41025" + fy="1428.2233" + fx="209.20108" + cy="1428.2233" + cx="209.20108" + gradientTransform="scale(0.625825,1.597891)" + id="radialGradient11586" + xlink:href="#linearGradient9265" + inkscape:collect="always" /> + <radialGradient + r="292.41025" + fy="1428.2233" + fx="209.20108" + cy="1428.2233" + cx="209.20108" + gradientTransform="matrix(0.625825,0.000000,0.000000,1.597891,322.4597,0.000000)" + gradientUnits="userSpaceOnUse" + id="radialGradient12352" + xlink:href="#linearGradient9265" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.226074,0.000000,0.000000,0.815611,1045.465,1974.668)" + gradientUnits="userSpaceOnUse" + id="linearGradient12354" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.001763,9.527952e-2,-9.409331e-2,0.989291,259.8428,697.6808)" + gradientUnits="userSpaceOnUse" + id="radialGradient12368" + xlink:href="#linearGradient2192" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.189556,0.297007,-0.197575,0.791319,272.5986,705.4165)" + gradientUnits="userSpaceOnUse" + id="linearGradient12370" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.001930,9.351522e-2,-9.235098e-2,0.989456,158.8842,-19.29637)" + gradientUnits="userSpaceOnUse" + id="radialGradient12378" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.190078,0.294912,-0.196181,0.791666,169.7657,-19.07919)" + gradientUnits="userSpaceOnUse" + id="linearGradient12380" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + <radialGradient + r="406.57501" + fy="295.41855" + fx="233.28516" + cy="295.41855" + cx="233.28516" + gradientTransform="matrix(1.001930,9.351522e-2,-9.235098e-2,0.989456,312.6150,-19.29637)" + gradientUnits="userSpaceOnUse" + id="radialGradient12388" + xlink:href="#linearGradient2130" + inkscape:collect="always" /> + <linearGradient + y2="294.71729" + x2="222.74394" + y1="45.531235" + x1="79.663109" + gradientTransform="matrix(1.190078,0.294912,-0.196181,0.791666,323.4965,-19.07919)" + gradientUnits="userSpaceOnUse" + id="linearGradient12390" + xlink:href="#linearGradient2900" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:guide-bbox="true" + showguides="true" + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.53339998" + inkscape:cx="406.27735" + inkscape:cy="2268.2260" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="724" + inkscape:window-height="775" + inkscape:window-x="268" + inkscape:window-y="108"> + <sodipodi:guide + id="guide12356" + position="701.16238" + orientation="horizontal" /> + <sodipodi:guide + id="guide12358" + position="1402.3248" + orientation="horizontal" /> + <sodipodi:guide + id="guide12360" + position="2101.6124" + orientation="horizontal" /> + </sodipodi:namedview> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + sodipodi:nodetypes="cccc" + id="path4472" + d="M 31.401511,25.414381 L 33.098991,678.00251 L 390.38005,352.27318 L 31.401511,25.414381 z " + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path1370" + d="M 26.216175,7.0327950 L 27.913656,659.62091 L 385.19471,332.01681 L 26.216175,7.0327950 z " + style="fill:url(#radialGradient4508);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#660000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path2140" + d="M 38.290880,231.64878 C 30.713038,219.53167 35.272590,49.849683 48.059433,49.010368 C 77.997290,47.045273 229.08715,229.69430 231.13209,241.65205 C 232.86865,251.80652 127.29873,106.71496 73.609084,104.71504 C 49.709846,103.82480 43.220629,239.53155 38.290880,231.64878 z " + style="opacity:0.90067720;fill:url(#linearGradient4506);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path5314" + d="M 39.424472,738.86897 L 39.972719,1391.4590 L 446.61955,1063.5046 L 39.424472,738.86897 z " + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path4496" + d="M 34.277574,714.70895 L 34.825813,1367.2991 L 441.47265,1031.8456 L 34.277574,714.70895 z " + style="fill:url(#radialGradient4503);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#af4e00;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path4498" + d="M 48.497140,953.73551 C 41.133158,941.48725 48.680241,772.08945 61.470055,771.29670 C 94.341087,769.25928 248.60359,935.65950 250.43831,947.65129 C 251.99636,957.83469 152.57837,828.33214 86.037980,827.44126 C 62.124312,827.12109 53.287760,961.70359 48.497140,953.73551 z " + style="opacity:0.90067720;fill:url(#linearGradient4501);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path2908" + d="M 43.947231,1435.9353 L 42.874887,2088.5247 L 667.12470,1734.1539 L 43.947231,1435.9353 z " + style="fill:#000000;fill-opacity:0.63132530;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path7613" + d="M 30.483849,1418.3705 L 29.411504,2070.9599 L 655.53611,1716.5891 L 30.483849,1418.3705 z " + style="fill:url(#radialGradient2138);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#053000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path7615" + d="M 55.022727,1642.4638 C 46.922881,1630.6892 44.066904,1460.9700 56.804876,1459.5730 C 86.628354,1456.3021 292.85345,1601.5636 300.38391,1612.5106 C 306.22261,1620.9981 148.23390,1512.8602 94.508134,1513.2072 C 70.592804,1513.3617 60.292059,1650.1237 55.022727,1642.4638 z " + style="opacity:0.90067720;fill:url(#linearGradient2906);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path10804" + d="M 93.581083,2161.2426 L 94.049776,2780.8527 L 331.91065,2782.6689 L 333.31673,2162.6486 L 93.581083,2161.2426 z " + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:butt;stroke-width:6.0000000;stroke:none;fill-rule:evenodd;fill-opacity:0.63132530;fill:#000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path9278" + d="M 65.459597,2138.7454 L 65.928290,2758.3555 L 303.78916,2760.1717 L 305.19524,2140.1514 L 65.459597,2138.7454 z " + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:butt;stroke-width:6.0000000;stroke:#000030;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient11586)" /> + <path + sodipodi:nodetypes="cssss" + id="path9280" + d="M 118.42173,2341.9392 C 108.15181,2332.0005 71.763357,2166.2035 83.972907,2162.3132 C 112.55916,2153.2047 260.69757,2159.8094 296.75877,2179.6548 C 305.78427,2184.6217 186.01427,2163.8984 133.41986,2186.8023 C 111.49299,2196.3511 125.10281,2348.4047 118.42173,2341.9392 z " + style="opacity:0.90067720;fill:url(#linearGradient9284);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path12346" + d="M 416.04079,2161.2426 L 416.50948,2780.8527 L 654.37035,2782.6689 L 655.77643,2162.6486 L 416.04079,2161.2426 z " + style="fill:#000000;fill-opacity:0.63132530;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path12348" + d="M 387.91930,2138.7454 L 388.38799,2758.3555 L 626.24886,2760.1717 L 627.65494,2140.1514 L 387.91930,2138.7454 z " + style="fill:url(#radialGradient12352);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000030;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path12350" + d="M 440.88143,2341.9392 C 430.61151,2332.0005 394.22306,2166.2035 406.43261,2162.3132 C 435.01886,2153.2047 583.15727,2159.8094 619.21847,2179.6548 C 628.24397,2184.6217 508.47397,2163.8984 455.87956,2186.8023 C 433.95269,2196.3511 447.56251,2348.4047 440.88143,2341.9392 z " + style="opacity:0.90067720;fill:url(#linearGradient12354);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path12362" + d="M 283.14402,738.86897 L 283.69226,1391.4590 L 690.33909,1059.7551 L 283.14402,738.86897 z " + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path12364" + d="M 277.99712,714.70895 L 278.54536,1367.2991 L 685.19219,1035.5951 L 277.99712,714.70895 z " + style="fill:url(#radialGradient12368);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#af4e00;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path12366" + d="M 292.21668,953.73551 C 284.85270,941.48725 292.39979,772.08945 305.18960,771.29670 C 338.06063,769.25928 492.32313,935.65950 494.15785,947.65129 C 495.71590,957.83469 396.29791,828.33214 329.75752,827.44126 C 305.84386,827.12109 297.00730,961.70359 292.21668,953.73551 z " + style="opacity:0.90067720;fill:url(#linearGradient12370);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path12372" + d="M 181.38277,25.414381 L 183.08025,678.00251 L 540.36131,352.27318 L 181.38277,25.414381 z " + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path12374" + d="M 176.19744,7.0327950 L 177.89492,659.62091 L 535.17597,332.01681 L 176.19744,7.0327950 z " + style="fill:url(#radialGradient12378);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#660000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path12376" + d="M 188.27214,231.64878 C 180.69430,219.53167 185.25385,49.849683 198.04069,49.010368 C 227.97855,47.045273 379.06841,229.69430 381.11335,241.65205 C 382.84991,251.80652 277.27999,106.71496 223.59035,104.71504 C 199.69111,103.82480 193.20189,239.53155 188.27214,231.64878 z " + style="opacity:0.90067720;fill:url(#linearGradient12380);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path12382" + d="M 335.11356,25.414381 L 336.81104,678.00251 L 694.09210,352.27318 L 335.11356,25.414381 z " + style="fill:#000000;fill-opacity:0.63137257;fill-rule:evenodd;stroke:none;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path12384" + d="M 329.92823,7.0327950 L 331.62571,659.62091 L 688.90676,332.01681 L 329.92823,7.0327950 z " + style="fill:url(#radialGradient12388);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#660000;stroke-width:6.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path12386" + d="M 342.00293,231.64878 C 334.42509,219.53167 338.98464,49.849683 351.77148,49.010368 C 381.70934,47.045273 532.79920,229.69430 534.84414,241.65205 C 536.58070,251.80652 431.01078,106.71496 377.32114,104.71504 C 353.42190,103.82480 346.93268,239.53155 342.00293,231.64878 z " + style="opacity:0.90067720;fill:url(#linearGradient12390);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/window/titlebar.svg lincity-ng-2.9~git20150314/data/images/gui/window/titlebar.svg --- lincity-ng-2.0/data/images/gui/window/titlebar.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/window/titlebar.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,967 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="55.000000pt" + height="55.000000pt" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/window" + sodipodi:docname="titlebar.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient2927" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,25.12716,46.50393)" + x1="16.189846" + y1="17.190893" + x2="1.2324450" + y2="-0.39325574" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient2929" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,25.12716,46.50393)" + x1="2.6197338" + y1="0.016188154" + x2="17.950672" + y2="19.847095" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2111" + id="linearGradient2931" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.025985,0.000000,0.000000,0.974673,25.12716,46.50393)" + x1="7.5918474" + y1="12.398009" + x2="10.899632" + y2="16.752083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient2933" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075957,0.000000,0.000000,0.929405,26.27621,55.34277)" + x1="5.2469473" + y1="2.8582325" + x2="8.3656864" + y2="8.4963865" /> + <linearGradient + id="linearGradient2111"> + <stop + style="stop-color:#100bac;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2113" /> + <stop + style="stop-color:#110a85;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2115" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2111" + id="linearGradient2949" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.025985,0.000000,0.000000,0.974673,47.25216,46.50393)" + x1="7.5918474" + y1="12.398009" + x2="10.899632" + y2="16.752083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient2951" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075957,0.000000,0.000000,0.929405,48.40121,55.34277)" + x1="5.2469473" + y1="2.8582325" + x2="8.3656864" + y2="8.4963865" /> + <linearGradient + y2="-0.39325574" + x2="1.2324450" + y1="17.190893" + x1="16.189846" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,24.96796,24.25393)" + gradientUnits="userSpaceOnUse" + id="linearGradient4196" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="19.847095" + x2="17.950672" + y1="0.016188154" + x1="2.6197338" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,24.96796,24.25393)" + gradientUnits="userSpaceOnUse" + id="linearGradient4198" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,18.12590,-5.481170)" + gradientUnits="userSpaceOnUse" + id="linearGradient4200" + xlink:href="#linearGradient4204" + inkscape:collect="always" /> + <linearGradient + y2="8.4963865" + x2="8.3656864" + y1="2.8582325" + x1="5.2469473" + gradientTransform="matrix(1.075957,0.000000,0.000000,0.929405,25.32152,23.81199)" + gradientUnits="userSpaceOnUse" + id="linearGradient4202" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,-4.589900,-5.481170)" + gradientUnits="userSpaceOnUse" + id="linearGradient1340" + xlink:href="#linearGradient4405" + inkscape:collect="always" /> + <linearGradient + id="linearGradient4204"> + <stop + style="stop-color:#55c329;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4206" /> + <stop + style="stop-color:#2b7d0a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4208" /> + </linearGradient> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,40.39977,-5.481170)" + gradientUnits="userSpaceOnUse" + id="linearGradient4224" + xlink:href="#linearGradient4204" + inkscape:collect="always" /> + <linearGradient + y2="8.4963865" + x2="8.3656864" + y1="2.8582325" + x1="5.2469473" + gradientTransform="matrix(1.075957,0.000000,0.000000,0.929405,47.59538,23.81199)" + gradientUnits="userSpaceOnUse" + id="linearGradient4226" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + id="linearGradient4405"> + <stop + style="stop-color:#c3c3c3;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4407" /> + <stop + style="stop-color:#919191;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4409" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff4a4a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#bc2a2a;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + id="stop4962" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:0.73092371;" /> + <stop + id="stop4964" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2812"> + <stop + style="stop-color:#303030;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2814" /> + <stop + style="stop-color:#b3b3b3;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2816" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient3614" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,2.250000,2.250000)" + x1="16.189846" + y1="17.190893" + x2="1.2324450" + y2="-0.39325574" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient3616" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,2.250000,2.250000)" + x1="2.6197338" + y1="0.016188154" + x2="17.950672" + y2="19.847095" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4405" + id="linearGradient3619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,-4.742948,-27.29002)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient3621" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,-4.686517,-173.7776)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient3623" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,-11.27971,-173.4767)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient3637" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,25.00000,2.250000)" + x1="16.189846" + y1="17.190893" + x2="1.2324450" + y2="-0.39325574" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient3639" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,25.00000,2.250000)" + x1="2.6197338" + y1="0.016188154" + x2="17.950672" + y2="19.847095" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient3641" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,18.00705,-27.29002)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient3643" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,18.06348,-173.7776)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient3645" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,11.47029,-173.4767)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient4423" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.000089,0.000000,0.000000,0.999911,2.250000,2.250000)" + x1="46.836864" + y1="-1.0711026" + x2="62.739948" + y2="21.473057" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2812" + id="linearGradient4425" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.000089,0.000000,0.000000,0.999911,2.250000,2.250000)" + x1="62.073170" + y1="19.621099" + x2="49.252834" + y2="-0.83020085" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient4427" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,40.25705,-27.29002)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient4429" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,40.31348,-173.7776)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient4431" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,33.72029,-173.4767)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + y2="-0.83020085" + x2="49.252834" + y1="19.621099" + x1="62.073170" + gradientTransform="matrix(1.000089,0.000000,0.000000,0.999911,2.252160,24.25393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1579" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="21.473057" + x2="62.739948" + y1="-1.0711026" + x1="46.836864" + gradientTransform="matrix(1.000089,0.000000,0.000000,0.999911,2.252160,24.25393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1581" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,-11.27755,-151.4728)" + gradientUnits="userSpaceOnUse" + id="linearGradient1583" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="19.847095" + x2="17.950672" + y1="0.016188154" + x1="2.6197338" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,2.252160,24.25393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1585" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="-0.39325574" + x2="1.2324450" + y1="17.190893" + x1="16.189846" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,2.252160,24.25393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1587" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="-0.83020085" + x2="49.252834" + y1="19.621099" + x1="62.073170" + gradientTransform="matrix(1.000089,0.000000,0.000000,0.999911,2.252160,46.50393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1774" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="21.473057" + x2="62.739948" + y1="-1.0711026" + x1="46.836864" + gradientTransform="matrix(1.000089,0.000000,0.000000,0.999911,2.252160,46.50393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1776" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.291748,0.000000,0.000000,0.252010,-11.27755,-129.2228)" + gradientUnits="userSpaceOnUse" + id="linearGradient1778" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(4.417042e-2,0.000000,0.000000,4.196135e-2,-4.587740,38.77276)" + gradientUnits="userSpaceOnUse" + id="linearGradient1780" + xlink:href="#linearGradient4405" + inkscape:collect="always" /> + <linearGradient + y2="19.847095" + x2="17.950672" + y1="0.016188154" + x1="2.6197338" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,2.252160,46.50393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1782" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + <linearGradient + y2="-0.39325574" + x2="1.2324450" + y1="17.190893" + x1="16.189846" + gradientTransform="matrix(1.011153,0.000000,0.000000,1.010973,2.252160,46.50393)" + gradientUnits="userSpaceOnUse" + id="linearGradient1784" + xlink:href="#linearGradient2812" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="4.0000000" + inkscape:cx="33.446575" + inkscape:cy="29.584373" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="640" + inkscape:window-height="546" + inkscape:window-x="632" + inkscape:window-y="381" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + style="fill:url(#linearGradient3614);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1291" + width="19.995689" + height="19.992136" + x="2.2500000" + y="2.2500000" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient3616);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect2052" + width="17.467585" + height="17.464479" + x="3.5140531" + y="3.5138285" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 4.6860101,10.112856 L 9.3026805,4.7919440 L 12.589129,9.1738715 L 15.562577,4.5571999 L 20.179247,9.5651144 L 15.406079,12.460315 L 20.570488,15.825011 L 15.719075,20.676421 L 12.980370,15.512015 L 9.7721722,20.441673 L 5.0772518,16.059754 L 9.8504233,12.616811 L 4.6860101,10.112856 z " + id="path3578" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:url(#linearGradient3619);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#494949;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 4.4121410,9.4868656 L 9.0288114,4.1659547 L 12.315255,8.5478811 L 15.288708,3.9312083 L 19.905378,8.9391240 L 15.132210,11.834328 L 20.296620,15.199019 L 15.445201,20.050433 L 12.706501,14.886022 L 9.4983031,19.815686 L 4.8033827,15.433763 L 9.5765496,11.990823 L 4.4121410,9.4868656 z " + id="path3580" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + sodipodi:nodetypes="csss" + id="path3582" + d="M 15.353932,4.8154034 C 14.464018,5.3975675 12.983868,8.5265010 13.191294,8.3717337 C 15.866852,6.3754427 14.983281,5.5182129 16.747630,6.2091002 C 17.088041,6.3424000 15.758712,4.5505992 15.353932,4.8154034 z " + style="fill:url(#linearGradient3621);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + sodipodi:nodetypes="csss" + id="path3584" + d="M 8.7607477,5.1162216 C 7.8188224,5.6098291 6.8240685,7.1311972 7.2228711,6.9424472 C 9.5149606,5.8576326 8.7265086,6.7802026 10.250567,6.7502134 C 10.616075,6.7432397 9.3577655,4.8033598 8.7607477,5.1162216 z " + style="fill:url(#linearGradient3623);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient3637);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect3625" + width="19.995689" + height="19.992136" + x="25.000000" + y="2.2500000" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient3639);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect3627" + width="17.467585" + height="17.464479" + x="26.264053" + y="3.5138285" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 27.436010,10.112856 L 32.052680,4.7919440 L 35.339129,9.1738715 L 38.312577,4.5571999 L 42.929247,9.5651144 L 38.156079,12.460315 L 43.320488,15.825011 L 38.469075,20.676421 L 35.730370,15.512015 L 32.522172,20.441673 L 27.827252,16.059754 L 32.600423,12.616811 L 27.436010,10.112856 z " + id="path3629" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:url(#linearGradient3641);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 27.162141,9.4868656 L 31.778811,4.1659547 L 35.065255,8.5478811 L 38.038708,3.9312083 L 42.655378,8.9391240 L 37.882210,11.834328 L 43.046620,15.199019 L 38.195201,20.050433 L 35.456501,14.886022 L 32.248303,19.815686 L 27.553383,15.433763 L 32.326550,11.990823 L 27.162141,9.4868656 z " + id="path3631" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + sodipodi:nodetypes="csss" + id="path3633" + d="M 38.103932,4.8154034 C 37.214018,5.3975675 35.733868,8.5265010 35.941294,8.3717337 C 38.616852,6.3754427 37.733281,5.5182129 39.497630,6.2091002 C 39.838041,6.3424000 38.508712,4.5505992 38.103932,4.8154034 z " + style="fill:url(#linearGradient3643);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + sodipodi:nodetypes="csss" + id="path3635" + d="M 31.510748,5.1162216 C 30.568822,5.6098291 29.574068,7.1311972 29.972871,6.9424472 C 32.264961,5.8576326 31.476509,6.7802026 33.000567,6.7502134 C 33.366075,6.7432397 32.107765,4.8033598 31.510748,5.1162216 z " + style="fill:url(#linearGradient3645);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient4423);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4411" + width="19.995689" + height="19.992136" + x="47.250000" + y="2.2500000" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient4425);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4413" + width="17.467585" + height="17.464479" + x="48.514053" + y="3.5138285" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 49.686010,10.112856 L 54.302680,4.7919440 L 57.589129,9.1738715 L 60.562577,4.5571999 L 65.179247,9.5651144 L 60.406079,12.460315 L 65.570488,15.825011 L 60.719075,20.676421 L 57.980370,15.512015 L 54.772172,20.441673 L 50.077252,16.059754 L 54.850423,12.616811 L 49.686010,10.112856 z " + id="path4415" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + style="fill:url(#linearGradient4427);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 49.412141,9.4868656 L 54.028811,4.1659547 L 57.315255,8.5478811 L 60.288708,3.9312083 L 64.905378,8.9391240 L 60.132210,11.834328 L 65.296620,15.199019 L 60.445201,20.050433 L 57.706501,14.886022 L 54.498303,19.815686 L 49.803383,15.433763 L 54.576550,11.990823 L 49.412141,9.4868656 z " + id="path4417" + sodipodi:nodetypes="ccccccccccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + sodipodi:nodetypes="csss" + id="path4419" + d="M 60.353932,4.8154034 C 59.464018,5.3975675 57.983868,8.5265010 58.191294,8.3717337 C 60.866852,6.3754427 59.983281,5.5182129 61.747630,6.2091002 C 62.088041,6.3424000 60.758712,4.5505992 60.353932,4.8154034 z " + style="fill:url(#linearGradient4429);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + sodipodi:nodetypes="csss" + id="path4421" + d="M 53.760748,5.1162216 C 52.818822,5.6098291 51.824068,7.1311972 52.222871,6.9424472 C 54.514961,5.8576326 53.726509,6.7802026 55.250567,6.7502134 C 55.616075,6.7432397 54.357765,4.8033598 53.760748,5.1162216 z " + style="fill:url(#linearGradient4431);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_close_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient4196);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4186" + width="19.995689" + height="19.992136" + x="24.967960" + y="24.253933" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient4198);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect4188" + width="17.467585" + height="17.464479" + x="26.232014" + y="25.517761" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + id="path4190" + d="M 28.154540,27.526680 L 30.217040,42.401679 L 40.560790,41.339179 L 42.717040,28.807930 L 28.154540,27.526680 z M 29.342040,30.620430 L 41.560790,31.432930 L 39.967040,40.651679 L 30.842040,41.589179 L 29.342040,30.620430 z " + style="fill:#000000;fill-opacity:0.55294120;fill-rule:evenodd;stroke:none;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + id="path4192" + d="M 27.775099,26.933849 L 29.837599,41.808849 L 40.181348,40.746349 L 42.337598,28.215099 L 27.775099,26.933849 z M 28.962599,30.027599 L 41.181348,30.840099 L 39.587598,40.058849 L 30.462599,40.996349 L 28.962599,30.027599 z " + style="fill:url(#linearGradient4200);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#494949;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path4194" + d="M 28.981737,27.760969 C 28.039812,28.254577 29.285337,29.929494 29.189531,29.498806 C 28.877167,28.094613 29.670386,28.549991 31.157118,28.498897 C 33.167040,28.429822 37.071917,28.689905 37.833946,28.498133 C 38.188466,28.408915 29.578755,27.448107 28.981737,27.760969 z " + style="fill:url(#linearGradient4202);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1587);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1563" + width="19.995689" + height="19.992136" + x="2.2521553" + y="24.253933" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1585);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1565" + width="17.467585" + height="17.464479" + x="3.5162086" + y="25.517761" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize.png" + id="path2102" + d="M 5.4387354,27.526680 L 7.5012354,42.401679 L 17.844985,41.339179 L 20.001235,28.807930 L 5.4387354,27.526680 z M 6.6262354,30.620430 L 18.844985,31.432930 L 17.251235,40.651679 L 8.1262354,41.589179 L 6.6262354,30.620430 z " + style="fill:#000000;fill-opacity:0.55294120;fill-rule:evenodd;stroke:none;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize.png" + id="path1568" + d="M 5.0592937,26.933849 L 7.1217937,41.808849 L 17.465543,40.746349 L 19.621793,28.215099 L 5.0592937,26.933849 z M 6.2467937,30.027599 L 18.465543,30.840099 L 16.871793,40.058849 L 7.7467937,40.996349 L 6.2467937,30.027599 z " + style="fill:url(#linearGradient1340);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#494949;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path1570" + d="M 6.2659318,27.760969 C 5.3240068,28.254577 6.5695321,29.929494 6.4737256,29.498806 C 6.1613624,28.094613 6.9545806,28.549991 8.4413130,28.498897 C 10.451235,28.429822 14.356112,28.689905 15.118141,28.498133 C 15.472661,28.408915 6.8629498,27.448107 6.2659318,27.760969 z " + style="fill:url(#linearGradient1583);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1581);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1572" + width="19.995689" + height="19.992136" + x="47.252155" + y="24.253933" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize-clicked.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1579);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1574" + width="17.467585" + height="17.464479" + x="48.516209" + y="25.517761" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize-clicked.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize-clicked.png" + id="path4214" + d="M 50.428404,27.526680 L 52.490904,42.401679 L 62.834654,41.339179 L 64.990904,28.807930 L 50.428404,27.526680 z M 51.615904,30.620430 L 63.834654,31.432930 L 62.240904,40.651679 L 53.115904,41.589179 L 51.615904,30.620430 z " + style="fill:#000000;fill-opacity:0.55294120;fill-rule:evenodd;stroke:none;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize-clicked.png" + id="path4216" + d="M 50.048963,26.933849 L 52.111463,41.808849 L 62.455212,40.746349 L 64.611462,28.215099 L 50.048963,26.933849 z M 51.236463,30.027599 L 63.455212,30.840099 L 61.861462,40.058849 L 52.736463,40.996349 L 51.236463,30.027599 z " + style="fill:url(#linearGradient4224);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#494949;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path4218" + d="M 51.255601,27.760969 C 50.313676,28.254577 51.559201,29.929494 51.463395,29.498806 C 51.151031,28.094613 51.944250,28.549991 53.430982,28.498897 C 55.440904,28.429822 59.345781,28.689905 60.107810,28.498133 C 60.462330,28.408915 51.852619,27.448107 51.255601,27.760969 z " + style="fill:url(#linearGradient4226);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize-clicked.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1784);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1753" + width="19.995689" + height="19.992136" + x="2.2521553" + y="46.503933" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1782);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1755" + width="17.467585" + height="17.464479" + x="3.5162086" + y="47.767761" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize.png" + id="path2149" + d="M 6.2601190,59.296734 L 7.5271240,64.625791 L 17.870873,63.563291 L 19.585181,59.428935 L 6.2601190,59.296734 z " + style="fill:#000000;fill-opacity:0.55294120;fill-rule:evenodd;stroke:none;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccc" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize.png" + id="path1758" + d="M 5.8547890,58.729792 L 7.1217940,64.058849 L 17.465543,62.996349 L 19.179851,58.861993 L 5.8547890,58.729792 z " + style="fill:url(#linearGradient1780);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#494949;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:nodetypes="cssss" + id="path1760" + d="M 7.0614270,59.291746 C 6.1195020,59.785354 7.2676880,62.966918 7.4239000,62.554282 C 7.7965470,61.569934 7.7827290,60.807781 9.2368080,60.493713 C 11.909643,59.916405 15.726132,59.712449 16.488161,59.520677 C 16.842681,59.431459 7.6584450,58.978884 7.0614270,59.291746 z " + style="fill:url(#linearGradient1778);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1776);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1762" + width="19.995689" + height="19.992136" + x="47.252155" + y="46.503933" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize_clicked.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient1774);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect1764" + width="17.467585" + height="17.464479" + x="48.516209" + y="47.767761" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize_clicked.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient2927);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect2917" + width="19.995689" + height="19.992136" + x="25.127157" + y="46.503933" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <rect + style="fill:url(#linearGradient2929);fill-opacity:1.0000000;stroke:none;stroke-width:2.9499996;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect2919" + width="17.467585" + height="17.464479" + x="26.391209" + y="47.767761" + rx="2.5132282" + ry="2.5132282" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + id="path2921" + d="M 29.135120,59.296734 L 30.402125,64.625791 L 40.745874,63.563291 L 42.460182,59.428935 L 29.135120,59.296734 z " + style="fill:#000000;fill-opacity:0.55294120;fill-rule:evenodd;stroke:none;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccc" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + id="path2923" + d="M 28.729790,58.729792 L 29.996794,64.058849 L 40.340544,62.996349 L 42.054852,58.861993 L 28.729790,58.729792 z " + style="fill:url(#linearGradient2931);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#050049;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:nodetypes="cssss" + id="path2925" + d="M 29.936428,59.291746 C 28.994503,59.785354 30.142689,62.966918 30.298901,62.554282 C 30.671548,61.569934 30.657730,60.807781 32.111809,60.493713 C 34.784644,59.916405 38.601133,59.712449 39.363162,59.520677 C 39.717682,59.431459 30.533446,58.978884 29.936428,59.291746 z " + style="fill:url(#linearGradient2933);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_maximize_hover.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize_clicked.png" + id="path2939" + d="M 51.260121,59.296734 L 52.527126,64.625791 L 62.870875,63.563291 L 64.585183,59.428935 L 51.260121,59.296734 z " + style="fill:#000000;fill-opacity:0.55294120;fill-rule:evenodd;stroke:none;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccc" /> + <path + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize_clicked.png" + id="path2941" + d="M 50.854791,58.729792 L 52.121795,64.058849 L 62.465545,62.996349 L 64.179853,58.861993 L 50.854791,58.729792 z " + style="fill:url(#linearGradient2949);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#050049;stroke-width:0.21525852;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:nodetypes="ccccc" /> + <path + sodipodi:nodetypes="cssss" + id="path2943" + d="M 52.061429,59.291746 C 51.119504,59.785354 52.267690,62.966918 52.423902,62.554282 C 52.796549,61.569934 52.782731,60.807781 54.236810,60.493713 C 56.909645,59.916405 60.726134,59.712449 61.488163,59.520677 C 61.842683,59.431459 52.658447,58.978884 52.061429,59.291746 z " + style="fill:url(#linearGradient2951);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/window/window_minimize_clicked.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/gui/zoom/zoom.svg lincity-ng-2.9~git20150314/data/images/gui/zoom/zoom.svg --- lincity-ng-2.0/data/images/gui/zoom/zoom.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/gui/zoom/zoom.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,287 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="128.00000pt" + height="128.00000pt" + id="svg1468" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/gui/mapview/buttons" + sodipodi:docname="zoom.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/gui/mapview/buttons/zoomout2.png" + inkscape:export-xdpi="18.000000" + inkscape:export-ydpi="18.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient7591"> + <stop + style="stop-color:#3cff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop7593" /> + <stop + style="stop-color:#1c470f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop7595" /> + </linearGradient> + <linearGradient + id="linearGradient5307"> + <stop + style="stop-color:#e1ffff;stop-opacity:0.74117649;" + offset="0.0000000" + id="stop5309" /> + <stop + style="stop-color:#afe6ff;stop-opacity:0.65882355;" + offset="1.0000000" + id="stop5311" /> + </linearGradient> + <linearGradient + id="linearGradient4542"> + <stop + style="stop-color:#717171;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4544" /> + <stop + style="stop-color:#1c1c1c;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4546" /> + </linearGradient> + <linearGradient + id="linearGradient3768"> + <stop + style="stop-color:#9f9f9f;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3770" /> + <stop + style="stop-color:#494949;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3772" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3768" + id="linearGradient3774" + gradientTransform="matrix(1.564455,0.000000,0.000000,0.904340,1.476345,-2.957098)" + x1="17.216179" + y1="60.447464" + x2="59.329948" + y2="81.568985" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4542" + id="linearGradient4540" + gradientTransform="matrix(1.606870,0.000000,0.000000,0.880469,1.476345,-2.957098)" + x1="1.9051772" + y1="37.666012" + x2="69.858246" + y2="37.666012" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient5307" + id="radialGradient5315" + gradientTransform="matrix(1.380022,0.000000,0.000000,1.025200,1.476345,-2.957098)" + cx="41.961208" + cy="51.008999" + fx="41.961208" + fy="51.008999" + r="39.440468" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient7591" + id="linearGradient7597" + gradientTransform="matrix(1.239690,0.000000,0.000000,1.160451,7.041127,-0.418621)" + x1="71.189911" + y1="123.00367" + x2="109.37925" + y2="106.20147" + gradientUnits="userSpaceOnUse" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="25.698910" + fy="120.32793" + fx="86.700439" + cy="120.32793" + cx="86.700439" + gradientTransform="matrix(1.261854,0.000000,0.000000,1.121207,-0.666091,2.682863)" + id="radialGradient4376" + xlink:href="#linearGradient7591" + inkscape:collect="always" /> + <radialGradient + r="25.698910" + fy="120.32793" + fx="86.700439" + cy="120.32793" + cx="86.700439" + gradientTransform="matrix(1.272423,0.000000,0.000000,1.130598,-316.2223,-34.98937)" + gradientUnits="userSpaceOnUse" + id="radialGradient4386" + xlink:href="#linearGradient7591" + inkscape:collect="always" /> + <linearGradient + y2="106.20147" + x2="109.37925" + y1="123.00367" + x1="71.189911" + gradientTransform="matrix(1.239690,0.000000,0.000000,1.160451,-308.9850,-38.64581)" + gradientUnits="userSpaceOnUse" + id="linearGradient4388" + xlink:href="#linearGradient7591" + inkscape:collect="always" /> + <linearGradient + y2="106.20147" + x2="109.37925" + y1="123.00367" + x1="71.189911" + gradientTransform="matrix(1.229393,0.000000,0.000000,1.150812,6.511066,-0.943208)" + gradientUnits="userSpaceOnUse" + id="linearGradient5167" + xlink:href="#linearGradient7591" + inkscape:collect="always" /> + <linearGradient + y2="37.666012" + x2="69.858246" + y1="37.666012" + x1="1.9051772" + gradientTransform="matrix(1.606870,0.000000,0.000000,0.880469,184.4214,-2.957098)" + gradientUnits="userSpaceOnUse" + id="linearGradient5185" + xlink:href="#linearGradient4542" + inkscape:collect="always" /> + <radialGradient + r="39.440468" + fy="51.008999" + fx="41.961208" + cy="51.008999" + cx="41.961208" + gradientTransform="matrix(1.380022,0.000000,0.000000,1.025200,184.4214,-2.957098)" + gradientUnits="userSpaceOnUse" + id="radialGradient5187" + xlink:href="#linearGradient5307" + inkscape:collect="always" /> + <linearGradient + y2="81.568985" + x2="59.329948" + y1="60.447464" + x1="17.216179" + gradientTransform="matrix(1.564455,0.000000,0.000000,0.904340,184.4214,-2.957098)" + gradientUnits="userSpaceOnUse" + id="linearGradient5189" + xlink:href="#linearGradient3768" + inkscape:collect="always" /> + <linearGradient + y2="106.20147" + x2="109.37925" + y1="123.00367" + x1="71.189911" + gradientTransform="matrix(1.229393,0.000000,0.000000,1.150812,189.4561,-0.943208)" + gradientUnits="userSpaceOnUse" + id="linearGradient5191" + xlink:href="#linearGradient7591" + inkscape:collect="always" /> + <radialGradient + r="25.698910" + fy="120.32793" + fx="86.700439" + cy="120.32793" + cx="86.700439" + gradientTransform="matrix(1.261854,0.000000,0.000000,1.121207,182.2790,2.682863)" + gradientUnits="userSpaceOnUse" + id="radialGradient5193" + xlink:href="#linearGradient7591" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="2.6437500" + inkscape:cx="92.548817" + inkscape:cy="33.617217" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="966" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <path + style="fill:#000000;fill-opacity:0.69803923;fill-rule:evenodd;stroke:none;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 6.9314551,36.872362 C 5.2832693,53.020829 6.3184741,65.276078 17.216058,78.019592 C 25.681079,87.918477 44.002331,98.453949 64.152802,101.08512 C 81.749094,103.38276 99.432898,99.339966 110.31167,88.676192 C 119.20237,79.961176 117.31315,59.693769 114.59420,47.997748 C 114.89952,64.931701 112.47147,78.896594 79.709101,84.619430 C 60.626159,87.952781 15.262541,72.130768 6.9314551,36.872362 z " + id="path9917" + sodipodi:nodetypes="cssscsc" /> + <path + sodipodi:nodetypes="ccssccc" + d="M 29.920661,20.850853 C 13.004726,24.958756 8.8084257,33.120560 7.9044776,40.449127 C 1.1263851,21.789056 11.576502,11.172769 20.060762,7.5208163 C 38.788480,-0.54030907 57.624658,0.51914536 72.333277,4.6048932 C 88.071889,8.9767543 121.30854,27.806270 110.37471,58.932535 C 111.01116,50.719832 105.34070,44.182976 98.648405,37.695143 C 77.755790,17.440771 59.881228,13.575183 29.920661,20.850853 z " + style="fill:url(#linearGradient4540);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3789070;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2248" /> + <path + sodipodi:nodetypes="ccccc" + d="M 29.464631,13.437141 C -4.3672413,21.652946 4.3795415,53.125559 19.671056,67.491788 C 40.166726,86.747331 63.986812,93.289164 93.441070,85.163292 C 121.96754,77.293317 113.74878,43.505128 100.36422,30.529461 C 79.471590,10.275091 59.425197,6.1614703 29.464631,13.437141 z " + style="fill:url(#radialGradient5315);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#4b7499;stroke-width:2.3789070;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path18903" /> + <path + sodipodi:nodetypes="ccccccc" + id="path4382" + d="M 79.822756,101.40456 L 116.71642,154.96379 L 116.77840,154.93280 C 120.43123,160.60318 127.75604,161.56483 137.41804,157.38105 C 147.19736,153.14650 155.78634,142.88405 153.44009,135.06793 L 104.76277,98.295958 L 79.822756,101.40456 z " + style="fill:#000000;fill-opacity:0.69803923;fill-rule:evenodd;stroke:none;stroke-width:2.3988314;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + style="fill:url(#linearGradient3774);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3789070;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 5.6605296,29.243539 C 4.0335762,46.278711 5.0554455,59.206889 15.812654,72.650142 C 24.168626,83.092571 42.253865,94.206546 62.144769,96.982171 C 79.514392,99.405974 96.970389,95.141218 107.70902,83.891891 C 116.48520,74.698339 114.62034,53.318057 111.93641,40.979814 C 112.23778,58.843601 109.84102,73.575300 77.500677,79.612374 C 58.663557,83.128758 13.884299,66.437966 5.6605296,29.243539 z " + id="path2250" + sodipodi:nodetypes="cssscsc" /> + <path + style="fill:url(#linearGradient5167);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3789070;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 79.057875,94.635250 L 117.14305,150.43937 L 152.60757,127.70847 L 105.04652,85.023013 C 102.80291,76.521359 82.937769,80.984119 79.057875,94.635250 z " + id="path2244" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#radialGradient4376);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.3789070;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 116.95698,150.07017 C 112.70034,142.91910 124.82957,125.69611 133.88090,122.99429 C 146.34570,119.27355 152.17272,124.93251 153.85312,130.53046 C 156.19937,138.34657 147.60174,148.61453 137.82242,152.84908 C 127.95434,157.12208 120.52724,156.06816 116.95698,150.07017 z " + id="path2246" + sodipodi:nodetypes="cssss" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path1340" + d="M 30.019496,45.548651 C 36.124841,41.763337 42.413343,38.893825 49.434497,37.489596 C 46.259718,32.330579 41.436494,27.354721 36.613270,23.935729 C 42.474401,21.310429 46.320766,20.150413 53.097696,19.906199 C 58.775670,23.264141 62.713618,26.896820 66.285245,32.361104 C 71.719005,29.369487 76.603276,27.476829 82.586524,27.232615 C 87.409737,30.468447 90.767683,34.436923 93.759297,39.504358 C 87.043415,39.138038 82.891788,40.786482 76.908550,43.900207 C 83.319158,48.906592 87.531845,54.096133 90.645576,60.567801 C 84.540231,61.544656 78.251719,63.437313 72.879019,66.795253 C 69.582132,60.750961 65.735767,55.072989 60.424114,50.860301 C 53.708232,51.837155 45.710230,54.828776 40.093314,58.736197 C 38.017500,53.790867 34.476398,49.028698 30.019496,45.548651 z " + style="fill:#003297;fill-opacity:0.87469882;fill-rule:evenodd;stroke:#020032;stroke-width:3.5683606;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.74939758" /> + <path + sodipodi:nodetypes="ccccc" + id="path5183" + d="M 29.198101,45.548651 C 51.618721,33.338235 63.879751,29.884001 81.765121,27.232615 C 86.588341,30.468447 89.946281,34.436923 92.937901,39.504358 C 68.836891,43.283723 59.465591,46.537406 39.271911,58.736197 C 37.196101,53.790867 33.655001,49.028698 29.198101,45.548651 z " + style="fill:#003297;fill-opacity:0.87469882;fill-rule:evenodd;stroke:#020032;stroke-width:3.5683606;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.74939758" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/buttons/buttons2.svg lincity-ng-2.9~git20150314/data/images/mainmenu/buttons/buttons2.svg --- lincity-ng-2.0/data/images/mainmenu/buttons/buttons2.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/buttons/buttons2.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,935 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="770.00000px" + height="130.00000px" + id="svg4841" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/buttons" + sodipodi:docname="buttons2.svg"> + <defs + id="defs3"> + <linearGradient + id="linearGradient3801"> + <stop + id="stop3803" + offset="0.0000000" + style="stop-color:#9284ff;stop-opacity:1.0000000;" /> + <stop + id="stop3805" + offset="1.0000000" + style="stop-color:#2a17c3;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient1738"> + <stop + id="stop1739" + offset="0.0000000" + style="stop-color:#60ff45;stop-opacity:1.0000000;" /> + <stop + id="stop1740" + offset="1.0000000" + style="stop-color:#0bad00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + id="stop4962" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:0.73092371;" /> + <stop + id="stop4964" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + id="stop3619" + offset="0.0000000" + style="stop-color:#ff0000;stop-opacity:1.0000000;" /> + <stop + id="stop3620" + offset="1.0000000" + style="stop-color:#860000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2304"> + <stop + id="stop2305" + offset="0.0000000" + style="stop-color:#6a57ff;stop-opacity:1.0000000;" /> + <stop + id="stop2306" + offset="1.0000000" + style="stop-color:#1300a8;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient2120" + xlink:href="#linearGradient2304" + inkscape:collect="always" /> + <radialGradient + r="494.38043" + fy="668.54333" + fx="615.29224" + cy="668.54333" + cx="615.29224" + gradientUnits="userSpaceOnUse" + id="radialGradient2122" + xlink:href="#linearGradient2304" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient2124" + xlink:href="#linearGradient2304" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + gradientUnits="userSpaceOnUse" + id="linearGradient2126" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="scale(1.075954,0.929408)" + gradientUnits="userSpaceOnUse" + id="linearGradient2128" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + gradientUnits="userSpaceOnUse" + id="linearGradient2130" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient2132" + xlink:href="#linearGradient2304" + inkscape:collect="always" /> + <radialGradient + r="494.38043" + fy="668.54333" + fx="615.29224" + cy="668.54333" + cx="615.29224" + gradientUnits="userSpaceOnUse" + id="radialGradient2134" + xlink:href="#linearGradient2304" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient2136" + xlink:href="#linearGradient2304" + inkscape:collect="always" /> + <linearGradient + y2="303.58148" + x2="197.87488" + y1="444.14270" + x1="482.88602" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + gradientUnits="userSpaceOnUse" + id="linearGradient2138" + xlink:href="#linearGradient1738" + inkscape:collect="always" /> + <linearGradient + y2="737.44690" + x2="681.54474" + y1="721.96411" + x1="680.29120" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + gradientUnits="userSpaceOnUse" + id="linearGradient2140" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="728.05103" + x2="652.25720" + y1="720.26569" + x1="651.09534" + gradientTransform="scale(1.075954,0.929408)" + gradientUnits="userSpaceOnUse" + id="linearGradient2142" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3019" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="494.38043" + fy="668.54333" + fx="615.29224" + cy="668.54333" + cx="615.29224" + gradientUnits="userSpaceOnUse" + id="radialGradient3021" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3023" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + gradientUnits="userSpaceOnUse" + id="linearGradient3025" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="scale(1.075954,0.929408)" + gradientUnits="userSpaceOnUse" + id="linearGradient3027" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + gradientUnits="userSpaceOnUse" + id="linearGradient3029" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3031" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="494.38043" + fy="668.54333" + fx="615.29224" + cy="668.54333" + cx="615.29224" + gradientUnits="userSpaceOnUse" + id="radialGradient3033" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3035" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <linearGradient + y2="303.58148" + x2="197.87488" + y1="444.14270" + x1="482.88602" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + gradientUnits="userSpaceOnUse" + id="linearGradient3037" + xlink:href="#linearGradient1738" + inkscape:collect="always" /> + <linearGradient + y2="737.44690" + x2="681.54474" + y1="721.96411" + x1="680.29120" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + gradientUnits="userSpaceOnUse" + id="linearGradient3039" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="728.05103" + x2="652.25720" + y1="720.26569" + x1="651.09534" + gradientTransform="scale(1.075954,0.929408)" + gradientUnits="userSpaceOnUse" + id="linearGradient3041" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3847" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="494.38043" + fy="668.54333" + fx="615.29224" + cy="668.54333" + cx="615.29224" + gradientUnits="userSpaceOnUse" + id="radialGradient3849" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3851" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + gradientUnits="userSpaceOnUse" + id="linearGradient3853" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="scale(1.075954,0.929408)" + gradientUnits="userSpaceOnUse" + id="linearGradient3855" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + gradientUnits="userSpaceOnUse" + id="linearGradient3857" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3859" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="494.38043" + fy="668.54333" + fx="615.29224" + cy="668.54333" + cx="615.29224" + gradientUnits="userSpaceOnUse" + id="radialGradient3861" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <radialGradient + r="469.63513" + fy="469.37524" + fx="272.03766" + cy="469.37524" + cx="272.03766" + gradientUnits="userSpaceOnUse" + id="radialGradient3863" + xlink:href="#linearGradient3801" + inkscape:collect="always" /> + <linearGradient + y2="303.58148" + x2="197.87488" + y1="444.14270" + x1="482.88602" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + gradientUnits="userSpaceOnUse" + id="linearGradient3865" + xlink:href="#linearGradient1738" + inkscape:collect="always" /> + <linearGradient + y2="737.44690" + x2="681.54474" + y1="721.96411" + x1="680.29120" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + gradientUnits="userSpaceOnUse" + id="linearGradient3867" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="728.05103" + x2="652.25720" + y1="720.26569" + x1="651.09534" + gradientTransform="scale(1.075954,0.929408)" + gradientUnits="userSpaceOnUse" + id="linearGradient3869" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.70000000" + inkscape:cx="490.60168" + inkscape:cy="-55.561502" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="1272" + inkscape:window-height="546" + inkscape:window-x="0" + inkscape:window-y="258" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <g + inkscape:export-ydpi="97.080002" + inkscape:export-xdpi="97.080002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/start.png" + id="g3883"> + <rect + style="opacity:0.60045147;fill:none;fill-opacity:1.0000000;stroke:none;stroke-width:2.5000000;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" + id="rect5153" + width="247.86098" + height="57.716583" + x="6.6317272" + y="69.162277" /> + <path + transform="matrix(9.056583e-2,0.000000,0.000000,9.056583e-2,-2.502851,44.66059)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2144" + style="fill:#000000;fill-opacity:0.39036146;fill-rule:evenodd;stroke:none;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <g + id="button-start" + transform="matrix(0.519362,0.000000,0.000000,0.519362,-335.2526,-258.8245)"> + <path + transform="matrix(0.174379,0.000000,0.000000,0.174379,637.7164,581.7581)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path1061" + style="fill:url(#radialGradient2132);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.147452,0.000000,0.000000,0.147452,649.4226,597.9231)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2930" + style="fill:url(#radialGradient2134);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.0619068;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.133989,0.000000,0.000000,0.133989,655.2758,606.0056)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3553" + style="fill:url(#radialGradient2136);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.8719702;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccccc" + id="path1743" + d="M 684.66816,678.91997 L 703.68151,716.94666 L 743.72476,682.66503 L 739.40355,675.75108 L 711.17161,691.59553 L 705.98616,671.14178 L 684.66816,678.91997 z " + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" /> + <path + sodipodi:nodetypes="ccccccc" + id="path1112" + d="M 684.52412,675.03088 L 703.53747,713.05757 L 743.58072,678.77594 L 739.25951,671.86199 L 711.02757,687.70644 L 705.84211,667.25269 L 684.52412,675.03088 z " + style="fill:url(#linearGradient2138);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:0.79249752;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path6506" + d="M 738.20884,673.87814 C 736.39441,674.62186 729.42254,678.75871 726.27837,680.86290 C 723.13419,682.96710 725.09699,683.52654 725.78403,683.04599 C 735.67978,676.12444 734.96199,676.53275 741.46885,679.08072 C 742.72427,679.57232 739.82699,673.21488 738.20884,673.87814 z " + style="fill:url(#linearGradient2140);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path6510" + d="M 703.77956,669.48034 C 700.93242,669.67150 693.41042,673.41849 695.03745,673.39555 C 703.23994,673.27991 702.90133,671.23063 705.63949,675.00514 C 706.43117,676.09646 706.25977,669.31382 703.77956,669.48034 z " + style="fill:url(#linearGradient2142);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:export-ydpi="97.080002" + inkscape:export-xdpi="97.080002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/back.png" + id="g3871"> + <rect + style="opacity:0.60045147;fill:none;fill-opacity:0.39036146;stroke:none;stroke-width:2.5000000;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" + id="rect2118" + width="247.86098" + height="57.716583" + x="6.6317272" + y="4.5125141" /> + <path + transform="matrix(9.056583e-2,0.000000,0.000000,9.056583e-2,187.9325,-18.80045)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2912" + style="fill:#000000;fill-opacity:0.39036146;fill-rule:evenodd;stroke:none;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <g + id="button-cancel" + transform="matrix(0.519362,0.000000,0.000000,0.519362,192.1072,-321.9940)"> + <path + transform="matrix(0.174379,0.000000,0.000000,0.174379,-11.31206,580.8224)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path4805" + style="fill:url(#radialGradient2120);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.147452,0.000000,0.000000,0.147452,0.394146,596.9873)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path4806" + style="fill:url(#radialGradient2122);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.0619068;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.133989,0.000000,0.000000,0.133989,6.247346,605.0698)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path4807" + style="fill:url(#radialGradient2124);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.8719702;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path4863" + d="M 34.970586,677.73037 L 51.967356,658.14087 L 64.066756,674.27340 L 75.013836,657.27662 L 92.010616,675.71380 L 74.437676,686.37280 L 93.451016,698.76028 L 75.589996,716.62129 L 65.507166,697.60796 L 53.695846,715.75704 L 36.410986,699.62453 L 53.983926,686.94896 L 34.970586,677.73037 z " + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path2992" + d="M 33.962306,675.42572 L 50.959076,655.83622 L 63.058476,671.96875 L 74.005556,654.97197 L 91.002336,673.40915 L 73.429396,684.06815 L 92.442736,696.45563 L 74.581716,714.31664 L 64.498876,695.30331 L 52.687566,713.45239 L 35.402706,697.31988 L 52.975646,684.64431 L 33.962306,675.42572 z " + style="fill:url(#linearGradient2126);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.79249752;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path5732" + d="M 73.908352,658.64400 C 70.626377,660.79101 65.167652,672.33039 65.932631,671.75963 C 75.799974,664.39738 72.541405,661.23594 79.048261,663.78391 C 80.303685,664.27551 75.401174,657.66742 73.908352,658.64400 z " + style="fill:url(#linearGradient2128);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path6502" + d="M 49.915723,659.56928 C 46.441942,661.38968 42.773327,667.00043 44.244099,666.30433 C 52.697240,662.30357 49.789444,665.70599 55.410109,665.59538 C 56.758107,665.56967 52.117498,658.41546 49.915723,659.56928 z " + style="fill:url(#linearGradient2130);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:export-ydpi="97.080002" + inkscape:export-xdpi="97.080002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/back-hover.png" + id="g3907"> + <rect + style="stroke-opacity:0.35915491;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-width:2.5000000;stroke:none;fill-opacity:1.0000000;fill:none;opacity:0.60045147" + id="rect2979" + width="247.86098" + height="57.716583" + x="262.70538" + y="4.5125141" /> + <path + transform="matrix(9.056583e-2,0.000000,0.000000,9.056583e-2,444.0062,-18.80045)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2981" + style="fill:#000000;fill-opacity:0.39036146;fill-rule:evenodd;stroke:none;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <g + id="g2983" + transform="matrix(0.519362,0.000000,0.000000,0.519362,448.1809,-321.9940)"> + <path + transform="matrix(0.174379,0.000000,0.000000,0.174379,-11.31206,580.8224)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2985" + style="stroke-opacity:0.73061222;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:6.8170414;stroke:#0095cc;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient3019)" + sodipodi:type="arc" /> + <path + transform="matrix(0.147452,0.000000,0.000000,0.147452,0.394146,596.9873)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2987" + style="stroke-opacity:0.73061222;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:8.0619068;stroke:#0095cc;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient3021)" + sodipodi:type="arc" /> + <path + transform="matrix(0.133989,0.000000,0.000000,0.133989,6.247346,605.0698)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path2989" + style="stroke-opacity:0.73061222;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:8.8719702;stroke:#0095cc;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient3023)" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path2991" + d="M 34.970586,677.73037 L 51.967356,658.14087 L 64.066756,674.27340 L 75.013836,657.27662 L 92.010616,675.71380 L 74.437676,686.37280 L 93.451016,698.76028 L 75.589996,716.62129 L 65.507166,697.60796 L 53.695846,715.75704 L 36.410986,699.62453 L 53.983926,686.94896 L 34.970586,677.73037 z " + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path2993" + d="M 33.962306,675.42572 L 50.959076,655.83622 L 63.058476,671.96875 L 74.005556,654.97197 L 91.002336,673.40915 L 73.429396,684.06815 L 92.442736,696.45563 L 74.581716,714.31664 L 64.498876,695.30331 L 52.687566,713.45239 L 35.402706,697.31988 L 52.975646,684.64431 L 33.962306,675.42572 z " + style="fill:url(#linearGradient3025);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.79249752;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path2995" + d="M 73.908352,658.64400 C 70.626377,660.79101 65.167652,672.33039 65.932631,671.75963 C 75.799974,664.39738 72.541405,661.23594 79.048261,663.78391 C 80.303685,664.27551 75.401174,657.66742 73.908352,658.64400 z " + style="fill:url(#linearGradient3027);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path2997" + d="M 49.915723,659.56928 C 46.441942,661.38968 42.773327,667.00043 44.244099,666.30433 C 52.697240,662.30357 49.789444,665.70599 55.410109,665.59538 C 56.758107,665.56967 52.117498,658.41546 49.915723,659.56928 z " + style="fill:url(#linearGradient3029);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:export-ydpi="97.080002" + inkscape:export-xdpi="97.080002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/start-hover.png" + id="g3895"> + <rect + style="stroke-opacity:0.35915491;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-width:2.5000000;stroke:none;fill-opacity:1.0000000;fill:none;opacity:0.60045147" + id="rect2999" + width="247.86098" + height="57.716583" + x="262.70538" + y="69.162277" /> + <path + transform="matrix(9.056583e-2,0.000000,0.000000,9.056583e-2,253.5708,44.66059)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3001" + style="fill:#000000;fill-opacity:0.39036146;fill-rule:evenodd;stroke:none;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <g + id="g3003" + transform="matrix(0.519362,0.000000,0.000000,0.519362,-79.17893,-258.8245)"> + <path + transform="matrix(0.174379,0.000000,0.000000,0.174379,637.7164,581.7581)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3005" + style="stroke-opacity:0.73061222;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:6.8170414;stroke:#0095cc;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient3031)" + sodipodi:type="arc" /> + <path + transform="matrix(0.147452,0.000000,0.000000,0.147452,649.4226,597.9231)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3007" + style="stroke-opacity:0.73061222;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:8.0619068;stroke:#0095cc;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient3033)" + sodipodi:type="arc" /> + <path + transform="matrix(0.133989,0.000000,0.000000,0.133989,655.2758,606.0056)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3009" + style="stroke-opacity:0.73061222;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:8.8719702;stroke:#0095cc;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient3035)" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccccc" + id="path3011" + d="M 684.66816,678.91997 L 703.68151,716.94666 L 743.72476,682.66503 L 739.40355,675.75108 L 711.17161,691.59553 L 705.98616,671.14178 L 684.66816,678.91997 z " + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" /> + <path + sodipodi:nodetypes="ccccccc" + id="path3013" + d="M 684.52412,675.03088 L 703.53747,713.05757 L 743.58072,678.77594 L 739.25951,671.86199 L 711.02757,687.70644 L 705.84211,667.25269 L 684.52412,675.03088 z " + style="fill:url(#linearGradient3037);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:0.79249752;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path3015" + d="M 738.20884,673.87814 C 736.39441,674.62186 729.42254,678.75871 726.27837,680.86290 C 723.13419,682.96710 725.09699,683.52654 725.78403,683.04599 C 735.67978,676.12444 734.96199,676.53275 741.46885,679.08072 C 742.72427,679.57232 739.82699,673.21488 738.20884,673.87814 z " + style="fill:url(#linearGradient3039);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path3017" + d="M 703.77956,669.48034 C 700.93242,669.67150 693.41042,673.41849 695.03745,673.39555 C 703.23994,673.27991 702.90133,671.23063 705.63949,675.00514 C 706.43117,676.09646 706.25977,669.31382 703.77956,669.48034 z " + style="fill:url(#linearGradient3041);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:export-ydpi="97.080002" + inkscape:export-xdpi="97.080002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/back-clicked.png" + id="g3919"> + <rect + style="opacity:0.60045147;fill:none;fill-opacity:1.0000000;stroke:none;stroke-width:2.5000000;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" + id="rect3807" + width="247.86098" + height="57.716583" + x="518.27399" + y="4.5125141" /> + <path + transform="matrix(9.056583e-2,0.000000,0.000000,9.056583e-2,699.5748,-18.80045)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3809" + style="fill:#000000;fill-opacity:0.39036146;fill-rule:evenodd;stroke:none;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <g + id="g3811" + transform="matrix(0.519362,0.000000,0.000000,0.519362,704.7316,-321.1904)"> + <path + transform="matrix(0.174379,0.000000,0.000000,0.174379,-11.31206,580.8224)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3813" + style="fill:url(#radialGradient3847);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.147452,0.000000,0.000000,0.147452,0.394146,596.9873)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3815" + style="fill:url(#radialGradient3849);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.0619068;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.133989,0.000000,0.000000,0.133989,6.247346,605.0698)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3817" + style="fill:url(#radialGradient3851);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.8719702;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path3819" + d="M 34.970586,677.73037 L 51.967356,658.14087 L 64.066756,674.27340 L 75.013836,657.27662 L 92.010616,675.71380 L 74.437676,686.37280 L 93.451016,698.76028 L 75.589996,716.62129 L 65.507166,697.60796 L 53.695846,715.75704 L 36.410986,699.62453 L 53.983926,686.94896 L 34.970586,677.73037 z " + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccccccc" + id="path3821" + d="M 33.962306,675.42572 L 50.959076,655.83622 L 63.058476,671.96875 L 74.005556,654.97197 L 91.002336,673.40915 L 73.429396,684.06815 L 92.442736,696.45563 L 74.581716,714.31664 L 64.498876,695.30331 L 52.687566,713.45239 L 35.402706,697.31988 L 52.975646,684.64431 L 33.962306,675.42572 z " + style="fill:url(#linearGradient3853);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.79249752;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path3823" + d="M 73.908352,658.64400 C 70.626377,660.79101 65.167652,672.33039 65.932631,671.75963 C 75.799974,664.39738 72.541405,661.23594 79.048261,663.78391 C 80.303685,664.27551 75.401174,657.66742 73.908352,658.64400 z " + style="fill:url(#linearGradient3855);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path3825" + d="M 49.915723,659.56928 C 46.441942,661.38968 42.773327,667.00043 44.244099,666.30433 C 52.697240,662.30357 49.789444,665.70599 55.410109,665.59538 C 56.758107,665.56967 52.117498,658.41546 49.915723,659.56928 z " + style="fill:url(#linearGradient3857);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + <g + inkscape:export-ydpi="97.080002" + inkscape:export-xdpi="97.080002" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/start-clicked.png" + id="g3931"> + <rect + style="opacity:0.60045147;fill:none;fill-opacity:1.0000000;stroke:none;stroke-width:2.5000000;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" + id="rect3827" + width="247.86098" + height="57.716583" + x="518.27399" + y="69.162277" /> + <path + transform="matrix(9.056583e-2,0.000000,0.000000,9.056583e-2,509.1394,44.66059)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3829" + style="fill:#000000;fill-opacity:0.39036146;fill-rule:evenodd;stroke:none;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <g + id="g3831" + transform="matrix(0.519362,0.000000,0.000000,0.519362,177.2736,-258.0669)"> + <path + transform="matrix(0.174379,0.000000,0.000000,0.174379,637.7164,581.7581)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3833" + style="fill:url(#radialGradient3859);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:6.8170414;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.147452,0.000000,0.000000,0.147452,649.4226,597.9231)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3835" + style="fill:url(#radialGradient3861);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.0619068;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + transform="matrix(0.133989,0.000000,0.000000,0.133989,655.2758,606.0056)" + d="M 688.11298 600.33820 A 253.36377 253.36377 0 1 1 181.38544,600.33820 A 253.36377 253.36377 0 1 1 688.11298 600.33820 z" + sodipodi:ry="253.36377" + sodipodi:rx="253.36377" + sodipodi:cy="600.33820" + sodipodi:cx="434.74921" + id="path3837" + style="fill:url(#radialGradient3863);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#0095cc;stroke-width:8.8719702;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.73061222" + sodipodi:type="arc" /> + <path + sodipodi:nodetypes="ccccccc" + id="path3839" + d="M 684.66816,678.91997 L 703.68151,716.94666 L 743.72476,682.66503 L 739.40355,675.75108 L 711.17161,691.59553 L 705.98616,671.14178 L 684.66816,678.91997 z " + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55294120" /> + <path + sodipodi:nodetypes="ccccccc" + id="path3841" + d="M 684.52412,675.03088 L 703.53747,713.05757 L 743.58072,678.77594 L 739.25951,671.86199 L 711.02757,687.70644 L 705.84211,667.25269 L 684.52412,675.03088 z " + style="fill:url(#linearGradient3865);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#008409;stroke-width:0.79249752;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cssss" + id="path3843" + d="M 738.20884,673.87814 C 736.39441,674.62186 729.42254,678.75871 726.27837,680.86290 C 723.13419,682.96710 725.09699,683.52654 725.78403,683.04599 C 735.67978,676.12444 734.96199,676.53275 741.46885,679.08072 C 742.72427,679.57232 739.82699,673.21488 738.20884,673.87814 z " + style="fill:url(#linearGradient3867);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path3845" + d="M 703.77956,669.48034 C 700.93242,669.67150 693.41042,673.41849 695.03745,673.39555 C 703.23994,673.27991 702.90133,671.23063 705.63949,675.00514 C 706.43117,676.09646 706.25977,669.31382 703.77956,669.48034 z " + style="fill:url(#linearGradient3869);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/buttons/buttons.svg lincity-ng-2.9~git20150314/data/images/mainmenu/buttons/buttons.svg --- lincity-ng-2.0/data/images/mainmenu/buttons/buttons.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/buttons/buttons.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,1765 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="320.00000px" + height="64.000000px" + id="svg2682" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/buttons" + sodipodi:docname="buttons.svg" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/continue.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2873"> + <stop + style="stop-color:#3f3f3f;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2875" /> + <stop + style="stop-color:#c0c0c0;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2877" /> + </linearGradient> + <linearGradient + id="linearGradient2849"> + <stop + style="stop-color:#5e5e5e;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2851" /> + <stop + style="stop-color:#1f1f1f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2853" /> + </linearGradient> + <linearGradient + id="linearGradient2857"> + <stop + style="stop-color:#3b2200;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2859" /> + <stop + style="stop-color:#855700;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2861" /> + </linearGradient> + <linearGradient + id="linearGradient5619"> + <stop + id="stop5621" + offset="0.0000000" + style="stop-color:#4646db;stop-opacity:1.0000000;" /> + <stop + id="stop5623" + offset="1.0000000" + style="stop-color:#0000ad;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5611"> + <stop + id="stop5613" + offset="0.0000000" + style="stop-color:#6a6ab9;stop-opacity:1.0000000;" /> + <stop + id="stop5615" + offset="1.0000000" + style="stop-color:#0000b9;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4305"> + <stop + id="stop4307" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.73333335;" /> + <stop + id="stop4309" + offset="1.0000000" + style="stop-color:#000000;stop-opacity:0.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4255"> + <stop + id="stop4257" + offset="0.0000000" + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" /> + <stop + id="stop4259" + offset="1.0000000" + style="stop-color:#bac320;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <linearGradient + id="linearGradient2250"> + <stop + id="stop2252" + offset="0.0000000" + style="stop-color:#08ff00;stop-opacity:1.0000000;" /> + <stop + id="stop2254" + offset="1.0000000" + style="stop-color:#047c00;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5873"> + <stop + id="stop5875" + offset="0.0000000" + style="stop-color:#cd0000;stop-opacity:1.0000000;" /> + <stop + id="stop5877" + offset="1.0000000" + style="stop-color:#5d0000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient6641"> + <stop + id="stop6643" + offset="0.0000000" + style="stop-color:#cdcdcd;stop-opacity:1.0000000;" /> + <stop + id="stop6645" + offset="1.0000000" + style="stop-color:#7e7e7e;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient7409"> + <stop + id="stop7411" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop7413" + offset="1.0000000" + style="stop-color:#dadada;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5083"> + <stop + id="stop5085" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop5087" + offset="1.0000000" + style="stop-color:#c7c7c7;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + id="stop4962" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:0.73092371;" /> + <stop + id="stop4964" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:0.0000000;" /> + </linearGradient> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient4352" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4354" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4356" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient4358" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4360" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4362" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient4364" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4366" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4368" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient4370" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4372" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4374" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient4376" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4378" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient4380" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,-5.903246e-2,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient4705" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-42.57266,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient4767" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient4819" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <linearGradient + y2="105.80302" + x2="147.37901" + y1="54.015789" + x1="-11.401763" + gradientTransform="matrix(1.006060,0.000000,0.000000,0.993976,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="linearGradient4821" + xlink:href="#linearGradient5873" + inkscape:collect="always" /> + <radialGradient + r="32.320759" + fy="130.17122" + fx="66.017220" + cy="130.17122" + cx="66.017220" + gradientTransform="matrix(1.094547,0.000000,0.000000,0.913620,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="radialGradient4823" + xlink:href="#linearGradient6641" + inkscape:collect="always" /> + <linearGradient + y2="67.411362" + x2="108.55267" + y1="40.738884" + x1="42.912979" + gradientTransform="matrix(1.046660,0.000000,0.000000,0.955420,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="linearGradient4825" + xlink:href="#linearGradient7409" + inkscape:collect="always" /> + <radialGradient + r="16.361969" + fy="21.519323" + fx="44.846992" + cy="21.519323" + cx="44.846992" + gradientTransform="matrix(0.895747,0.000000,0.000000,1.116387,1.553001,-66.94390)" + gradientUnits="userSpaceOnUse" + id="radialGradient4827" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-42.57266,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient4851" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="204.51534" + x2="117.04985" + y1="-50.768177" + x1="43.171165" + gradientTransform="scale(2.267603,0.440994)" + id="linearGradient5617" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="206.31320" + x2="102.70443" + y1="-104.70135" + x1="41.377975" + gradientTransform="scale(2.267604,0.440994)" + id="linearGradient5625" + xlink:href="#linearGradient5619" + inkscape:collect="always" /> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient5675" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,328.5124,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient5681" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5735" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5737" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5739" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5741" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5743" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5745" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5747" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5749" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5751" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5753" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5755" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5757" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="8.4567928" + fy="193.67235" + fx="30.045156" + cy="193.67235" + cx="30.045156" + gradientTransform="scale(1.220067,0.819627)" + gradientUnits="userSpaceOnUse" + id="radialGradient5759" + xlink:href="#linearGradient4305" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5761" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="10.900620" + fy="192.20235" + fx="28.442127" + cy="192.20235" + cx="28.442127" + gradientTransform="scale(1.228200,0.814200)" + gradientUnits="userSpaceOnUse" + id="radialGradient5763" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.111036,0.000000,0.000000,0.105483,-7.029064,68.69130)" + gradientUnits="userSpaceOnUse" + id="linearGradient5772" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-7.044215,-299.8652)" + gradientUnits="userSpaceOnUse" + id="linearGradient5774" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-23.30408,-298.9517)" + gradientUnits="userSpaceOnUse" + id="linearGradient5776" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="1027.3083" + x2="370.32205" + y1="824.52606" + x1="192.48090" + gradientTransform="matrix(0.111036,0.000000,0.000000,0.105483,-7.029064,68.69130)" + gradientUnits="userSpaceOnUse" + id="linearGradient5786" + xlink:href="#linearGradient3618" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-7.044215,-299.8652)" + gradientUnits="userSpaceOnUse" + id="linearGradient5788" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="719.76025" + x2="72.464546" + y1="712.42957" + x1="63.393742" + gradientTransform="matrix(0.733399,0.000000,0.000000,0.633508,-23.30408,-298.9517)" + gradientUnits="userSpaceOnUse" + id="linearGradient5790" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="-66.948143" + x2="39.943436" + y1="213.50429" + x1="109.87711" + gradientTransform="scale(2.267604,0.440994)" + gradientUnits="userSpaceOnUse" + id="linearGradient6576" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-42.57266,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient6578" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,661.3695,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient6582" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,617.4273,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient10679" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="-66.948143" + x2="39.943436" + y1="213.50429" + x1="109.87711" + gradientTransform="matrix(2.267604,0.000000,0.000000,0.440994,660.0000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient10682" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,659.8543,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient11496" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <linearGradient + y2="105.80302" + x2="147.37901" + y1="54.015789" + x1="-11.401763" + gradientTransform="matrix(1.006060,0.000000,0.000000,0.993976,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="linearGradient11569" + xlink:href="#linearGradient5873" + inkscape:collect="always" /> + <radialGradient + r="32.320759" + fy="130.17122" + fx="66.017220" + cy="130.17122" + cx="66.017220" + gradientTransform="matrix(1.094547,0.000000,0.000000,0.913620,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="radialGradient11571" + xlink:href="#linearGradient6641" + inkscape:collect="always" /> + <linearGradient + y2="67.411362" + x2="108.55267" + y1="40.738884" + x1="42.912979" + gradientTransform="matrix(1.046660,0.000000,0.000000,0.955420,97.65298,-197.8742)" + gradientUnits="userSpaceOnUse" + id="linearGradient11573" + xlink:href="#linearGradient7409" + inkscape:collect="always" /> + <radialGradient + r="16.361969" + fy="21.519323" + fx="44.846992" + cy="21.519323" + cx="44.846992" + gradientTransform="matrix(0.895747,0.000000,0.000000,1.116387,1.553001,-66.94390)" + gradientUnits="userSpaceOnUse" + id="radialGradient11575" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient11599" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <linearGradient + y2="16.488581" + x2="128.62515" + y1="21.867760" + x1="120.20557" + gradientTransform="matrix(0.254394,0.000000,0.000000,0.251549,21.80506,-121.6412)" + gradientUnits="userSpaceOnUse" + id="linearGradient11601" + xlink:href="#linearGradient5083" + inkscape:collect="always" /> + <linearGradient + y2="204.51534" + x2="117.04985" + y1="-50.768177" + x1="43.171165" + gradientTransform="scale(2.267603,0.440994)" + gradientUnits="userSpaceOnUse" + id="linearGradient11755" + xlink:href="#linearGradient5611" + inkscape:collect="always" /> + <radialGradient + r="223.02463" + fy="182.32797" + fx="136.72566" + cy="182.32797" + cx="136.72566" + gradientTransform="matrix(0.492483,0.000000,0.000000,0.204424,-42.57266,-39.20266)" + gradientUnits="userSpaceOnUse" + id="radialGradient11757" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <radialGradient + r="36.303032" + fy="18.892994" + fx="20.372931" + cy="18.892994" + cx="20.372931" + gradientTransform="matrix(0.960220,0.000000,0.000000,1.041428,328.5124,0.231249)" + gradientUnits="userSpaceOnUse" + id="radialGradient11760" + xlink:href="#linearGradient2250" + inkscape:collect="always" /> + <linearGradient + y2="14.851369" + x2="21.395046" + y1="18.015032" + x1="17.780584" + gradientTransform="scale(0.910996,1.097699)" + gradientUnits="userSpaceOnUse" + id="linearGradient1603" + xlink:href="#linearGradient2857" + inkscape:collect="always" /> + <linearGradient + y2="9.7735777" + x2="11.449580" + y1="4.2269511" + x1="5.7898483" + gradientTransform="scale(1.035166,0.966029)" + gradientUnits="userSpaceOnUse" + id="linearGradient1605" + xlink:href="#linearGradient2849" + inkscape:collect="always" /> + <linearGradient + y2="7.0181575" + x2="15.225430" + y1="18.332209" + x1="24.526999" + gradientTransform="scale(1.020352,0.980054)" + gradientUnits="userSpaceOnUse" + id="linearGradient1607" + xlink:href="#linearGradient2873" + inkscape:collect="always" /> + <linearGradient + y2="14.851369" + x2="21.395046" + y1="18.015032" + x1="17.780584" + gradientTransform="scale(0.910996,1.097699)" + gradientUnits="userSpaceOnUse" + id="linearGradient1623" + xlink:href="#linearGradient2857" + inkscape:collect="always" /> + <linearGradient + y2="9.7735777" + x2="11.449580" + y1="4.2269511" + x1="5.7898483" + gradientTransform="scale(1.035166,0.966029)" + gradientUnits="userSpaceOnUse" + id="linearGradient1625" + xlink:href="#linearGradient2849" + inkscape:collect="always" /> + <linearGradient + y2="7.0181575" + x2="15.225430" + y1="18.332209" + x1="24.526999" + gradientTransform="scale(1.020352,0.980054)" + gradientUnits="userSpaceOnUse" + id="linearGradient1627" + xlink:href="#linearGradient2873" + inkscape:collect="always" /> + <linearGradient + y2="14.851369" + x2="21.395046" + y1="18.015032" + x1="17.780584" + gradientTransform="scale(0.910996,1.097699)" + gradientUnits="userSpaceOnUse" + id="linearGradient1643" + xlink:href="#linearGradient2857" + inkscape:collect="always" /> + <linearGradient + y2="9.7735777" + x2="11.449580" + y1="4.2269511" + x1="5.7898483" + gradientTransform="scale(1.035166,0.966029)" + gradientUnits="userSpaceOnUse" + id="linearGradient1645" + xlink:href="#linearGradient2849" + inkscape:collect="always" /> + <linearGradient + y2="7.0181575" + x2="15.225430" + y1="18.332209" + x1="24.526999" + gradientTransform="scale(1.020352,0.980054)" + gradientUnits="userSpaceOnUse" + id="linearGradient1647" + xlink:href="#linearGradient2873" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="15.239991" + inkscape:cx="693.54665" + inkscape:cy="-167.97092" + inkscape:document-units="px" + inkscape:current-layer="clicked" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="966" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + <dc:creator + id="creator1530"> + <cc:Agent + id="Agent1532"> + <dc:title + id="title1534">Christoph Brill</dc:title> + </cc:Agent> + </dc:creator> + <cc:license + id="license1536" + rdf:resource="http://web.resource.org/cc/PublicDomain" /> + <dc:title + id="title1546">Main Menu Buttons for lincity-ng</dc:title> + <dc:date + id="date1548">2005-03-30</dc:date> + </cc:Work> + <cc:License + rdf:about="http://web.resource.org/cc/PublicDomain" + id="License1538"> + <cc:permits + rdf:resource="http://web.resource.org/cc/Reproduction" + id="permits1540" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/Distribution" + id="permits1542" /> + <cc:permits + rdf:resource="http://web.resource.org/cc/DerivativeWorks" + id="permits1544" /> + </cc:License> + </rdf:RDF> + </metadata> + <g + inkscape:label="Normal" + inkscape:groupmode="layer" + id="normal"> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,-67.68022)" + id="load-button" + xlink:href="#button" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/load.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,134.3503)" + id="quit-button" + xlink:href="#button" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/quit.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,68.69037)" + id="credits-button" + xlink:href="#button" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/credits.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <g + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/continue.png" + id="button"> + <rect + ry="30.264954" + rx="31.902308" + y="3.4305801" + x="2.8569603" + height="60.529907" + width="316.66809" + id="rect4141" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.95188034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55281693" /> + <rect + ry="30.443523" + rx="31.902308" + y="1.0788631" + x="0.78214395" + height="60.887047" + width="317.02518" + id="scenarioselect" + style="fill:url(#linearGradient5625);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.95188034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path4200" + d="M 8.6426211,37.334528 C 8.7472264,38.918800 4.8109087,6.4238298 28.713747,6.5833715 C 86.937389,6.9719911 104.52402,5.5392385 109.12234,6.2255747 C 114.36351,7.0078593 78.888617,7.9941159 30.930761,10.562009 C 17.578807,11.282301 7.6726019,22.643412 8.6426211,37.334528 z " + style="fill:url(#radialGradient4767);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + id="continue"> + <path + style="fill:#000000;fill-opacity:0.51408452;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 39.226682,32.713392 C 44.962955,32.404284 50.106981,37.476958 50.298112,43.606250 C 50.529823,50.820386 45.089364,57.475310 35.565969,57.624106 C 28.852810,57.730998 17.559899,54.205836 17.440969,38.516963 C 17.348087,26.124817 29.442951,18.210396 41.012397,18.159820 C 44.652870,18.144148 45.603693,18.230492 50.565969,18.249107 L 48.869540,12.802678 L 58.690969,24.320535 L 49.673111,35.302679 L 50.030254,29.409821 C 47.550789,29.472788 44.643101,29.500105 42.173111,29.409821 C 36.802074,29.213495 28.435483,30.495578 28.869540,39.945535 C 28.969904,42.089299 31.285081,46.252485 36.637396,46.195535 C 39.339765,46.168681 40.504156,45.092609 40.387396,42.624106 C 40.316974,41.135259 38.931100,40.223186 38.155254,40.302678 C 37.115624,40.409198 35.099058,42.379169 34.048111,42.289285 C 32.837153,42.185716 30.911290,40.841689 31.369539,39.722321 C 32.339862,37.352106 35.204869,32.930114 39.226682,32.713392 z " + id="path11778" + sodipodi:nodetypes="csssscccccssssssss" /> + <path + style="fill:url(#radialGradient4705);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1.0000000" + d="M 38.155253,31.820535 C 43.891526,31.511427 49.035552,36.584101 49.226683,42.713393 C 49.458394,49.927529 44.017935,56.582453 34.494540,56.731249 C 27.781381,56.838141 16.488470,53.312979 16.369540,37.624106 C 16.276658,25.231960 28.371522,17.317539 39.940968,17.266963 C 43.581441,17.251291 44.532264,17.337635 49.494540,17.356250 L 47.798111,11.909821 L 57.619540,23.427678 L 48.601682,34.409822 L 48.958825,28.516964 C 46.479360,28.579931 43.571672,28.607248 41.101682,28.516964 C 35.730645,28.320638 27.364054,29.602721 27.798111,39.052678 C 27.898475,41.196442 30.213652,45.359628 35.565967,45.302678 C 38.268336,45.275824 39.432727,44.199752 39.315967,41.731249 C 39.245545,40.242402 37.859671,39.330329 37.083825,39.409821 C 36.044195,39.516341 34.027629,41.486312 32.976682,41.396428 C 31.765724,41.292859 29.839861,39.948832 30.298110,38.829464 C 31.268433,36.459249 34.133440,32.037257 38.155253,31.820535 z " + id="continue-arrow" + sodipodi:nodetypes="csssscccccssssssss" /> + </g> + <g + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + transform="translate(-5.808377,0.370735)" + id="load"> + <g + id="floppy" + transform="matrix(0.257425,0.000000,0.000000,0.257425,-2.987299,-3.663871)"> + <path + id="path8175" + style="fill:#000000;fill-opacity:0.51851851;fill-rule:evenodd;stroke:none;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 102.94849,-161.56214 C 110.19830,-121.34149 122.93273,-82.633861 137.74755,-43.737091 L 148.71682,-39.198084 C 184.90279,-53.067271 221.84527,-63.153951 258.40949,-70.592881 C 240.12738,-110.56135 227.32990,-151.09720 216.61280,-192.76781 C 177.96819,-185.95930 140.45834,-176.12478 102.94849,-161.56214 z M 108.05488,-158.53613 C 108.62225,-155.69925 109.18963,-152.01131 110.32438,-148.89074 C 112.59388,-149.86789 114.86339,-151.12872 117.32202,-151.16024 C 116.18726,-154.28081 115.24164,-157.87419 114.95795,-160.80563 C 112.87757,-160.49043 110.13526,-159.89153 108.05488,-158.53613 z M 207.44022,-184.72998 C 208.00760,-181.89311 208.57498,-178.20516 209.70973,-175.08459 C 211.97923,-176.06174 214.24873,-177.32258 216.70736,-177.35410 C 215.57261,-180.47467 214.62698,-184.06805 214.34330,-186.99949 C 212.26292,-186.68428 209.52060,-186.08538 207.44022,-184.72998 z " /> + <path + id="path2052" + style="fill:url(#linearGradient11569);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 99.733367,-163.45339 C 106.98317,-123.23274 119.71761,-84.525101 134.53242,-45.628331 L 145.50169,-41.089321 C 181.68766,-54.958511 218.63014,-65.045191 255.19436,-72.484121 C 236.91225,-112.45260 224.11477,-152.98846 213.39767,-194.65906 C 174.75307,-187.85055 137.24322,-178.01604 99.733367,-163.45339 z M 104.83975,-160.42738 C 105.40713,-157.59050 105.97450,-153.90256 107.10925,-150.78199 C 109.37876,-151.75914 111.64826,-153.01998 114.10689,-153.05150 C 112.97214,-156.17207 112.02651,-159.76545 111.74282,-162.69689 C 109.66245,-162.38168 106.92013,-161.78278 104.83975,-160.42738 z M 204.22509,-186.62124 C 204.79247,-183.78436 205.35985,-180.09642 206.49460,-176.97585 C 208.76410,-177.95300 211.03360,-179.21383 213.49223,-179.24535 C 212.35748,-182.36592 211.41185,-185.95930 211.12817,-188.89074 C 209.04779,-188.57553 206.30547,-187.97663 204.22509,-186.62124 z " /> + <path + id="path2812" + style="fill:url(#radialGradient11571);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 155.52533,-45.060951 C 148.90594,-59.371431 144.55606,-75.573161 140.77356,-90.829271 C 162.08168,-99.718165 183.38979,-106.71580 205.26529,-111.82218 C 208.48042,-94.863941 214.53242,-79.986091 221.15181,-64.919111 C 199.27632,-60.001851 177.40082,-52.436841 155.52533,-45.060951 z M 148.71682,-89.316271 C 151.80587,-74.123211 154.70579,-64.603891 160.63171,-51.112961 C 166.49460,-53.697671 170.27710,-55.336761 176.51824,-56.597601 C 171.03360,-69.016831 167.62935,-81.814291 164.79247,-94.990021 C 159.62304,-94.044401 153.69712,-91.774901 148.71682,-89.316271 z " + sodipodi:nodetypes="cccccccccc" /> + <path + style="fill:url(#linearGradient11573);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 113.91776,-168.37065 C 118.96111,-143.72132 125.89570,-117.36986 134.72155,-94.422661 C 162.96426,-104.76151 191.01784,-114.72211 220.39530,-120.33282 C 211.69554,-143.46915 204.13052,-167.55110 198.26764,-191.82218 C 169.70972,-185.83322 140.96268,-178.52037 113.91776,-168.37065 z " + id="path3583" + sodipodi:nodetypes="ccccc" /> + </g> + </g> + <g + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/new.png" + id="button-normal-new"> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,-133.3401)" + id="new-button" + xlink:href="#button" + y="0.0000000" + x="0.0000000" /> + <g + transform="translate(-5.808377,2.159007)" + id="new"> + <path + sodipodi:nodetypes="cccssc" + id="path5847" + d="M 28.520636,-118.39689 C 29.318011,-106.50008 31.362107,-96.579790 30.915577,-80.759870 C 40.197017,-82.577880 51.487845,-82.912770 60.530067,-81.286140 C 60.726548,-92.047190 57.887903,-105.53208 57.754660,-112.26678 C 57.722436,-113.89592 55.299394,-117.57822 50.926614,-118.37671 C 45.363895,-119.39250 32.926016,-118.95048 28.520636,-118.39689 z " + style="fill:#000000;fill-opacity:0.38039216;fill-rule:evenodd;stroke:none;stroke-width:3.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccssc" + id="path2293" + d="M 27.495486,-119.80803 C 28.292862,-107.91120 30.336957,-97.990920 29.890427,-82.171020 C 39.171867,-83.989020 50.462690,-84.323920 59.504921,-82.697270 C 59.701394,-93.458320 56.862748,-106.94321 56.729514,-113.67793 C 56.697281,-115.30706 54.274240,-118.98935 49.901468,-119.78785 C 44.338749,-120.80364 31.900864,-120.36161 27.495486,-119.80803 z " + style="fill:#ffffff;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cscc" + id="path4315" + d="M 49.180683,-119.58060 C 50.967236,-118.48329 48.842400,-113.37825 50.209467,-112.09305 C 51.185481,-111.17550 55.095767,-115.01786 56.241893,-113.51021 C 55.767574,-115.28142 53.725759,-118.52174 49.180683,-119.58060 z " + style="fill:#000000;fill-opacity:0.38047138;fill-rule:evenodd;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cccc" + id="path2295" + d="M 50.086709,-119.76606 C 51.327844,-118.50581 50.948127,-116.11999 50.898629,-113.21809 C 53.227613,-113.66083 55.452996,-115.80255 56.717340,-113.87966 C 56.283196,-115.52041 54.246855,-118.78519 50.086709,-119.76606 z " + style="fill:url(#linearGradient11599);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.50000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + <g + transform="translate(0.714286,1.428571)" + id="quit"> + <path + style="fill:#000000;fill-opacity:0.55102038;fill-rule:evenodd;stroke:none;stroke-width:5.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 16.673622,162.71522 L 28.279067,149.33944 L 36.540580,160.35478 L 44.015270,148.74934 L 55.620714,161.33830 L 43.621866,168.61629 L 56.604220,177.07450 L 44.408676,189.27004 L 37.524088,176.28769 L 29.459280,188.67993 L 17.657130,177.66461 L 29.655989,169.00969 L 16.673622,162.71522 z " + id="path4863" + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:url(#linearGradient5772);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#960000;stroke-width:0.54111958;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 15.985167,161.14159 L 27.590612,147.76582 L 35.852114,158.78116 L 43.326815,147.17572 L 54.932259,159.76467 L 42.933410,167.04266 L 55.915764,175.50087 L 43.720209,187.69642 L 36.835632,174.71407 L 28.770825,187.10630 L 16.968674,176.09098 L 28.967522,167.43607 L 15.985167,161.14159 z " + id="path2992" + sodipodi:nodetypes="ccccccccccccc" /> + <path + sodipodi:nodetypes="csss" + id="path5732" + d="M 43.333661,149.08419 C 41.096585,150.54764 37.375768,158.41319 37.897195,158.02414 C 44.623046,153.00583 42.401917,150.85092 46.837156,152.58768 C 47.692887,152.92277 44.351205,148.41852 43.333661,149.08419 z " + style="fill:url(#linearGradient5774);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="csss" + id="path6502" + d="M 27.073860,149.99750 C 24.706039,151.23834 22.205413,155.06277 23.207927,154.58829 C 28.969811,151.86127 26.987791,154.18044 30.818985,154.10505 C 31.737805,154.08752 28.574652,149.21103 27.073860,149.99750 z " + style="fill:url(#linearGradient5776);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <g + id="credits"> + <g + id="g12619"> + <path + transform="matrix(1.241573,0.000000,0.000000,0.677966,3.850498,7.071570)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4321" + style="fill:url(#radialGradient4352);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.60563380" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,9.848987,2.778440)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4291" + style="fill:url(#radialGradient4354);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,9.848987,1.515730)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4293" + style="fill:url(#radialGradient4356);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + id="g12614"> + <path + transform="matrix(1.241573,0.000000,0.000000,0.677966,-16.98390,5.177540)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4325" + style="fill:url(#radialGradient4358);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.60563380" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,-6.692262,0.631860)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4283" + style="fill:url(#radialGradient4360);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,-6.692261,-0.630850)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4285" + style="fill:url(#radialGradient4362);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + id="g12609"> + <path + transform="matrix(1.241573,0.000000,0.000000,0.677966,0.946309,-1.830390)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4317" + style="fill:url(#radialGradient4364);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.60563380" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,7.702413,-5.429050)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4275" + style="fill:url(#radialGradient4366);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,7.702413,-6.691760)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4277" + style="fill:url(#radialGradient4368);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + id="g12604"> + <path + transform="matrix(1.241573,0.000000,0.000000,0.677966,-19.31988,-4.545180)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4313" + style="fill:url(#radialGradient4370);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.60563380" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,-10.48033,-7.701900)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4267" + style="fill:url(#radialGradient4372);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,-10.48033,-8.964610)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4269" + style="fill:url(#radialGradient4374);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + <g + id="g12599"> + <path + transform="matrix(1.241573,0.000000,0.000000,0.677966,-7.829402,-12.75267)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4299" + style="fill:url(#radialGradient4376);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.60563380" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,-4.516842e-7,-15.40432)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path4263" + style="fill:url(#radialGradient4378);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + transform="matrix(1.000000,0.000000,0.000000,0.677966,0.000000,-16.66703)" + d="M 48.613592 159.58568 A 11.237947 7.4498749 0 1 1 26.137697,159.58568 A 11.237947 7.4498749 0 1 1 48.613592 159.58568 z" + sodipodi:ry="7.4498749" + sodipodi:rx="11.237947" + sodipodi:cy="159.58568" + sodipodi:cx="37.375645" + id="path3485" + style="fill:url(#radialGradient4380);fill-opacity:1.0000000;stroke:#8e6b00;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + </g> + </g> + <use + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/options.png" + x="0.0000000" + y="0.0000000" + xlink:href="#button" + id="use1824" + transform="translate(0.000000,200.0686)" + width="320.00000" + height="64.000000" /> + </g> + <g + inkscape:label="Hover" + id="hover" + inkscape:groupmode="layer"> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,134.3503)" + id="use12656" + xlink:href="#button-hover" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/quit-hover.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + x="0.0000000" + y="0.0000000" + xlink:href="#quit" + id="use1500" + transform="translate(328.5714,0.000000)" + width="320.00000" + height="64.000000" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,68.69037)" + id="use12650" + xlink:href="#button-hover" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/credits-hover.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + x="0.0000000" + y="0.0000000" + xlink:href="#credits" + id="use1494" + transform="translate(328.5715,0.000000)" + width="320.00000" + height="64.000000" /> + <g + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/continue-hover.png" + transform="translate(328.5714,0.000000)" + id="button-hover"> + <rect + ry="30.264954" + rx="31.902308" + y="3.4305801" + x="2.8569603" + height="60.529907" + width="316.66809" + id="rect4845" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.95188034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55281693" /> + <rect + ry="30.443523" + rx="31.902308" + y="1.0788631" + x="0.78214395" + height="60.887047" + width="317.02518" + id="rect4847" + style="fill:url(#linearGradient5617);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.95188034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path4849" + d="M 8.6426211,37.334528 C 8.7472264,38.918800 4.8109087,6.4238298 28.713747,6.5833715 C 86.937389,6.9719911 104.52402,5.5392385 109.12234,6.2255747 C 114.36351,7.0078593 78.888617,7.9941159 30.930761,10.562009 C 17.578807,11.282301 7.6726019,22.643412 8.6426211,37.334528 z " + style="fill:url(#radialGradient4851);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <use + x="0.0000000" + y="0.0000000" + xlink:href="#continue" + id="use1488" + transform="translate(328.4673,0.000000)" + width="320.00000" + height="64.000000" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,-67.68022)" + id="use12662" + xlink:href="#button-hover" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/load-hover.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/load-hover.png" + x="0.0000000" + y="0.0000000" + xlink:href="#load" + id="use1482" + transform="translate(328.6784,0.000000)" + width="320.00000" + height="64.000000" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,-133.3401)" + id="use12668" + xlink:href="#button-hover" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/new-hover.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + height="64.000000" + width="320.00000" + transform="translate(328.4259,0.000000)" + id="use12672" + xlink:href="#new" + y="0.0000000" + x="0.0000000" /> + <use + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/options-hover.png" + x="0.0000000" + y="0.0000000" + xlink:href="#button-hover" + id="use1826" + transform="translate(0.000000,200.0686)" + width="320.00000" + height="64.000000" /> + </g> + <g + inkscape:label="Clicked" + id="clicked" + inkscape:groupmode="layer"> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,134.3503)" + id="use12658" + xlink:href="#button-clicked" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/quit-clicked.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + x="0.0000000" + y="0.0000000" + xlink:href="#quit" + id="use1503" + transform="translate(660.0000,0.000000)" + width="320.00000" + height="64.000000" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,68.69037)" + id="use12652" + xlink:href="#button-clicked" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/credits-clicked.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + x="0.0000000" + y="0.0000000" + xlink:href="#credits" + id="use1497" + transform="translate(660.0001,0.000000)" + width="320.00000" + height="64.000000" /> + <g + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/continue-clicked.png" + id="button-clicked"> + <rect + ry="30.264954" + rx="31.902308" + y="3.4305801" + x="662.85693" + height="60.529907" + width="316.66809" + id="rect6570" + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:0.95188034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.55281693" /> + <rect + ry="30.443523" + rx="31.902308" + y="1.0788631" + x="660.78217" + height="60.887047" + width="317.02518" + id="rect6572" + style="fill:url(#linearGradient10682);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:0.95188034;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" /> + <path + sodipodi:nodetypes="cssss" + id="path6574" + d="M 668.64262,37.334528 C 668.74723,38.918800 664.81091,6.4238298 688.71375,6.5833715 C 746.93739,6.9719911 764.52402,5.5392385 769.12234,6.2255747 C 774.36351,7.0078593 738.88862,7.9941159 690.93076,10.562009 C 677.57881,11.282301 667.67260,22.643412 668.64262,37.334528 z " + style="fill:url(#radialGradient10679);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" /> + </g> + <use + x="0.0000000" + y="0.0000000" + xlink:href="#continue" + id="use1491" + transform="translate(659.9237,0.000000)" + width="320.00000" + height="64.000000" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,-67.68022)" + id="use12664" + xlink:href="#button-clicked" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/load-clicked.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/load-clicked.png" + x="0.0000000" + y="0.0000000" + xlink:href="#load" + id="use1485" + transform="translate(660.0084,0.000000)" + width="320.00000" + height="64.000000" /> + <use + height="64.000000" + width="320.00000" + transform="translate(0.000000,-133.3401)" + id="use12670" + xlink:href="#button-clicked" + y="0.0000000" + x="0.0000000" + inkscape:export-filename="/home/egore/bilder/SVG/lincity-images/bg/buttons/new-clicked.png" + inkscape:export-xdpi="90.220001" + inkscape:export-ydpi="90.220001" /> + <use + height="64.000000" + width="320.00000" + transform="translate(659.7558,0.000000)" + id="use12675" + xlink:href="#new" + y="0.0000000" + x="0.0000000" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M -92.857143,6.1428563 L -44.285715,18.285714 L -47.142858,1.8571426 L -11.428572,32.571428 L -45.714286,64.000000 L -42.857143,48.999999 L -85.714293,63.285714 L -92.857143,6.1428563 z " + id="path1506" + sodipodi:nodetypes="cccccccc" /> + <text + xml:space="preserve" + style="font-size:15.423970;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Bitstream Vera Sans" + x="-259.2757" + y="9.4585562" + id="text1508"><tspan + sodipodi:role="line" + id="tspan1510" + x="-259.27570" + y="9.4585562">This line holds the</tspan><tspan + sodipodi:role="line" + id="tspan1512" + x="-259.27570" + y="24.882526">master images, lines</tspan><tspan + sodipodi:role="line" + id="tspan1514" + x="-259.27570" + y="40.306497">above and below are</tspan><tspan + sodipodi:role="line" + id="tspan1516" + x="-259.27570" + y="55.730467">clones. So changes</tspan><tspan + sodipodi:role="line" + id="tspan1518" + x="-259.27570" + y="71.154437">stricly go to this line!</tspan></text> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 22.857143,-163.85715 L 7.8571433,-165.28572 L 35.714286,-138.85714 L 63.571429,-165.28572 L 47.142857,-163.14286 L 55.000000,-189.57143 L 17.142857,-192.42857 L 22.857143,-163.85715 z " + id="path1520" + sodipodi:nodetypes="cccccccc" /> + <text + xml:space="preserve" + style="font-size:12.000000;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1.0000000;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;font-family:Bitstream Vera Sans" + x="-27.857143" + y="-226.71428" + id="text1522"><tspan + sodipodi:role="line" + id="tspan1524" + x="-27.857143" + y="-226.71428">Row with master icons,</tspan><tspan + sodipodi:role="line" + id="tspan1526" + x="-27.857143" + y="-214.71428">others are clones, only</tspan><tspan + sodipodi:role="line" + id="tspan1528" + x="-27.857143" + y="-202.71428">change this row!</tspan></text> + <use + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/buttons/options-clicked.png" + x="0.0000000" + y="0.0000000" + xlink:href="#button-clicked" + id="use1828" + transform="translate(0.000000,200.0686)" + width="320.00000" + height="64.000000" /> + <g + transform="matrix(1.050129,0.000000,0.000000,1.050129,-2.042235,-15.65078)" + id="g1595"> + <g + id="g2884" + transform="matrix(1.403900,0.000000,0.000000,1.403900,18.13297,215.6414)"> + <path + style="fill:url(#linearGradient1603);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 5.0180647,5.8682592 L 23.969157,31.367706 L 28.309941,27.693375 L 9.0190610,3.0973719 L 5.0180647,5.8682592 z " + id="path2083" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1605);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 0.77995049,16.609485 L 1.9916130,10.941229 L 14.513506,0.72158942 L 18.711980,6.7270350 L 5.4683806,17.389173 L 0.77995049,16.609485 z " + id="path2081" /> + </g> + <g + id="g2880" + transform="matrix(1.403900,0.000000,0.000000,1.403900,18.13297,215.6414)"> + <path + style="fill:#8e1515;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 8.9375000,15.250000 L 1.3437500,20.937500 L 7.1875000,30.562500 L 14.687500,24.843750 L 8.9375000,15.250000 z M 6.8437500,19.062500 L 10.562500,25.625000 L 7.7812500,27.750000 L 3.8437500,21.375000 L 6.8437500,19.062500 z " + id="path2085" /> + <path + style="fill:url(#linearGradient1607);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 9.5354864,15.647896 L 27.528877,3.2415750 L 31.025983,7.6065133 L 28.274385,8.7169420 L 26.867666,11.665838 L 24.054450,12.244412 L 22.709348,15.725162 L 19.578155,16.583122 L 18.551030,19.784485 L 15.437188,20.559587 L 14.392713,23.843809 L 9.5354864,15.647896 z " + id="path2089" + sodipodi:nodetypes="cccccccccccc" /> + </g> + </g> + <g + inkscape:export-ydpi="90.220001" + inkscape:export-xdpi="90.220001" + transform="matrix(1.050129,0.000000,0.000000,1.050129,326.7227,-15.65078)" + id="g1609"> + <g + id="g1611" + transform="matrix(1.403900,0.000000,0.000000,1.403900,18.13297,215.6414)"> + <path + style="fill:url(#linearGradient1623);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 5.0180647,5.8682592 L 23.969157,31.367706 L 28.309941,27.693375 L 9.0190610,3.0973719 L 5.0180647,5.8682592 z " + id="path1613" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1625);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 0.77995049,16.609485 L 1.9916130,10.941229 L 14.513506,0.72158942 L 18.711980,6.7270350 L 5.4683806,17.389173 L 0.77995049,16.609485 z " + id="path1615" /> + </g> + <g + id="g1617" + transform="matrix(1.403900,0.000000,0.000000,1.403900,18.13297,215.6414)"> + <path + style="fill:#8e1515;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 8.9375000,15.250000 L 1.3437500,20.937500 L 7.1875000,30.562500 L 14.687500,24.843750 L 8.9375000,15.250000 z M 6.8437500,19.062500 L 10.562500,25.625000 L 7.7812500,27.750000 L 3.8437500,21.375000 L 6.8437500,19.062500 z " + id="path1619" /> + <path + style="fill:url(#linearGradient1627);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 9.5354864,15.647896 L 27.528877,3.2415750 L 31.025983,7.6065133 L 28.274385,8.7169420 L 26.867666,11.665838 L 24.054450,12.244412 L 22.709348,15.725162 L 19.578155,16.583122 L 18.551030,19.784485 L 15.437188,20.559587 L 14.392713,23.843809 L 9.5354864,15.647896 z " + id="path1621" + sodipodi:nodetypes="cccccccccccc" /> + </g> + </g> + <g + transform="matrix(1.050129,0.000000,0.000000,1.050129,657.9676,-15.65078)" + id="g1629"> + <g + id="g1631" + transform="matrix(1.403900,0.000000,0.000000,1.403900,18.13297,215.6414)"> + <path + style="fill:url(#linearGradient1643);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 5.0180647,5.8682592 L 23.969157,31.367706 L 28.309941,27.693375 L 9.0190610,3.0973719 L 5.0180647,5.8682592 z " + id="path1633" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1645);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 0.77995049,16.609485 L 1.9916130,10.941229 L 14.513506,0.72158942 L 18.711980,6.7270350 L 5.4683806,17.389173 L 0.77995049,16.609485 z " + id="path1635" /> + </g> + <g + id="g1637" + transform="matrix(1.403900,0.000000,0.000000,1.403900,18.13297,215.6414)"> + <path + style="fill:#8e1515;fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 8.9375000,15.250000 L 1.3437500,20.937500 L 7.1875000,30.562500 L 14.687500,24.843750 L 8.9375000,15.250000 z M 6.8437500,19.062500 L 10.562500,25.625000 L 7.7812500,27.750000 L 3.8437500,21.375000 L 6.8437500,19.062500 z " + id="path1639" /> + <path + style="fill:url(#linearGradient1647);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 9.5354864,15.647896 L 27.528877,3.2415750 L 31.025983,7.6065133 L 28.274385,8.7169420 L 26.867666,11.665838 L 24.054450,12.244412 L 22.709348,15.725162 L 19.578155,16.583122 L 18.551030,19.784485 L 15.437188,20.559587 L 14.392713,23.843809 L 9.5354864,15.647896 z " + id="path1641" + sodipodi:nodetypes="cccccccccccc" /> + </g> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/credits_back.svg lincity-ng-2.9~git20150314/data/images/mainmenu/credits_back.svg --- lincity-ng-2.0/data/images/mainmenu/credits_back.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/credits_back.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,2275 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1024.0000px" + height="768.00000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/matze/projects/lincity-ng/data/images/mainmenu" + sodipodi:docname="credits_back.svg" + inkscape:export-filename="/home/matze/projects/lincity-ng/data/images/mainmenu/credits_back.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient18203"> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop18205" /> + <stop + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop18209" /> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop18207" /> + </linearGradient> + <linearGradient + id="linearGradient4850"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop4852" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop4854" /> + </linearGradient> + <linearGradient + id="linearGradient4255"> + <stop + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4257" /> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4259" /> + </linearGradient> + <linearGradient + id="linearGradient4305"> + <stop + style="stop-color:#000000;stop-opacity:0.73333335;" + offset="0.0000000" + id="stop4307" /> + <stop + style="stop-color:#000000;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4309" /> + </linearGradient> + <linearGradient + id="linearGradient2380"> + <stop + style="stop-color:#a9ab1d;stop-opacity:1;" + offset="0" + id="stop2382" /> + <stop + style="stop-color:#a9ab1d;stop-opacity:0;" + offset="1" + id="stop2384" /> + </linearGradient> + <linearGradient + id="linearGradient2542"> + <stop + id="stop2544" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop2546" + offset="1.0000000" + style="stop-color:#e2ecff;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="787.10168" + fy="473.20316" + fx="823.91541" + cy="473.20316" + cx="823.91541" + gradientTransform="matrix(1.162983,0.000000,0.000000,0.859900,8.931699e-3,1.615128e-2)" + id="radialGradient2550" + xlink:href="#linearGradient2542" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient22165" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient11999"> + <stop + style="stop-color:#e2e2e2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12001" /> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12003" /> + </linearGradient> + <linearGradient + id="linearGradient11991"> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11993" /> + <stop + style="stop-color:#8b8b8b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11995" /> + </linearGradient> + <linearGradient + id="linearGradient12007"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12009" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12011" /> + </linearGradient> + <linearGradient + id="linearGradient14361"> + <stop + style="stop-color:#c3cde9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14363" /> + <stop + style="stop-color:#698ef6;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14365" /> + </linearGradient> + <linearGradient + id="linearGradient19109"> + <stop + style="stop-color:#000000;stop-opacity:0.45378152;" + offset="0.0000000" + id="stop19111" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19113" /> + </linearGradient> + <linearGradient + id="linearGradient9030"> + <stop + style="stop-color:#00bfff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9032" /> + <stop + style="stop-color:#0021c8;stop-opacity:0.51405621;" + offset="1.0000000" + id="stop9034" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.35294119;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient3617" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,-1.360206,385.5420)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient1742" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,648.7695,483.3827)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4812" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4811" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4810" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient3554" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2931" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2308" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient2304"> + <stop + style="stop-color:#6a57ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2305" /> + <stop + style="stop-color:#1300a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2306" /> + </linearGradient> + <linearGradient + id="linearGradient4802"> + <stop + style="stop-color:#8879ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4803" /> + <stop + style="stop-color:#4e42a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4804" /> + </linearGradient> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6500" + gradientTransform="scale(1.075954,0.929408)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + x1="680.29120" + y1="721.96411" + x2="681.54474" + y2="737.44690" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6512" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.075954,0.929408)" + x1="651.09534" + y1="720.26569" + x2="652.25720" + y2="728.05103" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient12124" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient13654" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0.000000,0.000000,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient23468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,741.3971,-280.0799)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23470" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,755.6905,-135.5312)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23472" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,755.6905,-135.5312)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23474" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,755.6905,-135.5312)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23476" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,749.5288,-149.6013)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23478" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,749.5288,-149.6013)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23480" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,749.5288,-149.6013)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23482" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,718.3285,-149.3086)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23484" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,718.3285,-149.3086)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23486" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,718.3285,-149.3086)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23488" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,765.0778,-199.5904)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23490" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,765.0778,-199.5904)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23492" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,765.0778,-199.5904)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23494" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,745.7026,-201.9960)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23496" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,745.7026,-201.9960)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23498" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,745.7026,-201.9960)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23500" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,721.0845,-209.0808)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23502" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,721.0845,-209.0808)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,721.0845,-209.0808)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23506" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,782.3408,-266.2137)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,782.3408,-266.2137)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23510" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.763570,1.309637)" + spreadMethod="pad" + x1="990.44958" + y1="122.82517" + x2="1026.7732" + y2="145.52820" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23512" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,763.4423,-270.0809)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23514" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,763.4423,-270.0809)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,763.4423,-270.0809)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23518" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,741.3971,-280.0799)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23520" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,741.3971,-280.0799)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23522" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,741.3971,-280.0799)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient23524" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,741.3971,-280.0799)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient23526" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,741.3971,-280.0799)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient23528" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,741.3971,-280.0799)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient23530" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.146091,0.000000,0.000000,0.653803,364.2777,-102.2402)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="247.83467" + fy="776.96881" + fx="60.051296" + cy="776.96881" + cx="60.051296" + gradientTransform="matrix(1.883522,0.000000,0.000000,0.846568,19.44520,10.81907)" + id="radialGradient28433" + xlink:href="#linearGradient28427" + inkscape:collect="always" /> + <radialGradient + r="279.10022" + fy="823.55896" + fx="72.217499" + cy="823.55896" + cx="72.217499" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,19.44520,10.81907)" + gradientUnits="userSpaceOnUse" + id="radialGradient23847" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <linearGradient + spreadMethod="pad" + gradientUnits="userSpaceOnUse" + y2="864.99774" + x2="149.30901" + y1="611.94214" + x1="33.550251" + gradientTransform="matrix(1.709511,0.000000,0.000000,0.932741,19.44520,10.81907)" + id="linearGradient23831" + xlink:href="#linearGradient23833" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.099226,-8.979644e-2,0.154015,1.885338,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23057" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.811295,-6.627516e-2,0.208675,2.554449,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23055" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.722194,-0.140686,9.830286e-2,1.203356,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23053" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025909,-0.125048,0.214475,1.759586,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23051" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.757182,-9.229261e-2,0.290593,2.384068,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23049" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.607324,-0.195916,0.136893,1.123092,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23047" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.096066,-0.122485,0.210081,1.879917,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23033" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.808962,-9.040137e-2,0.284638,2.547103,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23031" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.717241,-0.191901,0.134089,1.199896,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23029" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025112,-0.131424,0.225413,1.758220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23027" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.756594,-9.699938e-2,0.305413,2.382215,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23025" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.606075,-0.205907,0.143875,1.122220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23023" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23009" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23007" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23005" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23003" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23001" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient22999" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22985" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22983" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22981" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22973" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22971" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22969" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="101.66785" + fy="134.69154" + fx="33.917580" + cy="134.69154" + cx="33.917580" + gradientTransform="matrix(1.369330,0.000000,0.000000,1.164460,19.44520,10.81907)" + id="radialGradient22961" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="171.45183" + x2="42.257313" + y1="104.70185" + x1="-45.389553" + gradientTransform="matrix(0.652578,0.000000,0.000000,2.443434,19.44520,10.81907)" + id="linearGradient22945" + xlink:href="#linearGradient22939" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="199.91158" + x2="247.58649" + y1="135.30980" + x1="92.894203" + gradientTransform="matrix(0.654723,0.000000,0.000000,2.435427,19.44520,10.81907)" + id="linearGradient22937" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-214.8070,-47.29036)" + gradientUnits="userSpaceOnUse" + id="radialGradient22171" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + id="linearGradient22931"> + <stop + id="stop22933" + offset="0" + style="stop-color:#c6bc96;stop-opacity:1;" /> + <stop + id="stop22935" + offset="1.0000000" + style="stop-color:#9f956f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22939"> + <stop + id="stop22941" + offset="0.0000000" + style="stop-color:#e0d6b3;stop-opacity:1.0000000;" /> + <stop + id="stop22943" + offset="1.0000000" + style="stop-color:#c6bc96;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient23833"> + <stop + id="stop23835" + offset="0.0000000" + style="stop-color:#545454;stop-opacity:1.0000000;" /> + <stop + id="stop23837" + offset="1.0000000" + style="stop-color:#949494;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient26137"> + <stop + id="stop26139" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.40160644;" /> + <stop + id="stop26141" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient28427"> + <stop + id="stop28429" + offset="0.0000000" + style="stop-color:#0fa900;stop-opacity:1.0000000;" /> + <stop + id="stop28431" + offset="1.0000000" + style="stop-color:#085400;stop-opacity:0.97991967;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28579" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.824921,0.000000,0.000000,0.547969,434.5858,-14.91216)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient28581" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,434.5858,-14.91216)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient28583" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,434.5858,-14.91216)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient28585" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,434.5858,-14.91216)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28587" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,434.5858,-14.91216)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28589" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,434.5858,-14.91216)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28591" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,434.5858,-14.91216)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28593" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,456.6310,-4.913168)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28595" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,456.6310,-4.913168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28597" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,456.6310,-4.913168)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28599" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818455,0.000000,0.000000,1.403773,475.5295,-1.046018)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28601" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,475.5295,-1.046018)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28603" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,475.5295,-1.046018)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28605" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,414.2732,56.08694)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28607" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,414.2732,56.08694)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28609" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,414.2732,56.08694)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28611" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,438.8913,63.17166)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28613" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,438.8913,63.17166)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28615" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,438.8913,63.17166)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,458.2665,65.57730)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,458.2665,65.57730)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28621" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,458.2665,65.57730)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28623" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,411.5172,115.8591)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28625" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,411.5172,115.8591)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28627" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,411.5172,115.8591)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28629" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,442.7175,115.5664)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28631" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,442.7175,115.5664)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28633" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,442.7175,115.5664)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28635" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,448.8792,129.6365)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28637" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,448.8792,129.6365)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28639" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,448.8792,129.6365)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient28641" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,434.5858,-14.91216)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28643" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28645" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,309.6471,-268.0035)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28647" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,309.6471,-268.0035)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28649" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,309.6471,-268.0035)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28651" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,388.1837,-260.9011)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28653" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,388.1837,-260.9011)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28655" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,388.1837,-260.9011)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28657" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,295.3669,-193.6045)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28659" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,295.3669,-193.6045)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28661" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,295.3669,-193.6045)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28663" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,373.9035,-186.5021)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28665" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,373.9035,-186.5021)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28667" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,373.9035,-186.5021)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28669" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,287.5684,-121.2913)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28671" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,287.5684,-121.2913)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28673" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,287.5684,-121.2913)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28675" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,366.1050,-114.1889)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28677" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,366.1050,-114.1889)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28679" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,366.1050,-114.1889)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient28683" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient28687" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11099" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11101" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11103" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11119" + gradientUnits="userSpaceOnUse" + cx="919.44238" + cy="597.64313" + fx="919.44238" + fy="597.64313" + r="329.40637" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11147" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11149" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11151" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11155" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.019681,0.980699)" + x1="1285.5446" + y1="224.21413" + x2="1308.1616" + y2="427.44754" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11157" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11159" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11161" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11929" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.019681,0.980698)" + x1="1382.7700" + y1="450.88165" + x2="1338.9440" + y2="281.17014" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11939" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.724296,1.380651)" + x1="1483.8276" + y1="127.65721" + x2="1517.2938" + y2="163.18713" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11941" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.875390,1.142348)" + x1="1190.4481" + y1="256.72067" + x2="1204.2202" + y2="275.25522" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11943" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.967340,1.033763)" + x1="1084.2196" + y1="261.09338" + x2="1104.3732" + y2="285.89426" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15124" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.771563,0.000000,0.000000,1.120233,510.5786,-78.86733)" + x1="-219.63448" + y1="303.99045" + x2="-216.75520" + y2="308.88455" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15127" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.476166,0.000000,0.000000,1.344403,510.5786,-78.86733)" + x1="-230.62390" + y1="251.23874" + x2="-276.39948" + y2="184.97169" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15130" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.815633,0.000000,0.000000,1.093041,510.5786,-78.86733)" + x1="-207.06616" + y1="328.31525" + x2="-203.73848" + y2="334.50824" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15133" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.759186,0.000000,0.000000,1.128115,510.5786,-78.86733)" + x1="-217.00117" + y1="307.27005" + x2="-212.14000" + y2="314.99881" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15136" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.079557,0.000000,0.000000,1.838314,510.5786,-78.86733)" + x1="-376.12292" + y1="156.36592" + x2="-348.23553" + y2="184.87762" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient16669" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient16671" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient16673" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient18211" + gradientTransform="matrix(1.642849,0.000000,0.000000,0.808385,658.6872,-96.34662)" + cx="-176.34210" + cy="450.77838" + fx="-176.34210" + fy="450.77838" + r="39.028294" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient18219" + gradientTransform="matrix(1.480110,0.000000,0.000000,0.897269,658.6872,-96.34662)" + x1="-214.17880" + y1="426.79022" + x2="-183.00604" + y2="429.94711" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="293.60699" + x2="-270.52734" + y1="314.15237" + x1="-267.05222" + gradientTransform="matrix(1.334991,2.393726e-7,1.888070e-8,0.994804,427.3264,240.0520)" + gradientUnits="userSpaceOnUse" + id="linearGradient1612" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="400.52097" + fy="252.41725" + fx="729.51178" + cy="252.41725" + cx="729.51178" + gradientUnits="userSpaceOnUse" + id="radialGradient5648" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="413.27042" + x2="784.01733" + y1="390.78232" + x1="768.98694" + id="linearGradient7180" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="461.88126" + fy="258.65204" + fx="637.98926" + cy="258.65204" + cx="637.98926" + id="radialGradient7940" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="280.70599" + x2="530.02094" + y1="258.33243" + x1="504.38077" + gradientTransform="scale(1.131006,0.884169)" + id="linearGradient8732" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="285.89426" + x2="1104.3732" + y1="261.09338" + x1="1084.2196" + gradientTransform="matrix(0.645794,0.000000,0.000000,0.690138,-87.16362,145.5283)" + gradientUnits="userSpaceOnUse" + id="linearGradient8800" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="275.25522" + x2="1204.2202" + y1="256.72067" + x1="1190.4481" + gradientTransform="matrix(0.584409,0.000000,0.000000,0.762629,-87.16362,145.5283)" + gradientUnits="userSpaceOnUse" + id="linearGradient8803" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="163.18713" + x2="1517.2938" + y1="127.65721" + x1="1483.8276" + gradientTransform="matrix(0.483539,0.000000,0.000000,0.921720,-87.16362,145.5283)" + gradientUnits="userSpaceOnUse" + id="linearGradient8806" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2542" + id="radialGradient1636" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.162983,0.000000,0.000000,0.859900,8.931699e-3,1.615128e-2)" + cx="823.91541" + cy="473.20316" + fx="823.91541" + fy="473.20316" + r="787.10168" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.60416667" + inkscape:cx="512.00001" + inkscape:cy="384.00000" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="807" + inkscape:window-x="0" + inkscape:window-y="236" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + style="fill:url(#radialGradient1636);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.2557396;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect8854" + width="1024.0049" + height="767.99750" + x="-0.0086894706" + y="-0.00048458576" + rx="0.0000000" + ry="0.0000000" /> + <g + id="author"> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11198" + d="M 980.42466,753.53931 C 980.37165,753.48462 980.61184,753.56660 980.65365,753.57454 C 981.92987,753.75043 983.23382,753.61758 984.49357,753.38307 C 985.05016,753.26703 985.60766,753.12814 986.12767,752.89333 C 986.37610,752.78116 986.58578,752.64843 986.46480,752.71688 C 984.69118,753.72043 985.83495,753.24740 985.84932,752.93053 C 985.18755,752.42479 983.72740,752.62382 982.96097,752.70202 C 982.12073,752.80795 981.27503,752.96659 980.49083,753.29718 C 980.15244,753.43983 979.94188,753.57157 980.00351,753.53472 C 980.19081,753.42268 980.37906,753.31178 980.57295,753.21160 C 980.64174,753.17603 980.44254,753.29530 980.37957,753.34040 C 980.21733,753.45665 980.18589,753.49162 980.03844,753.62306 C 979.28795,754.33190 979.15044,755.32011 979.47115,756.26928 C 979.92941,757.46858 981.11699,757.85839 982.30676,757.85551 C 983.08868,757.81924 983.86162,757.62874 984.56782,757.28949 C 984.66360,757.24350 984.94040,757.08567 984.85093,757.14301 C 983.84426,757.78833 984.62833,757.25251 984.81259,757.10078 C 984.98290,756.96048 985.12774,756.80493 985.26895,756.63644 C 985.37056,756.51376 985.44195,756.37453 985.50727,756.23077 L 986.46047,755.79883 C 986.37503,755.96137 986.28395,756.11961 986.16204,756.25864 C 985.04206,757.53044 983.30448,758.22279 981.64031,758.34054 C 980.38908,758.35734 979.12410,758.00264 978.62944,756.73382 C 978.28845,755.75481 978.38125,754.73172 979.15640,753.98321 C 980.38581,752.85774 981.99798,752.39731 983.61410,752.21694 C 984.42210,752.12920 986.17082,751.87175 986.86692,752.36816 C 986.93589,752.54441 986.83102,752.68107 986.67483,752.77476 C 985.75930,753.32389 984.92267,753.74527 983.85252,753.86598 C 982.49842,754.08597 981.12751,754.20761 979.75531,754.21511 C 979.61577,754.21343 979.39147,754.25560 979.32101,754.10166 L 980.42466,753.53931 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11202" + d="M 990.52877,753.26033 C 990.53523,753.27150 990.54130,753.28289 990.54814,753.29381 C 990.55635,753.30688 990.53267,753.26691 990.52261,753.25524 C 990.46146,753.18432 990.38947,753.12772 990.30924,753.07931 C 990.01682,752.90293 989.70188,752.81351 989.36938,752.74806 C 988.19488,752.60465 986.97083,752.86353 985.94880,753.46297 C 985.87637,753.50546 986.22402,753.28467 986.17562,753.35331 C 986.09699,753.46480 985.95455,753.51372 985.85065,753.60217 C 985.55251,753.85597 985.34079,754.13841 985.13385,754.46669 C 984.26273,756.32174 985.72602,757.41573 987.44257,757.60038 C 989.50654,757.56153 990.83964,757.10980 991.64925,755.27914 C 991.84950,754.68928 991.91432,754.00721 991.63496,753.42814 C 991.57178,753.29714 991.47260,753.13151 991.32922,753.07273 C 991.27830,753.05185 991.11839,753.12920 991.16698,753.10334 C 992.10272,752.60506 992.28192,752.34080 991.98964,752.72216 C 991.51808,754.36724 992.20982,756.67351 992.57848,758.31210 C 992.74225,759.37013 993.66286,761.62286 992.51857,762.39266 C 992.17263,762.57736 991.83549,762.77956 991.48076,762.94675 C 991.03383,763.15737 990.23866,762.90415 989.80456,762.78488 C 988.67839,762.47547 987.61118,762.00136 986.55685,761.50607 C 984.95835,760.72403 983.39362,759.85622 981.93854,758.82806 C 981.20017,758.30632 980.34602,757.71623 980.07051,756.81457 C 980.07243,756.44910 980.25204,756.22404 980.56672,756.04271 C 980.90233,755.84936 981.24147,755.65878 981.59773,755.50682 C 982.32114,755.19826 984.11537,755.28120 984.90494,755.28818 C 986.64249,755.30355 988.37945,755.33513 990.11671,755.36926 C 992.65488,755.44519 995.19596,755.43576 997.72346,755.17250 L 997.25764,755.51458 C 994.87043,755.48596 992.48425,755.39354 990.09665,755.38378 C 987.74799,755.33765 985.37198,755.19189 983.03357,755.48745 C 982.57512,755.54539 982.05219,755.63274 981.60286,755.75566 C 981.41718,755.80646 981.24709,755.94184 981.05466,755.93731 C 980.94980,755.93483 981.27777,755.84956 981.30649,755.74868 C 981.33527,755.64754 980.62958,756.43256 980.81634,756.41762 C 980.87395,757.35588 981.58168,758.04818 982.28043,758.61066 C 983.67675,759.73469 985.31218,760.52894 986.94132,761.25029 C 987.94034,761.65706 988.95319,762.03326 990.00845,762.26799 C 990.57956,762.39502 991.18419,762.49642 991.77127,762.44161 C 992.14793,762.40646 992.28360,762.31668 992.25067,762.34283 C 992.04864,762.50334 991.81193,762.61455 991.59254,762.75039 C 992.87227,762.05886 992.20124,759.70442 992.04339,758.59900 C 991.68314,756.79719 991.11845,755.00570 991.01314,753.16846 C 991.10197,752.69923 991.90265,752.11317 992.24588,752.51097 C 992.62844,752.95437 992.64815,753.77697 992.55654,754.31488 C 992.50706,754.60537 992.47400,754.66484 992.37820,754.94614 C 991.43294,756.96686 989.01133,758.01893 986.86837,758.00899 C 985.00533,757.84126 983.47298,756.79568 984.43429,754.77444 C 985.60833,752.95456 987.99554,752.17027 990.07860,752.24777 C 990.54454,752.29109 991.27179,752.34857 991.63216,752.69812 L 990.52877,753.26033 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11204" + d="M 996.24929,754.08555 C 995.94918,753.71415 995.44354,753.52930 995.00861,753.37437 C 994.25293,753.13098 993.43241,753.06749 992.67136,753.32648 C 992.32552,753.44416 992.10498,753.58591 992.15038,753.55708 C 992.30968,753.45589 992.47056,753.35442 992.64365,753.27925 C 992.82262,753.20153 992.32855,753.50991 992.17902,753.63523 C 991.03059,754.73993 991.00598,756.07740 992.23952,757.11392 C 994.03807,758.30460 996.50626,758.42720 998.44187,757.50504 C 998.35410,757.55081 998.15022,757.73712 998.17858,757.64230 C 998.21418,757.52330 998.37866,757.49432 998.47019,757.41034 C 998.55842,757.32940 998.64140,757.24217 998.71641,757.14885 C 998.93865,756.87242 999.09150,756.54435 999.15989,756.19631 C 999.47094,754.61401 996.85621,753.58689 995.75156,753.14362 C 993.09520,752.29441 989.29999,751.46899 986.56805,752.45865 C 985.73525,752.93499 987.37513,751.84676 986.91674,752.28974 L 985.94807,752.68953 C 986.31139,752.33309 986.77499,752.08349 987.25780,751.92553 C 988.05008,751.73751 988.87199,751.75578 989.67998,751.81248 C 991.78452,751.96012 993.85971,752.42861 995.86633,753.06638 C 997.02395,753.47279 998.95165,754.05166 999.70364,755.09944 C 999.92074,755.40189 999.91454,755.51921 999.86134,755.86134 C 999.69534,756.92894 998.78085,757.47827 997.89734,757.93757 C 995.92178,758.80471 993.44726,758.55944 991.57789,757.53087 C 990.19652,756.53701 990.21620,755.13816 991.37904,753.95954 C 992.65268,752.83730 994.15781,752.35780 995.78962,752.84323 C 996.30796,752.99330 996.81368,753.17830 997.29390,753.42486 L 996.24929,754.08555 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11212" + d="M 998.04285,759.83236 C 998.12338,759.36467 998.12776,758.88106 998.14374,758.40689 C 998.18020,756.93597 998.10954,755.44149 997.73091,754.01316 C 997.48496,753.21467 997.28404,753.48371 998.61205,752.90548 C 998.61299,752.90506 998.81612,753.18683 998.82117,753.19303 C 999.05934,753.48547 999.34012,753.72091 999.64384,753.94208 C 1000.5716,754.56711 1001.7222,754.78408 1002.7663,754.33449 L 1001.9793,754.95228 C 1000.9199,755.32025 999.81264,754.99835 998.88755,754.42502 C 998.55641,754.21140 998.24630,753.97579 997.92914,753.74278 C 997.88359,753.70933 997.76137,753.61956 997.70081,753.59365 C 997.67958,753.58456 997.61336,753.59293 997.63277,753.58040 C 999.04071,752.67136 998.47821,752.78334 998.55731,753.57380 C 998.69585,755.04380 998.86707,756.51083 998.96719,757.98442 C 999.00732,758.41218 999.03186,758.85524 999.14650,759.27004 L 998.04285,759.83236 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11219" + d="M 1001.9270,755.16131 C 1002.4402,755.46052 1003.1012,755.51451 1003.6807,755.56740 C 1004.3003,755.59835 1004.9456,755.58956 1005.5336,755.36540 C 1005.6209,755.33213 1005.8676,755.19931 1005.7887,755.24927 C 1005.6076,755.36385 1005.4230,755.47599 1005.2259,755.56011 C 1005.1580,755.58907 1005.3437,755.47042 1005.3949,755.41736 C 1005.6697,755.13247 1005.6718,754.80086 1005.5725,754.44269 C 1004.6862,752.72346 1002.3158,752.81667 1000.8397,753.61878 C 1000.9143,753.59174 1001.0932,753.46410 1001.0634,753.53763 C 1001.0106,753.66817 1000.8504,753.72292 1000.7555,753.82689 C 1000.4801,754.12824 1000.2777,754.49165 1000.1838,754.89016 C 999.82214,756.42643 1001.0796,757.54528 1002.2772,758.21981 C 1002.7584,758.43167 1002.8589,758.49489 1003.3676,758.64215 C 1004.4483,758.95513 1005.6157,759.01563 1006.7186,758.78471 C 1007.1658,758.69104 1007.6047,758.54648 1008.0135,758.34115 C 1008.1298,758.28271 1008.4824,758.13004 1008.3537,758.14921 C 1008.2066,758.17111 1008.0881,758.28293 1007.9554,758.34981 L 1008.7098,758.05406 C 1008.4829,758.19111 1007.8292,758.61639 1007.4471,758.78840 C 1005.6773,759.58505 1003.5749,759.22296 1001.8539,758.49646 C 1000.9468,758.02725 999.99994,757.44508 999.62244,756.43650 C 999.07493,754.97401 1000.1649,753.83698 1001.3636,753.19766 C 1002.9234,752.39025 1005.3137,752.38116 1006.3928,753.99081 C 1006.5678,754.43936 1006.5354,754.94442 1006.0810,755.22957 C 1004.9997,755.90817 1004.2554,756.15192 1002.9957,756.05758 C 1002.2923,756.01917 1001.5868,755.96073 1000.8925,755.84194 L 1001.9270,755.16131 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11227" + d="M 1011.6830,751.23561 C 1011.7519,751.02469 1011.7193,750.82641 1011.6123,750.62849 C 1010.6233,749.43325 1008.6457,749.88419 1007.4477,750.46123 C 1007.5286,750.41766 1007.7470,750.25803 1007.6905,750.33052 C 1007.6076,750.43684 1007.4681,750.48360 1007.3637,750.56894 C 1007.1592,750.73615 1006.9803,750.91816 1006.8211,751.12917 C 1006.0176,752.19425 1006.1581,753.45914 1007.0233,754.41922 C 1008.1277,755.40078 1009.7265,755.64086 1011.1261,755.22475 C 1011.4207,755.19056 1011.6490,754.98815 1011.9213,754.89956 C 1012.0148,754.86911 1011.6121,755.12444 1011.6616,755.03948 C 1011.7269,754.92751 1011.8701,754.88553 1011.9744,754.80854 C 1013.0622,753.86732 1013.5596,752.15486 1012.7659,750.86906 C 1012.8446,750.67038 1012.3349,750.67111 1012.3408,750.66777 C 1012.6275,750.50542 1012.9142,750.34239 1013.2099,750.19706 C 1013.3110,750.14735 1013.1450,750.16650 1012.9966,750.45445 C 1012.9195,750.60407 1012.8658,750.77974 1012.8290,750.94236 C 1012.6811,751.59622 1012.7106,752.27220 1012.7468,752.93583 C 1012.8996,754.74963 1013.3675,756.52409 1014.0232,758.21804 L 1013.3950,758.56364 C 1012.9162,756.80547 1012.4657,755.03509 1012.1731,753.23518 C 1012.1519,753.08461 1012.1284,752.93434 1012.1093,752.78349 C 1012.0536,752.34418 1011.6582,749.22349 1013.3450,750.03521 C 1013.4831,750.10163 1013.5479,750.26127 1013.6150,750.38601 C 1014.1804,751.83316 1013.8344,753.50580 1012.6540,754.53846 C 1010.7493,755.97246 1008.3546,756.36291 1006.3877,754.80577 C 1005.1778,753.55627 1005.3798,751.93360 1006.7000,750.83230 C 1007.1107,750.48964 1007.4991,750.31347 1007.9938,750.02639 C 1009.3353,749.40628 1011.3002,749.05420 1012.5385,750.08229 C 1012.6791,750.24295 1012.7972,750.47928 1012.7867,750.67328 L 1011.6830,751.23561 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11229" + d="M 1014.6971,749.34919 C 1014.5756,749.93164 1014.6354,750.54346 1014.6866,751.13058 C 1014.9423,753.36470 1015.6072,755.55327 1016.7036,757.51882 C 1016.7745,757.63502 1016.8454,757.75125 1016.9162,757.86745 L 1016.2961,758.22340 C 1016.2366,758.09992 1016.1770,757.97647 1016.1174,757.85299 C 1015.1875,755.81842 1014.5079,753.67968 1013.9701,751.51047 C 1013.8391,750.97903 1013.7284,750.44120 1013.5934,749.91154 L 1014.6971,749.34919 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11231" + d="M 1016.4801,748.90961 C 1016.3438,749.40948 1016.3545,749.94539 1016.3600,750.46182 C 1016.4205,752.57947 1016.9087,754.66561 1017.7539,756.60476 C 1018.0278,757.22562 1018.3743,757.80791 1018.7596,758.36496 L 1018.0720,758.76389 C 1017.7552,758.15983 1017.4601,757.54451 1017.2090,756.90987 C 1016.4422,754.96171 1015.8984,752.93429 1015.5889,750.86276 C 1015.5168,750.41108 1015.4441,749.90422 1015.3765,749.47194 L 1016.4801,748.90961 z " /> + </g> + <g + style="opacity:0.30100334" + id="g1571"> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.0000000;stroke:none;fill-opacity:0.76408452;fill:#000026" + d="M -44.518456,70.090300 C 261.82671,207.16421 622.67295,317.78714 1060.9744,67.628472 L 1059.7173,231.04871 C 587.47475,447.26625 457.98332,445.09411 -43.997757,257.44736 L -44.518456,70.090300 z " + id="band" + sodipodi:nodetypes="ccccc" /> + <use + height="768.00000" + width="1024.0000" + transform="translate(-504.0886,-66.62517)" + id="medal-clone-idea" + xlink:href="#medal" + y="0.0000000" + x="0.0000000" /> + <use + height="768.00000" + width="1024.0000" + transform="translate(-257.7011,-2.514157)" + id="medal-clone-key" + xlink:href="#medal" + y="0.0000000" + x="0.0000000" /> + <g + id="medal"> + <path + sodipodi:type="arc" + style="stroke-opacity:0.62323946;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.0000000;stroke:none;fill-opacity:0.58802819;fill:#000000" + id="path7942" + sodipodi:cx="781.33331" + sodipodi:cy="429.33334" + sodipodi:rx="208.88889" + sodipodi:ry="208.88889" + d="M 990.22220 429.33334 A 208.88889 208.88889 0 1 1 572.44443,429.33334 A 208.88889 208.88889 0 1 1 990.22220 429.33334 z" + transform="matrix(0.541308,0.000000,0.000000,0.541308,217.0635,64.53590)" /> + <path + sodipodi:type="arc" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.0000000;stroke:#8e6b00;fill-opacity:1.0000000;fill:url(#linearGradient7180)" + id="path11049" + sodipodi:cx="781.33331" + sodipodi:cy="429.33334" + sodipodi:rx="208.88889" + sodipodi:ry="208.88889" + d="M 990.22220 429.33334 A 208.88889 208.88889 0 1 1 572.44443,429.33334 A 208.88889 208.88889 0 1 1 990.22220 429.33334 z" + transform="matrix(0.541308,0.000000,0.000000,0.541308,214.3968,62.75812)" /> + <path + sodipodi:type="arc" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.0442517;stroke:#8e6b00;fill-opacity:1.0000000;fill:url(#radialGradient7940)" + id="path11051" + sodipodi:cx="781.33331" + sodipodi:cy="429.33334" + sodipodi:rx="208.88889" + sodipodi:ry="208.88889" + d="M 990.22220 429.33334 A 208.88889 208.88889 0 1 1 572.44443,429.33334 A 208.88889 208.88889 0 1 1 990.22220 429.33334 z" + transform="matrix(0.518850,0.000000,0.000000,0.523768,231.9437,70.28841)" /> + <path + sodipodi:type="arc" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.4607329;stroke:#8e6b00;fill-opacity:1.0000000;fill:url(#radialGradient11119)" + id="path11053" + sodipodi:cx="781.33331" + sodipodi:cy="429.33334" + sodipodi:rx="208.88889" + sodipodi:ry="208.88889" + d="M 990.22220 429.33334 A 208.88889 208.88889 0 1 1 572.44443,429.33334 A 208.88889 208.88889 0 1 1 990.22220 429.33334 z" + transform="matrix(0.433072,0.000000,0.000000,0.433072,298.9648,109.2273)" /> + <path + sodipodi:type="arc" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.4607329;stroke:#8e6b00;fill-opacity:1.0000000;fill:url(#radialGradient5648)" + id="path5646" + sodipodi:cx="781.33331" + sodipodi:cy="429.33334" + sodipodi:rx="208.88889" + sodipodi:ry="208.88889" + d="M 990.22220 429.33334 A 208.88889 208.88889 0 1 1 572.44443,429.33334 A 208.88889 208.88889 0 1 1 990.22220 429.33334 z" + transform="matrix(0.403459,0.000000,0.000000,0.403459,322.1023,121.9411)" /> + </g> + <use + height="768.00000" + width="1024.0000" + transform="translate(252.4444,-64.00000)" + id="medal-clone-note" + xlink:href="#medal" + y="0.0000000" + x="0.0000000" /> + <g + id="idea"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000px;stroke:none;fill-rule:evenodd;fill-opacity:0.59607846;fill:#000000" + d="M 134.19094,184.23142 C 107.92598,184.64323 96.036164,206.06449 100.24899,222.83985 C 104.46180,239.61520 118.22028,250.18645 117.59416,265.63048 L 117.59416,265.93864 L 117.50611,265.98268 C 112.64277,267.09718 112.85299,277.56078 117.59416,278.22115 L 117.59416,278.48529 L 117.28599,278.61735 C 110.91309,282.15786 113.97986,289.98500 117.59416,290.94388 L 117.59416,296.00655 C 119.25829,298.33635 122.61772,299.76322 125.12214,301.64154 C 122.82641,305.91995 146.50441,304.56828 142.64341,301.33338 C 145.04350,299.87244 148.09741,299.54854 149.81920,296.93105 L 149.81920,291.07595 L 150.12736,290.98790 C 155.08771,289.85116 154.84147,278.92426 149.81920,278.66138 L 149.81920,278.48529 C 154.14979,278.27658 155.05634,265.54081 149.99530,266.11474 L 149.81920,266.20278 L 149.81920,265.63048 C 150.65401,252.79526 161.50249,239.02336 167.60462,225.39319 C 174.78024,209.36524 159.37109,183.83662 134.19094,184.23142 z " + id="path15069" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.1104547px;stroke:none;fill-rule:evenodd;fill-opacity:0.59607846;fill:#000000" + d="M 104.73647,176.99645 L 83.183234,169.34853 L 92.221704,188.81596 L 74.840054,195.76861 L 84.573764,208.97865 L 76.925844,231.22717 L 89.440624,236.09403 L 85.964314,254.17093 L 105.08412,251.04224 C 100.91252,241.07677 93.612234,229.37311 92.221704,220.79818 C 89.660884,205.00666 102.85804,185.93375 117.94651,180.47278 C 129.95352,176.12709 148.06292,177.58988 156.88140,183.94912 C 170.77421,193.96759 181.41768,214.41720 174.26303,227.75084 L 158.96720,256.25674 L 168.70091,268.07623 L 171.48198,252.08513 L 190.25416,237.48456 L 184.69201,224.96978 L 197.90206,205.50234 L 180.52041,199.94022 L 187.47308,176.30119 L 168.70091,179.77751 L 161.74825,161.70060 L 150.62399,172.82484 L 133.24236,156.13848 L 125.59444,169.34853 L 106.82226,163.09113 L 104.73647,176.99645 z " + id="path15075" + sodipodi:nodetypes="cccccccccssssccccccccccccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15136)" + d="M 115.81695,294.60662 L 115.81695,264.24035 C 116.44307,248.79632 102.69548,238.20296 98.482651,221.42761 C 94.269828,204.65227 106.14389,183.25798 132.40884,182.84617 C 157.58897,182.45137 173.00743,207.95487 165.83181,223.98282 C 159.72967,237.61298 148.89637,251.40512 148.06156,264.24035 L 148.06156,295.54579 C 146.33976,298.16327 143.26139,298.46762 140.86129,299.92855 C 144.72230,303.16345 121.03452,304.52002 123.33025,300.24160 C 120.82581,298.36328 117.48109,296.93642 115.81695,294.60662 z " + id="path11959" + sodipodi:nodetypes="ccsssccccs" /> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15133)" + d="M 148.06156,277.07558 L 116.13000,289.75428 C 112.37334,289.23253 108.92975,280.88440 115.50388,277.23210 L 148.21808,264.70992 C 153.27913,264.13599 152.39214,276.86687 148.06156,277.07558 z " + id="path11963" + sodipodi:nodetypes="ccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15130)" + d="M 148.37461,289.59774 C 153.38347,288.44987 153.07042,277.28427 147.90502,277.23209 L 121.45193,288.03247 C 119.73013,291.42390 123.38685,295.93269 126.14775,295.23274 L 148.37461,289.59774 z " + id="path11965" + sodipodi:nodetypes="cccsc" /> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15127)" + d="M 102.96563,175.59713 L 81.412395,167.94920 L 90.450861,187.41664 L 73.069216,194.36929 L 82.802925,207.57933 L 75.155003,229.82783 L 87.669787,234.69470 L 84.193469,252.77159 L 103.31328,249.64290 C 99.141676,239.67744 91.841391,227.97379 90.450861,219.39885 C 87.890044,203.60733 101.08721,184.53443 116.17567,179.07346 C 128.18267,174.72776 146.29208,176.19056 155.11055,182.54979 C 169.00336,192.56826 179.64682,213.01787 172.49218,226.35152 L 157.19635,254.85740 L 166.93006,266.67690 L 169.71112,250.68580 L 188.48330,236.08523 L 182.92116,223.57044 L 196.13121,204.10301 L 178.74956,198.54089 L 185.70222,174.90187 L 166.93006,178.37818 L 159.97740,160.30128 L 148.85315,171.42552 L 131.47151,154.73916 L 123.82359,167.94920 L 105.05142,161.69181 L 102.96563,175.59713 z " + id="path13483" + sodipodi:nodetypes="cccccccccssssccccccccccccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15124)" + d="M 115.73071,264.57354 C 110.72184,265.72142 111.03489,276.88702 116.20030,276.93920 L 141.54658,267.24562 C 143.26837,263.85420 138.25376,257.90904 135.52257,258.71719 L 115.73071,264.57354 z " + id="path14276" + sodipodi:nodetypes="cccsc" /> + </g> + <g + id="programming"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.0000000px;stroke:none;fill-rule:evenodd;fill-opacity:0.59607846;fill:#000000" + d="M 320.39006,313.65620 L 368.02312,345.92375 L 442.80189,309.55872 L 429.48513,272.16934 L 341.64566,273.96198 L 320.39006,313.65620 z " + id="path19763" + sodipodi:nodetypes="cccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.1524127px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient18219)" + d="M 320.13396,311.35137 L 367.76702,343.61892 L 442.54579,307.25390 L 429.22902,269.86451 L 341.38956,271.65715 L 320.13396,311.35137 z " + id="path16675" + sodipodi:nodetypes="cccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.1524127px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#radialGradient18211)" + d="M 341.64566,271.40106 L 377.49850,292.91277 L 429.22902,269.35232 L 391.32745,250.40154 L 341.64566,271.40106 z " + id="path16677" + sodipodi:nodetypes="ccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.1524127px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:0.75000000;fill:none" + d="M 368.02311,343.36282 L 377.75459,292.91277" + id="path18221" + sodipodi:nodetypes="cc" /> + <g + transform="matrix(1.251931,0.000000,0.000000,1.051977,-97.54655,-13.43767)" + id="g1606"> + <text + xml:space="preserve" + style="font-family:Bitstream Vera Sans;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:miter;stroke-linecap:round;stroke-width:0.99999994;stroke:none;fill-opacity:0.59607846;fill:#000000;font-weight:normal;font-style:normal;font-size:33.423931" + x="69.436401" + y="545.84845" + id="text18993" + transform="matrix(1.165065,-0.572711,0.541881,0.591949,0.000000,0.000000)"><tspan + sodipodi:role="line" + id="tspan18995" + x="69.436401" + y="545.84845">{</tspan></text> + <text + xml:space="preserve" + style="font-family:Bitstream Vera Sans;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.1524096;stroke:#8e6b00;fill-opacity:1.0000000;fill:url(#linearGradient1612);font-weight:normal;font-style:normal;font-size:30.089510" + x="52.515728" + y="548.9151" + id="text18981" + transform="matrix(1.223398,-0.545403,0.569012,0.563724,0.000000,0.000000)"><tspan + sodipodi:role="line" + id="tspan18983" + x="52.515728" + y="548.91510">{</tspan></text> + </g> + </g> + <g + id="art"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000px;stroke:none;fill-rule:evenodd;fill-opacity:0.59607846;fill:#000000" + d="M 673.22500,226.09458 C 668.40000,223.47866 614.85780,312.93524 618.69060,325.10768 C 615.06190,326.12569 612.02590,329.91833 611.99380,335.87269 C 600.33870,342.06874 608.22710,356.61785 601.37480,364.51681 C 610.19760,360.33510 622.09390,356.20426 623.17600,343.13282 C 623.21690,343.14459 623.26050,343.16313 623.30130,343.17454 C 628.62070,339.80505 629.94060,337.46657 629.62250,331.57503 C 629.25490,331.60570 628.95190,331.49708 628.60020,331.49158 C 628.95310,331.45034 629.22490,331.45670 629.60160,331.40813 C 641.04560,329.93314 677.81920,228.58531 673.22500,226.09458 z " + id="pen-shadow" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.66759801px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient8806)" + d="M 617.78388,323.81310 C 613.95107,311.64067 667.50832,222.16884 672.33338,224.78476 C 676.92753,227.27549 640.13780,328.63229 628.69384,330.10728 C 622.91451,330.85216 620.03142,330.95098 617.78388,323.81310 z " + id="path11059" + sodipodi:nodetypes="czss" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.66759801px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient8803)" + d="M 600.48235,363.22241 C 607.41676,355.22870 599.21899,340.41066 611.49411,334.34557 C 615.34548,336.36873 618.60349,338.39187 622.45487,340.41503 C 622.20232,354.69347 609.63625,358.88376 600.48235,363.22241 z " + id="path11061" + sodipodi:nodetypes="cccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.66759801px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient8800)" + d="M 611.07452,334.76518 C 611.03620,328.69136 614.11330,324.84285 617.78388,323.81310 C 620.24218,327.69991 623.73893,330.69658 628.71927,330.28109 C 629.03732,336.17262 627.72342,338.50362 622.40400,341.87312 C 618.18244,340.69065 613.66420,337.57956 611.07452,334.76518 z " + id="path11063" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="audio"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.2401829px;stroke:none;fill-rule:evenodd;fill-opacity:0.59607846;fill:#000000" + d="M 939.18201,177.96452 L 862.71312,179.92632 L 860.95784,267.44319 C 849.01418,258.43651 822.27222,267.77132 825.10857,280.96928 C 827.61983,292.65445 868.04288,288.88468 868.37575,275.32069 L 870.39952,198.44801 L 932.86383,197.47237 L 930.83090,266.05960 C 918.88723,257.05292 892.87638,266.36708 895.71273,279.56504 C 898.22388,291.25022 936.49491,287.26428 936.82783,273.70030 L 939.18201,177.96452 z " + id="note-shadow" + sodipodi:nodetypes="ccccccccccc" /> + <g + id="g8757" + transform="matrix(0.532838,0.000000,0.000000,0.532838,179.1951,60.35037)"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.2401829px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient11929)" + d="M 1423.1577,217.58884 L 1279.6452,221.27063 L 1276.3510,385.51736 C 1253.9358,368.61412 1203.7480,386.13318 1209.0711,410.90235 C 1213.7841,432.83243 1289.6478,425.75754 1290.2725,400.30141 L 1294.0706,256.03111 L 1411.3001,254.20007 L 1407.4848,382.92072 C 1385.0696,366.01749 1336.2539,383.49778 1341.5770,408.26696 C 1346.2898,430.19704 1418.1147,422.71645 1418.7395,397.26034 L 1423.1577,217.58884 z " + id="path4887" + sodipodi:nodetypes="ccccccccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.1138799px;stroke:#8e6b00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient11155)" + d="M 1420.2361,220.97928 L 1282.4504,223.84167 L 1279.4918,389.58337 C 1259.3593,374.40160 1207.1716,387.46980 1211.9526,409.71643 C 1216.1857,429.41310 1287.8416,422.65956 1288.4027,399.79593 L 1291.3696,253.77400 L 1413.4503,251.63973 L 1410.0236,386.80672 C 1389.8912,371.62497 1340.4051,385.10280 1345.1860,407.34944 C 1349.4189,427.04610 1415.7068,419.43846 1416.2679,396.57487 L 1420.2361,220.97928 z " + id="path5678" + sodipodi:nodetypes="ccccccccccc" /> + </g> + </g> + </g> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/mainmenu/loadsave_back.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/mainmenu/loadsave_back.png differ diff -Nru lincity-ng-2.0/data/images/mainmenu/loadsave_back.svg lincity-ng-2.9~git20150314/data/images/mainmenu/loadsave_back.svg --- lincity-ng-2.0/data/images/mainmenu/loadsave_back.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/loadsave_back.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,2643 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1024.0000px" + height="768.00000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu" + sodipodi:docname="newgame_back.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/newgame_back.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2542"> + <stop + id="stop2544" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop2546" + offset="1.0000000" + style="stop-color:#e2ecff;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="787.10168" + fy="473.20316" + fx="823.91541" + cy="473.20316" + cx="823.91541" + gradientTransform="matrix(1.162983,0.000000,0.000000,0.859900,8.931699e-3,1.615128e-2)" + id="radialGradient2550" + xlink:href="#linearGradient2542" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,59.29371,150.9788)" + gradientUnits="userSpaceOnUse" + id="linearGradient3164" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,59.29371,150.9788)" + gradientUnits="userSpaceOnUse" + id="linearGradient3162" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,59.29371,150.9788)" + gradientUnits="userSpaceOnUse" + id="linearGradient3160" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-19.24287,143.8764)" + gradientUnits="userSpaceOnUse" + id="linearGradient3158" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-19.24287,143.8764)" + gradientUnits="userSpaceOnUse" + id="linearGradient3156" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-19.24287,143.8764)" + gradientUnits="userSpaceOnUse" + id="linearGradient3154" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,67.09219,78.66556)" + gradientUnits="userSpaceOnUse" + id="linearGradient3152" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,67.09219,78.66556)" + gradientUnits="userSpaceOnUse" + id="linearGradient3150" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,67.09219,78.66556)" + gradientUnits="userSpaceOnUse" + id="linearGradient3148" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-11.44439,71.56316)" + gradientUnits="userSpaceOnUse" + id="linearGradient3146" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-11.44439,71.56316)" + gradientUnits="userSpaceOnUse" + id="linearGradient3144" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-11.44439,71.56316)" + gradientUnits="userSpaceOnUse" + id="linearGradient3142" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,81.37239,4.266576)" + gradientUnits="userSpaceOnUse" + id="linearGradient3140" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,81.37239,4.266576)" + gradientUnits="userSpaceOnUse" + id="linearGradient3138" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,81.37239,4.266576)" + gradientUnits="userSpaceOnUse" + id="linearGradient3136" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,2.835812,-2.835812)" + gradientUnits="userSpaceOnUse" + id="linearGradient3134" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,2.835812,-2.835812)" + gradientUnits="userSpaceOnUse" + id="linearGradient3132" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,2.835812,-2.835812)" + gradientUnits="userSpaceOnUse" + id="linearGradient3130" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="radialGradient3128" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,44.48813,152.7824)" + gradientUnits="userSpaceOnUse" + id="linearGradient3126" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,44.48813,152.7824)" + gradientUnits="userSpaceOnUse" + id="linearGradient3124" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,44.48813,152.7824)" + gradientUnits="userSpaceOnUse" + id="linearGradient3122" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.550831,-4.041663e-2,2.824048e-2,1.083619,36.70750,135.0155)" + gradientUnits="userSpaceOnUse" + id="linearGradient3120" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.730570,-1.903956e-2,5.994802e-2,2.300273,36.70750,135.0155)" + gradientUnits="userSpaceOnUse" + id="linearGradient3118" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.989848,-2.579676e-2,4.424532e-2,1.697741,36.70750,135.0155)" + gradientUnits="userSpaceOnUse" + id="linearGradient3116" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.507985,-8.950081e-2,6.253724e-2,1.053680,-2.690666,135.3850)" + gradientUnits="userSpaceOnUse" + id="linearGradient3114" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.710385,-4.216225e-2,0.132753,2.236720,-2.690666,135.3850)" + gradientUnits="userSpaceOnUse" + id="linearGradient3112" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.962502,-5.712573e-2,9.797925e-2,1.650836,-2.690666,135.3850)" + gradientUnits="userSpaceOnUse" + id="linearGradient3110" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.618321,-5.394730e-2,3.769483e-2,1.130777,56.34194,71.89187)" + gradientUnits="userSpaceOnUse" + id="linearGradient3108" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.762363,-2.541363e-2,8.001749e-2,2.400380,56.34194,71.89187)" + gradientUnits="userSpaceOnUse" + id="linearGradient3106" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.032928,-3.443300e-2,5.905777e-2,1.771626,56.34194,71.89187)" + gradientUnits="userSpaceOnUse" + id="linearGradient3104" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.550144,-6.132119e-2,4.284719e-2,1.083139,31.87589,68.85415)" + gradientUnits="userSpaceOnUse" + id="linearGradient3102" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.730245,-2.888733e-2,9.095472e-2,2.299254,31.87589,68.85415)" + gradientUnits="userSpaceOnUse" + id="linearGradient3100" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.989412,-3.913949e-2,6.713013e-2,1.696989,31.87589,68.85415)" + gradientUnits="userSpaceOnUse" + id="linearGradient3098" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.508728,-7.593927e-2,5.306093e-2,1.054199,0.789503,59.90794)" + gradientUnits="userSpaceOnUse" + id="linearGradient3096" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.710735,-3.577338e-2,0.112636,2.237823,0.789503,59.90794)" + gradientUnits="userSpaceOnUse" + id="linearGradient3094" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.962977,-4.846939e-2,8.313217e-2,1.651650,0.789503,59.90794)" + gradientUnits="userSpaceOnUse" + id="linearGradient3092" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,78.14069,-12.23653)" + gradientUnits="userSpaceOnUse" + id="linearGradient3090" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,78.14069,-12.23653)" + gradientUnits="userSpaceOnUse" + id="linearGradient3088" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.551358,0.000000,0.000000,1.083986,54.27672,-17.11976)" + gradientUnits="userSpaceOnUse" + id="linearGradient3086" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.730817,0.000000,0.000000,2.301053,54.27672,-17.11976)" + gradientUnits="userSpaceOnUse" + id="linearGradient3084" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.990186,0.000000,0.000000,1.698318,54.27672,-17.11976)" + gradientUnits="userSpaceOnUse" + id="linearGradient3082" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.510638,0.000000,0.000000,1.055534,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3080" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.711635,0.000000,0.000000,2.240656,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3078" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.964196,0.000000,0.000000,1.653741,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3076" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,78.14069,-12.23653)" + gradientUnits="userSpaceOnUse" + id="linearGradient3074" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="293.98172" + x2="686.46759" + y1="215.95918" + x1="655.03217" + gradientTransform="matrix(0.842533,0.000000,0.000000,1.892543,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3072" + xlink:href="#linearGradient11991" + inkscape:collect="always" /> + <linearGradient + y2="269.62457" + x2="454.40619" + y1="230.83006" + x1="394.27765" + gradientTransform="matrix(0.818038,0.000000,0.000000,1.949213,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3070" + xlink:href="#linearGradient11999" + inkscape:collect="always" /> + <radialGradient + r="106.59798" + fy="344.21854" + fx="248.40041" + cy="344.21854" + cx="248.40041" + gradientTransform="matrix(1.671004,0.000000,0.000000,0.954234,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="radialGradient3068" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + r="109.04317" + fy="965.82007" + fx="202.21599" + cy="965.82007" + cx="202.21599" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="radialGradient3066" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient22165" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient11999"> + <stop + style="stop-color:#e2e2e2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12001" /> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12003" /> + </linearGradient> + <linearGradient + id="linearGradient11991"> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11993" /> + <stop + style="stop-color:#8b8b8b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11995" /> + </linearGradient> + <linearGradient + id="linearGradient12007"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12009" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12011" /> + </linearGradient> + <linearGradient + id="linearGradient14361"> + <stop + style="stop-color:#c3cde9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14363" /> + <stop + style="stop-color:#698ef6;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14365" /> + </linearGradient> + <linearGradient + id="linearGradient19109"> + <stop + style="stop-color:#000000;stop-opacity:0.67871487;" + offset="0.0000000" + id="stop19111" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19113" /> + </linearGradient> + <linearGradient + id="linearGradient9030"> + <stop + style="stop-color:#00bfff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9032" /> + <stop + style="stop-color:#0021c8;stop-opacity:0.51405621;" + offset="1.0000000" + id="stop9034" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.73092371;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient3617" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,-1.360206,385.5420)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient1742" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,648.7695,483.3827)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4812" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4811" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4810" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient3554" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2931" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2308" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient2304"> + <stop + style="stop-color:#6a57ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2305" /> + <stop + style="stop-color:#1300a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2306" /> + </linearGradient> + <linearGradient + id="linearGradient4802"> + <stop + style="stop-color:#8879ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4803" /> + <stop + style="stop-color:#4e42a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4804" /> + </linearGradient> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="radialGradient5730" + gradientTransform="scale(0.823525,1.214293)" + cx="82.180733" + cy="211.67548" + fx="82.180733" + fy="211.67548" + r="111.52281" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6500" + gradientTransform="scale(1.075954,0.929408)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + x1="680.29120" + y1="721.96411" + x2="681.54474" + y2="737.44690" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6512" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.075954,0.929408)" + x1="651.09534" + y1="720.26569" + x2="652.25720" + y2="728.05103" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient9036" + gradientTransform="scale(1.016773,0.983503)" + x1="565.37469" + y1="274.94803" + x2="583.97906" + y2="295.30374" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient9044" + gradientTransform="scale(0.971157,1.029700)" + x1="597.34943" + y1="541.68359" + x2="607.99292" + y2="565.82843" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient10584" + gradientTransform="scale(0.924716,1.081414)" + x1="622.09137" + y1="247.68852" + x2="628.40155" + y2="259.02802" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient11352" + gradientTransform="matrix(0.959731,0.000000,0.000000,1.041959,0.000000,258.1723)" + x1="596.21234" + y1="288.35770" + x2="600.57306" + y2="294.93091" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient12124" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient13654" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0.000000,0.000000,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient15946" + gradientTransform="scale(0.964397,1.036917)" + x1="591.66382" + y1="370.30008" + x2="618.34448" + y2="390.74063" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient15950" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.924716,0.000000,0.000000,1.081414,-4.379882,118.1634)" + x1="622.09137" + y1="247.68852" + x2="628.40155" + y2="259.02802" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient23468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,741.3971,-280.0799)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23470" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,755.6905,-135.5312)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23472" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,755.6905,-135.5312)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23474" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,755.6905,-135.5312)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23476" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,749.5288,-149.6013)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23478" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,749.5288,-149.6013)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23480" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,749.5288,-149.6013)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23482" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,718.3285,-149.3086)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23484" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,718.3285,-149.3086)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23486" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,718.3285,-149.3086)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23488" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,765.0778,-199.5904)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23490" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,765.0778,-199.5904)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23492" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,765.0778,-199.5904)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23494" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,745.7026,-201.9960)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23496" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,745.7026,-201.9960)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23498" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,745.7026,-201.9960)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23500" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,721.0845,-209.0808)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23502" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,721.0845,-209.0808)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,721.0845,-209.0808)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23506" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,782.3408,-266.2137)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,782.3408,-266.2137)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23510" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.763570,1.309637)" + spreadMethod="pad" + x1="990.44958" + y1="122.82517" + x2="1026.7732" + y2="145.52820" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23512" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,763.4423,-270.0809)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23514" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,763.4423,-270.0809)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,763.4423,-270.0809)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23518" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,741.3971,-280.0799)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23520" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,741.3971,-280.0799)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23522" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,741.3971,-280.0799)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient23524" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,741.3971,-280.0799)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient23526" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,741.3971,-280.0799)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient23528" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,741.3971,-280.0799)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient23530" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.146091,0.000000,0.000000,0.653803,364.2777,-102.2402)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="247.83467" + fy="776.96881" + fx="60.051296" + cy="776.96881" + cx="60.051296" + gradientTransform="matrix(1.883522,0.000000,0.000000,0.846568,19.44520,10.81907)" + id="radialGradient28433" + xlink:href="#linearGradient28427" + inkscape:collect="always" /> + <radialGradient + r="279.10022" + fy="823.55896" + fx="72.217499" + cy="823.55896" + cx="72.217499" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,19.44520,10.81907)" + gradientUnits="userSpaceOnUse" + id="radialGradient23847" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <linearGradient + spreadMethod="pad" + gradientUnits="userSpaceOnUse" + y2="864.99774" + x2="149.30901" + y1="611.94214" + x1="33.550251" + gradientTransform="matrix(1.709511,0.000000,0.000000,0.932741,19.44520,10.81907)" + id="linearGradient23831" + xlink:href="#linearGradient23833" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.099226,-8.979644e-2,0.154015,1.885338,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23057" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.811295,-6.627516e-2,0.208675,2.554449,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23055" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.722194,-0.140686,9.830286e-2,1.203356,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23053" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025909,-0.125048,0.214475,1.759586,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23051" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.757182,-9.229261e-2,0.290593,2.384068,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23049" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.607324,-0.195916,0.136893,1.123092,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23047" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.096066,-0.122485,0.210081,1.879917,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23033" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.808962,-9.040137e-2,0.284638,2.547103,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23031" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.717241,-0.191901,0.134089,1.199896,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23029" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025112,-0.131424,0.225413,1.758220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23027" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.756594,-9.699938e-2,0.305413,2.382215,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23025" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.606075,-0.205907,0.143875,1.122220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23023" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23009" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23007" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23005" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23003" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23001" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient22999" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22985" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22983" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22981" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22973" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22971" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22969" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="101.66785" + fy="134.69154" + fx="33.917580" + cy="134.69154" + cx="33.917580" + gradientTransform="matrix(1.369330,0.000000,0.000000,1.164460,19.44520,10.81907)" + id="radialGradient22961" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="171.45183" + x2="42.257313" + y1="104.70185" + x1="-45.389553" + gradientTransform="matrix(0.652578,0.000000,0.000000,2.443434,19.44520,10.81907)" + id="linearGradient22945" + xlink:href="#linearGradient22939" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="199.91158" + x2="247.58649" + y1="135.30980" + x1="92.894203" + gradientTransform="matrix(0.654723,0.000000,0.000000,2.435427,19.44520,10.81907)" + id="linearGradient22937" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-214.8070,-47.29036)" + gradientUnits="userSpaceOnUse" + id="radialGradient22171" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + id="linearGradient22931"> + <stop + id="stop22933" + offset="0" + style="stop-color:#c6bc96;stop-opacity:1;" /> + <stop + id="stop22935" + offset="1.0000000" + style="stop-color:#9f956f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22939"> + <stop + id="stop22941" + offset="0.0000000" + style="stop-color:#e0d6b3;stop-opacity:1.0000000;" /> + <stop + id="stop22943" + offset="1.0000000" + style="stop-color:#c6bc96;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient23833"> + <stop + id="stop23835" + offset="0.0000000" + style="stop-color:#545454;stop-opacity:1.0000000;" /> + <stop + id="stop23837" + offset="1.0000000" + style="stop-color:#949494;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient26137"> + <stop + id="stop26139" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.40160644;" /> + <stop + id="stop26141" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient28427"> + <stop + id="stop28429" + offset="0.0000000" + style="stop-color:#0fa900;stop-opacity:1.0000000;" /> + <stop + id="stop28431" + offset="1.0000000" + style="stop-color:#085400;stop-opacity:0.97991967;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28579" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.824921,0.000000,0.000000,0.547969,434.5858,-14.91216)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient28581" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,434.5858,-14.91216)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient28583" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,434.5858,-14.91216)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient28585" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,434.5858,-14.91216)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28587" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,434.5858,-14.91216)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28589" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,434.5858,-14.91216)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28591" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,434.5858,-14.91216)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28593" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,456.6310,-4.913168)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28595" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,456.6310,-4.913168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28597" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,456.6310,-4.913168)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28599" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818455,0.000000,0.000000,1.403773,475.5295,-1.046018)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28601" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,475.5295,-1.046018)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28603" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,475.5295,-1.046018)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28605" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,414.2732,56.08694)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28607" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,414.2732,56.08694)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28609" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,414.2732,56.08694)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28611" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,438.8913,63.17166)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28613" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,438.8913,63.17166)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28615" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,438.8913,63.17166)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,458.2665,65.57730)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,458.2665,65.57730)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28621" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,458.2665,65.57730)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28623" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,411.5172,115.8591)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28625" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,411.5172,115.8591)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28627" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,411.5172,115.8591)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28629" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,442.7175,115.5664)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28631" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,442.7175,115.5664)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28633" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,442.7175,115.5664)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28635" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,448.8792,129.6365)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28637" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,448.8792,129.6365)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28639" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,448.8792,129.6365)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient28641" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,434.5858,-14.91216)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28643" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28645" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,309.6471,-268.0035)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28647" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,309.6471,-268.0035)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28649" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,309.6471,-268.0035)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28651" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,388.1837,-260.9011)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28653" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,388.1837,-260.9011)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28655" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,388.1837,-260.9011)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28657" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,295.3669,-193.6045)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28659" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,295.3669,-193.6045)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28661" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,295.3669,-193.6045)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28663" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,373.9035,-186.5021)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28665" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,373.9035,-186.5021)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28667" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,373.9035,-186.5021)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28669" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,287.5684,-121.2913)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28671" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,287.5684,-121.2913)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28673" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,287.5684,-121.2913)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28675" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,366.1050,-114.1889)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28677" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,366.1050,-114.1889)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28679" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,366.1050,-114.1889)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient28683" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient28687" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient28745" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0.000000,0.000000,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient28748" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.1250000" + inkscape:cx="311.85628" + inkscape:cy="355.71935" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="600" + inkscape:window-x="0" + inkscape:window-y="0" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + style="fill:url(#radialGradient2550);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.2557396;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect16067" + width="1024.0049" + height="767.99750" + x="-0.0086894706" + y="-0.00048458576" + rx="0.0000000" + ry="0.0000000" /> + <rect + style="fill:#000000;fill-opacity:0.55294120;fill-rule:nonzero;stroke:none;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" + id="rect1618" + width="538.90332" + height="357.43082" + x="54.560963" + y="239.71436" + rx="31.902317" + ry="32.925133" /> + <g + transform="translate(-22.68650,-9.925342)" + id="scenario-box"> + <rect + style="fill:#0000b9;fill-opacity:1.0000000;fill-rule:nonzero;stroke:#4494e1;stroke-width:3.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.63667822" + id="scenarioselect" + width="538.90332" + height="357.43082" + x="73.691910" + y="245.63969" + rx="31.902317" + ry="32.925133" /> + <path + style="fill:url(#radialGradient5730);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 83.216711,384.00000 C 80.601941,382.36497 78.648441,288.17656 86.224543,265.94256 C 92.923081,246.28399 162.00263,251.58891 169.69191,255.66580 C 178.45614,260.31263 119.99616,267.86393 107.14926,292.16024 C 94.302359,316.45655 86.929640,386.32172 83.216711,384.00000 z " + id="path4200" + sodipodi:nodetypes="cssss" /> + </g> + <g + id="slider-up" + transform="translate(-22.68650,-9.925342)" + style="opacity:0.24830700"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:0.58823532;fill:#000000" + d="M 568.85640,292.13576 C 572.15666,280.89816 577.83812,270.41253 585.14882,264.18799 C 588.36553,274.33942 593.58747,284.49085 599.18538,293.51435 C 585.71279,290.15142 578.56919,289.98433 568.85640,292.13576 z " + id="path9046" + sodipodi:nodetypes="cccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient9036)" + d="M 567.97912,291.63446 C 571.27938,280.39686 576.96084,269.91123 584.27154,263.68669 C 587.48825,273.83812 592.71019,283.98955 598.30810,293.01305 C 584.83551,289.65012 577.69191,289.48303 567.97912,291.63446 z " + id="path8268" + sodipodi:nodetypes="cccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient10584)" + d="M 583.14360,266.44386 C 581.65304,267.62019 578.91466,270.90948 576.80585,274.13210 C 574.69703,277.35472 573.57888,280.55566 573.93211,280.29243 C 574.88264,279.58408 577.85275,273.55462 580.39260,271.51593 C 582.60665,269.73875 584.02319,268.57846 584.83551,270.92429 C 585.43212,272.65071 585.57456,270.92556 585.12065,269.53738 C 584.66675,268.14920 583.58515,266.09539 583.14360,266.44386 z " + id="path9818" + sodipodi:nodetypes="cssssss" /> + </g> + <g + id="slider-down" + transform="translate(-22.68650,-9.925342)" + style="opacity:0.24830700"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:0.58823532;fill:#000000" + d="M 569.60835,557.82767 C 579.71801,555.36292 588.82506,554.90338 598.43342,557.95299 C 590.12010,566.89294 587.19582,575.45691 583.89555,586.40208 C 576.83551,579.42558 571.15404,567.56135 569.60835,557.82767 z " + id="path9048" + sodipodi:nodetypes="cccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient9044)" + d="M 569.04439,557.32637 C 579.15405,554.86162 588.26110,554.40208 597.86946,557.45169 C 589.55614,566.39164 586.63186,574.95561 583.33159,585.90078 C 576.27155,578.92428 570.59008,567.06005 569.04439,557.32637 z " + id="path8270" + sodipodi:nodetypes="cccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient11352)" + d="M 571.11228,558.70495 C 569.90658,560.10144 572.51626,567.28211 573.68147,566.78850 C 574.49690,566.44307 571.89798,561.77640 573.36333,559.70174 C 574.82868,557.62709 580.23298,557.95647 580.01045,557.20104 C 579.66177,556.01737 572.72065,556.84206 571.11228,558.70495 z " + id="path10586" + sodipodi:nodetypes="cssss" /> + </g> + <g + id="slider-bar" + transform="translate(-22.68650,-9.925342)"> + <path + style="fill:#000000;fill-opacity:0.58823532;fill-rule:nonzero;stroke:none;stroke-width:0.22436385pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 579.58094,303.08576 C 579.71412,299.49186 583.01184,299.46746 582.81106,303.08576 C 578.63065,378.41883 593.36898,466.32823 588.66564,547.97349 C 588.44616,551.79516 584.96529,551.78397 585.23364,547.97349 C 591.03691,465.31874 576.68589,381.20465 579.58094,303.08576 z " + id="path12126" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient28748);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:0.22436385pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 578.91800,302.78851 C 579.05118,299.19461 582.34890,299.17021 582.14812,302.78851 C 577.96771,378.12158 592.70604,466.03098 588.00270,547.67624 C 587.78322,551.49791 584.30235,551.48672 584.57070,547.67624 C 590.37397,465.02149 576.02295,380.90740 578.91800,302.78851 z " + id="path11354" + sodipodi:nodetypes="cssss" /> + <path + style="fill:url(#linearGradient28745);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:0.22436385pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 579.58094,302.96042 C 579.62153,301.87152 580.41394,301.84951 580.36720,303.02309 C 577.28968,378.71824 590.99943,465.73326 585.97113,547.03353 C 585.88057,548.47968 585.28064,548.27221 585.35897,547.15886 C 591.05922,465.18833 576.65258,381.53304 579.58094,302.96042 z " + id="path13652" + sodipodi:nodetypes="cssss" /> + </g> + <g + id="slider-position" + transform="translate(-22.68650,-9.925342)" + style="opacity:0.24830700"> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:#000000;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15946)" + d="M 599.31071,393.77546 C 587.53943,367.78055 559.78816,384.76696 567.72846,406.80940 C 576.30299,430.61248 605.32638,407.06005 599.31071,393.77546 z " + id="path15180" + sodipodi:nodetypes="css" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:0.25000000pt;stroke:none;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient15950)" + d="M 579.39035,382.53939 C 573.71982,383.56639 569.49387,391.05676 568.42429,394.32008 C 567.68663,396.57070 571.90629,390.52744 574.44614,388.48875 C 575.55317,387.60016 579.01433,386.45849 581.67366,387.02278 C 584.33298,387.58708 585.31318,391.48660 585.71934,392.65951 C 586.31595,394.38593 590.59416,386.51979 590.14025,385.13161 C 589.68635,383.74343 584.54967,381.60498 579.39035,382.53939 z " + id="path15948" + sodipodi:nodetypes="cssssss" /> + </g> + <g + id="author"> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11198" + d="M 980.42466,753.53931 C 980.37165,753.48462 980.61184,753.56660 980.65365,753.57454 C 981.92987,753.75043 983.23382,753.61758 984.49357,753.38307 C 985.05016,753.26703 985.60766,753.12814 986.12767,752.89333 C 986.37610,752.78116 986.58578,752.64843 986.46480,752.71688 C 984.69118,753.72043 985.83495,753.24740 985.84932,752.93053 C 985.18755,752.42479 983.72740,752.62382 982.96097,752.70202 C 982.12073,752.80795 981.27503,752.96659 980.49083,753.29718 C 980.15244,753.43983 979.94188,753.57157 980.00351,753.53472 C 980.19081,753.42268 980.37906,753.31178 980.57295,753.21160 C 980.64174,753.17603 980.44254,753.29530 980.37957,753.34040 C 980.21733,753.45665 980.18589,753.49162 980.03844,753.62306 C 979.28795,754.33190 979.15044,755.32011 979.47115,756.26928 C 979.92941,757.46858 981.11699,757.85839 982.30676,757.85551 C 983.08868,757.81924 983.86162,757.62874 984.56782,757.28949 C 984.66360,757.24350 984.94040,757.08567 984.85093,757.14301 C 983.84426,757.78833 984.62833,757.25251 984.81259,757.10078 C 984.98290,756.96048 985.12774,756.80493 985.26895,756.63644 C 985.37056,756.51376 985.44195,756.37453 985.50727,756.23077 L 986.46047,755.79883 C 986.37503,755.96137 986.28395,756.11961 986.16204,756.25864 C 985.04206,757.53044 983.30448,758.22279 981.64031,758.34054 C 980.38908,758.35734 979.12410,758.00264 978.62944,756.73382 C 978.28845,755.75481 978.38125,754.73172 979.15640,753.98321 C 980.38581,752.85774 981.99798,752.39731 983.61410,752.21694 C 984.42210,752.12920 986.17082,751.87175 986.86692,752.36816 C 986.93589,752.54441 986.83102,752.68107 986.67483,752.77476 C 985.75930,753.32389 984.92267,753.74527 983.85252,753.86598 C 982.49842,754.08597 981.12751,754.20761 979.75531,754.21511 C 979.61577,754.21343 979.39147,754.25560 979.32101,754.10166 L 980.42466,753.53931 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11202" + d="M 990.52877,753.26033 C 990.53523,753.27150 990.54130,753.28289 990.54814,753.29381 C 990.55635,753.30688 990.53267,753.26691 990.52261,753.25524 C 990.46146,753.18432 990.38947,753.12772 990.30924,753.07931 C 990.01682,752.90293 989.70188,752.81351 989.36938,752.74806 C 988.19488,752.60465 986.97083,752.86353 985.94880,753.46297 C 985.87637,753.50546 986.22402,753.28467 986.17562,753.35331 C 986.09699,753.46480 985.95455,753.51372 985.85065,753.60217 C 985.55251,753.85597 985.34079,754.13841 985.13385,754.46669 C 984.26273,756.32174 985.72602,757.41573 987.44257,757.60038 C 989.50654,757.56153 990.83964,757.10980 991.64925,755.27914 C 991.84950,754.68928 991.91432,754.00721 991.63496,753.42814 C 991.57178,753.29714 991.47260,753.13151 991.32922,753.07273 C 991.27830,753.05185 991.11839,753.12920 991.16698,753.10334 C 992.10272,752.60506 992.28192,752.34080 991.98964,752.72216 C 991.51808,754.36724 992.20982,756.67351 992.57848,758.31210 C 992.74225,759.37013 993.66286,761.62286 992.51857,762.39266 C 992.17263,762.57736 991.83549,762.77956 991.48076,762.94675 C 991.03383,763.15737 990.23866,762.90415 989.80456,762.78488 C 988.67839,762.47547 987.61118,762.00136 986.55685,761.50607 C 984.95835,760.72403 983.39362,759.85622 981.93854,758.82806 C 981.20017,758.30632 980.34602,757.71623 980.07051,756.81457 C 980.07243,756.44910 980.25204,756.22404 980.56672,756.04271 C 980.90233,755.84936 981.24147,755.65878 981.59773,755.50682 C 982.32114,755.19826 984.11537,755.28120 984.90494,755.28818 C 986.64249,755.30355 988.37945,755.33513 990.11671,755.36926 C 992.65488,755.44519 995.19596,755.43576 997.72346,755.17250 L 997.25764,755.51458 C 994.87043,755.48596 992.48425,755.39354 990.09665,755.38378 C 987.74799,755.33765 985.37198,755.19189 983.03357,755.48745 C 982.57512,755.54539 982.05219,755.63274 981.60286,755.75566 C 981.41718,755.80646 981.24709,755.94184 981.05466,755.93731 C 980.94980,755.93483 981.27777,755.84956 981.30649,755.74868 C 981.33527,755.64754 980.62958,756.43256 980.81634,756.41762 C 980.87395,757.35588 981.58168,758.04818 982.28043,758.61066 C 983.67675,759.73469 985.31218,760.52894 986.94132,761.25029 C 987.94034,761.65706 988.95319,762.03326 990.00845,762.26799 C 990.57956,762.39502 991.18419,762.49642 991.77127,762.44161 C 992.14793,762.40646 992.28360,762.31668 992.25067,762.34283 C 992.04864,762.50334 991.81193,762.61455 991.59254,762.75039 C 992.87227,762.05886 992.20124,759.70442 992.04339,758.59900 C 991.68314,756.79719 991.11845,755.00570 991.01314,753.16846 C 991.10197,752.69923 991.90265,752.11317 992.24588,752.51097 C 992.62844,752.95437 992.64815,753.77697 992.55654,754.31488 C 992.50706,754.60537 992.47400,754.66484 992.37820,754.94614 C 991.43294,756.96686 989.01133,758.01893 986.86837,758.00899 C 985.00533,757.84126 983.47298,756.79568 984.43429,754.77444 C 985.60833,752.95456 987.99554,752.17027 990.07860,752.24777 C 990.54454,752.29109 991.27179,752.34857 991.63216,752.69812 L 990.52877,753.26033 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11204" + d="M 996.24929,754.08555 C 995.94918,753.71415 995.44354,753.52930 995.00861,753.37437 C 994.25293,753.13098 993.43241,753.06749 992.67136,753.32648 C 992.32552,753.44416 992.10498,753.58591 992.15038,753.55708 C 992.30968,753.45589 992.47056,753.35442 992.64365,753.27925 C 992.82262,753.20153 992.32855,753.50991 992.17902,753.63523 C 991.03059,754.73993 991.00598,756.07740 992.23952,757.11392 C 994.03807,758.30460 996.50626,758.42720 998.44187,757.50504 C 998.35410,757.55081 998.15022,757.73712 998.17858,757.64230 C 998.21418,757.52330 998.37866,757.49432 998.47019,757.41034 C 998.55842,757.32940 998.64140,757.24217 998.71641,757.14885 C 998.93865,756.87242 999.09150,756.54435 999.15989,756.19631 C 999.47094,754.61401 996.85621,753.58689 995.75156,753.14362 C 993.09520,752.29441 989.29999,751.46899 986.56805,752.45865 C 985.73525,752.93499 987.37513,751.84676 986.91674,752.28974 L 985.94807,752.68953 C 986.31139,752.33309 986.77499,752.08349 987.25780,751.92553 C 988.05008,751.73751 988.87199,751.75578 989.67998,751.81248 C 991.78452,751.96012 993.85971,752.42861 995.86633,753.06638 C 997.02395,753.47279 998.95165,754.05166 999.70364,755.09944 C 999.92074,755.40189 999.91454,755.51921 999.86134,755.86134 C 999.69534,756.92894 998.78085,757.47827 997.89734,757.93757 C 995.92178,758.80471 993.44726,758.55944 991.57789,757.53087 C 990.19652,756.53701 990.21620,755.13816 991.37904,753.95954 C 992.65268,752.83730 994.15781,752.35780 995.78962,752.84323 C 996.30796,752.99330 996.81368,753.17830 997.29390,753.42486 L 996.24929,754.08555 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11212" + d="M 998.04285,759.83236 C 998.12338,759.36467 998.12776,758.88106 998.14374,758.40689 C 998.18020,756.93597 998.10954,755.44149 997.73091,754.01316 C 997.48496,753.21467 997.28404,753.48371 998.61205,752.90548 C 998.61299,752.90506 998.81612,753.18683 998.82117,753.19303 C 999.05934,753.48547 999.34012,753.72091 999.64384,753.94208 C 1000.5716,754.56711 1001.7222,754.78408 1002.7663,754.33449 L 1001.9793,754.95228 C 1000.9199,755.32025 999.81264,754.99835 998.88755,754.42502 C 998.55641,754.21140 998.24630,753.97579 997.92914,753.74278 C 997.88359,753.70933 997.76137,753.61956 997.70081,753.59365 C 997.67958,753.58456 997.61336,753.59293 997.63277,753.58040 C 999.04071,752.67136 998.47821,752.78334 998.55731,753.57380 C 998.69585,755.04380 998.86707,756.51083 998.96719,757.98442 C 999.00732,758.41218 999.03186,758.85524 999.14650,759.27004 L 998.04285,759.83236 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11219" + d="M 1001.9270,755.16131 C 1002.4402,755.46052 1003.1012,755.51451 1003.6807,755.56740 C 1004.3003,755.59835 1004.9456,755.58956 1005.5336,755.36540 C 1005.6209,755.33213 1005.8676,755.19931 1005.7887,755.24927 C 1005.6076,755.36385 1005.4230,755.47599 1005.2259,755.56011 C 1005.1580,755.58907 1005.3437,755.47042 1005.3949,755.41736 C 1005.6697,755.13247 1005.6718,754.80086 1005.5725,754.44269 C 1004.6862,752.72346 1002.3158,752.81667 1000.8397,753.61878 C 1000.9143,753.59174 1001.0932,753.46410 1001.0634,753.53763 C 1001.0106,753.66817 1000.8504,753.72292 1000.7555,753.82689 C 1000.4801,754.12824 1000.2777,754.49165 1000.1838,754.89016 C 999.82214,756.42643 1001.0796,757.54528 1002.2772,758.21981 C 1002.7584,758.43167 1002.8589,758.49489 1003.3676,758.64215 C 1004.4483,758.95513 1005.6157,759.01563 1006.7186,758.78471 C 1007.1658,758.69104 1007.6047,758.54648 1008.0135,758.34115 C 1008.1298,758.28271 1008.4824,758.13004 1008.3537,758.14921 C 1008.2066,758.17111 1008.0881,758.28293 1007.9554,758.34981 L 1008.7098,758.05406 C 1008.4829,758.19111 1007.8292,758.61639 1007.4471,758.78840 C 1005.6773,759.58505 1003.5749,759.22296 1001.8539,758.49646 C 1000.9468,758.02725 999.99994,757.44508 999.62244,756.43650 C 999.07493,754.97401 1000.1649,753.83698 1001.3636,753.19766 C 1002.9234,752.39025 1005.3137,752.38116 1006.3928,753.99081 C 1006.5678,754.43936 1006.5354,754.94442 1006.0810,755.22957 C 1004.9997,755.90817 1004.2554,756.15192 1002.9957,756.05758 C 1002.2923,756.01917 1001.5868,755.96073 1000.8925,755.84194 L 1001.9270,755.16131 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11227" + d="M 1011.6830,751.23561 C 1011.7519,751.02469 1011.7193,750.82641 1011.6123,750.62849 C 1010.6233,749.43325 1008.6457,749.88419 1007.4477,750.46123 C 1007.5286,750.41766 1007.7470,750.25803 1007.6905,750.33052 C 1007.6076,750.43684 1007.4681,750.48360 1007.3637,750.56894 C 1007.1592,750.73615 1006.9803,750.91816 1006.8211,751.12917 C 1006.0176,752.19425 1006.1581,753.45914 1007.0233,754.41922 C 1008.1277,755.40078 1009.7265,755.64086 1011.1261,755.22475 C 1011.4207,755.19056 1011.6490,754.98815 1011.9213,754.89956 C 1012.0148,754.86911 1011.6121,755.12444 1011.6616,755.03948 C 1011.7269,754.92751 1011.8701,754.88553 1011.9744,754.80854 C 1013.0622,753.86732 1013.5596,752.15486 1012.7659,750.86906 C 1012.8446,750.67038 1012.3349,750.67111 1012.3408,750.66777 C 1012.6275,750.50542 1012.9142,750.34239 1013.2099,750.19706 C 1013.3110,750.14735 1013.1450,750.16650 1012.9966,750.45445 C 1012.9195,750.60407 1012.8658,750.77974 1012.8290,750.94236 C 1012.6811,751.59622 1012.7106,752.27220 1012.7468,752.93583 C 1012.8996,754.74963 1013.3675,756.52409 1014.0232,758.21804 L 1013.3950,758.56364 C 1012.9162,756.80547 1012.4657,755.03509 1012.1731,753.23518 C 1012.1519,753.08461 1012.1284,752.93434 1012.1093,752.78349 C 1012.0536,752.34418 1011.6582,749.22349 1013.3450,750.03521 C 1013.4831,750.10163 1013.5479,750.26127 1013.6150,750.38601 C 1014.1804,751.83316 1013.8344,753.50580 1012.6540,754.53846 C 1010.7493,755.97246 1008.3546,756.36291 1006.3877,754.80577 C 1005.1778,753.55627 1005.3798,751.93360 1006.7000,750.83230 C 1007.1107,750.48964 1007.4991,750.31347 1007.9938,750.02639 C 1009.3353,749.40628 1011.3002,749.05420 1012.5385,750.08229 C 1012.6791,750.24295 1012.7972,750.47928 1012.7867,750.67328 L 1011.6830,751.23561 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11229" + d="M 1014.6971,749.34919 C 1014.5756,749.93164 1014.6354,750.54346 1014.6866,751.13058 C 1014.9423,753.36470 1015.6072,755.55327 1016.7036,757.51882 C 1016.7745,757.63502 1016.8454,757.75125 1016.9162,757.86745 L 1016.2961,758.22340 C 1016.2366,758.09992 1016.1770,757.97647 1016.1174,757.85299 C 1015.1875,755.81842 1014.5079,753.67968 1013.9701,751.51047 C 1013.8391,750.97903 1013.7284,750.44120 1013.5934,749.91154 L 1014.6971,749.34919 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11231" + d="M 1016.4801,748.90961 C 1016.3438,749.40948 1016.3545,749.94539 1016.3600,750.46182 C 1016.4205,752.57947 1016.9087,754.66561 1017.7539,756.60476 C 1018.0278,757.22562 1018.3743,757.80791 1018.7596,758.36496 L 1018.0720,758.76389 C 1017.7552,758.15983 1017.4601,757.54451 1017.2090,756.90987 C 1016.4422,754.96171 1015.8984,752.93429 1015.5889,750.86276 C 1015.5168,750.41108 1015.4441,749.90422 1015.3765,749.47194 L 1016.4801,748.90961 z " /> + </g> + <g + transform="translate(301.9329,-92.74310)" + id="g2954"> + <path + sodipodi:nodetypes="cccccc" + id="path2956" + d="M 473.35393,694.33118 C 528.37317,687.81720 588.33790,691.19419 638.41165,698.52757 C 676.22194,679.99011 704.14125,658.48537 725.13690,636.98062 C 711.66492,613.61768 688.30197,595.20021 669.88451,581.72824 C 614.57557,578.01185 557.28844,583.19733 506.92499,594.31740 L 473.35393,694.33118 z " + style="fill:url(#radialGradient3066);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.31000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g2958"> + <path + sodipodi:nodetypes="ccccc" + id="path2960" + d="M 368.04206,345.09016 C 408.13466,317.59810 447.24539,299.43370 486.84706,284.70580 C 537.08553,306.79764 579.22367,333.55331 617.18890,362.02725 L 501.08401,425.35719 L 368.04206,345.09016 z " + style="fill:url(#radialGradient3068);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2962" + d="M 502.06588,422.65707 C 464.10065,390.25570 416.80774,362.76363 367.55113,344.59923 C 351.67773,437.54860 358.38711,530.49796 361.16904,624.92012 C 399.13427,641.28445 438.57229,662.55808 472.11916,694.63216 L 502.06588,422.65707 z " + style="fill:url(#linearGradient3070);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2964" + d="M 471.62823,694.63216 C 476.37388,604.13744 480.62862,516.09737 502.06588,423.14800 C 541.17662,389.76477 578.81456,373.07315 617.92530,361.29084 C 594.03338,461.93145 576.52356,558.64461 578.65092,654.37591 C 543.46762,657.97606 507.79339,673.35853 471.62823,694.63216 z " + style="fill:url(#linearGradient3072);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + id="g2966"> + <path + sodipodi:nodetypes="ccccc" + id="path2968" + d="M 454.48525,414.71441 C 450.32404,427.56521 448.36583,438.94733 447.50910,455.46977 C 458.40167,458.28471 465.98976,464.77129 474.67933,472.35938 C 474.06740,458.52949 475.65843,446.16825 480.55398,430.13535 C 473.70023,422.05772 465.01065,417.28456 454.48525,414.71441 z " + style="fill:url(#linearGradient3074);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2970" + d="M 377.54636,368.57401 C 373.66421,380.56305 371.83731,391.18189 371.03804,406.59635 C 381.20016,409.22252 388.27940,415.27412 396.38626,422.35336 C 395.81536,409.45089 397.29970,397.91858 401.86696,382.96084 C 395.47281,375.42489 387.36595,370.97181 377.54636,368.57401 z " + style="fill:url(#linearGradient3076);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2972" + d="M 371.03804,406.33944 C 372.75075,405.22618 374.46348,404.79799 376.17620,404.79799 C 376.83274,393.46551 378.94508,380.76285 382.17070,369.94418 C 380.51507,369.43037 379.20199,369.08783 377.54636,368.57402 C 373.66421,380.93413 371.49476,393.37988 371.03804,406.33944 z " + style="fill:url(#linearGradient3078);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2974" + d="M 376.26182,404.96927 C 382.85579,407.16726 391.24810,411.50615 396.21498,417.21520 C 396.32917,419.21338 396.27208,420.52646 396.38626,422.26773 C 388.36504,415.70230 382.05652,409.65070 371.03804,406.42508 C 372.57949,405.51163 374.20656,404.76945 376.26182,404.96927 z " + style="fill:url(#linearGradient3080);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2976" + d="M 414.84789,391.93681 C 410.86110,404.24901 408.98495,415.15408 408.16414,430.98403 C 418.60018,433.68099 425.87023,439.89572 434.19561,447.16577 C 433.60933,433.91552 435.13368,422.07237 439.82404,406.71144 C 433.25754,398.97236 424.93216,394.39926 414.84789,391.93681 z " + style="fill:url(#linearGradient3082);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2978" + d="M 408.16414,430.72020 C 409.92302,429.57693 411.68191,429.13720 413.44079,429.13720 C 414.11502,417.49926 416.28431,404.45421 419.59687,393.34392 C 417.89662,392.81625 416.54815,392.46449 414.84789,391.93682 C 410.86110,404.63010 408.63317,417.41132 408.16414,430.72020 z " + style="fill:url(#linearGradient3084);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2980" + d="M 413.52872,429.31310 C 420.30043,431.57034 428.91895,436.02618 434.01972,441.88911 C 434.13698,443.94117 434.07836,445.28964 434.19561,447.07783 C 425.95818,440.33544 419.47962,434.12072 408.16414,430.80816 C 409.74713,429.87009 411.41806,429.10789 413.52872,429.31310 z " + style="fill:url(#linearGradient3086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2982" + d="M 447.50910,455.19439 C 449.34493,454.00111 451.18077,453.54215 453.01659,453.54215 C 453.72031,441.39509 455.98450,427.77937 459.44196,416.18307 C 457.66733,415.63231 456.25988,415.26517 454.48525,414.71442 C 450.32404,427.96296 447.99866,441.30331 447.50910,455.19439 z " + style="fill:url(#linearGradient3088);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2984" + d="M 453.10837,453.72574 C 460.17630,456.08172 469.17186,460.73248 474.49574,466.85189 C 474.61815,468.99370 474.55695,470.40117 474.67933,472.26759 C 466.08155,465.23025 459.31959,458.74367 447.50910,455.28618 C 449.16134,454.30708 450.90537,453.51155 453.10837,453.72574 z " + style="fill:url(#linearGradient3090);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2986" + d="M 371.47604,440.07442 C 368.20148,452.24345 366.91069,462.94071 366.88730,478.37585 C 377.16859,480.48787 384.54308,486.17594 392.99557,492.83871 C 391.77679,479.98125 392.67953,468.38891 396.48911,453.22047 C 389.72421,446.01549 381.40375,441.97557 371.47604,440.07442 z " + style="fill:url(#linearGradient3092);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2988" + d="M 366.87438,478.11927 C 368.52897,476.92131 370.21801,476.40758 371.92855,476.32148 C 372.01460,464.97032 373.48571,452.17753 376.16340,441.21040 C 374.48404,440.78046 373.15540,440.50437 371.47604,440.07443 C 368.22013,452.61407 366.67906,465.15314 366.87438,478.11927 z " + style="fill:url(#linearGradient3094);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2990" + d="M 372.02269,476.48823 C 378.71880,478.35198 387.31862,482.26349 392.56621,487.71565 C 392.78071,489.70557 392.78969,491.01986 392.99126,492.75318 C 384.65014,486.59927 378.04539,480.87245 366.87869,478.20480 C 368.37227,477.21503 369.95998,476.39200 372.02269,476.48823 z " + style="fill:url(#linearGradient3096);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3235" + d="M 408.33424,463.33863 C 404.83724,475.79880 403.39361,486.76950 403.19916,502.61952 C 413.73365,504.90187 421.24366,510.82437 429.84990,517.75965 C 428.74034,504.54295 429.79536,492.64879 433.87488,477.11448 C 427.00761,469.64100 418.50797,465.40054 408.33424,463.33863 z " + style="fill:url(#linearGradient3098);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2994" + d="M 403.18873,502.35591 C 404.90105,501.14400 406.64119,500.63508 408.39870,500.56556 C 408.61238,488.91006 410.26433,475.78946 413.13515,464.55691 C 411.41536,464.09687 410.05404,463.79868 408.33424,463.33864 C 404.85231,476.17958 403.13134,489.03887 403.18873,502.35591 z " + style="fill:url(#linearGradient3100);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2996" + d="M 408.49350,500.73785 C 415.34913,502.72565 424.13706,506.83734 429.46558,512.49408 C 429.66386,514.53990 429.65859,515.88964 429.84643,517.67179 C 421.34894,511.26028 414.62978,505.30649 403.19221,502.44378 C 404.73688,501.44387 406.37638,500.61623 408.49350,500.73785 z " + style="fill:url(#linearGradient3102);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2998" + d="M 446.70222,486.06716 C 442.97147,499.04948 441.39355,510.49052 441.08779,527.03233 C 452.06810,529.48280 459.86809,535.71297 468.80563,543.00733 C 467.73328,529.20552 468.91160,516.79812 473.27025,500.61103 C 466.15119,492.76623 457.30741,488.28523 446.70222,486.06716 z " + style="fill:url(#linearGradient3104);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3000" + d="M 441.07861,526.75710 C 442.87367,525.50332 444.69319,524.98345 446.52800,524.92228 C 446.82662,512.75853 448.63591,499.07492 451.70511,487.36988 C 449.91312,486.87854 448.49421,486.55850 446.70222,486.06718 C 442.98473,499.44700 441.10509,512.85743 441.07861,526.75710 z " + style="fill:url(#linearGradient3106);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3002" + d="M 446.62585,525.10271 C 453.76834,527.22191 462.91386,531.57039 468.43865,537.50903 C 468.63236,539.64557 468.61809,541.05429 468.80258,542.91559 C 459.97512,536.16861 453.00079,529.91093 441.08167,526.84884 C 442.70037,525.81524 444.41694,524.96204 446.62585,525.10271 z " + style="fill:url(#linearGradient3108);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3004" + d="M 371.39903,512.20344 C 368.23401,524.40141 367.03945,535.10985 367.15485,550.54458 C 377.45471,552.56405 384.88006,558.18560 393.39210,564.77210 C 392.05776,551.92611 392.85625,540.32613 396.52928,525.12407 C 389.69989,517.98019 381.34343,514.01524 371.39903,512.20344 z " + style="fill:url(#linearGradient3110);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3006" + d="M 367.13962,550.28811 C 368.78338,549.07533 370.46773,548.54643 372.17743,548.44496 C 372.16140,537.09348 373.51744,524.28799 376.09641,513.29722 C 374.41326,512.88239 373.08219,512.61826 371.39903,512.20345 C 368.25601,524.77185 366.82774,537.32426 367.13962,550.28811 z " + style="fill:url(#linearGradient3112);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3008" + d="M 372.27306,548.61086 C 378.98567,550.41431 387.62031,554.24837 392.91670,559.65311 C 393.14908,561.64103 393.16988,562.95518 393.38702,564.68663 C 384.99091,558.60796 378.33494,552.94075 367.14470,550.37360 C 368.62932,549.37044 370.20956,548.53316 372.27306,548.61086 z " + style="fill:url(#linearGradient3114);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3010" + d="M 407.81322,534.53959 C 404.14855,546.95148 402.55714,557.90172 402.14902,573.74768 C 412.65178,576.17185 420.08126,582.19505 428.59321,589.24575 C 427.66194,576.01528 428.87723,564.13642 433.16581,548.65853 C 426.39991,541.09313 417.95822,536.73849 407.81322,534.53959 z " + style="fill:url(#linearGradient3116);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3012" + d="M 402.14214,573.48394 C 403.87065,572.29523 405.61748,571.80983 407.37577,571.76402 C 407.74658,560.11245 409.57526,547.01533 412.59725,535.82249 C 410.88383,535.33931 409.52666,535.02279 407.81322,534.53960 C 404.15848,547.33244 402.26428,560.16737 402.14214,573.48394 z " + style="fill:url(#linearGradient3118);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3014" + d="M 407.46824,571.93756 C 414.29646,574.01762 423.02814,578.24740 428.27993,583.97546 C 428.45060,586.02377 428.42714,587.37330 428.59093,589.15784 C 420.18064,582.63234 413.54238,576.58852 402.14444,573.57187 C 403.70245,572.59287 405.35296,571.78741 407.46824,571.93756 z " + style="fill:url(#linearGradient3120);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3016" + d="M 443.79507,558.33897 C 440.34856,571.39960 439.02073,582.87237 439.07607,599.41690 C 450.10724,601.62714 458.04135,607.68559 467.13598,614.78315 C 465.76265,601.00802 466.66989,588.57786 470.67421,572.29949 C 463.38562,564.61195 454.44614,560.32503 443.79507,558.33897 z " + style="fill:url(#linearGradient3122);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3018" + d="M 439.06090,599.14195 C 440.82816,597.84928 442.63590,597.28983 444.46892,597.18863 C 444.50201,585.02125 446.01222,571.30142 448.82520,559.53217 C 447.02292,559.08007 445.59737,558.79107 443.79507,558.33899 C 440.37049,571.79675 438.78399,585.24501 439.06090,599.14195 z " + style="fill:url(#linearGradient3124);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3020" + d="M 444.57069,597.36688 C 451.75774,599.32969 460.99598,603.47752 466.64909,609.29416 C 466.88938,611.42596 466.90586,612.83466 467.13093,614.69150 C 458.15830,608.13879 451.04906,602.03481 439.06595,599.23359 C 440.66170,598.16491 442.35924,597.27445 444.57069,597.36688 z " + style="fill:url(#linearGradient3126);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + id="g3022"> + <path + sodipodi:nodetypes="ccccc" + id="path3024" + d="M 385.77538,591.50123 C 382.11071,603.91313 381.50841,617.83066 382.33666,633.92389 C 393.58123,638.32626 420.79266,653.25133 432.02463,661.04384 C 431.09335,647.81337 430.82499,633.95632 435.11357,618.47842 C 428.34767,610.91303 395.92038,594.68923 385.77538,591.50123 z " + style="fill:url(#radialGradient3128);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path3026" + d="M 409.78664,602.56421 C 405.50055,616.41157 404.85116,631.46531 406.00511,645.80721" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.59169549" /> + </g> + <g + id="g3028"> + <path + sodipodi:nodetypes="ccccc" + id="path3030" + d="M 518.90832,432.04928 C 514.74711,444.90008 513.29020,456.53285 512.43347,473.05529 C 523.82735,466.59608 528.90891,462.55525 539.35305,460.11723 C 539.74373,446.53799 542.08672,434.92871 545.72901,418.14385 C 533.36090,421.34559 528.93241,424.59332 518.90832,432.04928 z " + style="fill:url(#linearGradient3130);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3032" + d="M 512.94918,468.85078 C 518.45053,464.94044 526.13016,461.19433 534.96318,457.85160 C 536.58951,458.36417 537.59358,458.83169 539.47053,460.07148 C 527.42628,463.68688 520.78964,468.35435 512.61362,472.66709 L 512.94918,468.85078 z " + style="fill:url(#linearGradient3132);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3034" + d="M 535.05333,457.77926 C 536.47561,458.46918 537.89788,459.15910 539.32016,459.84903 C 540.13266,446.30303 542.18583,434.17494 545.47967,418.41347 C 543.65019,418.57379 542.61829,418.73411 541.05467,419.69201 C 537.90218,432.12190 535.99035,445.17213 535.05333,457.77926 z " + style="fill:url(#linearGradient3134);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3036" + d="M 565.76688,412.45716 C 561.86110,424.51914 560.49362,435.43786 559.68948,450.94610 C 570.38397,444.88338 575.15361,441.09058 584.95666,438.80222 C 585.32336,426.05651 587.52253,415.15984 590.94124,399.40528 C 579.33232,402.41049 575.17567,405.45887 565.76688,412.45716 z " + style="fill:url(#linearGradient3136);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3038" + d="M 560.17353,446.99968 C 565.33719,443.32936 572.54543,439.81320 580.83625,436.67566 C 582.36275,437.15676 583.30519,437.59559 585.06693,438.75928 C 573.76199,442.15275 567.53272,446.53372 559.85857,450.58173 L 560.17353,446.99968 z " + style="fill:url(#linearGradient3138);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3040" + d="M 580.92087,436.60776 C 582.25584,437.25533 583.59081,437.90290 584.92579,438.55048 C 585.68841,425.83597 587.61555,414.45234 590.70721,399.65835 C 588.99003,399.80883 588.02147,399.95931 586.55383,400.85841 C 583.59485,412.52532 581.80037,424.77449 580.92087,436.60776 z " + style="fill:url(#linearGradient3140);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3042" + d="M 504.62812,506.44829 C 500.46691,519.29909 499.01000,530.93186 498.15327,547.45430 C 509.54715,540.99509 514.62871,536.95426 525.07285,534.51624 C 525.46353,520.93700 527.80652,509.32772 531.44881,492.54286 C 519.08070,495.74460 514.65221,498.99233 504.62812,506.44829 z " + style="fill:url(#linearGradient3142);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3044" + d="M 498.66898,543.24979 C 504.17033,539.33945 511.84996,535.59334 520.68298,532.25061 C 522.30931,532.76318 523.31338,533.23070 525.19033,534.47049 C 513.14608,538.08589 506.50944,542.75336 498.33342,547.06610 L 498.66898,543.24979 z " + style="fill:url(#linearGradient3144);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3046" + d="M 520.77313,532.17827 C 522.19541,532.86819 523.61768,533.55811 525.03996,534.24804 C 525.85246,520.70204 527.90563,508.57395 531.19947,492.81248 C 529.36999,492.97280 528.33809,493.13312 526.77447,494.09102 C 523.62198,506.52091 521.71015,519.57114 520.77313,532.17827 z " + style="fill:url(#linearGradient3146);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3048" + d="M 551.48668,486.85617 C 547.58090,498.91815 546.21342,509.83687 545.40928,525.34511 C 556.10377,519.28239 560.87341,515.48959 570.67646,513.20123 C 571.04316,500.45552 573.24233,489.55885 576.66104,473.80429 C 565.05212,476.80950 560.89547,479.85788 551.48668,486.85617 z " + style="fill:url(#linearGradient3148);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3050" + d="M 545.89333,521.39869 C 551.05699,517.72837 558.26523,514.21221 566.55605,511.07467 C 568.08255,511.55577 569.02499,511.99460 570.78673,513.15829 C 559.48179,516.55176 553.25252,520.93273 545.57837,524.98074 L 545.89333,521.39869 z " + style="fill:url(#linearGradient3150);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3052" + d="M 566.64067,511.00677 C 567.97564,511.65434 569.31061,512.30191 570.64559,512.94949 C 571.40821,500.23498 573.33535,488.85135 576.42701,474.05736 C 574.70983,474.20784 573.74127,474.35832 572.27363,475.25742 C 569.31465,486.92433 567.52017,499.17350 566.64067,511.00677 z " + style="fill:url(#linearGradient3152);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3054" + d="M 496.82964,578.76149 C 492.66843,591.61229 491.21152,603.24506 490.35479,619.76750 C 501.74867,613.30829 506.83023,609.26746 517.27437,606.82944 C 517.66505,593.25020 520.00804,581.64092 523.65033,564.85606 C 511.28222,568.05780 506.85373,571.30553 496.82964,578.76149 z " + style="fill:url(#linearGradient3154);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3056" + d="M 490.87050,615.56299 C 496.37185,611.65265 504.05148,607.90654 512.88450,604.56381 C 514.51083,605.07638 515.51490,605.54390 517.39185,606.78369 C 505.34760,610.39909 498.71096,615.06656 490.53494,619.37930 L 490.87050,615.56299 z " + style="fill:url(#linearGradient3156);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3058" + d="M 512.97465,604.49147 C 514.39693,605.18139 515.81920,605.87131 517.24148,606.56124 C 518.05398,593.01524 520.10715,580.88715 523.40099,565.12568 C 521.57151,565.28600 520.53961,565.44632 518.97599,566.40422 C 515.82350,578.83411 513.91167,591.88434 512.97465,604.49147 z " + style="fill:url(#linearGradient3158);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3060" + d="M 543.68820,559.16937 C 539.78242,571.23135 538.41494,582.15007 537.61080,597.65831 C 548.30529,591.59559 553.07493,587.80279 562.87798,585.51443 C 563.24468,572.76872 565.44385,561.87205 568.86256,546.11749 C 557.25364,549.12270 553.09699,552.17108 543.68820,559.16937 z " + style="fill:url(#linearGradient3160);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3062" + d="M 538.09485,593.71189 C 543.25851,590.04157 550.46675,586.52541 558.75757,583.38787 C 560.28407,583.86897 561.22651,584.30780 562.98825,585.47149 C 551.68331,588.86496 545.45404,593.24593 537.77989,597.29394 L 538.09485,593.71189 z " + style="fill:url(#linearGradient3162);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3064" + d="M 558.84219,583.31997 C 560.17716,583.96754 561.51213,584.61511 562.84711,585.26269 C 563.60973,572.54818 565.53687,561.16455 568.62853,546.37056 C 566.91135,546.52104 565.94279,546.67152 564.47515,547.57062 C 561.51617,559.23753 559.72169,571.48670 558.84219,583.31997 z " + style="fill:url(#linearGradient3164);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/mainmenu/menu_back.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/mainmenu/menu_back.png differ diff -Nru lincity-ng-2.0/data/images/mainmenu/menu_back.svg lincity-ng-2.9~git20150314/data/images/mainmenu/menu_back.svg --- lincity-ng-2.0/data/images/mainmenu/menu_back.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/menu_back.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,3575 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:xml="http://www.w3.org/XML/1998/namespace" + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1024.0000px" + height="768.00000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu" + sodipodi:docname="menu_back.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/menu_back.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2542"> + <stop + id="stop2544" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop2546" + offset="1.0000000" + style="stop-color:#e2ecff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient6561"> + <stop + style="stop-color:#11c600;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop6563" /> + <stop + style="stop-color:#010c00;stop-opacity:0.98039216;" + offset="1.0000000" + id="stop6565" /> + </linearGradient> + <linearGradient + id="linearGradient2674"> + <stop + style="stop-color:#6a6a6a;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2676" /> + <stop + style="stop-color:#2e2e2e;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2678" /> + </linearGradient> + <linearGradient + id="linearGradient2660"> + <stop + style="stop-color:#9f9f9f;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2662" /> + <stop + style="stop-color:#595959;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2664" /> + </linearGradient> + <linearGradient + id="linearGradient28427"> + <stop + style="stop-color:#0fa900;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop28429" /> + <stop + style="stop-color:#085400;stop-opacity:0.97991967;" + offset="1.0000000" + id="stop28431" /> + </linearGradient> + <linearGradient + id="linearGradient23833"> + <stop + style="stop-color:#545454;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop23835" /> + <stop + style="stop-color:#949494;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop23837" /> + </linearGradient> + <linearGradient + id="linearGradient22939"> + <stop + style="stop-color:#e0d6b3;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop22941" /> + <stop + style="stop-color:#c6bc96;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop22943" /> + </linearGradient> + <linearGradient + id="linearGradient22931"> + <stop + style="stop-color:#c6bc96;stop-opacity:1;" + offset="0" + id="stop22933" /> + <stop + style="stop-color:#9f956f;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop22935" /> + </linearGradient> + <linearGradient + id="linearGradient19109"> + <stop + style="stop-color:#000000;stop-opacity:0.67871487;" + offset="0.0000000" + id="stop19111" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19113" /> + </linearGradient> + <linearGradient + id="linearGradient14361"> + <stop + style="stop-color:#c3cde9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14363" /> + <stop + style="stop-color:#698ef6;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14365" /> + </linearGradient> + <linearGradient + id="linearGradient12007"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12009" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12011" /> + </linearGradient> + <linearGradient + id="linearGradient11999"> + <stop + style="stop-color:#e2e2e2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12001" /> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12003" /> + </linearGradient> + <linearGradient + id="linearGradient11991"> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11993" /> + <stop + style="stop-color:#8b8b8b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11995" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient11997" + gradientTransform="matrix(0.842533,0.000000,0.000000,1.892543,26.43917,-29.74596)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient12005" + gradientTransform="matrix(0.818038,0.000000,0.000000,1.949213,26.43917,-29.74596)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient12013" + gradientTransform="matrix(1.671004,0.000000,0.000000,0.954234,26.43917,-29.74596)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient14437" + gradientTransform="matrix(0.964196,0.000000,0.000000,1.653741,26.43917,-29.74596)" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" + gradientUnits="userSpaceOnUse" + spreadMethod="pad" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient15961" + gradientTransform="matrix(1.510638,0.000000,0.000000,1.055534,26.43917,-29.74596)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient15969" + gradientTransform="matrix(0.711635,0.000000,0.000000,2.240656,26.43917,-29.74596)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient15977" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.551358,0.000000,0.000000,1.083986,54.27672,-17.11976)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient15979" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.730817,0.000000,0.000000,2.301053,54.27672,-17.11976)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient15981" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.990186,0.000000,0.000000,1.698318,54.27672,-17.11976)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient15989" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,78.14069,-12.23653)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient15991" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,78.14069,-12.23653)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient15993" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,78.14069,-12.23653)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16013" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.618321,-5.394730e-2,3.769483e-2,1.130777,56.34194,71.89187)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16015" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762363,-2.541363e-2,8.001749e-2,2.400380,56.34194,71.89187)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient16017" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.032928,-3.443300e-2,5.905777e-2,1.771626,56.34194,71.89187)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16019" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.550144,-6.132119e-2,4.284719e-2,1.083139,31.87589,68.85415)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16021" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.730245,-2.888733e-2,9.095472e-2,2.299254,31.87589,68.85415)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient16023" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.989412,-3.913949e-2,6.713013e-2,1.696989,31.87589,68.85415)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16025" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.508728,-7.593927e-2,5.306093e-2,1.054199,0.789503,59.90794)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16027" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.710735,-3.577338e-2,0.112636,2.237823,0.789503,59.90794)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient16029" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.962977,-4.846939e-2,8.313217e-2,1.651650,0.789503,59.90794)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16049" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,44.48813,152.7824)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16051" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,44.48813,152.7824)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient16053" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,44.48813,152.7824)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16055" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.550831,-4.041663e-2,2.824048e-2,1.083619,36.70750,135.0155)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16057" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.730570,-1.903956e-2,5.994802e-2,2.300273,36.70750,135.0155)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient16059" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.989848,-2.579676e-2,4.424532e-2,1.697741,36.70750,135.0155)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16061" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.507985,-8.950081e-2,6.253724e-2,1.053680,-2.690666,135.3850)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient16063" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.710385,-4.216225e-2,0.132753,2.236720,-2.690666,135.3850)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient16065" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.962502,-5.712573e-2,9.797925e-2,1.650836,-2.690666,135.3850)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient19117" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,26.43917,-29.74596)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient21393" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,26.43917,-29.74596)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient22165" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,19.44520,10.81907)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient22171" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-214.8070,-47.29036)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22931" + id="linearGradient22937" + gradientTransform="matrix(0.654723,0.000000,0.000000,2.435427,19.44520,10.81907)" + x1="92.894203" + y1="135.30980" + x2="247.58649" + y2="199.91158" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient22939" + id="linearGradient22945" + gradientTransform="matrix(0.652578,0.000000,0.000000,2.443434,19.44520,10.81907)" + x1="-45.389553" + y1="104.70185" + x2="42.257313" + y2="171.45183" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient22931" + id="radialGradient22961" + gradientTransform="matrix(1.369330,0.000000,0.000000,1.164460,19.44520,10.81907)" + cx="33.917580" + cy="134.69154" + fx="33.917580" + fy="134.69154" + r="101.66785" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient22969" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-317.4543,-194.2829)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient22971" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-317.4543,-194.2829)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient22973" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-317.4543,-194.2829)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient22981" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-357.3477,-175.1718)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient22983" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-357.3477,-175.1718)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient22985" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-357.3477,-175.1718)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient22999" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-362.8642,-94.58430)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23001" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-362.8642,-94.58430)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23003" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-362.8642,-94.58430)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23005" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-321.9816,-116.1682)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23007" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-321.9816,-116.1682)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23009" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-321.9816,-116.1682)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23023" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.606075,-0.205907,0.143875,1.122220,-396.9023,11.47477)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23025" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.756594,-9.699938e-2,0.305413,2.382215,-396.9023,11.47477)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23027" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.025112,-0.131424,0.225413,1.758220,-396.9023,11.47477)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23029" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.717241,-0.191901,0.134089,1.199896,-375.0624,7.047793)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23031" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.808962,-9.040137e-2,0.284638,2.547103,-375.0624,7.047793)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23033" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.096066,-0.122485,0.210081,1.879917,-375.0624,7.047793)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23047" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.607324,-0.195916,0.136893,1.123092,-393.6883,88.65435)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23049" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.757182,-9.229261e-2,0.290593,2.384068,-393.6883,88.65435)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23051" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.025909,-0.125048,0.214475,1.759586,-393.6883,88.65435)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23053" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.722194,-0.140686,9.830286e-2,1.203356,-361.4174,73.44542)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23055" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.811295,-6.627516e-2,0.208675,2.554449,-361.4174,73.44542)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23057" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.099226,-8.979644e-2,0.154015,1.885338,-361.4174,73.44542)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient23833" + id="linearGradient23831" + gradientTransform="matrix(1.709511,0.000000,0.000000,0.932741,19.44520,10.81907)" + x1="33.550251" + y1="611.94214" + x2="149.30901" + y2="864.99774" + gradientUnits="userSpaceOnUse" + spreadMethod="pad" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient23847" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,19.44520,10.81907)" + cx="72.217499" + cy="823.55896" + fx="72.217499" + fy="823.55896" + r="279.10022" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient28427" + id="radialGradient28433" + gradientTransform="matrix(1.883522,0.000000,0.000000,0.846568,19.44520,10.81907)" + cx="60.051296" + cy="776.96881" + fx="60.051296" + fy="776.96881" + r="247.83467" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient20306" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,2.835812,-2.835812)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient20310" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,2.835812,-2.835812)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21072" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,2.835812,-2.835812)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21838" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,81.37239,4.266576)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21840" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,81.37239,4.266576)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient21842" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,81.37239,4.266576)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21856" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,67.09219,78.66556)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21858" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,67.09219,78.66556)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient21860" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,67.09219,78.66556)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21862" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-11.44439,71.56316)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21864" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-11.44439,71.56316)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient21866" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-11.44439,71.56316)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21880" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,59.29371,150.9788)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21882" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,59.29371,150.9788)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient21884" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,59.29371,150.9788)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21886" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-19.24287,143.8764)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient21888" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-19.24287,143.8764)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient21890" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-19.24287,143.8764)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient3066" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,26.43917,-29.74596)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient3068" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.671004,0.000000,0.000000,0.954234,26.43917,-29.74596)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient3070" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818038,0.000000,0.000000,1.949213,26.43917,-29.74596)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient3072" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.842533,0.000000,0.000000,1.892543,26.43917,-29.74596)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3074" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,78.14069,-12.23653)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3076" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.964196,0.000000,0.000000,1.653741,26.43917,-29.74596)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3078" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.711635,0.000000,0.000000,2.240656,26.43917,-29.74596)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3080" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.510638,0.000000,0.000000,1.055534,26.43917,-29.74596)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3082" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.990186,0.000000,0.000000,1.698318,54.27672,-17.11976)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3084" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.730817,0.000000,0.000000,2.301053,54.27672,-17.11976)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3086" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.551358,0.000000,0.000000,1.083986,54.27672,-17.11976)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3088" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,78.14069,-12.23653)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3090" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,78.14069,-12.23653)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3092" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.962977,-4.846939e-2,8.313217e-2,1.651650,0.789503,59.90794)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3094" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.710735,-3.577338e-2,0.112636,2.237823,0.789503,59.90794)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3096" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.508728,-7.593927e-2,5.306093e-2,1.054199,0.789503,59.90794)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3098" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.989412,-3.913949e-2,6.713013e-2,1.696989,31.87589,68.85415)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3100" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.730245,-2.888733e-2,9.095472e-2,2.299254,31.87589,68.85415)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3102" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.550144,-6.132119e-2,4.284719e-2,1.083139,31.87589,68.85415)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3104" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.032928,-3.443300e-2,5.905777e-2,1.771626,56.34194,71.89187)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3106" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762363,-2.541363e-2,8.001749e-2,2.400380,56.34194,71.89187)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3108" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.618321,-5.394730e-2,3.769483e-2,1.130777,56.34194,71.89187)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3110" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.962502,-5.712573e-2,9.797925e-2,1.650836,-2.690666,135.3850)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3112" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.710385,-4.216225e-2,0.132753,2.236720,-2.690666,135.3850)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3114" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.507985,-8.950081e-2,6.253724e-2,1.053680,-2.690666,135.3850)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3116" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.989848,-2.579676e-2,4.424532e-2,1.697741,36.70750,135.0155)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3118" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.730570,-1.903956e-2,5.994802e-2,2.300273,36.70750,135.0155)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3120" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.550831,-4.041663e-2,2.824048e-2,1.083619,36.70750,135.0155)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3122" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,44.48813,152.7824)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3124" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,44.48813,152.7824)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3126" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,44.48813,152.7824)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient3128" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,26.43917,-29.74596)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3130" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,2.835812,-2.835812)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3132" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,2.835812,-2.835812)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3134" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,2.835812,-2.835812)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3136" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,81.37239,4.266576)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3138" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,81.37239,4.266576)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3140" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,81.37239,4.266576)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3142" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-11.44439,71.56316)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3144" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-11.44439,71.56316)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3146" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-11.44439,71.56316)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3148" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,67.09219,78.66556)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3150" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,67.09219,78.66556)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3152" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,67.09219,78.66556)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3154" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-19.24287,143.8764)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3156" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-19.24287,143.8764)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3158" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-19.24287,143.8764)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3160" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,59.29371,150.9788)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3162" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,59.29371,150.9788)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3164" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,59.29371,150.9788)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1614" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-328.6479,-185.4612)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1616" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-328.5851,-185.2756)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1630" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-370.1828,-163.8027)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1632" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-370.1200,-163.6171)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1634" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-370.0887,-163.9445)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1638" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-328.5538,-185.6030)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1652" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-377.7191,-88.67766)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1654" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-377.6563,-88.49206)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1656" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-377.6250,-88.81946)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1658" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-337.2476,-108.9183)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1660" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-337.1848,-108.7327)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1662" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-337.1535,-109.0601)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1676" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-382.8589,-9.806639)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1678" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-382.7961,-9.621039)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1680" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-382.7648,-9.948439)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1682" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-344.5143,-30.04723)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1684" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-344.4515,-29.86163)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1686" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-344.4202,-30.18903)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1700" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-387.8217,71.72296)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1702" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-387.7589,71.90856)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1704" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-387.7276,71.58116)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1706" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-350.5405,51.48237)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient1708" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-350.4777,51.66797)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient1710" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-350.4464,51.34057)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient2650" + gradientTransform="scale(1.134571,0.881390)" + x1="189.61230" + y1="42.335560" + x2="216.40237" + y2="142.47325" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2660" + id="linearGradient2658" + gradientTransform="scale(0.520682,1.920559)" + x1="274.13098" + y1="158.31482" + x2="671.82703" + y2="219.19023" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2674" + id="linearGradient2672" + gradientTransform="scale(0.532689,1.877267)" + x1="512.29236" + y1="136.96120" + x2="838.57269" + y2="227.03262" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3183" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,-110.1728,-188.5776)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3187" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,-107.1101,-197.9937)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3191" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,-107.1364,-197.9168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3199" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.785944,0.000000,0.000000,2.474629,-178.1455,-267.5004)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3201" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.668380,0.000000,0.000000,1.165754,-178.1184,-267.5796)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3203" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064879,0.000000,0.000000,1.826426,-181.2740,-257.8777)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3231" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,-110.1728,-188.5776)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3233" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,-107.1101,-197.9937)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3235" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,-107.1364,-197.9168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3237" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064879,0.000000,0.000000,1.826426,-181.2740,-257.8777)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3239" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.668380,0.000000,0.000000,1.165754,-178.1184,-267.5796)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3241" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.785944,0.000000,0.000000,2.474629,-178.1455,-267.5004)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3259" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,-110.1728,-188.5776)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3261" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,-107.1101,-197.9937)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3263" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,-107.1364,-197.9168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3265" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064879,0.000000,0.000000,1.826426,-181.2740,-257.8777)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3267" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.668380,0.000000,0.000000,1.165754,-178.1184,-267.5796)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3269" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.785944,0.000000,0.000000,2.474629,-178.1455,-267.5004)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3287" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,-110.1728,-188.5776)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3289" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,-107.1101,-197.9937)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3291" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,-107.1364,-197.9168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3293" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.064879,0.000000,0.000000,1.826426,-181.2740,-257.8777)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3295" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.668380,0.000000,0.000000,1.165754,-178.1184,-267.5796)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3297" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.785944,0.000000,0.000000,2.474629,-178.1455,-267.5004)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient3301" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-128.3170,-66.67465)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3326" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-168.7621,-198.0006)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3328" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-187.3290,-182.3049)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3330" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-180.0702,-198.7752)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3340" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-168.7621,-198.0006)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3342" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-187.3290,-182.3049)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3344" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-180.0702,-198.7752)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3354" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-168.7621,-198.0006)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3356" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-187.3290,-182.3049)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3358" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-180.0702,-198.7752)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3382" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-168.7621,-198.0006)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3384" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-187.3290,-182.3049)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3386" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-180.0702,-198.7752)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3424" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-168.7621,-198.0006)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3426" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-187.3290,-182.3049)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3428" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-180.0702,-198.7752)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient3438" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-168.7621,-198.0006)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3440" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-187.3290,-182.3049)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient3442" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-180.0702,-198.7752)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient3510" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.824921,0.547969)" + cx="192.02272" + cy="925.75702" + fx="192.02272" + fy="925.75702" + r="213.16005" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient6561" + id="radialGradient6567" + gradientTransform="scale(1.087331,0.919683)" + cx="114.47796" + cy="729.90015" + fx="114.47796" + fy="729.90015" + r="34.323917" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient8853" + gradientTransform="scale(1.383128,0.722999)" + cx="92.820000" + cy="965.79822" + fx="92.820000" + fy="965.79822" + r="16.362335" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4799" + id="radialGradient5427" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.646313,0.607418)" + cx="233.71786" + cy="981.06078" + fx="233.71786" + fy="981.06078" + r="142.40484" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4799" + id="radialGradient4804" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.646313,0.607418)" + cx="233.71786" + cy="981.06078" + fx="233.71786" + fy="981.06078" + r="142.40484" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4799" + id="radialGradient4802" + gradientTransform="scale(1.646313,0.607418)" + cx="233.71786" + cy="981.06078" + fx="233.71786" + fy="981.06078" + r="142.40484" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2310" + id="linearGradient2313" + gradientTransform="matrix(0.408580,0.000000,0.000000,0.767213,-1141.737,-1654.322)" + x1="344.15223" + y1="387.38036" + x2="556.06579" + y2="387.38036" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient1683" + id="radialGradient1686" + gradientTransform="matrix(0.610510,0.000000,0.000000,0.471021,-1151.160,-1644.294)" + cx="276.57715" + cy="192.13182" + fx="276.57715" + fy="192.13182" + r="260.36972" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient1683"> + <stop + style="stop-color:#0cff00;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1684" /> + <stop + style="stop-color:#034000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1685" /> + </linearGradient> + <linearGradient + id="linearGradient2310"> + <stop + style="stop-color:#b2721c;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2311" /> + <stop + style="stop-color:#583200;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2312" /> + </linearGradient> + <linearGradient + id="linearGradient4799"> + <stop + style="stop-color:#000000;stop-opacity:0.60000002;" + offset="0.0000000" + id="stop4800" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop4801" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="787.10168" + fy="473.20316" + fx="823.91541" + cy="473.20316" + cx="823.91541" + gradientTransform="scale(1.163236,0.859671)" + id="radialGradient2550" + xlink:href="#linearGradient2542" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.49218750" + inkscape:cx="512.00000" + inkscape:cy="384.00000" + inkscape:document-units="px" + inkscape:current-layer="layer1" + inkscape:window-width="849" + inkscape:window-height="546" + inkscape:window-x="0" + inkscape:window-y="0" + showguides="true" + inkscape:guide-bbox="true" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:bevel;stroke-linecap:round;stroke-width:1.2557396;stroke:none;fill-rule:nonzero;fill-opacity:1.0;fill:url(#radialGradient2550)" + id="rect16067" + width="1024.2279" + height="767.79279" + x="-0.017658509" + y="-0.016601585" + rx="0.0000000" + ry="0.0000000" /> + <g + id="floor"> + <path + style="fill:url(#radialGradient28433);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.31568675pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M -14.184093,790.22741 L -21.107772,503.38931 C 187.92136,520.53365 430.61305,485.90397 605.97965,554.82235 C 684.81096,585.80275 660.70968,744.06956 741.48592,803.08567 L -14.184093,790.22741 z " + id="grass" + sodipodi:nodetypes="ccscc" /> + <path + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;fill:url(#linearGradient23831);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.0000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-opacity:1.0000000" + d="M 175.02268,606.79894 C 186.39730,617.43172 190.09942,623.09803 197.51764,632.49445 C 217.46443,612.87737 232.98828,594.27737 254.91325,580.10032 C 262.00179,588.50763 280.40192,611.69543 287.49046,620.10274 C 269.35702,627.02642 249.49266,650.02292 234.32650,665.10664 C 246.69020,683.40493 261.52666,698.24140 281.80316,711.09965 C 317.32822,657.11145 366.23636,644.48805 411.65239,624.12913 C 427.64279,633.19586 445.61139,642.50984 461.60178,651.57657 C 411.73481,666.57788 354.17207,706.23659 330.02162,739.78346 C 354.99632,757.50478 383.56113,772.45008 404.07089,795.11690 C 368.62826,795.11690 380.41499,818.11340 344.97236,818.11340 C 333.21905,785.54320 238.11803,744.72895 219.49004,721.97972 C 174.32128,742.25621 161.79273,784.29283 105.49663,803.58021 C 78.131615,802.42626 50.766601,801.27232 23.401588,800.11837 C 99.067501,772.01153 115.14033,718.93000 182.15165,688.35042 C 171.43642,664.69452 153.09771,649.00040 134.46972,630.53726 C 148.48193,623.28387 161.01049,614.05231 175.02268,606.79894 z " + id="road" + sodipodi:nodetypes="ccccccccccccccccc" /> + </g> + <path + style="fill:url(#radialGradient3510);fill-opacity:1.0;fill-rule:evenodd;stroke:none;stroke-width:0.31000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 292.77455,651.57475 C 347.79379,645.06076 581.30110,596.50093 631.37486,603.83431 C 658.04163,555.71870 670.85886,529.72459 686.39653,492.98805 C 676.52569,483.15709 657.25639,462.38827 629.67454,437.21085 C 597.64174,436.76085 523.31118,419.92907 487.72381,423.88365 C 375.99612,487.18220 334.61794,495.95679 301.02889,530.20063 L 292.77455,651.57475 z " + id="path3508" + sodipodi:nodetypes="ccccccc" /> + <g + id="Copyright"> + <text + xml:space="preserve" + style="font-size:22.729446;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:0.55017298;stroke:none;stroke-width:0.50000000;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;font-family:Sans;text-anchor:start;writing-mode:lr-tb" + x="12.294374" + y="757.70844" + id="text23841" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan23843" + x="12.294374" + y="757.70844">(c) 2004-2009 Lincity Dev Team, This is free software</tspan></text> + <text + xml:space="preserve" + style="font-size:22.729446;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;fill:#000000;fill-opacity:1.0000000;stroke:#ffffff;stroke-width:0.63137352;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000;font-family:Sans;text-anchor:start;writing-mode:lr-tb" + x="10.908332" + y="756.3562" + id="text1504" + sodipodi:linespacing="100%"><tspan + sodipodi:role="line" + id="tspan1506" + x="10.908332" + y="756.35620">(c) 2004-2009 Lincity Dev Team, This is free software</tspan></text> + </g> + <g + id="LinCity"> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1449" + d="M 674.80639,26.179618 C 673.20472,44.103194 673.89393,57.134166 671.70559,69.841125 C 668.85961,86.367873 660.20108,113.42412 650.61203,122.98226 C 645.57355,128.45627 639.62626,131.54895 633.08750,135.22725 C 631.63560,136.04402 630.03178,136.65067 628.51472,137.33854 C 628.27025,137.44938 627.57069,137.83991 627.78422,137.67726 C 631.01660,135.21485 633.96865,130.61176 638.20289,130.50036 C 652.70301,129.17406 667.14240,130.76476 681.18263,134.46334 C 692.91216,137.87518 704.58058,142.38719 714.43771,149.75187 C 719.71561,154.07281 719.40459,151.27519 706.91047,158.06445 C 706.34085,158.37399 706.46270,156.84620 706.19235,156.25697 C 705.18253,154.05640 704.09404,151.89072 703.06503,149.69895 C 699.42958,141.50317 689.24957,129.53371 693.39175,117.23135 L 703.84212,112.46550 C 698.58190,129.59785 707.32200,137.01019 711.65903,144.77276 C 712.72088,146.51704 713.79648,148.24112 715.09661,149.82144 C 715.49197,150.30204 715.91474,150.78168 716.38044,151.19805 C 716.59195,151.38723 717.35995,151.46621 717.12066,151.61878 C 703.13031,160.53839 709.63977,160.39524 705.48723,155.30485 C 697.56703,146.69612 685.95039,142.19567 675.11715,138.63153 C 660.37559,134.59663 644.46814,133.03040 629.53931,137.08469 C 623.83485,139.00258 627.30639,137.53326 636.89683,130.58607 C 637.78416,129.94327 641.18083,128.82082 640.44932,129.28300 C 638.45254,130.54459 636.39552,131.70866 634.34810,132.88612 C 633.27931,133.50073 635.86214,132.14599 638.61581,130.03340 C 641.88001,127.52921 644.77511,124.57698 647.28204,121.31800 C 657.17364,107.37276 661.27505,90.353818 663.97278,73.633557 C 666.21580,59.730864 666.30747,57.715170 662.60043,32.482403 L 674.80639,26.179618 z " + sodipodi:nodetypes="csccccccccccccccccccccccccscc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1451" + d="M 731.16367,91.881031 C 729.85193,97.733445 729.33433,103.76040 728.76029,109.72389 C 727.65589,122.67788 726.88145,135.70860 727.43011,148.71218 C 727.54439,150.58761 727.47910,149.68961 727.62078,151.40654 L 718.23428,156.15989 C 718.46536,154.25205 718.34793,155.24563 718.58495,153.17892 C 720.00958,140.03149 720.80334,126.81590 721.06018,113.59502 C 721.11322,108.24585 721.42524,102.66430 720.30771,97.412378 L 731.16367,91.881031 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1453" + d="M 731.97512,77.092466 C 731.48391,79.151493 731.33061,81.277767 731.20989,83.386813 C 731.13855,84.669679 731.11329,85.954320 731.10256,87.238906 L 721.04629,92.315938 C 721.13102,91.012280 721.20830,89.708032 721.25427,88.402341 C 721.31942,86.487472 721.43749,84.515187 721.11915,82.623815 L 731.97512,77.092466 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1466" + d="M 749.17045,82.620752 C 747.69758,89.689483 747.68571,97.036566 747.51511,104.23306 C 747.19766,117.68301 747.65553,131.13002 748.06478,144.57192 C 748.05746,147.98498 748.40169,151.48494 747.57774,154.83355 L 735.52924,159.68164 C 738.54039,158.77368 737.76734,151.63238 738.48117,149.41598 C 739.72851,135.82010 739.47457,122.13432 739.14739,108.50280 C 738.90772,101.90168 738.93247,95.069074 737.37247,88.632110 L 749.17045,82.620752 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1470" + d="M 738.54733,103.24392 C 738.64772,102.02452 739.16229,100.92351 739.73154,99.855620 C 745.71405,91.386209 756.39500,85.270109 766.71025,84.200962 C 780.40083,83.721702 784.90353,97.873569 786.54713,109.03929 C 787.78916,119.77566 782.76154,143.37427 776.25902,154.25508 L 767.24856,158.53293 C 773.64652,142.79515 780.26559,124.07454 778.66279,113.22337 C 776.60792,102.39228 771.08997,89.555698 758.00147,90.700092 C 755.53419,91.080815 753.21578,91.667955 750.93147,92.700399 C 750.39279,92.943832 748.83594,93.791990 749.34180,93.486202 C 765.90715,83.472096 753.30556,90.253408 751.02466,94.754406 C 750.66049,95.519621 750.24012,96.358384 750.36488,97.222598 L 738.54733,103.24392 z " + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1478" + d="M 879.86009,68.558703 C 879.53973,65.710702 875.08350,62.141957 872.53439,60.193302 C 856.44825,48.959808 836.09113,48.582990 818.46331,56.179960 C 805.88799,62.633407 794.24319,82.622344 794.39169,103.83266 C 795.12939,120.89440 805.03778,134.30832 819.98378,141.85074 C 837.32382,149.61401 856.69878,147.35161 874.09590,141.05886 C 877.62528,139.68318 881.06652,138.08409 884.37946,136.24645 C 885.36314,135.70080 888.29360,134.03012 887.29110,134.54027 C 876.50699,140.02761 882.92604,136.84395 885.58463,134.68349 L 895.04197,130.89211 C 886.80431,137.30587 877.40645,142.27938 867.69175,146.05066 C 850.01115,152.06749 830.16178,154.27473 812.57436,146.72407 C 797.17213,139.02575 787.30149,125.06984 787.14251,107.51991 C 787.66112,82.354985 801.01543,62.219408 824.07698,51.746995 C 842.71133,43.978845 863.22213,45.302226 881.07409,54.711727 C 884.86612,56.818355 888.95414,59.064170 891.67763,62.537378 L 879.86009,68.558703 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1484" + d="M 890.98224,88.478526 C 890.28495,91.679124 889.97848,94.941049 889.63236,98.178514 C 888.36191,112.20554 887.88447,126.28042 887.65755,140.34282 C 887.79128,144.03654 887.32128,147.78164 887.84747,151.46208 L 876.34422,155.92105 C 879.13313,152.50656 878.15866,147.46236 879.45247,143.69190 C 881.35177,129.84976 881.79462,115.86030 880.48666,101.96726 C 880.18020,99.101062 879.90391,96.192733 879.16469,93.378820 L 890.98224,88.478526 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1486" + d="M 893.84602,67.021368 C 893.32350,68.697185 892.49210,70.958448 892.02969,72.877211 C 891.17418,76.838365 890.48661,80.881734 890.46476,84.945902 L 879.33024,90.516404 C 879.88989,86.381258 880.56331,82.262010 881.18711,78.136316 C 881.37791,76.908266 881.74461,73.406632 882.02860,73.042693 L 893.84602,67.021368 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1490" + d="M 915.61136,46.858420 C 914.37324,53.183960 914.08079,59.695486 913.66206,66.118654 C 912.37949,90.037582 912.56776,114.02710 913.74628,137.94650 C 913.93178,141.56615 913.92029,141.50784 914.12814,144.96826 C 914.26856,147.30346 914.41289,149.64060 914.62793,151.97043 C 914.68046,152.53920 914.79398,153.67428 914.91281,154.30283 C 914.96951,154.60248 915.51160,155.01447 915.24175,155.15658 C 903.23972,161.47697 903.48747,164.76316 903.48811,158.04163 L 914.08432,152.48806 C 915.58459,158.38690 918.30139,152.08566 903.34857,160.31093 C 903.01230,160.49589 904.07402,159.92252 904.23212,159.57283 C 904.58265,158.79769 904.88243,157.55904 905.04937,156.77804 C 906.12270,151.75527 906.40581,146.59554 906.78943,141.48881 C 908.03033,117.68301 907.74255,93.787646 906.03709,70.012553 C 905.52567,64.298704 905.15695,58.460545 903.79394,52.879746 L 915.61136,46.858420 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1492" + d="M 904.03513,124.57025 C 906.82024,125.61746 911.17710,126.83426 913.87508,127.18075 C 923.52563,128.29296 933.17099,127.49016 942.86422,126.63510 L 950.28210,126.37465 C 942.23790,131.15847 941.04119,133.67222 933.66839,133.37992 C 924.07555,133.35272 914.62149,133.65743 905.04886,133.10609 C 901.47402,132.89023 895.05750,132.77720 892.21771,130.59157 L 904.03513,124.57025 z " + sodipodi:nodetypes="cccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1496" + d="M 979.55674,99.509861 C 977.22218,105.55669 975.12602,111.69609 972.99463,117.81624 C 965.89824,138.44577 957.69266,159.85530 940.60491,174.32142 C 930.77266,181.62396 918.28258,189.07642 906.02509,183.47843 L 915.21915,177.41043 C 919.67084,179.68911 924.45211,180.06111 929.28704,178.70747 C 932.58483,177.78414 934.69361,176.48350 934.47806,176.64940 C 933.01138,177.77820 931.37650,178.68981 929.70879,179.49237 C 928.60995,180.02116 931.74371,178.14790 932.76111,177.47566 C 950.64514,163.51967 960.17156,142.45108 966.13614,121.05193 C 968.07547,114.08088 969.83662,107.08259 971.07159,99.949884 C 971.08535,99.870350 971.47807,95.978066 971.48691,95.973337 C 975.37806,93.902022 979.36291,92.011523 983.30091,90.030615 C 983.30091,90.030615 980.32576,97.518022 979.55674,99.509861 z " + sodipodi:nodetypes="cccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1502" + d="M 919.49974,98.740702 C 927.16739,93.589136 929.97460,90.786311 937.99128,91.979510 C 948.36298,93.940678 956.42233,100.87843 961.47105,109.91508 C 966.21102,119.45797 966.74693,130.47127 963.77872,140.62785 C 963.47137,141.68879 963.02877,142.69567 962.55625,143.69026 L 951.58172,148.54436 C 952.31386,147.56143 953.00079,146.55422 953.49327,145.42329 C 957.73875,135.66884 957.66563,124.41817 952.89169,114.85727 C 947.75800,105.85771 939.12977,99.311465 928.52472,98.746124 L 919.49974,98.740702 z " + sodipodi:nodetypes="cccccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path8379" + d="M 621.93884,154.71769 C 642.96597,157.90784 671.03962,159.58347 692.77149,161.01458 C 790.95563,166.94131 886.00803,172.26351 984.62263,175.32268 C 989.22875,175.47062 993.83500,175.61856 998.44112,175.76652 L 986.16912,180.35443 C 982.22442,179.96204 978.27960,179.56964 974.33491,179.17724 C 877.05136,170.61033 778.11349,168.27459 679.63943,167.64087 C 652.68294,167.52557 624.68569,167.13004 598.11296,168.27664 L 621.93884,154.71769 z " + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9139" + d="M 676.28456,26.890209 C 674.68289,44.813791 675.37210,57.844760 673.18389,70.551720 C 670.33778,87.078464 661.67925,114.13471 652.09033,123.69285 C 647.05172,129.16685 641.10456,132.25954 634.56567,135.93784 C 633.11377,136.75461 631.50995,137.36126 629.99302,138.04913 C 629.74855,138.15997 629.04899,138.55050 629.26252,138.38785 C 632.49477,135.92544 635.44682,131.32235 639.68106,131.21095 C 654.18131,129.88465 668.62057,131.47534 682.66080,135.17393 C 694.39033,138.58577 706.05887,143.09779 715.91588,150.46247 C 721.19378,154.78340 720.88289,151.98579 708.38877,158.77505 C 707.81914,159.08458 707.94100,157.55680 707.67064,156.96756 C 706.66070,154.76700 705.57234,152.60131 704.54320,150.40955 C 700.90775,142.21377 690.72774,130.24429 694.86993,117.94195 L 705.32029,113.17609 C 700.06007,130.30844 708.80030,137.72077 713.13720,145.48336 C 714.19905,147.22764 715.27478,148.95172 716.57491,150.53204 C 716.97027,151.01264 717.39304,151.49228 717.85861,151.90865 C 718.07025,152.09783 718.83825,152.17680 718.59884,152.32938 C 704.60848,161.24898 711.11794,161.10584 706.96540,156.01545 C 699.04532,147.40671 687.42856,142.90627 676.59532,139.34212 C 661.85376,135.30721 645.94631,133.74099 631.01761,137.79528 C 625.31315,139.71316 628.78457,138.24384 638.37500,131.29665 C 639.26246,130.65385 642.65913,129.53141 641.92762,129.99359 C 639.93083,131.25517 637.87382,132.41925 635.82628,133.59671 C 634.75749,134.21133 637.34031,132.85659 640.09411,130.74399 C 643.35818,128.23981 646.25328,125.28757 648.76034,122.02859 C 658.65194,108.08335 662.75322,91.064413 665.45095,74.344153 C 667.69409,60.441460 667.78564,58.425762 664.07872,33.192996 L 676.28456,26.890209 z " + sodipodi:nodetypes="csccccccccccccccccccccccccscc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9141" + d="M 732.64185,92.591630 C 731.33023,98.444033 730.81250,104.47100 730.23846,110.43447 C 729.13419,123.38848 728.35974,136.41919 728.90828,149.42278 C 729.02256,151.29821 728.95728,150.40021 729.09908,152.11714 L 719.71258,156.87048 C 719.94354,154.96265 719.82623,155.95623 720.06312,153.88952 C 721.48775,140.74207 722.28151,127.52648 722.53848,114.30561 C 722.59152,108.95644 722.90354,103.37490 721.78601,98.122967 L 732.64185,92.591630 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9143" + d="M 733.45329,77.803057 C 732.96208,79.862092 732.80891,81.988356 732.68806,84.097409 C 732.61684,85.380271 732.59146,86.664914 732.58085,87.949494 L 722.52459,93.026533 C 722.60919,91.722873 722.68647,90.418632 722.73256,89.112939 C 722.79760,87.198071 722.91566,85.225787 722.59745,83.334407 L 733.45329,77.803057 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9145" + d="M 750.64874,83.331351 C 749.17588,90.400082 749.16401,97.747161 748.99341,104.94366 C 748.67595,118.39361 749.13383,131.84061 749.54308,145.28252 C 749.53576,148.69557 749.87998,152.19554 749.05591,155.54415 L 737.00741,160.39224 C 740.01856,159.48428 739.24563,152.34298 739.95946,150.12658 C 741.20668,136.53070 740.95287,122.84492 740.62556,109.21340 C 740.38589,102.61227 740.41064,95.779662 738.85077,89.342708 L 750.64874,83.331351 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9147" + d="M 740.02551,103.95452 C 740.12602,102.73511 740.64046,101.63411 741.20971,100.56622 C 747.19235,92.096797 757.87317,85.980708 768.18843,84.911552 C 781.87900,84.432302 786.38171,98.584160 788.02542,109.74989 C 789.26734,120.48626 784.23971,144.08487 777.73732,154.96568 L 768.72686,159.24353 C 775.12470,143.50575 781.74389,124.78513 780.14096,113.93396 C 778.08622,103.10287 772.56814,90.266294 759.47977,91.410684 C 757.01236,91.791415 754.69408,92.378554 752.40964,93.410989 C 751.87096,93.654421 750.31424,94.502583 750.81997,94.196796 C 767.38532,84.182695 754.78386,90.964000 752.50284,95.464998 C 752.13879,96.230210 751.71829,97.068977 751.84305,97.933189 L 740.02551,103.95452 z " + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9149" + d="M 881.33839,69.269299 C 881.01790,66.421299 876.56179,62.852549 874.01256,60.903891 C 857.92655,49.670405 837.56930,49.293589 819.94148,56.890552 C 807.36616,63.343998 795.72136,83.332942 795.86986,104.54325 C 796.60756,121.60499 806.51595,135.01890 821.46208,142.56134 C 838.80200,150.32461 858.17695,148.06221 875.57420,141.76946 C 879.10345,140.39377 882.54482,138.79468 885.85763,136.95705 C 886.84131,136.41138 889.77190,134.74072 888.76927,135.25087 C 877.98516,140.73820 884.40421,137.55453 887.06280,135.39409 L 896.52014,131.60270 C 888.28261,138.01646 878.88462,142.98998 869.16993,146.76126 C 851.48932,152.77809 831.63995,154.98533 814.05253,147.43467 C 798.65043,139.73633 788.77966,125.78043 788.62068,108.23050 C 789.13942,83.065580 802.49373,62.930006 825.55528,52.457591 C 844.18951,44.689436 864.70031,46.012820 882.55227,55.422318 C 886.34429,57.528947 890.43231,59.774767 893.15593,63.247966 L 881.33839,69.269299 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9151" + d="M 892.46054,89.189120 C 891.76325,92.389717 891.45678,95.651645 891.11053,98.889114 C 889.84008,112.91614 889.36277,126.99101 889.13572,141.05343 C 889.26945,144.74714 888.79945,148.49223 889.32564,152.17267 L 877.82252,156.63165 C 880.61130,153.21716 879.63696,148.17296 880.93077,144.40250 C 882.82994,130.56034 883.27279,116.57089 881.96484,102.67785 C 881.65837,99.811651 881.38220,96.903330 880.64299,94.089412 L 892.46054,89.189120 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9153" + d="M 895.32432,67.731968 C 894.80167,69.407785 893.97028,71.669036 893.50786,73.587805 C 892.65247,77.548954 891.96478,81.592333 891.94294,85.656497 L 880.80841,91.226992 C 881.36819,87.091849 882.04161,82.972604 882.66528,78.846907 C 882.85608,77.618860 883.22278,74.117225 883.50678,73.753288 L 895.32432,67.731968 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9155" + d="M 917.08966,47.569017 C 915.85154,53.894559 915.55896,60.406078 915.14036,66.829243 C 913.85766,90.748171 914.04593,114.73769 915.22446,138.65709 C 915.40995,142.27675 915.39846,142.21844 915.60644,145.67886 C 915.74673,148.01406 915.89106,150.35120 916.10623,152.68103 C 916.15864,153.24980 916.27216,154.38488 916.39111,155.01343 C 916.44780,155.31308 916.98990,155.72507 916.72005,155.86718 C 904.71789,162.18757 904.96565,165.47376 904.96628,158.75223 L 915.56249,153.19866 C 917.06276,159.09750 919.77956,152.79626 904.82674,161.02153 C 904.49047,161.20649 905.55219,160.63312 905.71041,160.28342 C 906.06095,159.50829 906.36060,158.26963 906.52754,157.48864 C 907.60100,152.46587 907.88398,147.30614 908.26760,142.19941 C 909.50850,118.39361 909.22072,94.498239 907.51526,70.723150 C 907.00385,65.009296 906.63512,59.171137 905.27211,53.590338 L 917.08966,47.569017 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9157" + d="M 905.51343,125.28084 C 908.29841,126.32806 912.65527,127.54484 915.35338,127.89134 C 925.00380,129.00354 934.64917,128.20075 944.34252,127.34568 L 951.76027,127.08524 C 943.71607,131.86906 942.51936,134.38282 935.14656,134.09051 C 925.55385,134.06332 916.09979,134.36802 906.52703,133.81668 C 902.95232,133.60083 896.53580,133.48778 893.69588,131.30216 L 905.51343,125.28084 z " + sodipodi:nodetypes="cccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9159" + d="M 981.03491,100.22045 C 978.70047,106.26728 976.60431,112.40668 974.47280,118.52684 C 967.37641,139.15635 959.17096,160.56590 942.08308,175.03202 C 932.25083,182.33456 919.76075,189.78702 907.50326,184.18903 L 916.69732,178.12103 C 921.14914,180.39970 925.93040,180.77171 930.76521,179.41807 C 934.06313,178.49474 936.17191,177.19409 935.95636,177.35999 C 934.48968,178.48880 932.85480,179.40040 931.18709,180.20297 C 930.08825,180.73176 933.22188,178.85850 934.23940,178.18626 C 952.12344,164.23027 961.64985,143.16167 967.61431,121.76253 C 969.55364,114.79147 971.31492,107.79319 972.54976,100.66048 C 972.56352,100.58094 972.95624,96.688663 972.96520,96.683928 C 976.85636,94.612619 980.84108,92.722122 984.77909,90.741213 C 984.77909,90.741213 981.80393,98.228621 981.03491,100.22045 z " + sodipodi:nodetypes="cccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9161" + d="M 920.97791,99.451301 C 928.64569,94.299735 931.45277,91.496904 939.46945,92.690099 C 949.84128,94.651271 957.90051,101.58902 962.94935,110.62568 C 967.68932,120.16856 968.22510,131.18186 965.25702,141.33844 C 964.94954,142.39939 964.50695,143.40627 964.03443,144.40086 L 953.06002,149.25496 C 953.79203,148.27202 954.47897,147.26482 954.97144,146.13389 C 959.21705,136.37943 959.14381,125.12876 954.36999,115.56787 C 949.23617,106.56831 940.60807,100.02206 930.00289,99.456718 L 920.97791,99.451301 z " + sodipodi:nodetypes="cccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9163" + d="M 623.41701,155.42829 C 644.44414,158.61844 672.51779,160.29407 694.24979,161.72518 C 792.43393,167.65191 887.48620,172.97411 986.10093,176.03328 C 990.70705,176.18122 995.31317,176.32916 999.91930,176.47712 L 987.64729,181.06503 C 983.70259,180.67263 979.75790,180.28024 975.81308,179.88784 C 878.52966,171.32093 779.59166,168.98519 681.11773,168.35147 C 654.16111,168.23617 626.16399,167.84064 599.59118,168.98724 L 623.41701,155.42829 z " + sodipodi:nodetypes="ccccccccc" /> + </g> + <g + id="author"> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11198" + d="M 981.08152,756.74048 C 981.02851,756.68579 981.26870,756.76777 981.31051,756.77571 C 982.58673,756.95160 983.89068,756.81875 985.15043,756.58424 C 985.70702,756.46820 986.26452,756.32931 986.78453,756.09450 C 987.03296,755.98233 987.24264,755.84960 987.12166,755.91805 C 985.34804,756.92160 986.49181,756.44857 986.50618,756.13170 C 985.84441,755.62596 984.38426,755.82499 983.61783,755.90319 C 982.77759,756.00912 981.93189,756.16776 981.14769,756.49835 C 980.80930,756.64100 980.59874,756.77274 980.66037,756.73589 C 980.84767,756.62385 981.03592,756.51295 981.22981,756.41277 C 981.29860,756.37720 981.09940,756.49647 981.03643,756.54157 C 980.87419,756.65782 980.84275,756.69279 980.69530,756.82423 C 979.94481,757.53307 979.80730,758.52128 980.12801,759.47045 C 980.58627,760.66975 981.77385,761.05956 982.96362,761.05668 C 983.74554,761.02041 984.51848,760.82991 985.22468,760.49066 C 985.32046,760.44467 985.59726,760.28684 985.50779,760.34418 C 984.50112,760.98950 985.28519,760.45368 985.46945,760.30195 C 985.63976,760.16165 985.78460,760.00610 985.92581,759.83761 C 986.02742,759.71493 986.09881,759.57570 986.16413,759.43194 L 987.11733,759.00000 C 987.03189,759.16254 986.94081,759.32078 986.81890,759.45981 C 985.69892,760.73161 983.96134,761.42396 982.29717,761.54171 C 981.04594,761.55851 979.78096,761.20381 979.28630,759.93499 C 978.94531,758.95598 979.03811,757.93289 979.81326,757.18438 C 981.04267,756.05891 982.65484,755.59848 984.27096,755.41811 C 985.07896,755.33037 986.82768,755.07292 987.52378,755.56933 C 987.59275,755.74558 987.48788,755.88224 987.33169,755.97593 C 986.41616,756.52506 985.57953,756.94644 984.50938,757.06715 C 983.15528,757.28714 981.78437,757.40878 980.41217,757.41628 C 980.27263,757.41460 980.04833,757.45677 979.97787,757.30283 L 981.08152,756.74048 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11202" + d="M 991.18563,756.46150 C 991.19209,756.47267 991.19816,756.48406 991.20500,756.49498 C 991.21321,756.50805 991.18953,756.46808 991.17947,756.45641 C 991.11832,756.38549 991.04633,756.32889 990.96610,756.28048 C 990.67368,756.10410 990.35874,756.01468 990.02624,755.94923 C 988.85174,755.80582 987.62769,756.06470 986.60566,756.66414 C 986.53323,756.70663 986.88088,756.48584 986.83248,756.55448 C 986.75385,756.66597 986.61141,756.71489 986.50751,756.80334 C 986.20937,757.05714 985.99765,757.33958 985.79071,757.66786 C 984.91959,759.52291 986.38288,760.61690 988.09943,760.80155 C 990.16340,760.76270 991.49650,760.31097 992.30611,758.48031 C 992.50636,757.89045 992.57118,757.20838 992.29182,756.62931 C 992.22864,756.49831 992.12946,756.33268 991.98608,756.27390 C 991.93516,756.25302 991.77525,756.33037 991.82384,756.30451 C 992.75958,755.80623 992.93878,755.54197 992.64650,755.92333 C 992.17494,757.56841 992.86668,759.87468 993.23534,761.51327 C 993.39911,762.57130 994.31972,764.82403 993.17543,765.59383 C 992.82949,765.77853 992.49235,765.98073 992.13762,766.14792 C 991.69069,766.35854 990.89552,766.10532 990.46142,765.98605 C 989.33525,765.67664 988.26804,765.20253 987.21371,764.70724 C 985.61521,763.92520 984.05048,763.05739 982.59540,762.02923 C 981.85703,761.50749 981.00288,760.91740 980.72737,760.01574 C 980.72929,759.65027 980.90890,759.42521 981.22358,759.24388 C 981.55919,759.05053 981.89833,758.85995 982.25459,758.70799 C 982.97800,758.39943 984.77223,758.48237 985.56180,758.48935 C 987.29935,758.50472 989.03631,758.53630 990.77357,758.57043 C 993.31174,758.64636 995.85282,758.63693 998.38032,758.37367 L 997.91450,758.71575 C 995.52729,758.68713 993.14111,758.59471 990.75351,758.58495 C 988.40485,758.53882 986.02884,758.39306 983.69043,758.68862 C 983.23198,758.74656 982.70905,758.83391 982.25972,758.95683 C 982.07404,759.00763 981.90395,759.14301 981.71152,759.13848 C 981.60666,759.13600 981.93463,759.05073 981.96335,758.94985 C 981.99213,758.84871 981.28644,759.63373 981.47320,759.61879 C 981.53081,760.55705 982.23854,761.24935 982.93729,761.81183 C 984.33361,762.93586 985.96904,763.73011 987.59818,764.45146 C 988.59720,764.85823 989.61005,765.23443 990.66531,765.46916 C 991.23642,765.59619 991.84105,765.69759 992.42813,765.64278 C 992.80479,765.60763 992.94046,765.51785 992.90753,765.54400 C 992.70550,765.70451 992.46879,765.81572 992.24940,765.95156 C 993.52913,765.26003 992.85810,762.90559 992.70025,761.80017 C 992.34000,759.99836 991.77531,758.20687 991.67000,756.36963 C 991.75883,755.90040 992.55951,755.31434 992.90274,755.71214 C 993.28530,756.15554 993.30501,756.97814 993.21340,757.51605 C 993.16392,757.80654 993.13086,757.86601 993.03506,758.14731 C 992.08980,760.16803 989.66819,761.22010 987.52523,761.21016 C 985.66219,761.04243 984.12984,759.99685 985.09115,757.97561 C 986.26519,756.15573 988.65240,755.37144 990.73546,755.44894 C 991.20140,755.49226 991.92865,755.54974 992.28902,755.89929 L 991.18563,756.46150 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11204" + d="M 996.90615,757.28672 C 996.60604,756.91532 996.10040,756.73047 995.66547,756.57554 C 994.90979,756.33215 994.08927,756.26866 993.32822,756.52765 C 992.98238,756.64533 992.76184,756.78708 992.80724,756.75825 C 992.96654,756.65706 993.12742,756.55559 993.30051,756.48042 C 993.47948,756.40270 992.98541,756.71108 992.83588,756.83640 C 991.68745,757.94110 991.66284,759.27857 992.89638,760.31509 C 994.69493,761.50577 997.16312,761.62837 999.09873,760.70621 C 999.01096,760.75198 998.80708,760.93829 998.83544,760.84347 C 998.87104,760.72447 999.03552,760.69549 999.12705,760.61151 C 999.21528,760.53057 999.29826,760.44334 999.37327,760.35002 C 999.59551,760.07359 999.74836,759.74552 999.81675,759.39748 C 1000.1278,757.81518 997.51307,756.78806 996.40842,756.34479 C 993.75206,755.49558 989.95685,754.67016 987.22491,755.65982 C 986.39211,756.13616 988.03199,755.04793 987.57360,755.49091 L 986.60493,755.89070 C 986.96825,755.53426 987.43185,755.28466 987.91466,755.12670 C 988.70694,754.93868 989.52885,754.95695 990.33684,755.01365 C 992.44138,755.16129 994.51657,755.62978 996.52319,756.26755 C 997.68081,756.67396 999.60851,757.25283 1000.3605,758.30061 C 1000.5776,758.60306 1000.5714,758.72038 1000.5182,759.06251 C 1000.3522,760.13011 999.43771,760.67944 998.55420,761.13874 C 996.57864,762.00588 994.10412,761.76061 992.23475,760.73204 C 990.85338,759.73818 990.87306,758.33933 992.03590,757.16071 C 993.30954,756.03847 994.81467,755.55897 996.44648,756.04440 C 996.96482,756.19447 997.47054,756.37947 997.95076,756.62603 L 996.90615,757.28672 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11212" + d="M 998.69971,763.03353 C 998.78024,762.56584 998.78462,762.08223 998.80060,761.60806 C 998.83706,760.13714 998.76640,758.64266 998.38777,757.21433 C 998.14182,756.41584 997.94090,756.68488 999.26891,756.10665 C 999.26985,756.10623 999.47298,756.38800 999.47803,756.39420 C 999.71620,756.68664 999.99698,756.92208 1000.3007,757.14325 C 1001.2285,757.76828 1002.3791,757.98525 1003.4232,757.53566 L 1002.6362,758.15345 C 1001.5768,758.52142 1000.4695,758.19952 999.54441,757.62619 C 999.21327,757.41257 998.90316,757.17696 998.58600,756.94395 C 998.54045,756.91050 998.41823,756.82073 998.35767,756.79482 C 998.33644,756.78573 998.27022,756.79410 998.28963,756.78157 C 999.69757,755.87253 999.13507,755.98451 999.21417,756.77497 C 999.35271,758.24497 999.52393,759.71200 999.62405,761.18559 C 999.66418,761.61335 999.68872,762.05641 999.80336,762.47121 L 998.69971,763.03353 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11219" + d="M 1002.5839,758.36248 C 1003.0971,758.66169 1003.7581,758.71568 1004.3376,758.76857 C 1004.9572,758.79952 1005.6025,758.79073 1006.1905,758.56657 C 1006.2778,758.53330 1006.5245,758.40048 1006.4456,758.45044 C 1006.2645,758.56502 1006.0799,758.67716 1005.8828,758.76128 C 1005.8149,758.79024 1006.0006,758.67159 1006.0518,758.61853 C 1006.3266,758.33364 1006.3287,758.00203 1006.2294,757.64386 C 1005.3431,755.92463 1002.9727,756.01784 1001.4966,756.81995 C 1001.5712,756.79291 1001.7501,756.66527 1001.7203,756.73880 C 1001.6675,756.86934 1001.5073,756.92409 1001.4124,757.02806 C 1001.1370,757.32941 1000.9346,757.69282 1000.8407,758.09133 C 1000.4790,759.62760 1001.7365,760.74645 1002.9341,761.42098 C 1003.4153,761.63284 1003.5158,761.69606 1004.0245,761.84332 C 1005.1052,762.15630 1006.2726,762.21680 1007.3755,761.98588 C 1007.8227,761.89221 1008.2616,761.74765 1008.6704,761.54232 C 1008.7867,761.48388 1009.1393,761.33121 1009.0106,761.35038 C 1008.8635,761.37228 1008.7450,761.48410 1008.6123,761.55098 L 1009.3667,761.25523 C 1009.1398,761.39228 1008.4861,761.81756 1008.1040,761.98957 C 1006.3342,762.78622 1004.2318,762.42413 1002.5108,761.69763 C 1001.6037,761.22842 1000.6568,760.64625 1000.2793,759.63767 C 999.73179,758.17518 1000.8218,757.03815 1002.0205,756.39883 C 1003.5803,755.59142 1005.9706,755.58233 1007.0497,757.19198 C 1007.2247,757.64053 1007.1923,758.14559 1006.7379,758.43074 C 1005.6566,759.10934 1004.9123,759.35309 1003.6526,759.25875 C 1002.9492,759.22034 1002.2437,759.16190 1001.5494,759.04311 L 1002.5839,758.36248 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11227" + d="M 1012.3399,754.43678 C 1012.4088,754.22586 1012.3762,754.02758 1012.2692,753.82966 C 1011.2802,752.63442 1009.3026,753.08536 1008.1046,753.66240 C 1008.1855,753.61883 1008.4039,753.45920 1008.3474,753.53169 C 1008.2645,753.63801 1008.1250,753.68477 1008.0206,753.77011 C 1007.8161,753.93732 1007.6372,754.11933 1007.4780,754.33034 C 1006.6745,755.39542 1006.8150,756.66031 1007.6802,757.62039 C 1008.7846,758.60195 1010.3834,758.84203 1011.7830,758.42592 C 1012.0776,758.39173 1012.3059,758.18932 1012.5782,758.10073 C 1012.6717,758.07028 1012.2690,758.32561 1012.3185,758.24065 C 1012.3838,758.12868 1012.5270,758.08670 1012.6313,758.00971 C 1013.7191,757.06849 1014.2165,755.35603 1013.4228,754.07023 C 1013.5015,753.87155 1012.9918,753.87228 1012.9977,753.86894 C 1013.2844,753.70659 1013.5711,753.54356 1013.8668,753.39823 C 1013.9679,753.34852 1013.8019,753.36767 1013.6535,753.65562 C 1013.5764,753.80524 1013.5227,753.98091 1013.4859,754.14353 C 1013.3380,754.79739 1013.3675,755.47337 1013.4037,756.13700 C 1013.5565,757.95080 1014.0244,759.72526 1014.6801,761.41921 L 1014.0519,761.76481 C 1013.5731,760.00664 1013.1226,758.23626 1012.8300,756.43635 C 1012.8088,756.28578 1012.7853,756.13551 1012.7662,755.98466 C 1012.7105,755.54535 1012.3151,752.42466 1014.0019,753.23638 C 1014.1400,753.30280 1014.2048,753.46244 1014.2719,753.58718 C 1014.8373,755.03433 1014.4913,756.70697 1013.3109,757.73963 C 1011.4062,759.17363 1009.0115,759.56408 1007.0446,758.00694 C 1005.8347,756.75744 1006.0367,755.13477 1007.3569,754.03347 C 1007.7676,753.69081 1008.1560,753.51464 1008.6507,753.22756 C 1009.9922,752.60745 1011.9571,752.25537 1013.1954,753.28346 C 1013.3360,753.44412 1013.4541,753.68045 1013.4436,753.87445 L 1012.3399,754.43678 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11229" + d="M 1015.3540,752.55036 C 1015.2325,753.13281 1015.2923,753.74463 1015.3435,754.33175 C 1015.5992,756.56587 1016.2641,758.75444 1017.3605,760.71999 C 1017.4314,760.83619 1017.5023,760.95242 1017.5731,761.06862 L 1016.9530,761.42457 C 1016.8935,761.30109 1016.8339,761.17764 1016.7743,761.05416 C 1015.8444,759.01959 1015.1648,756.88085 1014.6270,754.71164 C 1014.4960,754.18020 1014.3853,753.64237 1014.2503,753.11271 L 1015.3540,752.55036 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11231" + d="M 1017.1370,752.11078 C 1017.0007,752.61065 1017.0114,753.14656 1017.0169,753.66299 C 1017.0774,755.78064 1017.5656,757.86678 1018.4108,759.80593 C 1018.6847,760.42679 1019.0312,761.00908 1019.4165,761.56613 L 1018.7289,761.96506 C 1018.4121,761.36100 1018.1170,760.74568 1017.8659,760.11104 C 1017.0991,758.16288 1016.5553,756.13546 1016.2458,754.06393 C 1016.1737,753.61225 1016.1010,753.10539 1016.0334,752.67311 L 1017.1370,752.11078 z " /> + </g> + <g + id="Building2"> + <g + id="Building2-Walls"> + <path + style="fill:url(#linearGradient2650);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 319.32089,239.04934 C 356.46791,206.81162 397.08631,173.18534 434.23334,140.94762 C 392.17702,101.18231 368.17198,82.245381 306.67584,48.034309 C 265.48226,64.953356 226.37152,86.732360 187.26078,116.84271 C 231.28081,158.73538 275.30086,197.15667 319.32089,239.04934 z " + id="path1514" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient2658);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 186.88898,116.31689 C 241.77443,145.58860 284.85712,188.74589 322.38558,239.54027 C 332.17046,375.93932 339.17821,513.72694 293.42073,652.90312 C 258.72836,608.53536 228.89595,576.66464 189.34362,555.20811 C 188.52541,408.91104 199.50995,261.22541 186.88898,116.31689 z " + id="path1518" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient2672);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 322.38558,236.14276 C 298.51776,386.06042 312.14102,515.27915 292.43887,653.39405 C 329.13949,620.56073 370.00577,608.55579 408.78923,586.13667 C 409.29461,438.93715 412.57711,308.40035 435.29944,140.37245 C 395.57864,166.32196 359.32926,196.30768 322.38558,236.14276 z " + id="path1516" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3374" + transform="translate(38.00374,59.53964)"> + <path + style="fill:url(#linearGradient3382);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 344.85522,237.37554 C 340.69401,250.22634 341.69234,261.36806 340.83561,277.89050 C 350.51082,267.25738 359.27524,261.49788 367.26414,256.85014 C 367.65482,243.27090 369.99781,231.66162 373.64010,214.87676 C 362.49961,219.06060 352.42407,228.69196 344.85522,237.37554 z " + id="path3376" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3384);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.44419,270.96740 C 347.06830,265.70668 354.50240,259.25980 362.59885,254.81221 C 364.22518,255.32478 365.22925,255.79230 367.10620,257.03209 C 357.51719,262.61168 349.77569,269.61164 341.10863,276.99343 L 341.44419,270.96740 z " + id="path3378" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3386);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 362.95052,254.96515 C 364.37280,255.65507 365.79507,256.34499 367.21735,257.03492 C 368.02985,243.48892 370.45131,230.86978 373.74515,215.10831 C 371.91567,215.26863 370.26996,216.28829 368.70634,217.24619 C 366.04490,229.79884 363.27373,242.11250 362.95052,254.96515 z " + id="path3380" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3205"> + <path + style="fill:url(#linearGradient3203);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 209.72468,172.22157 C 205.43713,185.46252 203.41947,197.19020 202.53673,214.21427 C 215.43871,224.34601 229.71375,238.39002 240.73322,255.89332 C 240.87750,241.90182 242.25858,225.93700 246.39883,209.28822 C 239.59526,199.67403 220.05311,179.00195 209.72468,172.22157 z " + id="path3193" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3201);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 208.23335,212.52930 C 223.13460,224.12513 230.20803,231.62885 240.85880,247.87715 C 240.72667,250.08399 240.53448,252.56724 240.40231,255.13598 C 227.79869,238.20013 219.41100,227.12615 202.46408,214.13711 C 204.16648,213.12829 205.96346,212.30861 208.23335,212.52930 z " + id="path3195" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3199);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 202.43706,214.12177 C 204.32862,212.89226 206.22020,212.41937 208.11175,212.41937 C 208.83684,199.90352 210.65324,187.42401 214.21567,175.47564 C 212.55632,173.98122 211.41349,173.26158 209.75414,172.28369 C 205.46659,185.93446 202.94148,199.80896 202.43706,214.12177 z " + id="path3197" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3215" + transform="translate(-11.54743,69.92185)"> + <path + style="fill:url(#linearGradient3237);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 209.72468,172.22157 C 205.43713,185.46252 203.41947,197.19020 202.53673,214.21427 C 215.43871,224.34601 229.71375,238.39002 240.73322,255.89332 C 240.87750,241.90182 242.25858,225.93700 246.39883,209.28822 C 239.59526,199.67403 220.05311,179.00195 209.72468,172.22157 z " + id="path3217" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3239);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 208.23335,212.52930 C 223.13460,224.12513 230.20803,231.62885 240.85880,247.87715 C 240.72667,250.08399 240.53448,252.56724 240.40231,255.13598 C 227.79869,238.20013 219.41100,227.12615 202.46408,214.13711 C 204.16648,213.12829 205.96346,212.30861 208.23335,212.52930 z " + id="path3219" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3241);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 202.43706,214.12177 C 204.32862,212.89226 206.22020,212.41937 208.11175,212.41937 C 208.83684,199.90352 210.65324,187.42401 214.21567,175.47564 C 212.55632,173.98122 211.41349,173.26158 209.75414,172.28369 C 205.46659,185.93446 202.94148,199.80896 202.43706,214.12177 z " + id="path3221" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3243" + transform="translate(-11.57821,152.8776)"> + <path + style="fill:url(#linearGradient3265);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 209.72468,172.22157 C 205.43713,185.46252 203.41947,197.19020 202.53673,214.21427 C 215.43871,224.34601 229.71375,238.39002 240.73322,255.89332 C 240.87750,241.90182 242.25858,225.93700 246.39883,209.28822 C 239.59526,199.67403 220.05311,179.00195 209.72468,172.22157 z " + id="path3245" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3267);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 208.23335,212.52930 C 223.13460,224.12513 230.20803,231.62885 240.85880,247.87715 C 240.72667,250.08399 240.53448,252.56724 240.40231,255.13598 C 227.79869,238.20013 219.41100,227.12615 202.46408,214.13711 C 204.16648,213.12829 205.96346,212.30861 208.23335,212.52930 z " + id="path3247" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3269);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 202.43706,214.12177 C 204.32862,212.89226 206.22020,212.41937 208.11175,212.41937 C 208.83684,199.90352 210.65324,187.42401 214.21567,175.47564 C 212.55632,173.98122 211.41349,173.26158 209.75414,172.28369 C 205.46659,185.93446 202.94148,199.80896 202.43706,214.12177 z " + id="path3249" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3271" + transform="translate(-14.60655,235.5827)"> + <path + style="fill:url(#linearGradient3293);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 209.72468,172.22157 C 205.43713,185.46252 203.41947,197.19020 202.53673,214.21427 C 215.43871,224.34601 229.71375,238.39002 240.73322,255.89332 C 240.87750,241.90182 242.25858,225.93700 246.39883,209.28822 C 239.59526,199.67403 220.05311,179.00195 209.72468,172.22157 z " + id="path3273" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3295);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 208.23335,212.52930 C 223.13460,224.12513 230.20803,231.62885 240.85880,247.87715 C 240.72667,250.08399 240.53448,252.56724 240.40231,255.13598 C 227.79869,238.20013 219.41100,227.12615 202.46408,214.13711 C 204.16648,213.12829 205.96346,212.30861 208.23335,212.52930 z " + id="path3275" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3297);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3946050;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 202.43706,214.12177 C 204.32862,212.89226 206.22020,212.41937 208.11175,212.41937 C 208.83684,199.90352 210.65324,187.42401 214.21567,175.47564 C 212.55632,173.98122 211.41349,173.26158 209.75414,172.28369 C 205.46659,185.93446 202.94148,199.80896 202.43706,214.12177 z " + id="path3277" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3416" + transform="matrix(1.042995,0.000000,0.000000,1.061031,-27.93597,168.2468)"> + <path + style="fill:url(#linearGradient3424);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 344.85522,237.37554 C 340.69401,250.22634 341.69234,261.36806 340.83561,277.89050 C 350.51082,267.25738 359.27524,261.49788 367.26414,256.85014 C 367.65482,243.27090 369.99781,231.66162 373.64010,214.87676 C 362.49961,219.06060 352.42407,228.69196 344.85522,237.37554 z " + id="path3418" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3426);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.44419,270.96740 C 347.06830,265.70668 354.50240,259.25980 362.59885,254.81221 C 364.22518,255.32478 365.22925,255.79230 367.10620,257.03209 C 357.51719,262.61168 349.77569,269.61164 341.10863,276.99343 L 341.44419,270.96740 z " + id="path3420" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3428);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 362.95052,254.96515 C 364.37280,255.65507 365.79507,256.34499 367.21735,257.03492 C 368.02985,243.48892 370.45131,230.86978 373.74515,215.10831 C 371.91567,215.26863 370.26996,216.28829 368.70634,217.24619 C 366.04490,229.79884 363.27373,242.11250 362.95052,254.96515 z " + id="path3422" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3430" + transform="matrix(1.042995,0.000000,0.000000,1.061031,-32.84646,252.7072)"> + <path + style="fill:url(#linearGradient3438);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 344.85522,237.37554 C 340.69401,250.22634 341.69234,261.36806 340.83561,277.89050 C 350.51082,267.25738 359.27524,261.49788 367.26414,256.85014 C 367.65482,243.27090 369.99781,231.66162 373.64010,214.87676 C 362.49961,219.06060 352.42407,228.69196 344.85522,237.37554 z " + id="path3432" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3440);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.44419,270.96740 C 347.06830,265.70668 354.50240,259.25980 362.59885,254.81221 C 364.22518,255.32478 365.22925,255.79230 367.10620,257.03209 C 357.51719,262.61168 349.77569,269.61164 341.10863,276.99343 L 341.44419,270.96740 z " + id="path3434" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3442);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 362.95052,254.96515 C 364.37280,255.65507 365.79507,256.34499 367.21735,257.03492 C 368.02985,243.48892 370.45131,230.86978 373.74515,215.10831 C 371.91567,215.26863 370.26996,216.28829 368.70634,217.24619 C 366.04490,229.79884 363.27373,242.11250 362.95052,254.96515 z " + id="path3436" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3279" + transform="translate(-18.04389,234.1096)"> + <path + style="fill:url(#linearGradient3287);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 269.30489,228.84854 C 265.14368,241.69934 263.18547,253.08146 262.32874,269.60390 C 274.85055,279.43711 288.70497,293.06730 299.39975,310.05486 C 299.53978,296.47562 300.88016,280.98122 304.89842,264.82300 C 298.29532,255.49210 279.32899,235.42913 269.30489,228.84854 z " + id="path3281" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3289);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 267.85750,267.96858 C 282.31968,279.22273 289.18469,286.50535 299.52163,302.27489 C 299.39339,304.41670 299.20686,306.82678 299.07859,309.31983 C 286.84634,292.88301 278.70580,282.13533 262.25823,269.52902 C 263.91047,268.54992 265.65450,267.75439 267.85750,267.96858 z " + id="path3283" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3291);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 262.23200,269.51413 C 264.06783,268.32085 265.90367,267.86189 267.73949,267.86189 C 268.44321,255.71483 270.20609,243.60303 273.66355,232.00673 C 272.05309,230.55634 270.94394,229.85791 269.33348,228.90883 C 265.17227,242.15737 262.72156,255.62305 262.23200,269.51413 z " + id="path3285" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3251" + transform="translate(-14.03345,151.8955)"> + <path + style="fill:url(#linearGradient3259);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 269.30489,228.84854 C 265.14368,241.69934 263.18547,253.08146 262.32874,269.60390 C 274.85055,279.43711 288.70497,293.06730 299.39975,310.05486 C 299.53978,296.47562 300.88016,280.98122 304.89842,264.82300 C 298.29532,255.49210 279.32899,235.42913 269.30489,228.84854 z " + id="path3253" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3261);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 267.85750,267.96858 C 282.31968,279.22273 289.18469,286.50535 299.52163,302.27489 C 299.39339,304.41670 299.20686,306.82678 299.07859,309.31983 C 286.84634,292.88301 278.70580,282.13533 262.25823,269.52902 C 263.91047,268.54992 265.65450,267.75439 267.85750,267.96858 z " + id="path3255" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3263);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 262.23200,269.51413 C 264.06783,268.32085 265.90367,267.86189 267.73949,267.86189 C 268.44321,255.71483 270.20609,243.60303 273.66355,232.00673 C 272.05309,230.55634 270.94394,229.85791 269.33348,228.90883 C 265.17227,242.15737 262.72156,255.62305 262.23200,269.51413 z " + id="path3257" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3223" + transform="translate(-12.52953,69.43080)"> + <path + style="fill:url(#linearGradient3231);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 269.30489,228.84854 C 265.14368,241.69934 263.18547,253.08146 262.32874,269.60390 C 274.85055,279.43711 288.70497,293.06730 299.39975,310.05486 C 299.53978,296.47562 300.88016,280.98122 304.89842,264.82300 C 298.29532,255.49210 279.32899,235.42913 269.30489,228.84854 z " + id="path3225" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3233);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 267.85750,267.96858 C 282.31968,279.22273 289.18469,286.50535 299.52163,302.27489 C 299.39339,304.41670 299.20686,306.82678 299.07859,309.31983 C 286.84634,292.88301 278.70580,282.13533 262.25823,269.52902 C 263.91047,268.54992 265.65450,267.75439 267.85750,267.96858 z " + id="path3227" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3235);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 262.23200,269.51413 C 264.06783,268.32085 265.90367,267.86189 267.73949,267.86189 C 268.44321,255.71483 270.20609,243.60303 273.66355,232.00673 C 272.05309,230.55634 270.94394,229.85791 269.33348,228.90883 C 265.17227,242.15737 262.72156,255.62305 262.23200,269.51413 z " + id="path3229" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3210"> + <path + style="fill:url(#linearGradient3183);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 269.30489,228.84854 C 265.14368,241.69934 263.18547,253.08146 262.32874,269.60390 C 274.85055,279.43711 288.70497,293.06730 299.39975,310.05486 C 299.53978,296.47562 300.88016,280.98122 304.89842,264.82300 C 298.29532,255.49210 279.32899,235.42913 269.30489,228.84854 z " + id="path3181" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3187);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 267.85750,267.96858 C 282.31968,279.22273 289.18469,286.50535 299.52163,302.27489 C 299.39339,304.41670 299.20686,306.82678 299.07859,309.31983 C 286.84634,292.88301 278.70580,282.13533 262.25823,269.52902 C 263.91047,268.54992 265.65450,267.75439 267.85750,267.96858 z " + id="path3185" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3191);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 262.23200,269.51413 C 264.06783,268.32085 265.90367,267.86189 267.73949,267.86189 C 268.44321,255.71483 270.20609,243.60303 273.66355,232.00673 C 272.05309,230.55634 270.94394,229.85791 269.33348,228.90883 C 265.17227,242.15737 262.72156,255.62305 262.23200,269.51413 z " + id="path3189" + sodipodi:nodetypes="ccccc" /> + </g> + <path + style="fill:url(#radialGradient3301);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 242.36245,547.83749 C 238.69778,560.24939 238.09548,574.16692 238.92373,590.26015 C 251.76344,601.04309 265.50477,617.20883 275.31883,628.01439 C 274.38755,614.78392 274.11919,600.92687 278.40777,585.44897 C 272.70530,574.33882 255.16602,554.39301 242.36245,547.83749 z " + id="path3299" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.59169549" + d="M 259.67041,562.22796 C 255.38432,576.07532 254.73493,591.12906 255.88888,605.47096" + id="path3303" + sodipodi:nodetypes="cc" /> + <g + id="g3321" + transform="matrix(1.042995,0.000000,0.000000,1.061031,-17.57148,0.676550)"> + <path + style="fill:url(#linearGradient3326);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 344.85522,237.37554 C 340.69401,250.22634 341.69234,261.36806 340.83561,277.89050 C 350.51082,267.25738 359.27524,261.49788 367.26414,256.85014 C 367.65482,243.27090 369.99781,231.66162 373.64010,214.87676 C 362.49961,219.06060 352.42407,228.69196 344.85522,237.37554 z " + id="path3317" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3328);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.44419,270.96740 C 347.06830,265.70668 354.50240,259.25980 362.59885,254.81221 C 364.22518,255.32478 365.22925,255.79230 367.10620,257.03209 C 357.51719,262.61168 349.77569,269.61164 341.10863,276.99343 L 341.44419,270.96740 z " + id="path3309" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3330);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 362.95052,254.96515 C 364.37280,255.65507 365.79507,256.34499 367.21735,257.03492 C 368.02985,243.48892 370.45131,230.86978 373.74515,215.10831 C 371.91567,215.26863 370.26996,216.28829 368.70634,217.24619 C 366.04490,229.79884 363.27373,242.11250 362.95052,254.96515 z " + id="path3313" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3332" + transform="translate(44.87841,-20.01023)"> + <path + style="fill:url(#linearGradient3340);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 344.85522,237.37554 C 340.69401,250.22634 341.69234,261.36806 340.83561,277.89050 C 350.51082,267.25738 359.27524,261.49788 367.26414,256.85014 C 367.65482,243.27090 369.99781,231.66162 373.64010,214.87676 C 362.49961,219.06060 352.42407,228.69196 344.85522,237.37554 z " + id="path3334" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3342);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.44419,270.96740 C 347.06830,265.70668 354.50240,259.25980 362.59885,254.81221 C 364.22518,255.32478 365.22925,255.79230 367.10620,257.03209 C 357.51719,262.61168 349.77569,269.61164 341.10863,276.99343 L 341.44419,270.96740 z " + id="path3336" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3344);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 362.95052,254.96515 C 364.37280,255.65507 365.79507,256.34499 367.21735,257.03492 C 368.02985,243.48892 370.45131,230.86978 373.74515,215.10831 C 371.91567,215.26863 370.26996,216.28829 368.70634,217.24619 C 366.04490,229.79884 363.27373,242.11250 362.95052,254.96515 z " + id="path3338" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="g3346" + transform="matrix(1.042995,0.000000,0.000000,1.061031,-24.49863,81.33124)"> + <path + style="fill:url(#linearGradient3354);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 344.85522,237.37554 C 340.69401,250.22634 341.69234,261.36806 340.83561,277.89050 C 350.51082,267.25738 359.27524,261.49788 367.26414,256.85014 C 367.65482,243.27090 369.99781,231.66162 373.64010,214.87676 C 362.49961,219.06060 352.42407,228.69196 344.85522,237.37554 z " + id="path3348" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3356);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 341.44419,270.96740 C 347.06830,265.70668 354.50240,259.25980 362.59885,254.81221 C 364.22518,255.32478 365.22925,255.79230 367.10620,257.03209 C 357.51719,262.61168 349.77569,269.61164 341.10863,276.99343 L 341.44419,270.96740 z " + id="path3350" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient3358);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 362.95052,254.96515 C 364.37280,255.65507 365.79507,256.34499 367.21735,257.03492 C 368.02985,243.48892 370.45131,230.86978 373.74515,215.10831 C 371.91567,215.26863 370.26996,216.28829 368.70634,217.24619 C 366.04490,229.79884 363.27373,242.11250 362.95052,254.96515 z " + id="path3352" + sodipodi:nodetypes="ccccc" /> + </g> + </g> + <g + id="Building3"> + <path + style="fill:url(#radialGradient19117);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.31000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 473.35393,694.33118 C 528.37317,687.81720 588.33790,691.19419 638.41165,698.52757 C 676.22194,679.99011 704.14125,658.48537 725.13690,636.98062 C 711.66492,613.61768 688.30197,595.20021 669.88451,581.72824 C 614.57557,578.01185 557.28844,583.19733 506.92499,594.31740 L 473.35393,694.33118 z " + id="Building3-Shadow" + sodipodi:nodetypes="cccccc" /> + <g + id="Building3-Walls"> + <path + style="fill:url(#radialGradient12013);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 368.04206,345.09016 C 408.13466,317.59810 447.24539,299.43370 486.84706,284.70580 C 537.08553,306.79764 579.22367,333.55331 617.18890,362.02725 L 501.08401,425.35719 L 368.04206,345.09016 z " + id="path1512" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient12005);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 502.06588,422.65707 C 464.10065,390.25570 416.80774,362.76363 367.55113,344.59923 C 351.67773,437.54860 358.38711,530.49796 361.16904,624.92012 C 399.13427,641.28445 438.57229,662.55808 472.11916,694.63216 L 502.06588,422.65707 z " + id="path1510" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient11997);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 471.62823,694.63216 C 476.37388,604.13744 480.62862,516.09737 502.06588,423.14800 C 541.17662,389.76477 578.81456,373.07315 617.92530,361.29084 C 594.03338,461.93145 576.52356,558.64461 578.65092,654.37591 C 543.46762,657.97606 507.79339,673.35853 471.62823,694.63216 z " + id="path1508" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="Building3-Windows-Front"> + <path + style="fill:url(#linearGradient15993);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 454.48525,414.71441 C 450.32404,427.56521 448.36583,438.94733 447.50910,455.46977 C 458.40167,458.28471 465.98976,464.77129 474.67933,472.35938 C 474.06740,458.52949 475.65843,446.16825 480.55398,430.13535 C 473.70023,422.05772 465.01065,417.28456 454.48525,414.71441 z " + id="path15983" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient14437);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 377.54636,368.57401 C 373.66421,380.56305 371.83731,391.18189 371.03804,406.59635 C 381.20016,409.22252 388.27940,415.27412 396.38626,422.35336 C 395.81536,409.45089 397.29970,397.91858 401.86696,382.96084 C 395.47281,375.42489 387.36595,370.97181 377.54636,368.57401 z " + id="path12015" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15969);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 371.03804,406.33944 C 372.75075,405.22618 374.46348,404.79799 376.17620,404.79799 C 376.83274,393.46551 378.94508,380.76285 382.17070,369.94418 C 380.51507,369.43037 379.20199,369.08783 377.54636,368.57402 C 373.66421,380.93413 371.49476,393.37988 371.03804,406.33944 z " + id="path12775" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15961);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 376.26182,404.96927 C 382.85579,407.16726 391.24810,411.50615 396.21498,417.21520 C 396.32917,419.21338 396.27208,420.52646 396.38626,422.26773 C 388.36504,415.70230 382.05652,409.65070 371.03804,406.42508 C 372.57949,405.51163 374.20656,404.76945 376.26182,404.96927 z " + id="path12777" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15981);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 414.84789,391.93681 C 410.86110,404.24901 408.98495,415.15408 408.16414,430.98403 C 418.60018,433.68099 425.87023,439.89572 434.19561,447.16577 C 433.60933,433.91552 435.13368,422.07237 439.82404,406.71144 C 433.25754,398.97236 424.93216,394.39926 414.84789,391.93681 z " + id="path15971" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15979);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 408.16414,430.72020 C 409.92302,429.57693 411.68191,429.13720 413.44079,429.13720 C 414.11502,417.49926 416.28431,404.45421 419.59687,393.34392 C 417.89662,392.81625 416.54815,392.46449 414.84789,391.93682 C 410.86110,404.63010 408.63317,417.41132 408.16414,430.72020 z " + id="path15973" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15977);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 413.52872,429.31310 C 420.30043,431.57034 428.91895,436.02618 434.01972,441.88911 C 434.13698,443.94117 434.07836,445.28964 434.19561,447.07783 C 425.95818,440.33544 419.47962,434.12072 408.16414,430.80816 C 409.74713,429.87009 411.41806,429.10789 413.52872,429.31310 z " + id="path15975" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15991);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 447.50910,455.19439 C 449.34493,454.00111 451.18077,453.54215 453.01659,453.54215 C 453.72031,441.39509 455.98450,427.77937 459.44196,416.18307 C 457.66733,415.63231 456.25988,415.26517 454.48525,414.71442 C 450.32404,427.96296 447.99866,441.30331 447.50910,455.19439 z " + id="path15985" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient15989);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 453.10837,453.72574 C 460.17630,456.08172 469.17186,460.73248 474.49574,466.85189 C 474.61815,468.99370 474.55695,470.40117 474.67933,472.26759 C 466.08155,465.23025 459.31959,458.74367 447.50910,455.28618 C 449.16134,454.30708 450.90537,453.51155 453.10837,453.72574 z " + id="path15987" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16029);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 371.47604,440.07442 C 368.20148,452.24345 366.91069,462.94071 366.88730,478.37585 C 377.16859,480.48787 384.54308,486.17594 392.99557,492.83871 C 391.77679,479.98125 392.67953,468.38891 396.48911,453.22047 C 389.72421,446.01549 381.40375,441.97557 371.47604,440.07442 z " + id="path15995" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16027);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 366.87438,478.11927 C 368.52897,476.92131 370.21801,476.40758 371.92855,476.32148 C 372.01460,464.97032 373.48571,452.17753 376.16340,441.21040 C 374.48404,440.78046 373.15540,440.50437 371.47604,440.07443 C 368.22013,452.61407 366.67906,465.15314 366.87438,478.11927 z " + id="path15997" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16025);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 372.02269,476.48823 C 378.71880,478.35198 387.31862,482.26349 392.56621,487.71565 C 392.78071,489.70557 392.78969,491.01986 392.99126,492.75318 C 384.65014,486.59927 378.04539,480.87245 366.87869,478.20480 C 368.37227,477.21503 369.95998,476.39200 372.02269,476.48823 z " + id="path15999" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16023);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 408.33424,463.33863 C 404.83724,475.79880 403.39361,486.76950 403.19916,502.61952 C 413.73365,504.90187 421.24366,510.82437 429.84990,517.75965 C 428.74034,504.54295 429.79536,492.64879 433.87488,477.11448 C 427.00761,469.64100 418.50797,465.40054 408.33424,463.33863 z " + id="path16001" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16021);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 403.18873,502.35591 C 404.90105,501.14400 406.64119,500.63508 408.39870,500.56556 C 408.61238,488.91006 410.26433,475.78946 413.13515,464.55691 C 411.41536,464.09687 410.05404,463.79868 408.33424,463.33864 C 404.85231,476.17958 403.13134,489.03887 403.18873,502.35591 z " + id="path16003" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16019);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 408.49350,500.73785 C 415.34913,502.72565 424.13706,506.83734 429.46558,512.49408 C 429.66386,514.53990 429.65859,515.88964 429.84643,517.67179 C 421.34894,511.26028 414.62978,505.30649 403.19221,502.44378 C 404.73688,501.44387 406.37638,500.61623 408.49350,500.73785 z " + id="path16005" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16017);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 446.70222,486.06716 C 442.97147,499.04948 441.39355,510.49052 441.08779,527.03233 C 452.06810,529.48280 459.86809,535.71297 468.80563,543.00733 C 467.73328,529.20552 468.91160,516.79812 473.27025,500.61103 C 466.15119,492.76623 457.30741,488.28523 446.70222,486.06716 z " + id="path16007" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16015);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 441.07861,526.75710 C 442.87367,525.50332 444.69319,524.98345 446.52800,524.92228 C 446.82662,512.75853 448.63591,499.07492 451.70511,487.36988 C 449.91312,486.87854 448.49421,486.55850 446.70222,486.06718 C 442.98473,499.44700 441.10509,512.85743 441.07861,526.75710 z " + id="path16009" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16013);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 446.62585,525.10271 C 453.76834,527.22191 462.91386,531.57039 468.43865,537.50903 C 468.63236,539.64557 468.61809,541.05429 468.80258,542.91559 C 459.97512,536.16861 453.00079,529.91093 441.08167,526.84884 C 442.70037,525.81524 444.41694,524.96204 446.62585,525.10271 z " + id="path16011" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16065);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 371.39903,512.20344 C 368.23401,524.40141 367.03945,535.10985 367.15485,550.54458 C 377.45471,552.56405 384.88006,558.18560 393.39210,564.77210 C 392.05776,551.92611 392.85625,540.32613 396.52928,525.12407 C 389.69989,517.98019 381.34343,514.01524 371.39903,512.20344 z " + id="path16031" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16063);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 367.13962,550.28811 C 368.78338,549.07533 370.46773,548.54643 372.17743,548.44496 C 372.16140,537.09348 373.51744,524.28799 376.09641,513.29722 C 374.41326,512.88239 373.08219,512.61826 371.39903,512.20345 C 368.25601,524.77185 366.82774,537.32426 367.13962,550.28811 z " + id="path16033" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16061);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 372.27306,548.61086 C 378.98567,550.41431 387.62031,554.24837 392.91670,559.65311 C 393.14908,561.64103 393.16988,562.95518 393.38702,564.68663 C 384.99091,558.60796 378.33494,552.94075 367.14470,550.37360 C 368.62932,549.37044 370.20956,548.53316 372.27306,548.61086 z " + id="path16035" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16059);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 407.81322,534.53959 C 404.14855,546.95148 402.55714,557.90172 402.14902,573.74768 C 412.65178,576.17185 420.08126,582.19505 428.59321,589.24575 C 427.66194,576.01528 428.87723,564.13642 433.16581,548.65853 C 426.39991,541.09313 417.95822,536.73849 407.81322,534.53959 z " + id="path16037" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16057);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 402.14214,573.48394 C 403.87065,572.29523 405.61748,571.80983 407.37577,571.76402 C 407.74658,560.11245 409.57526,547.01533 412.59725,535.82249 C 410.88383,535.33931 409.52666,535.02279 407.81322,534.53960 C 404.15848,547.33244 402.26428,560.16737 402.14214,573.48394 z " + id="path16039" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16055);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 407.46824,571.93756 C 414.29646,574.01762 423.02814,578.24740 428.27993,583.97546 C 428.45060,586.02377 428.42714,587.37330 428.59093,589.15784 C 420.18064,582.63234 413.54238,576.58852 402.14444,573.57187 C 403.70245,572.59287 405.35296,571.78741 407.46824,571.93756 z " + id="path16041" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16053);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 443.79507,558.33897 C 440.34856,571.39960 439.02073,582.87237 439.07607,599.41690 C 450.10724,601.62714 458.04135,607.68559 467.13598,614.78315 C 465.76265,601.00802 466.66989,588.57786 470.67421,572.29949 C 463.38562,564.61195 454.44614,560.32503 443.79507,558.33897 z " + id="path16043" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16051);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 439.06090,599.14195 C 440.82816,597.84928 442.63590,597.28983 444.46892,597.18863 C 444.50201,585.02125 446.01222,571.30142 448.82520,559.53217 C 447.02292,559.08007 445.59737,558.79107 443.79507,558.33899 C 440.37049,571.79675 438.78399,585.24501 439.06090,599.14195 z " + id="path16045" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient16049);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 444.57069,597.36688 C 451.75774,599.32969 460.99598,603.47752 466.64909,609.29416 C 466.88938,611.42596 466.90586,612.83466 467.13093,614.69150 C 458.15830,608.13879 451.04906,602.03481 439.06595,599.23359 C 440.66170,598.16491 442.35924,597.27445 444.57069,597.36688 z " + id="path16047" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="Building3-Entrance"> + <path + style="fill:url(#radialGradient21393);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 385.77538,591.50123 C 382.11071,603.91313 381.50841,617.83066 382.33666,633.92389 C 393.58123,638.32626 420.79266,653.25133 432.02463,661.04384 C 431.09335,647.81337 430.82499,633.95632 435.11357,618.47842 C 428.34767,610.91303 395.92038,594.68923 385.77538,591.50123 z " + id="path17585" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.59169549" + d="M 409.78664,602.56421 C 405.50055,616.41157 404.85116,631.46531 406.00511,645.80721" + id="path17589" + sodipodi:nodetypes="cc" /> + </g> + <g + id="Building3-Windows-Right"> + <path + style="fill:url(#linearGradient20306);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 518.90832,432.04928 C 514.74711,444.90008 513.29020,456.53285 512.43347,473.05529 C 523.82735,466.59608 528.90891,462.55525 539.35305,460.11723 C 539.74373,446.53799 542.08672,434.92871 545.72901,418.14385 C 533.36090,421.34559 528.93241,424.59332 518.90832,432.04928 z " + id="path20304" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient20310);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 512.94918,468.85078 C 518.45053,464.94044 526.13016,461.19433 534.96318,457.85160 C 536.58951,458.36417 537.59358,458.83169 539.47053,460.07148 C 527.42628,463.68688 520.78964,468.35435 512.61362,472.66709 L 512.94918,468.85078 z " + id="path20308" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21072);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 535.05333,457.77926 C 536.47561,458.46918 537.89788,459.15910 539.32016,459.84903 C 540.13266,446.30303 542.18583,434.17494 545.47967,418.41347 C 543.65019,418.57379 542.61829,418.73411 541.05467,419.69201 C 537.90218,432.12190 535.99035,445.17213 535.05333,457.77926 z " + id="path21070" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21842);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 565.76688,412.45716 C 561.86110,424.51914 560.49362,435.43786 559.68948,450.94610 C 570.38397,444.88338 575.15361,441.09058 584.95666,438.80222 C 585.32336,426.05651 587.52253,415.15984 590.94124,399.40528 C 579.33232,402.41049 575.17567,405.45887 565.76688,412.45716 z " + id="path21832" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21840);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 560.17353,446.99968 C 565.33719,443.32936 572.54543,439.81320 580.83625,436.67566 C 582.36275,437.15676 583.30519,437.59559 585.06693,438.75928 C 573.76199,442.15275 567.53272,446.53372 559.85857,450.58173 L 560.17353,446.99968 z " + id="path21834" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21838);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 580.92087,436.60776 C 582.25584,437.25533 583.59081,437.90290 584.92579,438.55048 C 585.68841,425.83597 587.61555,414.45234 590.70721,399.65835 C 588.99003,399.80883 588.02147,399.95931 586.55383,400.85841 C 583.59485,412.52532 581.80037,424.77449 580.92087,436.60776 z " + id="path21836" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21866);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 504.62812,506.44829 C 500.46691,519.29909 499.01000,530.93186 498.15327,547.45430 C 509.54715,540.99509 514.62871,536.95426 525.07285,534.51624 C 525.46353,520.93700 527.80652,509.32772 531.44881,492.54286 C 519.08070,495.74460 514.65221,498.99233 504.62812,506.44829 z " + id="path21844" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21864);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 498.66898,543.24979 C 504.17033,539.33945 511.84996,535.59334 520.68298,532.25061 C 522.30931,532.76318 523.31338,533.23070 525.19033,534.47049 C 513.14608,538.08589 506.50944,542.75336 498.33342,547.06610 L 498.66898,543.24979 z " + id="path21846" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21862);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 520.77313,532.17827 C 522.19541,532.86819 523.61768,533.55811 525.03996,534.24804 C 525.85246,520.70204 527.90563,508.57395 531.19947,492.81248 C 529.36999,492.97280 528.33809,493.13312 526.77447,494.09102 C 523.62198,506.52091 521.71015,519.57114 520.77313,532.17827 z " + id="path21848" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21860);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 551.48668,486.85617 C 547.58090,498.91815 546.21342,509.83687 545.40928,525.34511 C 556.10377,519.28239 560.87341,515.48959 570.67646,513.20123 C 571.04316,500.45552 573.24233,489.55885 576.66104,473.80429 C 565.05212,476.80950 560.89547,479.85788 551.48668,486.85617 z " + id="path21850" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21858);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 545.89333,521.39869 C 551.05699,517.72837 558.26523,514.21221 566.55605,511.07467 C 568.08255,511.55577 569.02499,511.99460 570.78673,513.15829 C 559.48179,516.55176 553.25252,520.93273 545.57837,524.98074 L 545.89333,521.39869 z " + id="path21852" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21856);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 566.64067,511.00677 C 567.97564,511.65434 569.31061,512.30191 570.64559,512.94949 C 571.40821,500.23498 573.33535,488.85135 576.42701,474.05736 C 574.70983,474.20784 573.74127,474.35832 572.27363,475.25742 C 569.31465,486.92433 567.52017,499.17350 566.64067,511.00677 z " + id="path21854" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21890);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 496.82964,578.76149 C 492.66843,591.61229 491.21152,603.24506 490.35479,619.76750 C 501.74867,613.30829 506.83023,609.26746 517.27437,606.82944 C 517.66505,593.25020 520.00804,581.64092 523.65033,564.85606 C 511.28222,568.05780 506.85373,571.30553 496.82964,578.76149 z " + id="path21868" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21888);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 490.87050,615.56299 C 496.37185,611.65265 504.05148,607.90654 512.88450,604.56381 C 514.51083,605.07638 515.51490,605.54390 517.39185,606.78369 C 505.34760,610.39909 498.71096,615.06656 490.53494,619.37930 L 490.87050,615.56299 z " + id="path21870" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21886);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 512.97465,604.49147 C 514.39693,605.18139 515.81920,605.87131 517.24148,606.56124 C 518.05398,593.01524 520.10715,580.88715 523.40099,565.12568 C 521.57151,565.28600 520.53961,565.44632 518.97599,566.40422 C 515.82350,578.83411 513.91167,591.88434 512.97465,604.49147 z " + id="path21872" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21884);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 543.68820,559.16937 C 539.78242,571.23135 538.41494,582.15007 537.61080,597.65831 C 548.30529,591.59559 553.07493,587.80279 562.87798,585.51443 C 563.24468,572.76872 565.44385,561.87205 568.86256,546.11749 C 557.25364,549.12270 553.09699,552.17108 543.68820,559.16937 z " + id="path21874" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21882);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 538.09485,593.71189 C 543.25851,590.04157 550.46675,586.52541 558.75757,583.38787 C 560.28407,583.86897 561.22651,584.30780 562.98825,585.47149 C 551.68331,588.86496 545.45404,593.24593 537.77989,597.29394 L 538.09485,593.71189 z " + id="path21876" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient21880);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 558.84219,583.31997 C 560.17716,583.96754 561.51213,584.61511 562.84711,585.26269 C 563.60973,572.54818 565.53687,561.16455 568.62853,546.37056 C 566.91135,546.52104 565.94279,546.67152 564.47515,547.57062 C 561.51617,559.23753 559.72169,571.48670 558.84219,583.31997 z " + id="path21878" + sodipodi:nodetypes="ccccc" /> + </g> + </g> + <g + id="Building1"> + <path + style="fill:url(#radialGradient23847);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.31000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 112.14413,656.10926 C 167.16337,649.59527 349.28155,637.14671 399.35531,644.48009 C 414.91092,597.75337 445.78379,491.20335 451.59919,461.41128 C 441.72835,451.58032 421.07016,433.58929 393.48831,408.41187 C 361.45551,407.96187 341.29186,423.07468 305.70449,427.02926 C 193.97680,490.32781 152.59862,499.10240 119.00957,533.34624 L 112.14413,656.10926 z " + id="Building1-Shadow" + sodipodi:nodetypes="ccccccc" /> + <g + id="Building1-Walls"> + <path + style="fill:url(#radialGradient22961);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 124.10403,147.83744 C 156.83270,155.85596 207.23481,191.36655 225.23556,217.05854 C 201.50730,250.44175 165.01484,286.77057 135.39542,314.26263 C 108.39428,279.73390 54.882937,243.24146 28.863662,193.00298 C 60.610452,172.38392 70.756334,156.67418 124.10403,147.83744 z " + id="path1520" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22945);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 30.336450,194.96669 C 14.626698,323.09936 16.590419,466.94177 24.445294,570.52795 C 53.573792,599.00188 82.702291,627.47581 111.83079,655.94973 C 120.17660,536.49015 130.48613,391.50224 138.83194,272.04266 C 103.32134,237.84122 74.683770,210.51280 30.336450,194.96669 z " + id="path1522" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22937);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 133.43170,267.13336 C 163.37841,227.69534 200.19814,219.67683 226.21742,217.54947 C 202.48915,365.64661 194.47063,503.92515 193.32513,605.87489 C 166.32400,622.40286 139.32285,638.93083 112.32172,655.45880 C 107.57607,528.30800 119.52202,378.57442 133.43170,267.13336 z " + id="path1524" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="Building1-Windows-Right"> + <path + style="fill:url(#linearGradient1638);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 187.51868,247.02627 C 183.35747,259.87707 181.90056,273.76571 181.04383,290.28815 C 192.43771,283.82894 197.51927,279.78811 207.96341,277.35009 C 208.35409,263.77085 210.69708,252.16157 214.33937,235.37671 C 201.97126,238.57845 197.54277,239.57031 187.51868,247.02627 z " + id="path1599" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1616);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 203.63248,275.33945 C 205.05476,276.02937 206.47703,276.71929 207.89931,277.40922 C 208.71181,263.86322 210.76498,251.73513 214.05882,235.97366 C 212.22934,236.13398 211.19744,236.29430 209.63382,237.25220 C 206.48133,249.68209 204.56950,262.73232 203.63248,275.33945 z " + id="path1603" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1614);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 181.46555,286.22542 C 186.96690,282.31508 194.64653,278.56897 203.47955,275.22624 C 205.10588,275.73881 206.10995,276.20633 207.98690,277.44612 C 195.94265,281.06152 189.30601,285.72899 181.12999,290.04173 L 181.46555,286.22542 z " + id="path1607" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1634);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 145.73309,272.31916 C 141.57188,285.16996 140.11497,299.05860 139.25824,315.58104 C 150.52679,308.24455 156.10966,303.70241 166.42847,299.00852 C 166.81915,285.42928 169.16214,273.82000 172.80443,257.03514 C 160.43632,261.49014 155.75718,264.86320 145.73309,272.31916 z " + id="path1624" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1632);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 162.09754,296.99788 C 163.51982,297.68780 164.94209,298.37772 166.36437,299.06765 C 167.17687,285.52165 169.23004,273.39356 172.52388,257.63209 C 170.69440,257.79241 169.66250,257.95273 168.09888,258.91063 C 164.94639,271.34052 163.03456,284.39075 162.09754,296.99788 z " + id="path1626" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1630);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 139.67996,310.39038 C 145.18131,306.48004 153.61290,301.23001 161.94461,296.88467 C 163.57094,297.39724 164.57501,297.86476 166.45196,299.10455 C 155.41032,303.97321 147.52042,310.89656 139.34440,315.20930 L 139.67996,310.39038 z " + id="path1628" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1662);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 178.91898,323.56922 C 174.75777,336.42002 173.30086,350.30866 172.44413,366.83110 C 183.83801,360.37189 188.91957,356.33106 199.36371,353.89304 C 199.75439,340.31380 202.09738,328.70452 205.73967,311.91966 C 193.37156,315.12140 188.94307,316.11326 178.91898,323.56922 z " + id="path1640" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1660);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 195.03278,351.88240 C 196.45506,352.57232 197.87733,353.26224 199.29961,353.95217 C 200.11211,340.40617 202.16528,328.27808 205.45912,312.51661 C 203.62964,312.67693 202.59774,312.83725 201.03412,313.79515 C 197.88163,326.22504 195.96980,339.27527 195.03278,351.88240 z " + id="path1642" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1658);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 172.86585,362.76837 C 178.36720,358.85803 186.04683,355.11192 194.87985,351.76919 C 196.50618,352.28176 197.51025,352.74928 199.38720,353.98907 C 187.34295,357.60447 180.70631,362.27194 172.53029,366.58468 L 172.86585,362.76837 z " + id="path1644" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1656);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 138.19682,347.44420 C 134.03561,360.29500 132.57870,374.18364 131.72197,390.70608 C 142.99052,383.36959 148.57339,378.82745 158.89220,374.13356 C 159.28288,360.55432 161.62587,348.94504 165.26816,332.16018 C 152.90005,336.61518 148.22091,339.98824 138.19682,347.44420 z " + id="path1646" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1654);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 154.56127,372.12292 C 155.98355,372.81284 157.40582,373.50276 158.82810,374.19269 C 159.64060,360.64669 161.69377,348.51860 164.98761,332.75713 C 163.15813,332.91745 162.12623,333.07777 160.56261,334.03567 C 157.41012,346.46556 155.49829,359.51579 154.56127,372.12292 z " + id="path1648" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1652);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 132.14369,385.51542 C 137.64504,381.60508 146.07663,376.35505 154.40834,372.00971 C 156.03467,372.52228 157.03874,372.98980 158.91569,374.22959 C 147.87405,379.09825 139.98415,386.02160 131.80813,390.33434 L 132.14369,385.51542 z " + id="path1650" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1686);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 171.65221,402.44024 C 167.49100,415.29104 166.03409,429.17968 165.17736,445.70212 C 176.57124,439.24291 181.65280,435.20208 192.09694,432.76406 C 192.48762,419.18482 194.83061,407.57554 198.47290,390.79068 C 186.10479,393.99242 181.67630,394.98428 171.65221,402.44024 z " + id="path1664" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1684);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 187.76601,430.75342 C 189.18829,431.44334 190.61056,432.13326 192.03284,432.82319 C 192.84534,419.27719 194.89851,407.14910 198.19235,391.38763 C 196.36287,391.54795 195.33097,391.70827 193.76735,392.66617 C 190.61486,405.09606 188.70303,418.14629 187.76601,430.75342 z " + id="path1666" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1682);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 165.59908,441.63939 C 171.10043,437.72905 178.78006,433.98294 187.61308,430.64021 C 189.23941,431.15278 190.24348,431.62030 192.12043,432.86009 C 180.07618,436.47549 173.43954,441.14296 165.26352,445.45570 L 165.59908,441.63939 z " + id="path1668" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1680);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 133.05691,426.31523 C 128.89570,439.16603 127.43879,453.05467 126.58206,469.57711 C 137.85061,462.24062 143.43348,457.69848 153.75229,453.00459 C 154.14297,439.42535 156.48596,427.81607 160.12825,411.03121 C 147.76014,415.48621 143.08100,418.85927 133.05691,426.31523 z " + id="path1670" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1678);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 149.42136,450.99395 C 150.84364,451.68387 152.26591,452.37379 153.68819,453.06372 C 154.50069,439.51772 156.55386,427.38963 159.84770,411.62816 C 158.01822,411.78848 156.98632,411.94880 155.42270,412.90670 C 152.27021,425.33659 150.35838,438.38682 149.42136,450.99395 z " + id="path1672" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1676);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 127.00378,464.38645 C 132.50513,460.47611 140.93672,455.22608 149.26843,450.88074 C 150.89476,451.39331 151.89883,451.86083 153.77578,453.10062 C 142.73414,457.96928 134.84424,464.89263 126.66822,469.20537 L 127.00378,464.38645 z " + id="path1674" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1710);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 165.62611,483.96984 C 161.46490,496.82064 160.00799,510.70928 159.15126,527.23172 C 170.54514,520.77251 175.62670,516.73168 186.07084,514.29366 C 186.46152,500.71442 188.80451,489.10514 192.44680,472.32028 C 180.07869,475.52202 175.65020,476.51388 165.62611,483.96984 z " + id="path1688" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1708);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 181.73991,512.28302 C 183.16219,512.97294 184.58446,513.66286 186.00674,514.35279 C 186.81924,500.80679 188.87241,488.67870 192.16625,472.91723 C 190.33677,473.07755 189.30487,473.23787 187.74125,474.19577 C 184.58876,486.62566 182.67693,499.67589 181.73991,512.28302 z " + id="path1690" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1706);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 159.57298,523.16899 C 165.07433,519.25865 172.75396,515.51254 181.58698,512.16981 C 183.21331,512.68238 184.21738,513.14990 186.09433,514.38969 C 174.05008,518.00509 167.41344,522.67256 159.23742,526.98530 L 159.57298,523.16899 z " + id="path1692" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1704);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 128.09424,507.84482 C 123.93303,520.69562 122.47612,534.58426 121.61939,551.10670 C 132.88794,543.77021 138.47081,539.22807 148.78962,534.53418 C 149.18030,520.95494 151.52329,509.34566 155.16558,492.56080 C 142.79747,497.01580 138.11833,500.38886 128.09424,507.84482 z " + id="path1694" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1702);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 144.45869,532.52354 C 145.88097,533.21346 147.30324,533.90338 148.72552,534.59331 C 149.53802,521.04731 151.59119,508.91922 154.88503,493.15775 C 153.05555,493.31807 152.02365,493.47839 150.46003,494.43629 C 147.30754,506.86618 145.39571,519.91641 144.45869,532.52354 z " + id="path1696" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient1700);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 122.04111,545.91604 C 127.54246,542.00570 135.97405,536.75567 144.30576,532.41033 C 145.93209,532.92290 146.93616,533.39042 148.81311,534.63021 C 137.77147,539.49887 129.88157,546.42222 121.70555,550.73496 L 122.04111,545.91604 z " + id="path1698" + sodipodi:nodetypes="ccccc" /> + </g> + <g + id="Building1-Entrance"> + <path + style="fill:url(#radialGradient22171);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 137.85280,591.26602 C 136.90815,604.41974 137.29494,620.06820 139.60683,636.40870 C 156.04416,628.69463 168.41913,618.39773 180.14565,612.09562 C 179.21437,598.86515 178.45147,586.49900 180.02003,570.27929 C 163.11589,575.81943 152.20146,583.16425 137.85280,591.26602 z " + id="path22167" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.59169549" + d="M 158.77676,579.45978 C 157.97010,594.99562 158.90677,608.48088 161.54436,623.31732" + id="path22169" + sodipodi:nodetypes="cc" /> + </g> + <g + id="Building1-Windows-Left1"> + <path + style="fill:url(#linearGradient22973);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 85.697189,259.96990 C 81.303061,273.69841 79.254510,285.85171 78.399979,303.48641 C 90.033942,306.45096 98.154862,313.34559 107.45519,321.41168 C 106.75223,306.65559 108.40541,293.45877 113.57166,276.33188 C 106.22863,267.73677 96.938456,262.67458 85.697189,259.96990 z " + id="path22963" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22971);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 78.398984,303.19256 C 80.353749,301.91253 82.311157,301.41614 84.270218,301.40949 C 84.977304,288.44444 87.344290,273.90651 90.991953,261.51924 C 89.096210,260.93792 87.592944,260.55122 85.697189,259.96991 C 81.304507,274.12287 78.871208,288.36719 78.398984,303.19256 z " + id="path22965" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22969);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 84.368828,301.60508 C 91.919747,304.09369 101.53599,309.02416 107.23938,315.53514 C 107.37775,317.82028 107.31753,319.32247 107.45487,321.31373 C 98.254479,313.83503 91.015139,306.93742 78.399307,303.29049 C 80.158928,302.23971 82.017172,301.38447 84.368828,301.60508 z " + id="path22967" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22985);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 41.959218,230.38470 C 38.512702,243.44533 37.184873,254.91809 37.240219,271.46263 C 48.271387,273.67286 56.205492,279.73131 65.300124,286.82887 C 63.926798,273.05374 64.834032,260.62359 68.838354,244.34521 C 61.549766,236.65767 52.610287,232.37076 41.959218,230.38470 z " + id="path22975" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22983);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 37.225041,271.18768 C 38.992306,269.89500 40.800042,269.33556 42.633070,269.23436 C 42.666154,257.06697 44.176362,243.34715 46.989346,231.57789 C 45.187065,231.12579 43.761512,230.83680 41.959218,230.38471 C 38.534636,243.84247 36.948133,257.29073 37.225041,271.18768 z " + id="path22977" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22981);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 42.734835,269.41261 C 49.921886,271.37541 59.160131,275.52324 64.813234,281.33989 C 65.053522,283.47168 65.070001,284.88039 65.295073,286.73722 C 56.322448,280.18451 49.213207,274.08053 37.230092,271.27932 C 38.825850,270.21064 40.523386,269.32018 42.734835,269.41261 z " + id="path22979" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23009);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 81.169796,338.08468 C 76.775667,351.81319 74.727117,363.96649 73.872585,381.60119 C 85.506549,384.56574 93.627468,391.46036 102.92779,399.52646 C 102.22483,384.77037 103.87801,371.57355 109.04427,354.44666 C 101.70123,345.85155 92.411062,340.78936 81.169796,338.08468 z " + id="path22987" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23007);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 73.871590,381.30734 C 75.826355,380.02731 77.783764,379.53092 79.742825,379.52427 C 80.449910,366.55922 82.816896,352.02129 86.464560,339.63402 C 84.568816,339.05270 83.065550,338.66600 81.169796,338.08469 C 76.777113,352.23765 74.343815,366.48197 73.871590,381.30734 z " + id="path22989" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23005);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 79.841434,379.71986 C 87.392353,382.20847 97.008599,387.13894 102.71199,393.64992 C 102.85036,395.93506 102.79014,397.43725 102.92747,399.42851 C 93.727085,391.94981 86.487745,385.05220 73.871914,381.40527 C 75.631534,380.35449 77.489778,379.49925 79.841434,379.71986 z " + id="path22991" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23003);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 36.442727,310.97221 C 32.996211,324.03284 31.668382,335.50561 31.723728,352.05014 C 42.754897,354.26038 50.689001,360.31883 59.783633,367.41639 C 58.410308,353.64126 59.317541,341.21110 63.321863,324.93273 C 56.033275,317.24519 47.093796,312.95828 36.442727,310.97221 z " + id="path22993" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23001);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 31.708550,351.77519 C 33.475815,350.48252 35.283551,349.92307 37.116580,349.82188 C 37.149664,337.65449 38.659871,323.93467 41.472855,312.16541 C 39.670574,311.71331 38.245021,311.42432 36.442727,310.97223 C 33.018145,324.42999 31.431642,337.87825 31.708550,351.77519 z " + id="path22995" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient22999);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 37.218344,350.00013 C 44.405395,351.96293 53.643640,356.11076 59.296743,361.92740 C 59.537031,364.05920 59.553510,365.46790 59.778582,367.32474 C 50.805957,360.77203 43.696716,354.66805 31.713601,351.86683 C 33.309360,350.79816 35.006896,349.90769 37.218344,350.00013 z " + id="path22997" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23033);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 74.664212,415.24206 C 71.774104,429.36395 71.046294,441.66717 72.095869,459.29135 C 83.981433,460.98576 92.797626,466.96572 102.91253,473.98332 C 100.62452,459.38875 100.84688,446.09065 104.13864,428.50700 C 95.912678,420.75266 86.131376,416.72041 74.664212,415.24206 z " + id="path23011" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23031);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 72.063234,458.99931 C 73.868781,457.51621 75.761347,456.81190 77.708298,456.59432 C 77.015025,443.62852 77.802610,428.92023 80.095035,416.21218 C 78.147713,415.83840 76.611544,415.61584 74.664213,415.24207 C 71.821253,429.78578 70.936121,444.20931 72.063234,458.99931 z " + id="path23013" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23029);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 77.827398,456.77815 C 85.602408,458.43911 95.693706,462.30530 102.06511,468.16419 C 102.44877,470.42115 102.55068,471.92109 102.90166,473.88597 C 92.949373,467.44158 85.009312,461.36372 72.074103,459.09664 C 73.710327,457.86247 75.465661,456.81208 77.827398,456.77815 z " + id="path23015" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23027);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 30.679775,387.10165 C 28.186510,400.37728 27.691593,411.91602 28.942900,428.41327 C 40.104995,429.82021 48.456339,435.28919 58.040300,441.71067 C 55.674679,428.07087 55.680885,415.60766 58.497865,399.08238 C 50.672569,391.94190 41.446557,388.31249 30.679775,387.10165 z " + id="path23017" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23025);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 28.907884,428.14012 C 30.577069,426.72307 32.339629,426.03439 34.160546,425.80095 C 33.313888,413.66301 33.828253,399.86989 35.783003,387.92807 C 33.952753,387.60745 32.510037,387.42228 30.679775,387.10167 C 28.237098,400.77180 27.627004,414.29957 28.907884,428.14012 z " + id="path23019" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23023);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 34.274930,425.97137 C 41.585078,427.40943 51.099020,430.87853 57.157851,436.27125 C 57.551631,438.38009 57.669911,439.78392 58.028636,441.61963 C 48.605754,435.73275 41.073823,430.15871 28.919547,428.23117 C 30.433869,427.04992 32.062585,426.03905 34.274930,425.97137 z " + id="path23021" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23057);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 75.956288,494.84892 C 72.646996,508.87850 71.553191,521.15460 72.077558,538.80221 C 83.907402,540.84975 92.541639,547.08955 102.44311,554.40521 C 100.59066,539.74899 101.20886,526.46340 105.02270,508.98554 C 97.031261,500.98973 87.374352,496.66803 75.956288,494.84892 z " + id="path23035" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23055);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 72.053631,538.50932 C 73.902536,537.08065 75.815233,536.43300 77.767800,536.27348 C 77.460878,523.29279 78.686041,508.61447 81.355820,495.98031 C 79.420490,495.54871 77.891629,495.28051 75.956288,494.84894 C 72.681565,509.30154 71.367377,523.69233 72.053631,538.50932 z " + id="path23037" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23053);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.4443835;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 77.881373,536.46078 C 85.603482,538.35249 95.575195,542.51743 101.76933,548.56343 C 102.08562,550.83081 102.14282,552.33311 102.43515,554.30758 C 92.679150,547.56972 84.923571,541.25815 72.061598,538.60693 C 73.733844,537.42204 75.519672,536.42438 77.881373,536.46078 z " + id="path23039" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23051);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 31.549492,466.93292 C 28.973721,480.19278 28.407060,491.72822 29.555756,508.23292 C 40.708885,509.70925 49.026061,515.23007 58.569904,521.71101 C 56.289146,508.05677 56.372855,495.59383 59.292542,479.08640 C 51.511802,471.89739 42.308536,468.21068 31.549492,466.93292 z " + id="path23041" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23049);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 29.522439,507.95957 C 31.200404,506.55292 32.967211,505.87522 34.789545,505.65310 C 34.018382,493.51012 34.618510,479.72050 36.647482,467.79105 C 34.819261,467.45906 33.377726,467.26491 31.549493,466.93293 C 29.021856,480.58761 28.327652,494.11132 29.522439,507.95957 z " + id="path23043" + sodipodi:nodetypes="ccccc" /> + <path + style="fill:url(#linearGradient23047);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 34.902868,505.82423 C 42.203931,507.30773 51.696116,510.83592 57.721296,516.26621 C 58.101955,518.37746 58.211503,519.78200 58.558805,521.61989 C 49.172713,515.67454 41.675590,510.05378 29.533535,508.05068 C 31.055173,506.87888 32.690145,505.87816 34.902868,505.82423 z " + id="path23045" + sodipodi:nodetypes="ccccc" /> + </g> + </g> + <path + sodipodi:type="arc" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:bevel;stroke-linecap:round;stroke-width:1.2500000;stroke:none;fill-rule:nonzero;fill-opacity:1.0;fill:url(#radialGradient8853)" + id="path8085" + sodipodi:cx="128.16368" + sodipodi:cy="698.27112" + sodipodi:rx="21.606138" + sodipodi:ry="11.294118" + d="M 149.76982 698.27112 A 21.606138 11.294118 0 1 1 106.55754,698.27112 A 21.606138 11.294118 0 1 1 149.76982 698.27112 z" + transform="matrix(1.193182,0.000000,0.000000,1.065217,-18.12974,-50.69543)" /> + <path + style="fill:url(#radialGradient6567);fill-opacity:1.0;fill-rule:evenodd;stroke:#052702;stroke-width:1.2500000;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;stroke-dasharray:none;stroke-miterlimit:4.0000000" + d="M 129.14578,698.02557 C 119.48849,697.28900 111.05882,686.97698 117.85166,681.82097 C 106.80307,677.23785 128.65473,661.60613 132.58312,666.59846 C 137.49361,661.52429 152.47059,665.78005 150.26087,670.52685 C 154.51662,671.42711 156.80818,678.95652 152.71611,682.80307 C 155.49872,684.68542 151.40665,692.21483 143.38619,695.07928 C 138.88491,694.34271 134.62916,693.85166 129.14578,698.02557 z " + id="path5787" + sodipodi:nodetypes="ccccccc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000pt;stroke:#083604;fill-rule:evenodd;fill-opacity:0.75000000;fill:none" + d="M 134.30179,685.01279 C 134.54731,681.98465 138.23018,681.16624 139.45780,682.55754" + id="path5789" + sodipodi:nodetypes="cc" /> + <path + style="stroke-opacity:1.0000000;stroke-linejoin:miter;stroke-linecap:butt;stroke-width:1.0000000pt;stroke:#083604;fill-rule:evenodd;fill-opacity:0.75000000;fill:none" + d="M 125.21739,676.17391 C 128.00000,671.18158 135.93862,672.08184 134.30179,675.92839" + id="path5793" + sodipodi:nodetypes="cc" /> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="g9182" + transform="matrix(0.211650,0.000000,0.000000,0.211650,236.9804,952.8312)"> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient4802);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + id="path4177" + sodipodi:cx="384.77264" + sodipodi:cy="595.91406" + sodipodi:rx="234.44287" + sodipodi:ry="86.499275" + d="M 619.21552 595.91406 A 234.44287 86.499275 0 1 1 150.32977,595.91406 A 234.44287 86.499275 0 1 1 619.21552 595.91406 z" + transform="matrix(0.536249,0.000000,0.000000,0.536249,-1035.899,-1615.047)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient4804);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:3.7500000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.78451180" + id="path4803" + sodipodi:cx="384.77264" + sodipodi:cy="595.91406" + sodipodi:rx="234.44287" + sodipodi:ry="86.499275" + d="M 619.21552 595.91406 A 234.44287 86.499275 0 1 1 150.32977,595.91406 A 234.44287 86.499275 0 1 1 619.21552 595.91406 z" + transform="matrix(0.230960,1.213272e-2,-2.793171e-2,0.240387,-1005.113,-1443.500)" /> + <path + style="stroke-dasharray:none;stroke-opacity:0.78451180;stroke-miterlimit:4.0000000;stroke-linejoin:bevel;stroke-linecap:round;stroke-width:5.9059768;stroke:#361e00;fill-rule:evenodd;fill-opacity:1.0000000;fill:url(#linearGradient2313)" + d="M -982.22956,-1437.0394 L -987.20599,-1292.7155 C -962.75791,-1276.4722 -936.92209,-1279.1883 -929.87547,-1291.9348 L -934.39950,-1436.1731 L -982.22956,-1437.0394 z " + id="path9186" + sodipodi:nodetypes="ccccc" /> + <path + style="stroke-dasharray:none;fill:url(#radialGradient1686);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#052702;stroke-width:5.9059768;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M -1045.2971,-1602.2197 C -1040.9527,-1623.9539 -981.58586,-1646.9676 -951.64962,-1634.7927 C -923.70151,-1655.1342 -843.29020,-1624.9318 -846.69204,-1601.7673 C -815.74014,-1591.3265 -803.98209,-1541.2184 -819.09544,-1509.0246 C -811.07419,-1482.9360 -842.72023,-1435.7342 -875.64585,-1430.7588 C -891.88583,-1413.3291 -945.23391,-1407.4157 -974.26978,-1422.6155 C -1002.6980,-1410.2488 -1038.8038,-1419.6350 -1063.3933,-1448.8549 C -1091.5620,-1461.0599 -1110.7736,-1500.7760 -1094.1567,-1533.4544 C -1100.2630,-1564.0537 -1080.1377,-1596.5724 -1045.2971,-1602.2197 z " + id="path1061" + sodipodi:nodetypes="ccccccccc" /> + </g> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#083604;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 47.889951,620.93321 C 49.444940,617.65955 53.946220,617.57771 53.782535,620.68769" + id="path9948" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#083604;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 14.659920,641.43811 C 17.442530,636.44578 25.381150,640.78338 23.744320,644.62993" + id="path9950" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#083604;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 37.577931,644.74907 C 40.606065,637.79254 49.035734,638.20175 51.572817,644.50355" + id="path9952" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#083604;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 37.823456,633.20942 C 37.168725,627.97157 47.317064,626.17106 46.907856,629.77208" + id="path9954" + sodipodi:nodetypes="cc" /> + </g> + <path + style="fill:url(#radialGradient22165);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 384.53049,332.74288 L 571.26952,329.24589 L 485.94307,284.48448 L 384.53049,332.74288 z " + id="path21397" + sodipodi:nodetypes="cccc" /> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/mainmenu/newgame_back.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/mainmenu/newgame_back.png differ diff -Nru lincity-ng-2.0/data/images/mainmenu/newgame_back.svg lincity-ng-2.9~git20150314/data/images/mainmenu/newgame_back.svg --- lincity-ng-2.0/data/images/mainmenu/newgame_back.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/newgame_back.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,2548 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1024.0000px" + height="768.00000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.47pre4 r22446" + sodipodi:docname="newgame_back.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/newgame_back.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000" + version="1.1"> + <defs + id="defs3"> + <inkscape:perspective + sodipodi:type="inkscape:persp3d" + inkscape:vp_x="0 : 384 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_z="1024 : 384 : 1" + inkscape:persp3d-origin="512 : 256 : 1" + id="perspective334" /> + <linearGradient + id="linearGradient2542"> + <stop + id="stop2544" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop2546" + offset="1.0000000" + style="stop-color:#e2ecff;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="787.10168" + fy="473.20316" + fx="823.91541" + cy="473.20316" + cx="823.91541" + gradientTransform="matrix(1.162983,0.000000,0.000000,0.859900,8.931699e-3,1.615128e-2)" + id="radialGradient2550" + xlink:href="#linearGradient2542" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,59.29371,150.9788)" + gradientUnits="userSpaceOnUse" + id="linearGradient3164" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,59.29371,150.9788)" + gradientUnits="userSpaceOnUse" + id="linearGradient3162" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,59.29371,150.9788)" + gradientUnits="userSpaceOnUse" + id="linearGradient3160" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-19.24287,143.8764)" + gradientUnits="userSpaceOnUse" + id="linearGradient3158" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-19.24287,143.8764)" + gradientUnits="userSpaceOnUse" + id="linearGradient3156" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-19.24287,143.8764)" + gradientUnits="userSpaceOnUse" + id="linearGradient3154" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,67.09219,78.66556)" + gradientUnits="userSpaceOnUse" + id="linearGradient3152" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,67.09219,78.66556)" + gradientUnits="userSpaceOnUse" + id="linearGradient3150" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,67.09219,78.66556)" + gradientUnits="userSpaceOnUse" + id="linearGradient3148" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,-11.44439,71.56316)" + gradientUnits="userSpaceOnUse" + id="linearGradient3146" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,-11.44439,71.56316)" + gradientUnits="userSpaceOnUse" + id="linearGradient3144" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,-11.44439,71.56316)" + gradientUnits="userSpaceOnUse" + id="linearGradient3142" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,81.37239,4.266576)" + gradientUnits="userSpaceOnUse" + id="linearGradient3140" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,81.37239,4.266576)" + gradientUnits="userSpaceOnUse" + id="linearGradient3138" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,81.37239,4.266576)" + gradientUnits="userSpaceOnUse" + id="linearGradient3136" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="251.97037" + x2="951.85889" + y1="252.73389" + x1="980.05762" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,2.835812,-2.835812)" + gradientUnits="userSpaceOnUse" + id="linearGradient3134" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="561.56354" + x2="433.36017" + y1="572.72632" + x1="444.73392" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,2.835812,-2.835812)" + gradientUnits="userSpaceOnUse" + id="linearGradient3132" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="337.93430" + x2="687.44537" + y1="357.65839" + x1="712.84912" + spreadMethod="pad" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,2.835812,-2.835812)" + gradientUnits="userSpaceOnUse" + id="linearGradient3130" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="radialGradient3128" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,44.48813,152.7824)" + gradientUnits="userSpaceOnUse" + id="linearGradient3126" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,44.48813,152.7824)" + gradientUnits="userSpaceOnUse" + id="linearGradient3124" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,44.48813,152.7824)" + gradientUnits="userSpaceOnUse" + id="linearGradient3122" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.550831,-4.041663e-2,2.824048e-2,1.083619,36.70750,135.0155)" + gradientUnits="userSpaceOnUse" + id="linearGradient3120" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.730570,-1.903956e-2,5.994802e-2,2.300273,36.70750,135.0155)" + gradientUnits="userSpaceOnUse" + id="linearGradient3118" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.989848,-2.579676e-2,4.424532e-2,1.697741,36.70750,135.0155)" + gradientUnits="userSpaceOnUse" + id="linearGradient3116" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.507985,-8.950081e-2,6.253724e-2,1.053680,-2.690666,135.3850)" + gradientUnits="userSpaceOnUse" + id="linearGradient3114" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.710385,-4.216225e-2,0.132753,2.236720,-2.690666,135.3850)" + gradientUnits="userSpaceOnUse" + id="linearGradient3112" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.962502,-5.712573e-2,9.797925e-2,1.650836,-2.690666,135.3850)" + gradientUnits="userSpaceOnUse" + id="linearGradient3110" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.618321,-5.394730e-2,3.769483e-2,1.130777,56.34194,71.89187)" + gradientUnits="userSpaceOnUse" + id="linearGradient3108" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.762363,-2.541363e-2,8.001749e-2,2.400380,56.34194,71.89187)" + gradientUnits="userSpaceOnUse" + id="linearGradient3106" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.032928,-3.443300e-2,5.905777e-2,1.771626,56.34194,71.89187)" + gradientUnits="userSpaceOnUse" + id="linearGradient3104" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.550144,-6.132119e-2,4.284719e-2,1.083139,31.87589,68.85415)" + gradientUnits="userSpaceOnUse" + id="linearGradient3102" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.730245,-2.888733e-2,9.095472e-2,2.299254,31.87589,68.85415)" + gradientUnits="userSpaceOnUse" + id="linearGradient3100" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.989412,-3.913949e-2,6.713013e-2,1.696989,31.87589,68.85415)" + gradientUnits="userSpaceOnUse" + id="linearGradient3098" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.508728,-7.593927e-2,5.306093e-2,1.054199,0.789503,59.90794)" + gradientUnits="userSpaceOnUse" + id="linearGradient3096" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.710735,-3.577338e-2,0.112636,2.237823,0.789503,59.90794)" + gradientUnits="userSpaceOnUse" + id="linearGradient3094" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.962977,-4.846939e-2,8.313217e-2,1.651650,0.789503,59.90794)" + gradientUnits="userSpaceOnUse" + id="linearGradient3092" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.619220,0.000000,0.000000,1.131405,78.14069,-12.23653)" + gradientUnits="userSpaceOnUse" + id="linearGradient3090" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.762786,0.000000,0.000000,2.401713,78.14069,-12.23653)" + gradientUnits="userSpaceOnUse" + id="linearGradient3088" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.551358,0.000000,0.000000,1.083986,54.27672,-17.11976)" + gradientUnits="userSpaceOnUse" + id="linearGradient3086" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.730817,0.000000,0.000000,2.301053,54.27672,-17.11976)" + gradientUnits="userSpaceOnUse" + id="linearGradient3084" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.990186,0.000000,0.000000,1.698318,54.27672,-17.11976)" + gradientUnits="userSpaceOnUse" + id="linearGradient3082" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.510638,0.000000,0.000000,1.055534,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3080" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.711635,0.000000,0.000000,2.240656,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3078" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(0.964196,0.000000,0.000000,1.653741,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3076" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.033502,0.000000,0.000000,1.772610,78.14069,-12.23653)" + gradientUnits="userSpaceOnUse" + id="linearGradient3074" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="293.98172" + x2="686.46759" + y1="215.95918" + x1="655.03217" + gradientTransform="matrix(0.842533,0.000000,0.000000,1.892543,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3072" + xlink:href="#linearGradient11991" + inkscape:collect="always" /> + <linearGradient + y2="269.62457" + x2="454.40619" + y1="230.83006" + x1="394.27765" + gradientTransform="matrix(0.818038,0.000000,0.000000,1.949213,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="linearGradient3070" + xlink:href="#linearGradient11999" + inkscape:collect="always" /> + <radialGradient + r="106.59798" + fy="344.21854" + fx="248.40041" + cy="344.21854" + cx="248.40041" + gradientTransform="matrix(1.671004,0.000000,0.000000,0.954234,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="radialGradient3068" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + r="109.04317" + fy="965.82007" + fx="202.21599" + cy="965.82007" + cx="202.21599" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,26.43917,-29.74596)" + gradientUnits="userSpaceOnUse" + id="radialGradient3066" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient22165" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient11999"> + <stop + style="stop-color:#e2e2e2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12001" /> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12003" /> + </linearGradient> + <linearGradient + id="linearGradient11991"> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11993" /> + <stop + style="stop-color:#8b8b8b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11995" /> + </linearGradient> + <linearGradient + id="linearGradient12007"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12009" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12011" /> + </linearGradient> + <linearGradient + id="linearGradient14361"> + <stop + style="stop-color:#c3cde9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14363" /> + <stop + style="stop-color:#698ef6;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14365" /> + </linearGradient> + <linearGradient + id="linearGradient19109"> + <stop + style="stop-color:#000000;stop-opacity:0.67871487;" + offset="0.0000000" + id="stop19111" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19113" /> + </linearGradient> + <linearGradient + id="linearGradient9030"> + <stop + style="stop-color:#00bfff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9032" /> + <stop + style="stop-color:#0021c8;stop-opacity:0.51405621;" + offset="1.0000000" + id="stop9034" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.73092371;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient3617" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,-1.360206,385.5420)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient1742" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,648.7695,483.3827)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4812" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4811" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4810" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient3554" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2931" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2308" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient2304"> + <stop + style="stop-color:#6a57ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2305" /> + <stop + style="stop-color:#1300a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2306" /> + </linearGradient> + <linearGradient + id="linearGradient4802"> + <stop + style="stop-color:#8879ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4803" /> + <stop + style="stop-color:#4e42a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4804" /> + </linearGradient> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="radialGradient5730" + gradientTransform="scale(0.823525,1.214293)" + cx="82.180733" + cy="211.67548" + fx="82.180733" + fy="211.67548" + r="111.52281" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6500" + gradientTransform="scale(1.075954,0.929408)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + x1="680.29120" + y1="721.96411" + x2="681.54474" + y2="737.44690" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6512" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.075954,0.929408)" + x1="651.09534" + y1="720.26569" + x2="652.25720" + y2="728.05103" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient9036" + gradientTransform="scale(1.016773,0.983503)" + x1="565.37469" + y1="274.94803" + x2="583.97906" + y2="295.30374" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient9044" + gradientTransform="scale(0.971157,1.0297)" + x1="597.34943" + y1="541.68359" + x2="607.99292" + y2="565.82843" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient10584" + gradientTransform="scale(0.924716,1.081414)" + x1="622.09137" + y1="247.68852" + x2="628.40155" + y2="259.02802" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient11352" + gradientTransform="matrix(0.959731,0,0,1.041959,0,258.1723)" + x1="596.21234" + y1="288.35770" + x2="600.57306" + y2="294.93091" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient12124" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient13654" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0.000000,0.000000,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient15946" + gradientTransform="scale(0.964397,1.036917)" + x1="591.66382" + y1="370.30008" + x2="618.34448" + y2="390.74063" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient15950" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.924716,0,0,1.081414,-4.379882,118.1634)" + x1="622.09137" + y1="247.68852" + x2="628.40155" + y2="259.02802" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient23468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,741.3971,-280.0799)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23470" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,755.6905,-135.5312)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23472" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,755.6905,-135.5312)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23474" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,755.6905,-135.5312)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23476" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,749.5288,-149.6013)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23478" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,749.5288,-149.6013)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23480" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,749.5288,-149.6013)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23482" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,718.3285,-149.3086)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23484" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,718.3285,-149.3086)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23486" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,718.3285,-149.3086)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23488" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,765.0778,-199.5904)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23490" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,765.0778,-199.5904)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23492" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,765.0778,-199.5904)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23494" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,745.7026,-201.9960)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23496" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,745.7026,-201.9960)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23498" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,745.7026,-201.9960)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23500" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,721.0845,-209.0808)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23502" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,721.0845,-209.0808)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,721.0845,-209.0808)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23506" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,782.3408,-266.2137)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,782.3408,-266.2137)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23510" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.763570,1.309637)" + spreadMethod="pad" + x1="990.44958" + y1="122.82517" + x2="1026.7732" + y2="145.52820" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23512" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,763.4423,-270.0809)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23514" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,763.4423,-270.0809)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,763.4423,-270.0809)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23518" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,741.3971,-280.0799)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23520" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,741.3971,-280.0799)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23522" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,741.3971,-280.0799)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient23524" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,741.3971,-280.0799)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient23526" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,741.3971,-280.0799)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient23528" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,741.3971,-280.0799)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient23530" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.146091,0.000000,0.000000,0.653803,364.2777,-102.2402)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="247.83467" + fy="776.96881" + fx="60.051296" + cy="776.96881" + cx="60.051296" + gradientTransform="matrix(1.883522,0.000000,0.000000,0.846568,19.44520,10.81907)" + id="radialGradient28433" + xlink:href="#linearGradient28427" + inkscape:collect="always" /> + <radialGradient + r="279.10022" + fy="823.55896" + fx="72.217499" + cy="823.55896" + cx="72.217499" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,19.44520,10.81907)" + gradientUnits="userSpaceOnUse" + id="radialGradient23847" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <linearGradient + spreadMethod="pad" + gradientUnits="userSpaceOnUse" + y2="864.99774" + x2="149.30901" + y1="611.94214" + x1="33.550251" + gradientTransform="matrix(1.709511,0.000000,0.000000,0.932741,19.44520,10.81907)" + id="linearGradient23831" + xlink:href="#linearGradient23833" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.099226,-8.979644e-2,0.154015,1.885338,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23057" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.811295,-6.627516e-2,0.208675,2.554449,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23055" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.722194,-0.140686,9.830286e-2,1.203356,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23053" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025909,-0.125048,0.214475,1.759586,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23051" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.757182,-9.229261e-2,0.290593,2.384068,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23049" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.607324,-0.195916,0.136893,1.123092,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23047" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.096066,-0.122485,0.210081,1.879917,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23033" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.808962,-9.040137e-2,0.284638,2.547103,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23031" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.717241,-0.191901,0.134089,1.199896,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23029" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025112,-0.131424,0.225413,1.758220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23027" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.756594,-9.699938e-2,0.305413,2.382215,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23025" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.606075,-0.205907,0.143875,1.122220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23023" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23009" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23007" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23005" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23003" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23001" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient22999" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22985" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22983" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22981" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22973" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22971" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22969" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="101.66785" + fy="134.69154" + fx="33.917580" + cy="134.69154" + cx="33.917580" + gradientTransform="matrix(1.369330,0.000000,0.000000,1.164460,19.44520,10.81907)" + id="radialGradient22961" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="171.45183" + x2="42.257313" + y1="104.70185" + x1="-45.389553" + gradientTransform="matrix(0.652578,0.000000,0.000000,2.443434,19.44520,10.81907)" + id="linearGradient22945" + xlink:href="#linearGradient22939" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="199.91158" + x2="247.58649" + y1="135.30980" + x1="92.894203" + gradientTransform="matrix(0.654723,0.000000,0.000000,2.435427,19.44520,10.81907)" + id="linearGradient22937" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-214.8070,-47.29036)" + gradientUnits="userSpaceOnUse" + id="radialGradient22171" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + id="linearGradient22931"> + <stop + id="stop22933" + offset="0" + style="stop-color:#c6bc96;stop-opacity:1;" /> + <stop + id="stop22935" + offset="1.0000000" + style="stop-color:#9f956f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22939"> + <stop + id="stop22941" + offset="0.0000000" + style="stop-color:#e0d6b3;stop-opacity:1.0000000;" /> + <stop + id="stop22943" + offset="1.0000000" + style="stop-color:#c6bc96;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient23833"> + <stop + id="stop23835" + offset="0.0000000" + style="stop-color:#545454;stop-opacity:1.0000000;" /> + <stop + id="stop23837" + offset="1.0000000" + style="stop-color:#949494;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient26137"> + <stop + id="stop26139" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.40160644;" /> + <stop + id="stop26141" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient28427"> + <stop + id="stop28429" + offset="0.0000000" + style="stop-color:#0fa900;stop-opacity:1.0000000;" /> + <stop + id="stop28431" + offset="1.0000000" + style="stop-color:#085400;stop-opacity:0.97991967;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28579" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.824921,0.000000,0.000000,0.547969,434.5858,-14.91216)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient28581" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,434.5858,-14.91216)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient28583" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,434.5858,-14.91216)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient28585" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,434.5858,-14.91216)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28587" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,434.5858,-14.91216)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28589" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,434.5858,-14.91216)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28591" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,434.5858,-14.91216)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28593" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,456.6310,-4.913168)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28595" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,456.6310,-4.913168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28597" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,456.6310,-4.913168)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28599" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818455,0.000000,0.000000,1.403773,475.5295,-1.046018)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28601" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,475.5295,-1.046018)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28603" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,475.5295,-1.046018)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28605" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,414.2732,56.08694)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28607" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,414.2732,56.08694)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28609" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,414.2732,56.08694)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28611" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,438.8913,63.17166)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28613" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,438.8913,63.17166)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28615" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,438.8913,63.17166)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,458.2665,65.57730)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,458.2665,65.57730)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28621" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,458.2665,65.57730)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28623" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,411.5172,115.8591)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28625" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,411.5172,115.8591)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28627" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,411.5172,115.8591)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28629" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,442.7175,115.5664)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28631" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,442.7175,115.5664)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28633" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,442.7175,115.5664)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28635" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,448.8792,129.6365)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28637" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,448.8792,129.6365)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28639" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,448.8792,129.6365)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient28641" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,434.5858,-14.91216)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28643" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28645" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,309.6471,-268.0035)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28647" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,309.6471,-268.0035)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28649" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,309.6471,-268.0035)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28651" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,388.1837,-260.9011)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28653" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,388.1837,-260.9011)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28655" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,388.1837,-260.9011)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28657" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,295.3669,-193.6045)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28659" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,295.3669,-193.6045)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28661" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,295.3669,-193.6045)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28663" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,373.9035,-186.5021)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28665" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,373.9035,-186.5021)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28667" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,373.9035,-186.5021)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28669" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,287.5684,-121.2913)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28671" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,287.5684,-121.2913)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28673" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,287.5684,-121.2913)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28675" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,366.1050,-114.1889)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28677" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,366.1050,-114.1889)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28679" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,366.1050,-114.1889)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient28683" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient28687" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient28745" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0,0,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient28748" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.125" + inkscape:cx="761.01652" + inkscape:cy="316.45173" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1307" + inkscape:window-height="919" + inkscape:window-x="1936" + inkscape:window-y="42" + showgrid="false" + inkscape:window-maximized="0" /> + <metadata + id="metadata4"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + style="fill:url(#radialGradient2550);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.2557396;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect16067" + width="1024.0049" + height="767.99750" + x="-0.0086894706" + y="-0.00048458576" + rx="0.0000000" + ry="0.0000000" /> + <g + id="author"> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11198" + d="M 980.42466,753.53931 C 980.37165,753.48462 980.61184,753.56660 980.65365,753.57454 C 981.92987,753.75043 983.23382,753.61758 984.49357,753.38307 C 985.05016,753.26703 985.60766,753.12814 986.12767,752.89333 C 986.37610,752.78116 986.58578,752.64843 986.46480,752.71688 C 984.69118,753.72043 985.83495,753.24740 985.84932,752.93053 C 985.18755,752.42479 983.72740,752.62382 982.96097,752.70202 C 982.12073,752.80795 981.27503,752.96659 980.49083,753.29718 C 980.15244,753.43983 979.94188,753.57157 980.00351,753.53472 C 980.19081,753.42268 980.37906,753.31178 980.57295,753.21160 C 980.64174,753.17603 980.44254,753.29530 980.37957,753.34040 C 980.21733,753.45665 980.18589,753.49162 980.03844,753.62306 C 979.28795,754.33190 979.15044,755.32011 979.47115,756.26928 C 979.92941,757.46858 981.11699,757.85839 982.30676,757.85551 C 983.08868,757.81924 983.86162,757.62874 984.56782,757.28949 C 984.66360,757.24350 984.94040,757.08567 984.85093,757.14301 C 983.84426,757.78833 984.62833,757.25251 984.81259,757.10078 C 984.98290,756.96048 985.12774,756.80493 985.26895,756.63644 C 985.37056,756.51376 985.44195,756.37453 985.50727,756.23077 L 986.46047,755.79883 C 986.37503,755.96137 986.28395,756.11961 986.16204,756.25864 C 985.04206,757.53044 983.30448,758.22279 981.64031,758.34054 C 980.38908,758.35734 979.12410,758.00264 978.62944,756.73382 C 978.28845,755.75481 978.38125,754.73172 979.15640,753.98321 C 980.38581,752.85774 981.99798,752.39731 983.61410,752.21694 C 984.42210,752.12920 986.17082,751.87175 986.86692,752.36816 C 986.93589,752.54441 986.83102,752.68107 986.67483,752.77476 C 985.75930,753.32389 984.92267,753.74527 983.85252,753.86598 C 982.49842,754.08597 981.12751,754.20761 979.75531,754.21511 C 979.61577,754.21343 979.39147,754.25560 979.32101,754.10166 L 980.42466,753.53931 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11202" + d="M 990.52877,753.26033 C 990.53523,753.27150 990.54130,753.28289 990.54814,753.29381 C 990.55635,753.30688 990.53267,753.26691 990.52261,753.25524 C 990.46146,753.18432 990.38947,753.12772 990.30924,753.07931 C 990.01682,752.90293 989.70188,752.81351 989.36938,752.74806 C 988.19488,752.60465 986.97083,752.86353 985.94880,753.46297 C 985.87637,753.50546 986.22402,753.28467 986.17562,753.35331 C 986.09699,753.46480 985.95455,753.51372 985.85065,753.60217 C 985.55251,753.85597 985.34079,754.13841 985.13385,754.46669 C 984.26273,756.32174 985.72602,757.41573 987.44257,757.60038 C 989.50654,757.56153 990.83964,757.10980 991.64925,755.27914 C 991.84950,754.68928 991.91432,754.00721 991.63496,753.42814 C 991.57178,753.29714 991.47260,753.13151 991.32922,753.07273 C 991.27830,753.05185 991.11839,753.12920 991.16698,753.10334 C 992.10272,752.60506 992.28192,752.34080 991.98964,752.72216 C 991.51808,754.36724 992.20982,756.67351 992.57848,758.31210 C 992.74225,759.37013 993.66286,761.62286 992.51857,762.39266 C 992.17263,762.57736 991.83549,762.77956 991.48076,762.94675 C 991.03383,763.15737 990.23866,762.90415 989.80456,762.78488 C 988.67839,762.47547 987.61118,762.00136 986.55685,761.50607 C 984.95835,760.72403 983.39362,759.85622 981.93854,758.82806 C 981.20017,758.30632 980.34602,757.71623 980.07051,756.81457 C 980.07243,756.44910 980.25204,756.22404 980.56672,756.04271 C 980.90233,755.84936 981.24147,755.65878 981.59773,755.50682 C 982.32114,755.19826 984.11537,755.28120 984.90494,755.28818 C 986.64249,755.30355 988.37945,755.33513 990.11671,755.36926 C 992.65488,755.44519 995.19596,755.43576 997.72346,755.17250 L 997.25764,755.51458 C 994.87043,755.48596 992.48425,755.39354 990.09665,755.38378 C 987.74799,755.33765 985.37198,755.19189 983.03357,755.48745 C 982.57512,755.54539 982.05219,755.63274 981.60286,755.75566 C 981.41718,755.80646 981.24709,755.94184 981.05466,755.93731 C 980.94980,755.93483 981.27777,755.84956 981.30649,755.74868 C 981.33527,755.64754 980.62958,756.43256 980.81634,756.41762 C 980.87395,757.35588 981.58168,758.04818 982.28043,758.61066 C 983.67675,759.73469 985.31218,760.52894 986.94132,761.25029 C 987.94034,761.65706 988.95319,762.03326 990.00845,762.26799 C 990.57956,762.39502 991.18419,762.49642 991.77127,762.44161 C 992.14793,762.40646 992.28360,762.31668 992.25067,762.34283 C 992.04864,762.50334 991.81193,762.61455 991.59254,762.75039 C 992.87227,762.05886 992.20124,759.70442 992.04339,758.59900 C 991.68314,756.79719 991.11845,755.00570 991.01314,753.16846 C 991.10197,752.69923 991.90265,752.11317 992.24588,752.51097 C 992.62844,752.95437 992.64815,753.77697 992.55654,754.31488 C 992.50706,754.60537 992.47400,754.66484 992.37820,754.94614 C 991.43294,756.96686 989.01133,758.01893 986.86837,758.00899 C 985.00533,757.84126 983.47298,756.79568 984.43429,754.77444 C 985.60833,752.95456 987.99554,752.17027 990.07860,752.24777 C 990.54454,752.29109 991.27179,752.34857 991.63216,752.69812 L 990.52877,753.26033 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11204" + d="M 996.24929,754.08555 C 995.94918,753.71415 995.44354,753.52930 995.00861,753.37437 C 994.25293,753.13098 993.43241,753.06749 992.67136,753.32648 C 992.32552,753.44416 992.10498,753.58591 992.15038,753.55708 C 992.30968,753.45589 992.47056,753.35442 992.64365,753.27925 C 992.82262,753.20153 992.32855,753.50991 992.17902,753.63523 C 991.03059,754.73993 991.00598,756.07740 992.23952,757.11392 C 994.03807,758.30460 996.50626,758.42720 998.44187,757.50504 C 998.35410,757.55081 998.15022,757.73712 998.17858,757.64230 C 998.21418,757.52330 998.37866,757.49432 998.47019,757.41034 C 998.55842,757.32940 998.64140,757.24217 998.71641,757.14885 C 998.93865,756.87242 999.09150,756.54435 999.15989,756.19631 C 999.47094,754.61401 996.85621,753.58689 995.75156,753.14362 C 993.09520,752.29441 989.29999,751.46899 986.56805,752.45865 C 985.73525,752.93499 987.37513,751.84676 986.91674,752.28974 L 985.94807,752.68953 C 986.31139,752.33309 986.77499,752.08349 987.25780,751.92553 C 988.05008,751.73751 988.87199,751.75578 989.67998,751.81248 C 991.78452,751.96012 993.85971,752.42861 995.86633,753.06638 C 997.02395,753.47279 998.95165,754.05166 999.70364,755.09944 C 999.92074,755.40189 999.91454,755.51921 999.86134,755.86134 C 999.69534,756.92894 998.78085,757.47827 997.89734,757.93757 C 995.92178,758.80471 993.44726,758.55944 991.57789,757.53087 C 990.19652,756.53701 990.21620,755.13816 991.37904,753.95954 C 992.65268,752.83730 994.15781,752.35780 995.78962,752.84323 C 996.30796,752.99330 996.81368,753.17830 997.29390,753.42486 L 996.24929,754.08555 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11212" + d="M 998.04285,759.83236 C 998.12338,759.36467 998.12776,758.88106 998.14374,758.40689 C 998.18020,756.93597 998.10954,755.44149 997.73091,754.01316 C 997.48496,753.21467 997.28404,753.48371 998.61205,752.90548 C 998.61299,752.90506 998.81612,753.18683 998.82117,753.19303 C 999.05934,753.48547 999.34012,753.72091 999.64384,753.94208 C 1000.5716,754.56711 1001.7222,754.78408 1002.7663,754.33449 L 1001.9793,754.95228 C 1000.9199,755.32025 999.81264,754.99835 998.88755,754.42502 C 998.55641,754.21140 998.24630,753.97579 997.92914,753.74278 C 997.88359,753.70933 997.76137,753.61956 997.70081,753.59365 C 997.67958,753.58456 997.61336,753.59293 997.63277,753.58040 C 999.04071,752.67136 998.47821,752.78334 998.55731,753.57380 C 998.69585,755.04380 998.86707,756.51083 998.96719,757.98442 C 999.00732,758.41218 999.03186,758.85524 999.14650,759.27004 L 998.04285,759.83236 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11219" + d="M 1001.9270,755.16131 C 1002.4402,755.46052 1003.1012,755.51451 1003.6807,755.56740 C 1004.3003,755.59835 1004.9456,755.58956 1005.5336,755.36540 C 1005.6209,755.33213 1005.8676,755.19931 1005.7887,755.24927 C 1005.6076,755.36385 1005.4230,755.47599 1005.2259,755.56011 C 1005.1580,755.58907 1005.3437,755.47042 1005.3949,755.41736 C 1005.6697,755.13247 1005.6718,754.80086 1005.5725,754.44269 C 1004.6862,752.72346 1002.3158,752.81667 1000.8397,753.61878 C 1000.9143,753.59174 1001.0932,753.46410 1001.0634,753.53763 C 1001.0106,753.66817 1000.8504,753.72292 1000.7555,753.82689 C 1000.4801,754.12824 1000.2777,754.49165 1000.1838,754.89016 C 999.82214,756.42643 1001.0796,757.54528 1002.2772,758.21981 C 1002.7584,758.43167 1002.8589,758.49489 1003.3676,758.64215 C 1004.4483,758.95513 1005.6157,759.01563 1006.7186,758.78471 C 1007.1658,758.69104 1007.6047,758.54648 1008.0135,758.34115 C 1008.1298,758.28271 1008.4824,758.13004 1008.3537,758.14921 C 1008.2066,758.17111 1008.0881,758.28293 1007.9554,758.34981 L 1008.7098,758.05406 C 1008.4829,758.19111 1007.8292,758.61639 1007.4471,758.78840 C 1005.6773,759.58505 1003.5749,759.22296 1001.8539,758.49646 C 1000.9468,758.02725 999.99994,757.44508 999.62244,756.43650 C 999.07493,754.97401 1000.1649,753.83698 1001.3636,753.19766 C 1002.9234,752.39025 1005.3137,752.38116 1006.3928,753.99081 C 1006.5678,754.43936 1006.5354,754.94442 1006.0810,755.22957 C 1004.9997,755.90817 1004.2554,756.15192 1002.9957,756.05758 C 1002.2923,756.01917 1001.5868,755.96073 1000.8925,755.84194 L 1001.9270,755.16131 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11227" + d="M 1011.6830,751.23561 C 1011.7519,751.02469 1011.7193,750.82641 1011.6123,750.62849 C 1010.6233,749.43325 1008.6457,749.88419 1007.4477,750.46123 C 1007.5286,750.41766 1007.7470,750.25803 1007.6905,750.33052 C 1007.6076,750.43684 1007.4681,750.48360 1007.3637,750.56894 C 1007.1592,750.73615 1006.9803,750.91816 1006.8211,751.12917 C 1006.0176,752.19425 1006.1581,753.45914 1007.0233,754.41922 C 1008.1277,755.40078 1009.7265,755.64086 1011.1261,755.22475 C 1011.4207,755.19056 1011.6490,754.98815 1011.9213,754.89956 C 1012.0148,754.86911 1011.6121,755.12444 1011.6616,755.03948 C 1011.7269,754.92751 1011.8701,754.88553 1011.9744,754.80854 C 1013.0622,753.86732 1013.5596,752.15486 1012.7659,750.86906 C 1012.8446,750.67038 1012.3349,750.67111 1012.3408,750.66777 C 1012.6275,750.50542 1012.9142,750.34239 1013.2099,750.19706 C 1013.3110,750.14735 1013.1450,750.16650 1012.9966,750.45445 C 1012.9195,750.60407 1012.8658,750.77974 1012.8290,750.94236 C 1012.6811,751.59622 1012.7106,752.27220 1012.7468,752.93583 C 1012.8996,754.74963 1013.3675,756.52409 1014.0232,758.21804 L 1013.3950,758.56364 C 1012.9162,756.80547 1012.4657,755.03509 1012.1731,753.23518 C 1012.1519,753.08461 1012.1284,752.93434 1012.1093,752.78349 C 1012.0536,752.34418 1011.6582,749.22349 1013.3450,750.03521 C 1013.4831,750.10163 1013.5479,750.26127 1013.6150,750.38601 C 1014.1804,751.83316 1013.8344,753.50580 1012.6540,754.53846 C 1010.7493,755.97246 1008.3546,756.36291 1006.3877,754.80577 C 1005.1778,753.55627 1005.3798,751.93360 1006.7000,750.83230 C 1007.1107,750.48964 1007.4991,750.31347 1007.9938,750.02639 C 1009.3353,749.40628 1011.3002,749.05420 1012.5385,750.08229 C 1012.6791,750.24295 1012.7972,750.47928 1012.7867,750.67328 L 1011.6830,751.23561 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11229" + d="M 1014.6971,749.34919 C 1014.5756,749.93164 1014.6354,750.54346 1014.6866,751.13058 C 1014.9423,753.36470 1015.6072,755.55327 1016.7036,757.51882 C 1016.7745,757.63502 1016.8454,757.75125 1016.9162,757.86745 L 1016.2961,758.22340 C 1016.2366,758.09992 1016.1770,757.97647 1016.1174,757.85299 C 1015.1875,755.81842 1014.5079,753.67968 1013.9701,751.51047 C 1013.8391,750.97903 1013.7284,750.44120 1013.5934,749.91154 L 1014.6971,749.34919 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11231" + d="M 1016.4801,748.90961 C 1016.3438,749.40948 1016.3545,749.94539 1016.3600,750.46182 C 1016.4205,752.57947 1016.9087,754.66561 1017.7539,756.60476 C 1018.0278,757.22562 1018.3743,757.80791 1018.7596,758.36496 L 1018.0720,758.76389 C 1017.7552,758.15983 1017.4601,757.54451 1017.2090,756.90987 C 1016.4422,754.96171 1015.8984,752.93429 1015.5889,750.86276 C 1015.5168,750.41108 1015.4441,749.90422 1015.3765,749.47194 L 1016.4801,748.90961 z " /> + </g> + <g + transform="translate(301.9329,-92.74310)" + id="g2954"> + <path + sodipodi:nodetypes="cccccc" + id="path2956" + d="M 473.35393,694.33118 C 528.37317,687.81720 588.33790,691.19419 638.41165,698.52757 C 676.22194,679.99011 704.14125,658.48537 725.13690,636.98062 C 711.66492,613.61768 688.30197,595.20021 669.88451,581.72824 C 614.57557,578.01185 557.28844,583.19733 506.92499,594.31740 L 473.35393,694.33118 z " + style="fill:url(#radialGradient3066);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.31000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <g + id="g2958"> + <path + sodipodi:nodetypes="ccccc" + id="path2960" + d="M 368.04206,345.09016 C 408.13466,317.59810 447.24539,299.43370 486.84706,284.70580 C 537.08553,306.79764 579.22367,333.55331 617.18890,362.02725 L 501.08401,425.35719 L 368.04206,345.09016 z " + style="fill:url(#radialGradient3068);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2962" + d="M 502.06588,422.65707 C 464.10065,390.25570 416.80774,362.76363 367.55113,344.59923 C 351.67773,437.54860 358.38711,530.49796 361.16904,624.92012 C 399.13427,641.28445 438.57229,662.55808 472.11916,694.63216 L 502.06588,422.65707 z " + style="fill:url(#linearGradient3070);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2964" + d="M 471.62823,694.63216 C 476.37388,604.13744 480.62862,516.09737 502.06588,423.14800 C 541.17662,389.76477 578.81456,373.07315 617.92530,361.29084 C 594.03338,461.93145 576.52356,558.64461 578.65092,654.37591 C 543.46762,657.97606 507.79339,673.35853 471.62823,694.63216 z " + style="fill:url(#linearGradient3072);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:3.7882409;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + id="g2966"> + <path + sodipodi:nodetypes="ccccc" + id="path2968" + d="M 454.48525,414.71441 C 450.32404,427.56521 448.36583,438.94733 447.50910,455.46977 C 458.40167,458.28471 465.98976,464.77129 474.67933,472.35938 C 474.06740,458.52949 475.65843,446.16825 480.55398,430.13535 C 473.70023,422.05772 465.01065,417.28456 454.48525,414.71441 z " + style="fill:url(#linearGradient3074);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2970" + d="M 377.54636,368.57401 C 373.66421,380.56305 371.83731,391.18189 371.03804,406.59635 C 381.20016,409.22252 388.27940,415.27412 396.38626,422.35336 C 395.81536,409.45089 397.29970,397.91858 401.86696,382.96084 C 395.47281,375.42489 387.36595,370.97181 377.54636,368.57401 z " + style="fill:url(#linearGradient3076);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2972" + d="M 371.03804,406.33944 C 372.75075,405.22618 374.46348,404.79799 376.17620,404.79799 C 376.83274,393.46551 378.94508,380.76285 382.17070,369.94418 C 380.51507,369.43037 379.20199,369.08783 377.54636,368.57402 C 373.66421,380.93413 371.49476,393.37988 371.03804,406.33944 z " + style="fill:url(#linearGradient3078);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2974" + d="M 376.26182,404.96927 C 382.85579,407.16726 391.24810,411.50615 396.21498,417.21520 C 396.32917,419.21338 396.27208,420.52646 396.38626,422.26773 C 388.36504,415.70230 382.05652,409.65070 371.03804,406.42508 C 372.57949,405.51163 374.20656,404.76945 376.26182,404.96927 z " + style="fill:url(#linearGradient3080);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2976" + d="M 414.84789,391.93681 C 410.86110,404.24901 408.98495,415.15408 408.16414,430.98403 C 418.60018,433.68099 425.87023,439.89572 434.19561,447.16577 C 433.60933,433.91552 435.13368,422.07237 439.82404,406.71144 C 433.25754,398.97236 424.93216,394.39926 414.84789,391.93681 z " + style="fill:url(#linearGradient3082);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2978" + d="M 408.16414,430.72020 C 409.92302,429.57693 411.68191,429.13720 413.44079,429.13720 C 414.11502,417.49926 416.28431,404.45421 419.59687,393.34392 C 417.89662,392.81625 416.54815,392.46449 414.84789,391.93682 C 410.86110,404.63010 408.63317,417.41132 408.16414,430.72020 z " + style="fill:url(#linearGradient3084);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2980" + d="M 413.52872,429.31310 C 420.30043,431.57034 428.91895,436.02618 434.01972,441.88911 C 434.13698,443.94117 434.07836,445.28964 434.19561,447.07783 C 425.95818,440.33544 419.47962,434.12072 408.16414,430.80816 C 409.74713,429.87009 411.41806,429.10789 413.52872,429.31310 z " + style="fill:url(#linearGradient3086);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2982" + d="M 447.50910,455.19439 C 449.34493,454.00111 451.18077,453.54215 453.01659,453.54215 C 453.72031,441.39509 455.98450,427.77937 459.44196,416.18307 C 457.66733,415.63231 456.25988,415.26517 454.48525,414.71442 C 450.32404,427.96296 447.99866,441.30331 447.50910,455.19439 z " + style="fill:url(#linearGradient3088);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2984" + d="M 453.10837,453.72574 C 460.17630,456.08172 469.17186,460.73248 474.49574,466.85189 C 474.61815,468.99370 474.55695,470.40117 474.67933,472.26759 C 466.08155,465.23025 459.31959,458.74367 447.50910,455.28618 C 449.16134,454.30708 450.90537,453.51155 453.10837,453.72574 z " + style="fill:url(#linearGradient3090);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2986" + d="M 371.47604,440.07442 C 368.20148,452.24345 366.91069,462.94071 366.88730,478.37585 C 377.16859,480.48787 384.54308,486.17594 392.99557,492.83871 C 391.77679,479.98125 392.67953,468.38891 396.48911,453.22047 C 389.72421,446.01549 381.40375,441.97557 371.47604,440.07442 z " + style="fill:url(#linearGradient3092);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2988" + d="M 366.87438,478.11927 C 368.52897,476.92131 370.21801,476.40758 371.92855,476.32148 C 372.01460,464.97032 373.48571,452.17753 376.16340,441.21040 C 374.48404,440.78046 373.15540,440.50437 371.47604,440.07443 C 368.22013,452.61407 366.67906,465.15314 366.87438,478.11927 z " + style="fill:url(#linearGradient3094);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2990" + d="M 372.02269,476.48823 C 378.71880,478.35198 387.31862,482.26349 392.56621,487.71565 C 392.78071,489.70557 392.78969,491.01986 392.99126,492.75318 C 384.65014,486.59927 378.04539,480.87245 366.87869,478.20480 C 368.37227,477.21503 369.95998,476.39200 372.02269,476.48823 z " + style="fill:url(#linearGradient3096);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3235" + d="M 408.33424,463.33863 C 404.83724,475.79880 403.39361,486.76950 403.19916,502.61952 C 413.73365,504.90187 421.24366,510.82437 429.84990,517.75965 C 428.74034,504.54295 429.79536,492.64879 433.87488,477.11448 C 427.00761,469.64100 418.50797,465.40054 408.33424,463.33863 z " + style="fill:url(#linearGradient3098);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2994" + d="M 403.18873,502.35591 C 404.90105,501.14400 406.64119,500.63508 408.39870,500.56556 C 408.61238,488.91006 410.26433,475.78946 413.13515,464.55691 C 411.41536,464.09687 410.05404,463.79868 408.33424,463.33864 C 404.85231,476.17958 403.13134,489.03887 403.18873,502.35591 z " + style="fill:url(#linearGradient3100);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2996" + d="M 408.49350,500.73785 C 415.34913,502.72565 424.13706,506.83734 429.46558,512.49408 C 429.66386,514.53990 429.65859,515.88964 429.84643,517.67179 C 421.34894,511.26028 414.62978,505.30649 403.19221,502.44378 C 404.73688,501.44387 406.37638,500.61623 408.49350,500.73785 z " + style="fill:url(#linearGradient3102);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path2998" + d="M 446.70222,486.06716 C 442.97147,499.04948 441.39355,510.49052 441.08779,527.03233 C 452.06810,529.48280 459.86809,535.71297 468.80563,543.00733 C 467.73328,529.20552 468.91160,516.79812 473.27025,500.61103 C 466.15119,492.76623 457.30741,488.28523 446.70222,486.06716 z " + style="fill:url(#linearGradient3104);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3000" + d="M 441.07861,526.75710 C 442.87367,525.50332 444.69319,524.98345 446.52800,524.92228 C 446.82662,512.75853 448.63591,499.07492 451.70511,487.36988 C 449.91312,486.87854 448.49421,486.55850 446.70222,486.06718 C 442.98473,499.44700 441.10509,512.85743 441.07861,526.75710 z " + style="fill:url(#linearGradient3106);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3002" + d="M 446.62585,525.10271 C 453.76834,527.22191 462.91386,531.57039 468.43865,537.50903 C 468.63236,539.64557 468.61809,541.05429 468.80258,542.91559 C 459.97512,536.16861 453.00079,529.91093 441.08167,526.84884 C 442.70037,525.81524 444.41694,524.96204 446.62585,525.10271 z " + style="fill:url(#linearGradient3108);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3004" + d="M 371.39903,512.20344 C 368.23401,524.40141 367.03945,535.10985 367.15485,550.54458 C 377.45471,552.56405 384.88006,558.18560 393.39210,564.77210 C 392.05776,551.92611 392.85625,540.32613 396.52928,525.12407 C 389.69989,517.98019 381.34343,514.01524 371.39903,512.20344 z " + style="fill:url(#linearGradient3110);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3006" + d="M 367.13962,550.28811 C 368.78338,549.07533 370.46773,548.54643 372.17743,548.44496 C 372.16140,537.09348 373.51744,524.28799 376.09641,513.29722 C 374.41326,512.88239 373.08219,512.61826 371.39903,512.20345 C 368.25601,524.77185 366.82774,537.32426 367.13962,550.28811 z " + style="fill:url(#linearGradient3112);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3008" + d="M 372.27306,548.61086 C 378.98567,550.41431 387.62031,554.24837 392.91670,559.65311 C 393.14908,561.64103 393.16988,562.95518 393.38702,564.68663 C 384.99091,558.60796 378.33494,552.94075 367.14470,550.37360 C 368.62932,549.37044 370.20956,548.53316 372.27306,548.61086 z " + style="fill:url(#linearGradient3114);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3010" + d="M 407.81322,534.53959 C 404.14855,546.95148 402.55714,557.90172 402.14902,573.74768 C 412.65178,576.17185 420.08126,582.19505 428.59321,589.24575 C 427.66194,576.01528 428.87723,564.13642 433.16581,548.65853 C 426.39991,541.09313 417.95822,536.73849 407.81322,534.53959 z " + style="fill:url(#linearGradient3116);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3012" + d="M 402.14214,573.48394 C 403.87065,572.29523 405.61748,571.80983 407.37577,571.76402 C 407.74658,560.11245 409.57526,547.01533 412.59725,535.82249 C 410.88383,535.33931 409.52666,535.02279 407.81322,534.53960 C 404.15848,547.33244 402.26428,560.16737 402.14214,573.48394 z " + style="fill:url(#linearGradient3118);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3014" + d="M 407.46824,571.93756 C 414.29646,574.01762 423.02814,578.24740 428.27993,583.97546 C 428.45060,586.02377 428.42714,587.37330 428.59093,589.15784 C 420.18064,582.63234 413.54238,576.58852 402.14444,573.57187 C 403.70245,572.59287 405.35296,571.78741 407.46824,571.93756 z " + style="fill:url(#linearGradient3120);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3016" + d="M 443.79507,558.33897 C 440.34856,571.39960 439.02073,582.87237 439.07607,599.41690 C 450.10724,601.62714 458.04135,607.68559 467.13598,614.78315 C 465.76265,601.00802 466.66989,588.57786 470.67421,572.29949 C 463.38562,564.61195 454.44614,560.32503 443.79507,558.33897 z " + style="fill:url(#linearGradient3122);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3018" + d="M 439.06090,599.14195 C 440.82816,597.84928 442.63590,597.28983 444.46892,597.18863 C 444.50201,585.02125 446.01222,571.30142 448.82520,559.53217 C 447.02292,559.08007 445.59737,558.79107 443.79507,558.33899 C 440.37049,571.79675 438.78399,585.24501 439.06090,599.14195 z " + style="fill:url(#linearGradient3124);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3020" + d="M 444.57069,597.36688 C 451.75774,599.32969 460.99598,603.47752 466.64909,609.29416 C 466.88938,611.42596 466.90586,612.83466 467.13093,614.69150 C 458.15830,608.13879 451.04906,602.03481 439.06595,599.23359 C 440.66170,598.16491 442.35924,597.27445 444.57069,597.36688 z " + style="fill:url(#linearGradient3126);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + <g + id="g3022"> + <path + sodipodi:nodetypes="ccccc" + id="path3024" + d="M 385.77538,591.50123 C 382.11071,603.91313 381.50841,617.83066 382.33666,633.92389 C 393.58123,638.32626 420.79266,653.25133 432.02463,661.04384 C 431.09335,647.81337 430.82499,633.95632 435.11357,618.47842 C 428.34767,610.91303 395.92038,594.68923 385.77538,591.50123 z " + style="fill:url(#radialGradient3128);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2967840;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="cc" + id="path3026" + d="M 409.78664,602.56421 C 405.50055,616.41157 404.85116,631.46531 406.00511,645.80721" + style="fill:none;fill-opacity:0.75000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2627470;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:0.59169549" /> + </g> + <g + id="g3028"> + <path + sodipodi:nodetypes="ccccc" + id="path3030" + d="M 518.90832,432.04928 C 514.74711,444.90008 513.29020,456.53285 512.43347,473.05529 C 523.82735,466.59608 528.90891,462.55525 539.35305,460.11723 C 539.74373,446.53799 542.08672,434.92871 545.72901,418.14385 C 533.36090,421.34559 528.93241,424.59332 518.90832,432.04928 z " + style="fill:url(#linearGradient3130);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3032" + d="M 512.94918,468.85078 C 518.45053,464.94044 526.13016,461.19433 534.96318,457.85160 C 536.58951,458.36417 537.59358,458.83169 539.47053,460.07148 C 527.42628,463.68688 520.78964,468.35435 512.61362,472.66709 L 512.94918,468.85078 z " + style="fill:url(#linearGradient3132);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3034" + d="M 535.05333,457.77926 C 536.47561,458.46918 537.89788,459.15910 539.32016,459.84903 C 540.13266,446.30303 542.18583,434.17494 545.47967,418.41347 C 543.65019,418.57379 542.61829,418.73411 541.05467,419.69201 C 537.90218,432.12190 535.99035,445.17213 535.05333,457.77926 z " + style="fill:url(#linearGradient3134);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3036" + d="M 565.76688,412.45716 C 561.86110,424.51914 560.49362,435.43786 559.68948,450.94610 C 570.38397,444.88338 575.15361,441.09058 584.95666,438.80222 C 585.32336,426.05651 587.52253,415.15984 590.94124,399.40528 C 579.33232,402.41049 575.17567,405.45887 565.76688,412.45716 z " + style="fill:url(#linearGradient3136);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3038" + d="M 560.17353,446.99968 C 565.33719,443.32936 572.54543,439.81320 580.83625,436.67566 C 582.36275,437.15676 583.30519,437.59559 585.06693,438.75928 C 573.76199,442.15275 567.53272,446.53372 559.85857,450.58173 L 560.17353,446.99968 z " + style="fill:url(#linearGradient3138);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3040" + d="M 580.92087,436.60776 C 582.25584,437.25533 583.59081,437.90290 584.92579,438.55048 C 585.68841,425.83597 587.61555,414.45234 590.70721,399.65835 C 588.99003,399.80883 588.02147,399.95931 586.55383,400.85841 C 583.59485,412.52532 581.80037,424.77449 580.92087,436.60776 z " + style="fill:url(#linearGradient3140);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3042" + d="M 504.62812,506.44829 C 500.46691,519.29909 499.01000,530.93186 498.15327,547.45430 C 509.54715,540.99509 514.62871,536.95426 525.07285,534.51624 C 525.46353,520.93700 527.80652,509.32772 531.44881,492.54286 C 519.08070,495.74460 514.65221,498.99233 504.62812,506.44829 z " + style="fill:url(#linearGradient3142);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3044" + d="M 498.66898,543.24979 C 504.17033,539.33945 511.84996,535.59334 520.68298,532.25061 C 522.30931,532.76318 523.31338,533.23070 525.19033,534.47049 C 513.14608,538.08589 506.50944,542.75336 498.33342,547.06610 L 498.66898,543.24979 z " + style="fill:url(#linearGradient3144);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3046" + d="M 520.77313,532.17827 C 522.19541,532.86819 523.61768,533.55811 525.03996,534.24804 C 525.85246,520.70204 527.90563,508.57395 531.19947,492.81248 C 529.36999,492.97280 528.33809,493.13312 526.77447,494.09102 C 523.62198,506.52091 521.71015,519.57114 520.77313,532.17827 z " + style="fill:url(#linearGradient3146);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3048" + d="M 551.48668,486.85617 C 547.58090,498.91815 546.21342,509.83687 545.40928,525.34511 C 556.10377,519.28239 560.87341,515.48959 570.67646,513.20123 C 571.04316,500.45552 573.24233,489.55885 576.66104,473.80429 C 565.05212,476.80950 560.89547,479.85788 551.48668,486.85617 z " + style="fill:url(#linearGradient3148);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3050" + d="M 545.89333,521.39869 C 551.05699,517.72837 558.26523,514.21221 566.55605,511.07467 C 568.08255,511.55577 569.02499,511.99460 570.78673,513.15829 C 559.48179,516.55176 553.25252,520.93273 545.57837,524.98074 L 545.89333,521.39869 z " + style="fill:url(#linearGradient3150);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3052" + d="M 566.64067,511.00677 C 567.97564,511.65434 569.31061,512.30191 570.64559,512.94949 C 571.40821,500.23498 573.33535,488.85135 576.42701,474.05736 C 574.70983,474.20784 573.74127,474.35832 572.27363,475.25742 C 569.31465,486.92433 567.52017,499.17350 566.64067,511.00677 z " + style="fill:url(#linearGradient3152);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3054" + d="M 496.82964,578.76149 C 492.66843,591.61229 491.21152,603.24506 490.35479,619.76750 C 501.74867,613.30829 506.83023,609.26746 517.27437,606.82944 C 517.66505,593.25020 520.00804,581.64092 523.65033,564.85606 C 511.28222,568.05780 506.85373,571.30553 496.82964,578.76149 z " + style="fill:url(#linearGradient3154);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3056" + d="M 490.87050,615.56299 C 496.37185,611.65265 504.05148,607.90654 512.88450,604.56381 C 514.51083,605.07638 515.51490,605.54390 517.39185,606.78369 C 505.34760,610.39909 498.71096,615.06656 490.53494,619.37930 L 490.87050,615.56299 z " + style="fill:url(#linearGradient3156);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3058" + d="M 512.97465,604.49147 C 514.39693,605.18139 515.81920,605.87131 517.24148,606.56124 C 518.05398,593.01524 520.10715,580.88715 523.40099,565.12568 C 521.57151,565.28600 520.53961,565.44632 518.97599,566.40422 C 515.82350,578.83411 513.91167,591.88434 512.97465,604.49147 z " + style="fill:url(#linearGradient3158);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.3535123;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3060" + d="M 543.68820,559.16937 C 539.78242,571.23135 538.41494,582.15007 537.61080,597.65831 C 548.30529,591.59559 553.07493,587.80279 562.87798,585.51443 C 563.24468,572.76872 565.44385,561.87205 568.86256,546.11749 C 557.25364,549.12270 553.09699,552.17108 543.68820,559.16937 z " + style="fill:url(#linearGradient3160);fill-opacity:1.0000000;fill-rule:nonzero;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3062" + d="M 538.09485,593.71189 C 543.25851,590.04157 550.46675,586.52541 558.75757,583.38787 C 560.28407,583.86897 561.22651,584.30780 562.98825,585.47149 C 551.68331,588.86496 545.45404,593.24593 537.77989,597.29394 L 538.09485,593.71189 z " + style="fill:url(#linearGradient3162);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccc" + id="path3064" + d="M 558.84219,583.31997 C 560.17716,583.96754 561.51213,584.61511 562.84711,585.26269 C 563.60973,572.54818 565.53687,561.16455 568.62853,546.37056 C 566.91135,546.52104 565.94279,546.67152 564.47515,547.57062 C 561.51617,559.23753 559.72169,571.48670 558.84219,583.31997 z " + style="fill:url(#linearGradient3164);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2704297;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" /> + </g> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/progressbar/progressbar.svg lincity-ng-2.9~git20150314/data/images/mainmenu/progressbar/progressbar.svg --- lincity-ng-2.0/data/images/mainmenu/progressbar/progressbar.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/progressbar/progressbar.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,387 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/progressbar/progressbar.png" + sodipodi:docname="progressbar.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/progressbar" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg4380" + height="100.00000px" + width="445.00000pt"> + <defs + id="defs3"> + <linearGradient + id="linearGradient15071"> + <stop + id="stop15073" + offset="0.0000000" + style="stop-color:#3f5dc9;stop-opacity:1.0000000;" /> + <stop + id="stop15075" + offset="1.0000000" + style="stop-color:#2246c9;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient14305"> + <stop + id="stop14307" + offset="0.0000000" + style="stop-color:#547aff;stop-opacity:1.0000000;" /> + <stop + id="stop14309" + offset="1.0000000" + style="stop-color:#244cda;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient11254" + inkscape:collect="always"> + <stop + id="stop11256" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop11258" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient10486"> + <stop + id="stop10488" + offset="0.0000000" + style="stop-color:#42b327;stop-opacity:1.0000000;" /> + <stop + id="stop10490" + offset="1.0000000" + style="stop-color:#31841d;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="351.89758" + x2="181.71414" + y1="321.52527" + x1="146.19844" + gradientTransform="scale(0.830214,1.204508)" + id="linearGradient10492" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="scale(0.890083,1.123491)" + id="linearGradient11260" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="scale(2.825481,0.353922)" + id="linearGradient14311" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="scale(2.632584,0.379855)" + id="linearGradient15077" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + y2="351.89758" + x2="181.71414" + y1="321.52527" + x1="146.19844" + gradientTransform="scale(0.830214,1.204508)" + gradientUnits="userSpaceOnUse" + id="linearGradient15226" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="scale(0.890083,1.123491)" + gradientUnits="userSpaceOnUse" + id="linearGradient15228" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="scale(2.632584,0.379855)" + gradientUnits="userSpaceOnUse" + id="linearGradient15230" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="scale(2.825481,0.353922)" + gradientUnits="userSpaceOnUse" + id="linearGradient15232" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="scale(2.632584,0.379855)" + gradientUnits="userSpaceOnUse" + id="linearGradient15244" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="scale(2.825481,0.353922)" + gradientUnits="userSpaceOnUse" + id="linearGradient15246" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="matrix(2.825481,0.000000,0.000000,0.353922,-52.86224,-203.9000)" + gradientUnits="userSpaceOnUse" + id="linearGradient15249" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="matrix(2.632584,0.000000,0.000000,0.379855,-52.86224,-203.9000)" + gradientUnits="userSpaceOnUse" + id="linearGradient15253" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="0" + inkscape:window-x="0" + inkscape:window-height="600" + inkscape:window-width="1272" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="76.577672" + inkscape:cx="320.95495" + inkscape:zoom="1.4000000" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <rect + ry="13.270932" + rx="13.474458" + y="7.7479072" + x="11.780618" + height="86.486557" + width="531.82599" + id="rect15236" + style="fill:#000000;fill-opacity:0.55633801;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <g + transform="translate(-100.0051,-359.6143)" + id="g15086"> + <rect + ry="13.270932" + rx="13.474458" + y="365.21933" + x="110.00000" + height="86.486557" + width="531.82599" + id="rect4400" + style="fill:#708fff;fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <rect + ry="12.110217" + rx="12.492315" + y="366.64792" + x="111.42857" + height="83.629417" + width="529.05817" + id="rect5160" + style="fill:url(#linearGradient15230);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <rect + ry="10.503074" + rx="10.528029" + y="372.36221" + x="117.85714" + height="72.379417" + width="516.64740" + id="rect5920" + style="fill:#b6c6ff;fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <rect + ry="9.7742395" + rx="10.472010" + y="373.07809" + x="118.68350" + height="70.813103" + width="514.96832" + id="rect6680" + style="fill:url(#linearGradient15232);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + </g> + <g + transform="translate(-100.0051,-359.6143)" + inkscape:tile-cy="409.03113" + inkscape:tile-cx="145.73053" + inkscape:tile-h="66.792061" + inkscape:tile-w="46.818207" + id="g15079"> + <rect + ry="9.7742386" + rx="10.472011" + y="376.26645" + x="122.88963" + height="66.160713" + width="46.250000" + id="rect12025" + style="fill:#000000;fill-opacity:0.57042253;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <rect + ry="9.7742386" + rx="10.472011" + y="375.63510" + x="122.32143" + height="66.160713" + width="46.250000" + id="rect6688" + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <rect + ry="9.7742386" + rx="10.472011" + y="376.08154" + x="122.85715" + height="65.202179" + width="45.267857" + id="rect7448" + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <rect + ry="9.3278103" + rx="9.4898682" + y="376.70654" + x="123.48215" + height="63.862892" + width="44.017857" + id="rect8208" + style="fill:url(#linearGradient15226);fill-opacity:1.0000000;stroke:none;stroke-width:0.60724795;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.35915491" /> + <path + sodipodi:nodetypes="ccccccssss" + d="M 126.20593,402.77096 C 124.59987,404.82713 123.29191,385.17264 126.71101,380.80014 C 129.85791,376.77575 148.18802,377.32395 146.40899,379.34805 C 144.11551,381.95746 135.92129,379.70973 131.79778,384.46005 C 127.67426,389.21037 127.62145,400.95873 126.20593,402.77096 z M 126.52160,385.53523 C 126.03215,385.83606 127.07541,382.31928 127.84743,381.49462 C 128.92736,380.34106 133.36944,379.47840 133.02446,379.85312 C 132.64543,380.26483 130.01995,380.72734 128.65203,381.94473 C 127.28410,383.16213 127.17373,385.13442 126.52160,385.53523 z " + style="opacity:0.79807693;fill:url(#linearGradient15228);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path10494" /> + </g> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(51.03185,0.000000)" + id="use1336" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(102.0637,0.000000)" + id="use1338" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(153.0955,0.000000)" + id="use1340" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(204.1274,0.000000)" + id="use1342" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(255.1592,0.000000)" + id="use1344" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(306.1911,0.000000)" + id="use1346" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(357.2229,0.000000)" + id="use1348" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(408.2548,0.000000)" + id="use1350" /> + <use + x="0" + y="0" + inkscape:tiled-clone-of="#g15079" + xlink:href="#g15079" + transform="translate(459.2866,0.000000)" + id="use1352" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/progresswheel/progresswheel.svg lincity-ng-2.9~git20150314/data/images/mainmenu/progresswheel/progresswheel.svg --- lincity-ng-2.0/data/images/mainmenu/progresswheel/progresswheel.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/progresswheel/progresswheel.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,861 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + inkscape:export-ydpi="96.000000" + inkscape:export-xdpi="96.000000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/progresswheel/progresswheel-100.png" + sodipodi:docname="progresswheel.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/progresswheel" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg4380" + height="150.00000pt" + width="150.00000pt"> + <defs + id="defs3"> + <linearGradient + id="linearGradient15071"> + <stop + id="stop15073" + offset="0.0000000" + style="stop-color:#3f5dc9;stop-opacity:1.0000000;" /> + <stop + id="stop15075" + offset="1.0000000" + style="stop-color:#2246c9;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient14305"> + <stop + id="stop14307" + offset="0.0000000" + style="stop-color:#547aff;stop-opacity:1.0000000;" /> + <stop + id="stop14309" + offset="1.0000000" + style="stop-color:#244cda;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient11254" + inkscape:collect="always"> + <stop + id="stop11256" + offset="0" + style="stop-color:#ffffff;stop-opacity:1;" /> + <stop + id="stop11258" + offset="1" + style="stop-color:#ffffff;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient10486"> + <stop + id="stop10488" + offset="0.0000000" + style="stop-color:#42b327;stop-opacity:1.0000000;" /> + <stop + id="stop10490" + offset="1.0000000" + style="stop-color:#31841d;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="351.89758" + x2="181.71414" + y1="321.52527" + x1="146.19844" + gradientTransform="scale(0.830214,1.204508)" + id="linearGradient10492" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="scale(0.890083,1.123491)" + id="linearGradient11260" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="scale(2.825481,0.353922)" + id="linearGradient14311" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="scale(2.632584,0.379855)" + id="linearGradient15077" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + y2="351.89758" + x2="181.71414" + y1="321.52527" + x1="146.19844" + gradientTransform="scale(0.830214,1.204508)" + gradientUnits="userSpaceOnUse" + id="linearGradient15226" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="scale(0.890083,1.123491)" + gradientUnits="userSpaceOnUse" + id="linearGradient15228" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="scale(2.632584,0.379855)" + gradientUnits="userSpaceOnUse" + id="linearGradient15244" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="scale(2.825481,0.353922)" + gradientUnits="userSpaceOnUse" + id="linearGradient15246" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="matrix(2.825481,0.000000,0.000000,0.353922,-52.86224,-203.9000)" + gradientUnits="userSpaceOnUse" + id="linearGradient15249" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="matrix(2.632584,0.000000,0.000000,0.379855,-52.86224,-203.9000)" + gradientUnits="userSpaceOnUse" + id="linearGradient15253" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15071" + id="linearGradient2887" + x1="-51.146179" + y1="-11.026787" + x2="6.9269109" + y2="37.321426" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14305" + id="radialGradient4427" + cx="-66.295685" + cy="-22.477680" + fx="-66.295685" + fy="-22.477680" + r="105.77918" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="1139.8422" + x2="210.12250" + y1="1014.5779" + x1="104.82781" + gradientTransform="matrix(2.632584,0.000000,0.000000,0.379855,-142.8623,-439.6143)" + gradientUnits="userSpaceOnUse" + id="linearGradient4583" + xlink:href="#linearGradient15071" + inkscape:collect="always" /> + <linearGradient + y2="1202.1852" + x2="204.21881" + y1="1142.1606" + x1="89.594322" + gradientTransform="matrix(2.825481,0.000000,0.000000,0.353922,-102.8623,-411.0428)" + gradientUnits="userSpaceOnUse" + id="linearGradient4581" + xlink:href="#linearGradient14305" + inkscape:collect="always" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15071" + id="linearGradient4579" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.632584,0.000000,0.000000,0.379855,-52.86224,-203.9000)" + x1="104.82781" + y1="1014.5779" + x2="210.12250" + y2="1139.8422" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14305" + id="linearGradient4577" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.825481,0.000000,0.000000,0.353922,-52.86224,-203.9000)" + x1="89.594322" + y1="1142.1606" + x2="204.21881" + y2="1202.1852" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14305" + id="linearGradient4575" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.825481,0.353922)" + x1="89.594322" + y1="1142.1606" + x2="204.21881" + y2="1202.1852" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15071" + id="linearGradient4573" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(2.632584,0.379855)" + x1="104.82781" + y1="1014.5779" + x2="210.12250" + y2="1139.8422" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11254" + id="linearGradient4571" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.890083,1.123491)" + x1="143.49307" + y1="337.33090" + x2="161.00116" + y2="358.40421" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient10486" + id="linearGradient4569" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.830214,1.204508)" + x1="146.19844" + y1="321.52527" + x2="181.71414" + y2="351.89758" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient15071" + id="linearGradient4567" + gradientTransform="scale(2.632584,0.379855)" + x1="104.82781" + y1="1014.5779" + x2="210.12250" + y2="1139.8422" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14305" + id="linearGradient4565" + gradientTransform="scale(2.825481,0.353922)" + x1="89.594322" + y1="1142.1606" + x2="204.21881" + y2="1202.1852" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11254" + id="linearGradient4563" + gradientTransform="scale(0.890083,1.123491)" + x1="143.49307" + y1="337.33090" + x2="161.00116" + y2="358.40421" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient10486" + id="linearGradient4561" + gradientTransform="scale(0.830214,1.204508)" + x1="146.19844" + y1="321.52527" + x2="181.71414" + y2="351.89758" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient4555"> + <stop + style="stop-color:#42b327;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4557" /> + <stop + style="stop-color:#31841d;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4559" /> + </linearGradient> + <linearGradient + id="linearGradient4543"> + <stop + style="stop-color:#547aff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4545" /> + <stop + style="stop-color:#244cda;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4547" /> + </linearGradient> + <linearGradient + id="linearGradient4537"> + <stop + style="stop-color:#3f5dc9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4539" /> + <stop + style="stop-color:#2246c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4541" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11254" + id="linearGradient6185" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.890083,0.000000,0.000000,1.123491,-38.90690,-378.7316)" + x1="143.49307" + y1="337.33090" + x2="161.00116" + y2="358.40421" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient10486" + id="linearGradient6187" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.830214,0.000000,0.000000,1.204508,-38.90690,-378.7316)" + x1="146.19844" + y1="321.52527" + x2="181.71414" + y2="351.89758" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="116.88497" + x2="-88.101135" + y1="75.614807" + x1="-125.82456" + gradientTransform="matrix(1.105721,0.000000,0.000000,1.088477,209.2941,34.45486)" + id="linearGradient5253" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="103.97851" + x2="-124.56081" + y1="62.404949" + x1="-166.03581" + gradientTransform="matrix(1.103160,0.000000,0.000000,1.085956,208.0658,34.36056)" + id="linearGradient5255" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="46.445679" + x2="-124.83186" + y1="13.379826" + x1="-164.69714" + gradientTransform="matrix(1.105611,0.000000,0.000000,1.088370,208.4039,32.88207)" + id="linearGradient5257" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="24.676584" + x2="-96.932777" + y1="5.2514696" + x1="-121.08946" + gradientTransform="matrix(1.105601,0.000000,0.000000,1.088358,209.2888,32.60063)" + id="linearGradient5259" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="43.289410" + x2="-48.580635" + y1="9.4808998" + x1="-83.996155" + gradientTransform="matrix(1.105867,0.000000,0.000000,1.088622,210.1767,32.87786)" + id="linearGradient5261" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="99.763100" + x2="-46.505413" + y1="64.487839" + x1="-86.472572" + gradientTransform="matrix(1.103232,0.000000,0.000000,1.086026,210.0144,34.35816)" + id="linearGradient5263" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="78.364586" + x2="74.460686" + y1="41.636707" + x1="66.531929" + gradientTransform="matrix(0.814004,-0.360063,0.454483,1.027461,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient6033" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="90.845909" + x2="-4.3659797" + y1="41.507286" + x1="-0.46639711" + gradientTransform="matrix(-0.706333,0.541611,0.683638,0.891555,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient6037" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="matrix(0.956789,-0.280360,0.353878,1.207689,-148.2291,-268.8518)" + gradientUnits="userSpaceOnUse" + id="linearGradient6799" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="matrix(0.679515,0.729593,-0.920916,0.857705,350.6806,-359.7527)" + gradientUnits="userSpaceOnUse" + id="linearGradient6801" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="158.09592" + x2="-1.2224416" + y1="121.66035" + x1="-0.55574143" + gradientTransform="matrix(-0.706333,0.541611,0.683638,0.891555,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient6819" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="109.43345" + x2="31.988266" + y1="87.682159" + x1="22.930029" + gradientTransform="matrix(0.887177,-7.186328e-2,9.070910e-2,1.119823,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient7581" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="109.43345" + x2="31.988266" + y1="87.682159" + x1="22.930029" + gradientTransform="matrix(0.887177,-7.186328e-2,9.070910e-2,1.119823,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient9252" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="103.97851" + x2="-124.56081" + y1="62.404949" + x1="-166.03581" + gradientTransform="matrix(1.103160,0.000000,0.000000,1.085956,208.0658,34.36056)" + gradientUnits="userSpaceOnUse" + id="linearGradient9255" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="158.09592" + x2="-1.2224416" + y1="121.66035" + x1="-0.55574143" + gradientTransform="matrix(-0.706333,0.541611,0.683638,0.891555,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient9260" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="116.88497" + x2="-88.101135" + y1="75.614807" + x1="-125.82456" + gradientTransform="matrix(1.105721,0.000000,0.000000,1.088477,209.2941,34.45486)" + gradientUnits="userSpaceOnUse" + id="linearGradient9263" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="matrix(0.956789,-0.280360,0.353878,1.207689,-148.2291,-268.8518)" + gradientUnits="userSpaceOnUse" + id="linearGradient9268" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="99.763100" + x2="-46.505413" + y1="64.487839" + x1="-86.472572" + gradientTransform="matrix(1.103232,0.000000,0.000000,1.086026,210.0144,34.35816)" + gradientUnits="userSpaceOnUse" + id="linearGradient9271" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="90.845909" + x2="-4.3659797" + y1="41.507286" + x1="-0.46639711" + gradientTransform="matrix(-0.706333,0.541611,0.683638,0.891555,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient9276" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="46.445679" + x2="-124.83186" + y1="13.379826" + x1="-164.69714" + gradientTransform="matrix(1.105611,0.000000,0.000000,1.088370,208.4039,32.88207)" + gradientUnits="userSpaceOnUse" + id="linearGradient9279" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="78.364586" + x2="74.460686" + y1="41.636707" + x1="66.531929" + gradientTransform="matrix(0.814004,-0.360063,0.454483,1.027461,0.000000,0.000000)" + gradientUnits="userSpaceOnUse" + id="linearGradient9284" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="24.676584" + x2="-96.932777" + y1="5.2514696" + x1="-121.08946" + gradientTransform="matrix(1.105601,0.000000,0.000000,1.088358,209.2888,32.60063)" + gradientUnits="userSpaceOnUse" + id="linearGradient9287" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + <linearGradient + y2="358.40421" + x2="161.00116" + y1="337.33090" + x1="143.49307" + gradientTransform="matrix(0.679515,0.729593,-0.920916,0.857705,350.6806,-359.7527)" + gradientUnits="userSpaceOnUse" + id="linearGradient9292" + xlink:href="#linearGradient11254" + inkscape:collect="always" /> + <linearGradient + y2="43.289410" + x2="-48.580635" + y1="9.4808998" + x1="-83.996155" + gradientTransform="matrix(1.105867,0.000000,0.000000,1.088622,210.1767,32.87786)" + gradientUnits="userSpaceOnUse" + id="linearGradient9295" + xlink:href="#linearGradient10486" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="0" + inkscape:window-x="0" + inkscape:window-height="742" + inkscape:window-width="1016" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="93.750000" + inkscape:cx="93.750000" + inkscape:zoom="3.0186667" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + sodipodi:type="arc" + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path4455" + sodipodi:cx="-16.428572" + sodipodi:cy="27.142857" + sodipodi:rx="81.428574" + sodipodi:ry="81.428574" + d="M 65.000002 27.142857 A 81.428574 81.428574 0 1 1 -97.857145,27.142857 A 81.428574 81.428574 0 1 1 65.000002 27.142857 z" + transform="matrix(1.120141,0.000000,0.000000,1.120141,113.3190,64.29077)" /> + <path + sodipodi:type="arc" + style="fill:#708fff;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2119" + sodipodi:cx="-16.428572" + sodipodi:cy="27.142857" + sodipodi:rx="81.428574" + sodipodi:ry="81.428574" + d="M 65.000002 27.142857 A 81.428574 81.428574 0 1 1 -97.857145,27.142857 A 81.428574 81.428574 0 1 1 65.000002 27.142857 z" + transform="matrix(1.120141,0.000000,0.000000,1.120141,111.7188,62.69057)" /> + <path + sodipodi:type="arc" + style="fill:url(#linearGradient2887);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2121" + sodipodi:cx="-16.428572" + sodipodi:cy="27.142857" + sodipodi:rx="81.428574" + sodipodi:ry="81.428574" + d="M 65.000002 27.142857 A 81.428574 81.428574 0 1 1 -97.857145,27.142857 A 81.428574 81.428574 0 1 1 65.000002 27.142857 z" + transform="matrix(1.100490,0.000000,0.000000,1.100490,111.3960,63.22398)" /> + <path + sodipodi:type="arc" + style="fill:#b6c6ff;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path2889" + sodipodi:cx="-16.428572" + sodipodi:cy="27.142857" + sodipodi:rx="81.428574" + sodipodi:ry="81.428574" + d="M 65.000002 27.142857 A 81.428574 81.428574 0 1 1 -97.857145,27.142857 A 81.428574 81.428574 0 1 1 65.000002 27.142857 z" + transform="matrix(1.002232,0.000000,0.000000,1.002232,109.7817,65.89098)" /> + <path + sodipodi:type="arc" + style="fill:url(#radialGradient4427);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="path3657" + sodipodi:cx="-16.428572" + sodipodi:cy="27.142857" + sodipodi:rx="81.428574" + sodipodi:ry="81.428574" + d="M 65.000002 27.142857 A 81.428574 81.428574 0 1 1 -97.857145,27.142857 A 81.428574 81.428574 0 1 1 65.000002 27.142857 z" + transform="matrix(0.972754,0.000000,0.000000,0.972754,109.2975,66.69110)" /> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="g4585" + transform="translate(-180.7319,-184.9198)" /> + <g + id="g9299"> + <path + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 134.28384,32.107844 C 139.00906,31.088790 144.54452,35.167705 149.13203,39.699628 C 153.71955,44.231552 157.61885,49.278400 160.77903,54.751984 C 163.93920,60.225568 166.36025,66.125889 167.99125,72.364753 C 169.62226,78.603621 170.58881,85.858061 167.34367,89.440692 C 164.40423,92.685829 158.09407,92.008801 151.90949,92.008802 C 145.72492,92.008801 139.54035,92.008800 133.35577,92.008801 C 127.17120,92.008800 120.98663,92.008801 114.80205,92.008801 C 108.61748,92.008800 105.22495,89.535545 103.49518,86.972316 C 102.12096,84.935958 102.43290,81.296802 105.52519,75.940804 C 108.61748,70.584806 111.70976,65.228808 114.80205,59.872809 C 117.89434,54.516810 120.98663,49.160813 124.07891,43.804814 C 127.17120,38.448815 130.00375,33.030904 134.28384,32.107844 z " + id="path2175" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 133.63355,30.807324 C 138.35877,29.788270 143.89423,33.867186 148.48174,38.399110 C 153.06927,42.931035 156.96857,47.977885 160.12875,53.451471 C 163.28893,58.925057 165.70997,64.825379 167.34097,71.064245 C 168.97197,77.303115 169.93853,84.557557 166.69339,88.140189 C 163.75395,91.385327 157.44378,90.708299 151.25921,90.708300 C 145.07463,90.708299 138.89006,90.708298 132.70548,90.708299 C 126.52090,90.708298 120.33633,90.708299 114.15175,90.708299 C 107.96718,90.708298 104.57465,88.235043 102.84488,85.671813 C 101.47066,83.635455 101.78260,79.996297 104.87489,74.640297 C 107.96718,69.284298 111.05947,63.928298 114.15175,58.572298 C 117.24405,53.216297 120.33633,47.860297 123.42862,42.504297 C 126.52090,37.148296 129.35346,31.730383 133.63355,30.807324 z " + id="path1380" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 134.04748,32.685710 C 138.54265,31.715169 143.80860,35.599900 148.17277,39.916072 C 152.53695,44.232246 156.24641,49.038831 159.25272,54.251834 C 162.25903,59.464840 164.56221,65.084265 166.11381,71.026115 C 167.66541,76.967972 168.58491,83.877051 165.49775,87.289125 C 162.70143,90.379771 156.69848,89.734974 150.81501,89.734974 C 144.93153,89.734974 139.04807,89.734973 133.16459,89.734974 C 127.28112,89.734973 121.39766,89.734974 115.51418,89.734974 C 109.63071,89.734973 106.40335,87.379462 104.75780,84.938260 C 103.45048,82.998846 103.74724,79.532938 106.68897,74.431923 C 109.63071,69.330907 112.57244,64.229891 115.51418,59.128875 C 118.45592,54.027857 121.39766,48.926841 124.33938,43.825824 C 127.28112,38.724807 129.97578,33.564825 134.04748,32.685710 z " + id="path2953" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:url(#linearGradient9295);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 134.08300,33.268678 C 138.48614,32.318005 143.64430,36.123211 147.91913,40.351026 C 152.19396,44.578842 155.82748,49.287030 158.77226,54.393317 C 161.71703,59.499607 163.97306,65.003996 165.49289,70.824209 C 167.01272,76.644428 167.91341,83.412070 164.88945,86.754295 C 162.15037,89.781672 156.27031,89.150075 150.50727,89.150075 C 144.74425,89.150075 138.98122,89.150074 133.21819,89.150075 C 127.45516,89.150074 121.69213,89.150075 115.92910,89.150075 C 110.16607,89.150074 107.00477,86.842783 105.39291,84.451555 C 104.11236,82.551843 104.40304,79.156886 107.28455,74.160295 C 110.16607,69.163703 113.04758,64.167111 115.92910,59.170519 C 118.81061,54.173926 121.69213,49.177333 124.57365,44.180740 C 127.45516,39.184147 130.09465,34.129796 134.08300,33.268678 z " + id="path4481" + sodipodi:nodetypes="cssssssssssss" /> + <path + sodipodi:nodetypes="cscsccssss" + d="M 119.15782,58.987046 C 116.24628,59.240311 129.08245,35.360285 135.27679,34.824805 C 140.97798,34.331955 154.52235,49.775502 151.50505,49.862501 C 147.61524,49.974653 143.00272,40.512785 136.16018,41.788465 C 129.89450,42.956599 121.72393,58.763827 119.15782,58.987046 z M 129.95036,41.535742 C 129.33012,41.364206 134.30976,36.283255 135.57511,36.286504 C 137.34512,36.291053 141.44345,39.273609 140.87293,39.276903 C 140.24608,39.280527 137.86260,38.131795 135.82042,37.939914 C 133.77821,37.748030 130.77676,41.764298 129.95036,41.535742 z " + style="opacity:0.79807693;fill:url(#linearGradient9292);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path6023" /> + </g> + <g + id="g9306"> + <path + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 61.347506,27.829870 C 62.827593,23.228183 69.127770,20.473802 75.346300,18.766846 C 81.564797,17.059912 87.885147,16.206443 94.205498,16.206443 C 100.52585,16.206443 106.84620,17.059912 113.06472,18.766846 C 119.28325,20.473802 126.04905,23.263968 127.52913,27.865638 C 128.86978,32.033842 125.12837,37.160096 122.03608,42.516101 C 118.94380,47.872081 115.85152,53.228083 112.75922,58.584084 C 109.66693,63.940084 106.57465,69.296079 103.48236,74.652081 C 100.39008,80.008074 96.551925,81.709466 93.467202,81.925875 C 91.016558,82.097801 88.020931,80.008074 84.928636,74.652077 C 81.836352,69.296079 78.744069,63.940084 75.651785,58.584084 C 72.559501,53.228083 69.467207,47.872081 66.374912,42.516101 C 63.282628,37.160096 60.006877,31.998073 61.347506,27.829870 z " + id="path2179" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 60.697193,26.529348 C 62.177280,21.927660 68.477459,19.173278 74.695991,17.466322 C 80.914489,15.759388 87.234842,14.905918 93.555195,14.905918 C 99.875552,14.905918 106.19590,15.759388 112.41442,17.466322 C 118.63296,19.173278 125.39876,21.963445 126.87883,26.565117 C 128.21948,30.733321 124.47808,35.859578 121.38579,41.215583 C 118.29351,46.571566 115.20122,51.927569 112.10892,57.283572 C 109.01664,62.639573 105.92435,67.995571 102.83206,73.351574 C 99.739774,78.707569 95.901622,80.408961 92.816898,80.625370 C 90.366253,80.797296 87.370626,78.707569 84.278330,73.351570 C 81.186045,67.995571 78.093761,62.639573 75.001476,57.283572 C 71.909191,51.927569 68.816896,46.571566 65.724600,41.215583 C 62.632315,35.859578 59.356563,30.697553 60.697193,26.529348 z " + id="path1388" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 62.169708,27.149844 C 63.583909,22.753015 69.603616,20.121255 75.545305,18.490290 C 81.486960,16.859346 87.525944,16.043872 93.564929,16.043872 C 99.603913,16.043872 105.64289,16.859346 111.58457,18.490290 C 117.52626,20.121255 123.99086,22.787207 125.40505,27.184019 C 126.68601,31.166662 123.11117,36.064705 120.15655,41.182270 C 117.20193,46.299813 114.24730,51.417375 111.29267,56.534936 C 108.33805,61.652497 105.38342,66.770053 102.42880,71.887615 C 99.474178,77.005169 95.806892,78.630819 92.859497,78.837593 C 90.517954,79.001866 87.655679,77.005169 84.701049,71.887612 C 81.746429,66.770053 78.791810,61.652497 75.837191,56.534936 C 72.882572,51.417375 69.927941,46.299813 66.973311,41.182270 C 64.018681,36.064705 60.888759,31.132486 62.169708,27.149844 z " + id="path2957" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:url(#linearGradient9287);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 62.824162,27.570121 C 64.209071,23.264341 70.104128,20.687080 75.922781,19.089888 C 81.741389,17.492718 87.655321,16.694131 93.569253,16.694131 C 99.483184,16.694131 105.39710,17.492718 111.21574,19.089888 C 117.03439,20.687080 123.36513,23.297826 124.75003,27.603590 C 126.00447,31.503759 122.50365,36.300375 119.61021,41.311966 C 116.71678,46.323535 113.82334,51.335124 110.92989,56.346711 C 108.03645,61.358297 105.14301,66.369880 102.24957,71.381468 C 99.356138,76.393049 95.764786,77.985035 92.878428,78.187527 C 90.585375,78.348397 87.782367,76.393049 84.888930,71.381464 C 81.995493,66.369880 79.102056,61.358297 76.208619,56.346711 C 73.315182,51.335124 70.421733,46.323535 67.528296,41.311966 C 64.634848,36.300375 61.569738,31.470292 62.824162,27.570121 z " + id="path4485" + sodipodi:nodetypes="cssssssssssss" /> + <path + sodipodi:nodetypes="cscsccssss" + d="M 72.209311,42.740271 C 71.495781,45.574359 63.808419,34.142136 64.559339,27.970209 C 65.471750,20.470906 95.226759,15.652757 94.646638,17.719547 C 93.479596,21.431862 73.500240,22.679758 71.428617,29.414455 C 69.356994,36.149156 72.838192,40.242414 72.209311,42.740271 z M 66.510905,32.906652 C 66.145829,33.436606 65.620987,29.361292 66.038172,28.166688 C 66.621743,26.495637 70.781299,23.599099 70.597696,24.139282 C 70.395981,24.732785 67.916022,26.396259 67.066361,28.263193 C 66.216689,30.130142 66.997327,32.200565 66.510905,32.906652 z " + style="opacity:0.79807693;fill:url(#linearGradient9284);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path6031" /> + </g> + <g + id="g9313"> + <path + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 20.715229,89.005852 C 17.470069,85.423221 18.234811,78.589913 19.865804,72.351048 C 21.496796,66.112186 23.917836,60.211865 27.078033,54.738276 C 30.238186,49.264704 34.137487,44.217850 38.725013,39.685929 C 43.312517,35.154009 49.111780,30.689715 53.837017,31.708777 C 58.117087,32.631845 60.685850,38.435116 63.778134,43.791116 C 66.870429,49.147117 69.962701,54.503116 73.054996,59.859100 C 76.147291,65.215101 79.239574,70.571104 82.331858,75.927103 C 85.424153,81.283099 84.978516,85.457742 83.623582,88.237380 C 82.547149,90.445664 79.239574,91.995096 73.054996,91.995096 C 66.870429,91.995096 60.685850,91.995096 54.501260,91.995096 C 48.316693,91.995096 42.132124,91.995096 35.947567,91.995096 C 29.762967,91.995096 23.654658,92.250988 20.715229,89.005852 z " + id="path2177" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 20.064906,87.705349 C 16.819744,84.122717 17.584487,77.289407 19.215480,71.050540 C 20.846473,64.811676 23.267513,58.911353 26.427712,53.437762 C 29.587866,47.964189 33.487167,42.917333 38.074695,38.385411 C 42.662200,33.853490 48.461463,29.389195 53.186701,30.408257 C 57.466772,31.331325 60.035536,37.134598 63.127821,42.490599 C 66.220117,47.846601 69.312390,53.202602 72.404686,58.558588 C 75.496982,63.914591 78.589266,69.270596 81.681551,74.626597 C 84.773847,79.982594 84.328210,84.157239 82.973275,86.936877 C 81.896842,89.145162 78.589266,90.694594 72.404686,90.694594 C 66.220117,90.694594 60.035536,90.694594 53.850945,90.694594 C 47.666376,90.694594 41.481806,90.694594 35.297248,90.694594 C 29.112646,90.694594 23.004336,90.950486 20.064906,87.705349 z " + id="path1384" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 21.691989,86.889467 C 18.611914,83.489074 19.337755,77.003356 20.885767,71.081845 C 22.433803,65.160335 24.731694,59.560146 27.731142,54.364983 C 30.730555,49.169836 34.431502,44.379700 38.785671,40.078303 C 43.139817,35.776908 48.644091,31.539700 53.128969,32.506926 C 57.191329,33.383040 59.629429,38.891115 62.564412,43.974672 C 65.499407,49.058229 68.434390,54.141784 71.369384,59.225324 C 74.304390,64.308882 77.239384,69.392441 80.174356,74.475996 C 83.109361,79.559548 82.686396,83.521840 81.400384,86.160085 C 80.378703,88.256040 77.239384,89.726657 71.369384,89.726657 C 65.499407,89.726657 59.629429,89.726657 53.759418,89.726657 C 47.889452,89.726657 42.019474,89.726657 36.149508,89.726657 C 30.279497,89.726657 24.481903,89.969532 21.691989,86.889467 z " + id="path2955" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:url(#linearGradient9279);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 22.297974,86.354619 C 19.281658,83.024608 19.992477,76.673134 21.508443,70.874189 C 23.024442,65.075246 25.274761,59.590971 28.212130,54.503340 C 31.149466,49.415725 34.773806,44.724737 39.037848,40.512373 C 43.301868,36.300011 48.692212,32.150506 53.084264,33.097710 C 57.062536,33.955691 59.450173,39.349758 62.324411,44.328092 C 65.198649,49.306428 68.072886,54.284761 70.947124,59.263080 C 73.821385,64.241416 76.695634,69.219753 79.569849,74.198087 C 82.444109,79.176417 82.029892,83.056695 80.770506,85.640333 C 79.769974,87.692904 76.695634,89.133082 70.947124,89.133082 C 65.198649,89.133082 59.450173,89.133082 53.701663,89.133082 C 47.953199,89.133082 42.204712,89.133082 36.456247,89.133082 C 30.707738,89.133082 25.030145,89.370931 22.297974,86.354619 z " + id="path4483" + sodipodi:nodetypes="cssssssssssss" /> + <path + sodipodi:nodetypes="cscsccssss" + d="M 61.704155,48.555510 C 64.533262,49.288549 55.703177,34.049098 52.087047,34.434149 C 38.964927,35.831413 20.697696,72.001231 22.789515,72.483358 C 26.606755,73.239620 43.481964,40.067742 50.385160,41.479697 C 57.288367,42.891654 59.210698,47.909438 61.704155,48.555510 z M 56.295676,39.001746 C 56.935803,38.935547 53.365296,36.127371 52.119217,35.907336 C 49.560187,35.455458 43.966974,39.585846 43.878797,41.065596 C 43.841507,41.691317 48.767351,36.669071 51.304404,36.855853 C 53.834826,37.042147 55.442811,39.089958 56.295676,39.001746 z " + style="opacity:0.79807693;fill:url(#linearGradient9276);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path6035" /> + </g> + <g + id="g9334"> + <path + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 167.77940,97.595234 C 171.02454,101.17787 170.25983,108.01117 168.62882,114.25004 C 166.99782,120.48890 164.57677,126.38922 161.41660,131.86281 C 158.25642,137.33639 154.35712,142.38324 149.76960,146.91517 C 145.18209,151.44710 139.38283,155.91137 134.65762,154.89231 C 130.37752,153.96924 127.80877,148.16597 124.71648,142.80997 C 121.62419,137.45398 118.53191,132.09798 115.43962,126.74198 C 112.34733,121.38598 109.25505,116.02998 106.16276,110.67398 C 103.07047,105.31799 103.51611,101.14334 104.87104,98.363707 C 105.94748,96.155424 109.25505,94.605991 115.43962,94.605991 C 121.62420,94.605991 127.80877,94.605991 133.99334,94.605991 C 140.17792,94.605991 146.36249,94.605991 152.54707,94.605991 C 158.73164,94.605991 164.83997,94.350095 167.77940,97.595234 z " + id="path2171" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 167.12912,96.294734 C 170.37426,99.877366 169.60955,106.71067 167.97854,112.94954 C 166.34754,119.18841 163.92649,125.08874 160.76631,130.56232 C 157.60613,136.03590 153.70683,141.08275 149.11932,145.61469 C 144.53180,150.14662 138.73255,154.61089 134.00732,153.59183 C 129.72723,152.66877 127.15848,146.86549 124.06619,141.50949 C 120.97389,136.15349 117.88161,130.79749 114.78933,125.44149 C 111.69703,120.08549 108.60475,114.72949 105.51246,109.37349 C 102.42017,104.01749 102.86581,99.842846 104.22074,97.063207 C 105.29718,94.854924 108.60475,93.305490 114.78933,93.305490 C 120.97391,93.305490 127.15848,93.305490 133.34306,93.305490 C 139.52764,93.305490 145.71221,93.305490 151.89679,93.305490 C 158.08135,93.305490 164.18969,93.049594 167.12912,96.294734 z " + id="path6194" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 165.50968,97.426135 C 168.56734,100.80640 167.84681,107.25372 166.31004,113.14019 C 164.77326,119.02666 162.49208,124.59369 159.51446,129.75810 C 156.53685,134.92250 152.86281,139.68428 148.54032,143.96022 C 144.21782,148.23617 138.75360,152.44827 134.30136,151.48678 C 130.26853,150.61585 127.84817,145.14039 124.93452,140.08691 C 122.02088,135.03345 119.10724,129.97998 116.19359,124.92652 C 113.27995,119.87306 110.36631,114.81959 107.45266,109.76613 C 104.53902,104.71267 104.95891,100.77383 106.23557,98.151199 C 107.24982,96.067652 110.36631,94.605739 116.19360,94.605739 C 122.02089,94.605739 127.84818,94.605739 133.67546,94.605739 C 139.50276,94.605739 145.33004,94.605739 151.15732,94.605739 C 156.98461,94.605739 162.74007,94.364297 165.50968,97.426135 z " + id="path2949" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:url(#linearGradient9271);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 164.84683,98.011968 C 167.83476,101.31514 167.13066,107.61542 165.62893,113.36765 C 164.12719,119.11985 161.89805,124.55993 158.98834,129.60656 C 156.07864,134.65318 152.48839,139.30635 148.26448,143.48477 C 144.04057,147.66320 138.70096,151.77924 134.35026,150.83968 C 130.40941,149.98862 128.04425,144.63803 125.19705,139.69980 C 122.34987,134.76159 119.50267,129.82337 116.65547,124.88516 C 113.80827,119.94695 110.96108,115.00874 108.11389,110.07053 C 105.26669,105.13232 105.67701,101.28331 106.92455,98.720497 C 107.91567,96.684468 110.96109,95.255896 116.65547,95.255896 C 122.34987,95.255896 128.04425,95.255896 133.73863,95.255896 C 139.43303,95.255896 145.12741,95.255896 150.82181,95.255896 C 156.51619,95.255896 162.14038,95.019961 164.84683,98.011968 z " + id="path4477" + sodipodi:nodetypes="cssssssssssss" /> + <path + sodipodi:nodetypes="csssccssss" + d="M 122.29568,125.81514 C 121.21692,128.53129 105.62474,106.35231 107.92283,100.57516 C 110.03796,95.257958 134.44371,95.729994 132.05353,97.036442 C 129.86501,98.232665 116.47062,96.218750 114.54362,102.90713 C 112.77908,109.03164 123.24647,123.42124 122.29568,125.81514 z M 111.53402,108.34478 C 111.10265,108.82232 108.79304,102.09338 109.36316,100.96374 C 110.16068,99.383572 111.28530,98.984878 111.48497,99.519332 C 111.69491,100.08128 111.87552,100.55897 110.95110,101.48564 C 109.50219,102.93756 112.10878,107.70852 111.53402,108.34478 z " + style="opacity:0.79807693;fill:url(#linearGradient9268);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path6797" /> + </g> + <g + id="g9327"> + <path + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 127.14710,159.42147 C 125.66703,164.02316 119.36685,166.77753 113.14833,168.48451 C 106.92981,170.19143 100.60946,171.04490 94.289117,171.04490 C 87.968777,171.04490 81.648438,170.19143 75.429919,168.48451 C 69.211389,166.77753 62.445569,163.98736 60.965493,159.38571 C 59.624819,155.21750 63.366258,150.09124 66.458541,144.73525 C 69.550825,139.37926 72.643109,134.02326 75.735415,128.66726 C 78.827698,123.31126 81.919971,117.95527 85.012266,112.59927 C 88.104549,107.24327 91.942713,105.54188 95.027413,105.32547 C 97.478057,105.15354 100.47369,107.24327 103.56598,112.59927 C 106.65826,117.95527 109.75055,123.31126 112.84284,128.66726 C 115.93512,134.02326 119.02741,139.37926 122.11970,144.73526 C 125.21199,150.09125 128.48776,155.25326 127.14710,159.42147 z " + id="path2173" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 126.49681,158.12100 C 125.01673,162.72269 118.71655,165.47706 112.49803,167.18403 C 106.27951,168.89096 99.959162,169.74443 93.638813,169.74443 C 87.318472,169.74443 80.998130,168.89096 74.779610,167.18403 C 68.561078,165.47706 61.795256,162.68689 60.315180,158.08523 C 58.974505,153.91702 62.715945,148.79076 65.808230,143.43477 C 68.900514,138.07877 71.992799,132.72277 75.085106,127.36677 C 78.177390,122.01077 81.269664,116.65477 84.361959,111.29877 C 87.454244,105.94277 91.292408,104.24138 94.377110,104.02497 C 96.827755,103.85305 99.823387,105.94277 102.91568,111.29877 C 106.00796,116.65477 109.10025,122.01077 112.19254,127.36677 C 115.28483,132.72278 118.37712,138.07877 121.46940,143.43477 C 124.56170,148.79077 127.83747,153.95279 126.49681,158.12100 z " + id="path1372" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 125.18791,157.93070 C 123.76640,162.35028 117.71553,164.99567 111.74309,166.63508 C 105.77065,168.27446 99.700402,169.09416 93.630166,169.09416 C 87.559929,169.09416 81.489693,168.27446 75.517256,166.63508 C 69.544808,164.99567 63.046723,162.31591 61.625219,157.89634 C 60.337594,153.89308 63.930973,148.96967 66.900894,143.82563 C 69.870814,138.68158 72.840723,133.53754 75.810666,128.39348 C 78.780586,123.24943 81.750484,118.10537 84.720416,112.96133 C 87.690336,107.81727 91.376609,106.18321 94.339249,105.97536 C 96.692912,105.81024 99.570006,107.81727 102.53992,112.96133 C 105.50984,118.10537 108.47976,123.24943 111.44968,128.39348 C 114.41960,133.53754 117.38952,138.68158 120.35944,143.82564 C 123.32936,148.96968 126.47551,153.92743 125.18791,157.93070 z " + id="path2951" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:url(#linearGradient9263);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 124.53346,157.51042 C 123.14123,161.83896 117.21501,164.42984 111.36561,166.03548 C 105.51621,167.64109 99.571026,168.44391 93.625842,168.44391 C 87.680658,168.44391 81.735474,167.64109 75.886085,166.03548 C 70.036673,164.42984 63.672456,161.80529 62.280232,157.47677 C 61.019132,153.55599 64.538493,148.73400 67.447220,143.69594 C 70.355959,138.65786 73.264686,133.61978 76.173446,128.58171 C 79.082184,123.54363 81.990900,118.50555 84.899639,113.46747 C 87.808377,108.42939 91.418716,106.82899 94.320318,106.62543 C 96.625491,106.46371 99.443319,108.42939 102.35205,113.46747 C 105.26078,118.50555 108.16952,123.54363 111.07825,128.58171 C 113.98699,133.61979 116.89573,138.65786 119.80447,143.69594 C 122.71321,148.73401 125.79453,153.58962 124.53346,157.51042 z " + id="path4479" + sodipodi:nodetypes="cssssssssssss" /> + <path + sodipodi:nodetypes="csssccsssz" + d="M 111.82173,135.71740 C 114.65084,136.45044 100.48523,108.49422 94.402879,107.95394 C 89.383165,107.50805 84.755189,115.87474 83.951454,118.66914 C 83.167272,121.39556 87.249084,113.65796 94.152276,115.06992 C 101.05549,116.48187 109.32827,135.07133 111.82173,135.71740 z M 100.56132,116.21592 C 101.30782,116.13871 96.296858,110.16027 94.435049,109.83761 C 91.874595,109.39387 88.335265,112.27824 89.812534,112.40117 C 90.355759,112.44638 91.458461,111.26488 93.995511,111.45166 C 96.525931,111.63795 99.814824,116.29312 100.56132,116.21592 z " + style="opacity:0.79807693;fill:url(#linearGradient9260);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path6817" /> + </g> + <g + id="g9320"> + <path + style="fill:#000000;fill-opacity:0.55686277;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 53.560532,154.49324 C 48.835296,155.51228 43.299837,151.43339 38.712344,146.90145 C 34.124807,142.36953 30.225518,137.32269 27.065320,131.84910 C 23.905156,126.37551 21.484128,120.47519 19.853101,114.23634 C 18.222131,107.99747 17.255562,100.74303 20.500700,97.160397 C 23.440107,93.915256 29.750298,94.592285 35.934887,94.592284 C 42.119432,94.592285 48.304024,94.592290 54.488592,94.592285 C 60.673170,94.592290 66.857749,94.592285 73.042316,94.592285 C 79.226894,94.592290 82.619398,97.065540 84.349176,99.628768 C 85.723398,101.66513 85.411462,105.30429 82.319189,110.66027 C 79.226894,116.01627 76.134611,121.37228 73.042316,126.72828 C 69.950021,132.08428 66.857749,137.44028 63.765465,142.79626 C 60.673170,148.15226 57.840613,153.57017 53.560532,154.49324 z " + id="path2181" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#319c17;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 52.910216,153.19276 C 48.184979,154.21181 42.649520,150.13291 38.062026,145.60097 C 33.474487,141.06904 29.575197,136.02220 26.414998,130.54862 C 23.254833,125.07503 20.833804,119.17470 19.202778,112.93584 C 17.571807,106.69697 16.605237,99.442528 19.850376,95.859896 C 22.789784,92.614755 29.099977,93.291784 35.284568,93.291783 C 41.469115,93.291784 47.653707,93.291789 53.838276,93.291784 C 60.022856,93.291789 66.207437,93.291784 72.392006,93.291784 C 78.576586,93.291789 81.969091,95.765039 83.698869,98.328269 C 85.073092,100.36463 84.761155,104.00379 81.668882,109.35978 C 78.576586,114.71578 75.484302,120.07178 72.392006,125.42779 C 69.299710,130.78379 66.207437,136.13979 63.115152,141.49578 C 60.022856,146.85178 57.190299,152.26969 52.910216,153.19276 z " + id="path1392" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:#81e469;fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 53.172744,151.25051 C 48.703055,152.21445 43.466966,148.35616 39.127572,144.06930 C 34.788133,139.78248 31.099743,135.00859 28.110444,129.83102 C 25.121190,124.65345 22.831106,119.07223 21.288279,113.17079 C 19.745520,107.26933 18.831227,100.40723 21.900851,97.018351 C 24.681288,93.948715 30.650219,94.589127 36.500325,94.589126 C 42.350398,94.589127 48.200515,94.589132 54.050599,94.589127 C 59.900705,94.589132 65.750811,94.589127 71.600906,94.589127 C 77.451012,94.589132 80.660038,96.928624 82.296273,99.353227 C 83.596175,101.27946 83.301107,104.72180 80.376071,109.78813 C 77.451012,114.85446 74.525965,119.92081 71.600906,124.98714 C 68.675847,130.05347 65.750811,135.11982 62.825764,140.18614 C 59.900705,145.25248 57.221349,150.37737 53.172744,151.25051 z " + id="path2959" + sodipodi:nodetypes="cssssssssssss" /> + <path + style="fill:url(#linearGradient9255);fill-opacity:1.0000000;stroke:none;stroke-width:4.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 53.133293,150.60366 C 48.765817,151.54556 43.649481,147.77551 39.409321,143.58668 C 35.169127,139.39790 31.565094,134.73319 28.644158,129.67404 C 25.723266,124.61488 23.485560,119.16130 21.978017,113.39482 C 20.470542,107.62832 19.577151,100.92316 22.576576,97.611784 C 25.293423,94.612350 31.125853,95.238117 36.842159,95.238116 C 42.558441,95.238117 48.274769,95.238121 53.991063,95.238117 C 59.707380,95.238121 65.423696,95.238117 71.140002,95.238117 C 76.856318,95.238121 79.991952,97.524109 81.590763,99.893262 C 82.860936,101.77544 82.572623,105.13906 79.714482,110.08952 C 76.856318,115.03999 73.998165,119.99046 71.140002,124.94093 C 68.281838,129.89140 65.423696,134.84187 62.565544,139.79233 C 59.707380,144.74280 57.089307,149.75050 53.133293,150.60366 z " + id="path4487" + sodipodi:nodetypes="cssssssssssss" /> + <path + sodipodi:nodetypes="cscsccssss" + d="M 25.445909,116.03587 C 23.838730,118.47680 20.601242,105.26893 23.087604,99.570291 C 25.598177,93.816165 60.410916,96.809582 59.182428,98.569973 C 56.857781,101.69076 34.093103,96.698916 29.097895,103.19647 C 24.803368,108.78261 26.862418,113.88452 25.445909,116.03587 z M 23.304362,104.87407 C 22.785108,105.25420 23.631834,101.23342 24.419209,100.24288 C 25.520610,98.857284 30.402096,97.492408 30.050819,97.941973 C 29.664879,98.435918 26.775399,99.189755 25.358238,100.67266 C 23.941061,102.15558 23.996207,104.36759 23.304362,104.87407 z " + style="opacity:0.79807693;fill:url(#linearGradient9252);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:1.0000000px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path7579" /> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/settings/fullscreen.svg lincity-ng-2.9~git20150314/data/images/mainmenu/settings/fullscreen.svg --- lincity-ng-2.0/data/images/mainmenu/settings/fullscreen.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/settings/fullscreen.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,344 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="fullscreen.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/settings" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="297mm" + width="210mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient8975"> + <stop + id="stop8977" + offset="0.0000000" + style="stop-color:#f5ff00;stop-opacity:1.0000000;" /> + <stop + id="stop8979" + offset="1.0000000" + style="stop-color:#463200;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient8185"> + <stop + id="stop8187" + offset="0.0000000" + style="stop-color:#0e00bf;stop-opacity:1.0000000;" /> + <stop + id="stop8195" + offset="0.50000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop8189" + offset="1.0000000" + style="stop-color:#0e00bf;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient5889"> + <stop + id="stop5891" + offset="0.0000000" + style="stop-color:#007191;stop-opacity:1.0000000;" /> + <stop + id="stop5893" + offset="1.0000000" + style="stop-color:#1b8eaf;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient3592"> + <stop + id="stop3594" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:0.0000000;" /> + <stop + id="stop3596" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2822"> + <stop + id="stop2824" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:1.0000000;" /> + <stop + id="stop2826" + offset="1.0000000" + style="stop-color:#343434;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2052"> + <stop + id="stop2054" + offset="0" + style="stop-color:#e1e1e1;stop-opacity:1;" /> + <stop + id="stop2056" + offset="1.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="134.63687" + x2="237.97568" + y1="439.04947" + x1="390.31381" + gradientTransform="scale(1.105990,0.904167)" + id="linearGradient2058" + xlink:href="#linearGradient2052" + inkscape:collect="always" /> + <linearGradient + y2="134.63687" + x2="237.97568" + y1="439.04947" + x1="390.31381" + gradientTransform="matrix(1.007241,0.000000,0.000000,0.823438,27.67857,23.74407)" + gradientUnits="userSpaceOnUse" + id="linearGradient2062" + xlink:href="#linearGradient2822" + inkscape:collect="always" /> + <linearGradient + y2="49.243118" + x2="296.44391" + y1="373.82095" + x1="308.19086" + gradientTransform="scale(1.105990,0.904167)" + gradientUnits="userSpaceOnUse" + id="linearGradient4359" + xlink:href="#linearGradient3592" + inkscape:collect="always" /> + <linearGradient + y2="49.243118" + x2="296.44391" + y1="373.82095" + x1="308.19086" + gradientTransform="matrix(1.105990,0.000000,0.000000,0.904167,0.116821,384.3878)" + gradientUnits="userSpaceOnUse" + id="linearGradient5125" + xlink:href="#linearGradient3592" + inkscape:collect="always" /> + <linearGradient + y2="134.63687" + x2="237.97568" + y1="439.04947" + x1="390.31381" + gradientTransform="matrix(1.007241,0.000000,0.000000,0.823438,27.79539,408.1319)" + gradientUnits="userSpaceOnUse" + id="linearGradient5127" + xlink:href="#linearGradient5889" + inkscape:collect="always" /> + <linearGradient + y2="134.63687" + x2="237.97568" + y1="439.04947" + x1="390.31381" + gradientTransform="matrix(1.105990,0.000000,0.000000,0.904167,0.116821,384.3878)" + gradientUnits="userSpaceOnUse" + id="linearGradient5129" + xlink:href="#linearGradient2052" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="766.62897" + x2="221.07266" + y1="937.80219" + x1="321.01154" + gradientTransform="matrix(1.220989,0.000000,0.000000,0.819008,0.505076,1.515230)" + id="linearGradient7421" + xlink:href="#linearGradient2822" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="535.74634" + x2="160.74991" + y1="514.67950" + x1="141.32535" + id="linearGradient8209" + xlink:href="#linearGradient8185" + inkscape:collect="always" /> + <linearGradient + y2="584.26111" + x2="149.76343" + y1="565.34625" + x1="149.48027" + gradientUnits="userSpaceOnUse" + id="linearGradient8215" + xlink:href="#linearGradient8975" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="256" + inkscape:window-x="0" + inkscape:window-height="742" + inkscape:window-width="1272" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="496.35766" + inkscape:cx="1786.6547" + inkscape:zoom="0.24748737" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/fullscreen.png" + ry="45.985722" + rx="45.985722" + y="90.933609" + x="95.714287" + height="350.00000" + width="428.57144" + id="rect1291" + style="fill:url(#linearGradient2058);fill-opacity:1.0;stroke:#000000;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/fullscreen.png" + ry="35.985722" + rx="35.985722" + y="106.55861" + x="114.84694" + height="318.75000" + width="390.30612" + id="rect2060" + style="fill:url(#linearGradient2062);fill-opacity:1.0;stroke:#000000;stroke-width:1.8214285;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/fullscreen.png" + sodipodi:nodetypes="cccsssscc" + id="rect2832" + d="M 143.76083,93.076466 L 476.23919,93.076466 C 501.40333,93.076466 521.66182,113.33496 521.66182,138.49910 C 521.66182,164.88401 521.66182,191.26892 521.66182,217.65383 C 521.66182,242.81797 513.08617,283.28685 476.23919,290.21932 C 332.40395,317.28078 270.30124,245.93361 143.76083,258.79075 C 118.72558,261.33446 98.338194,242.81797 98.338194,217.65383 C 98.338194,191.26892 98.338194,164.88401 98.338194,138.49910 C 98.338194,113.33496 118.59669,93.076466 143.76083,93.076466 z " + style="stroke-opacity:0.74305558;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.0000000;stroke:none;fill-opacity:1.0;fill:url(#linearGradient4359)" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + ry="45.985722" + rx="45.985722" + y="475.32144" + x="95.831108" + height="350.00000" + width="428.57144" + id="rect5119" + style="fill:url(#linearGradient5129);fill-opacity:1.0000000;stroke:#000000;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + ry="35.985722" + rx="35.985722" + y="490.94644" + x="114.96376" + height="318.75000" + width="390.30612" + id="rect5121" + style="stroke-opacity:0.74305558;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:1.8214285;stroke:#000000;fill-opacity:1.0;fill:url(#linearGradient5127)" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + ry="0.0000000" + rx="0.0000000" + y="618.50165" + x="218.19295" + height="163.13963" + width="224.25386" + id="rect5895" + style="fill:#222490;fill-opacity:1.0000000;stroke:none;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + ry="0.0000000" + rx="0.0000000" + y="631.63367" + x="220.38556" + height="147.48227" + width="219.86862" + id="rect6655" + style="fill:url(#linearGradient7421);fill-opacity:1.0000000;stroke:none;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + y="513.43359" + x="134.64285" + height="22.142857" + width="22.142857" + id="rect7423" + style="fill:url(#linearGradient8209);fill-opacity:1.0;stroke:none;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + y="540.57648" + x="127.50000" + height="7.8571429" + width="36.428570" + id="rect7425" + style="fill:#0c00ab;fill-opacity:1.0000000;stroke:none;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + y="562.00500" + x="134.64285" + height="22.142857" + width="22.142857" + id="rect8211" + style="stroke-opacity:0.74305558;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:2.0000000;stroke:none;fill-opacity:1.0;fill:url(#linearGradient8215)" /> + <rect + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + y="589.14789" + x="127.50000" + height="7.8571429" + width="36.428570" + id="rect8213" + style="fill:#bdbdbd;fill-opacity:1.0000000;stroke:none;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/windowed.png" + sodipodi:nodetypes="cccsssscc" + id="path5123" + d="M 143.87765,477.46433 L 476.35601,477.46433 C 501.52015,477.46433 521.77864,497.72282 521.77864,522.88696 C 521.77864,549.27187 521.77864,575.65678 521.77864,602.04169 C 521.77864,627.20583 513.20299,667.67471 476.35601,674.60718 C 332.52077,701.66864 270.41806,630.32147 143.87765,643.17861 C 118.84240,645.72232 98.455017,627.20583 98.455017,602.04169 C 98.455017,575.65678 98.455017,549.27187 98.455017,522.88696 C 98.455017,497.72282 118.71351,477.46433 143.87765,477.46433 z " + style="fill:url(#linearGradient5125);fill-opacity:1.0000000;stroke:none;stroke-width:2.0000000;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.74305558" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/settings/music.svg lincity-ng-2.9~git20150314/data/images/mainmenu/settings/music.svg --- lincity-ng-2.0/data/images/mainmenu/settings/music.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/settings/music.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,190 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="music.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/settings" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg1974" + height="297mm" + width="210mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2848"> + <stop + style="stop-color:#ff0000;stop-opacity:1;" + offset="0" + id="stop2850" /> + <stop + style="stop-color:#780000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2852" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2848" + id="linearGradient2854" + gradientTransform="matrix(0.910280,0.000000,0.000000,1.098563,-0.707688,-102.1843)" + x1="351.94034" + y1="554.54236" + x2="461.92749" + y2="798.94110" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="427.44754" + x2="1308.1616" + y1="224.21413" + x1="1285.5446" + gradientTransform="scale(1.019681,0.980699)" + gradientUnits="userSpaceOnUse" + id="linearGradient11155" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + id="linearGradient4255"> + <stop + id="stop4257" + offset="0.0000000" + style="stop-color:#535353;stop-opacity:1.0000000;" /> + <stop + id="stop4259" + offset="1.0000000" + style="stop-color:#c3c3c3;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + y2="281.17014" + x2="1338.9440" + y1="450.88165" + x1="1382.7700" + gradientTransform="scale(1.019681,0.980698)" + gradientUnits="userSpaceOnUse" + id="linearGradient11929" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="281.17014" + x2="1338.9440" + y1="450.88165" + x1="1382.7700" + gradientTransform="scale(1.019681,0.980698)" + gradientUnits="userSpaceOnUse" + id="linearGradient4386" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="427.44754" + x2="1308.1616" + y1="224.21413" + x1="1285.5446" + gradientTransform="scale(1.019681,0.980699)" + gradientUnits="userSpaceOnUse" + id="linearGradient4388" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="321" + inkscape:window-x="135" + inkscape:window-height="540" + inkscape:window-width="640" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="615.00472" + inkscape:cx="-385.99283" + inkscape:zoom="0.24748737" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <g + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/music-off.png" + transform="matrix(3.265347,0.000000,0.000000,3.265347,-2640.446,-93.17108)" + id="audio"> + <path + sodipodi:nodetypes="ccccccccccc" + id="note-shadow" + d="M 939.18201,177.96452 L 862.71312,179.92632 L 860.95784,267.44319 C 849.01418,258.43651 822.27222,267.77132 825.10857,280.96928 C 827.61983,292.65445 868.04288,288.88468 868.37575,275.32069 L 870.39952,198.44801 L 932.86383,197.47237 L 930.83090,266.05960 C 918.88723,257.05292 892.87638,266.36708 895.71273,279.56504 C 898.22388,291.25022 936.49491,287.26428 936.82783,273.70030 L 939.18201,177.96452 z " + style="fill:#000000;fill-opacity:0.59607846;fill-rule:evenodd;stroke:none;stroke-width:1.2401829px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <g + transform="matrix(0.532838,0.000000,0.000000,0.532838,179.1951,60.35037)" + id="g8757"> + <path + sodipodi:nodetypes="ccccccccccc" + id="path4887" + d="M 1423.1577,217.58884 L 1279.6452,221.27063 L 1276.3510,385.51736 C 1253.9358,368.61412 1203.7480,386.13318 1209.0711,410.90235 C 1213.7841,432.83243 1289.6478,425.75754 1290.2725,400.30141 L 1294.0706,256.03111 L 1411.3001,254.20007 L 1407.4848,382.92072 C 1385.0696,366.01749 1336.2539,383.49778 1341.5770,408.26696 C 1346.2898,430.19704 1418.1147,422.71645 1418.7395,397.26034 L 1423.1577,217.58884 z " + style="fill:url(#linearGradient11929);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2401829px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccccc" + id="path5678" + d="M 1420.2361,220.97928 L 1282.4504,223.84167 L 1279.4918,389.58337 C 1259.3593,374.40160 1207.1716,387.46980 1211.9526,409.71643 C 1216.1857,429.41310 1287.8416,422.65956 1288.4027,399.79593 L 1291.3696,253.77400 L 1413.4503,251.63973 L 1410.0236,386.80672 C 1389.8912,371.62497 1340.4051,385.10280 1345.1860,407.34944 C 1349.4189,427.04610 1415.7068,419.43846 1416.2679,396.57487 L 1420.2361,220.97928 z " + style="fill:url(#linearGradient11155);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1138799px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + </g> + </g> + <path + style="fill:url(#linearGradient2854);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + d="M 93.578032,758.74932 L 410.72088,493.03504 L 447.86373,544.46361 L 176.43517,835.89218 L 93.578032,758.74932 z " + id="path2846" + sodipodi:nodetypes="ccccc" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/music-off.png" + inkscape:export-xdpi="13.380000" + inkscape:export-ydpi="13.380000" /> + <g + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/music-on.png" + transform="matrix(3.265347,0.000000,0.000000,3.265347,-2640.446,-513.3945)" + id="g4376"> + <path + sodipodi:nodetypes="ccccccccccc" + id="path4378" + d="M 939.18201,177.96452 L 862.71312,179.92632 L 860.95784,267.44319 C 849.01418,258.43651 822.27222,267.77132 825.10857,280.96928 C 827.61983,292.65445 868.04288,288.88468 868.37575,275.32069 L 870.39952,198.44801 L 932.86383,197.47237 L 930.83090,266.05960 C 918.88723,257.05292 892.87638,266.36708 895.71273,279.56504 C 898.22388,291.25022 936.49491,287.26428 936.82783,273.70030 L 939.18201,177.96452 z " + style="fill:#000000;fill-opacity:0.59607846;fill-rule:evenodd;stroke:none;stroke-width:1.2401829px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <g + transform="matrix(0.532838,0.000000,0.000000,0.532838,179.1951,60.35037)" + id="g4380"> + <path + sodipodi:nodetypes="ccccccccccc" + id="path4382" + d="M 1423.1577,217.58884 L 1279.6452,221.27063 L 1276.3510,385.51736 C 1253.9358,368.61412 1203.7480,386.13318 1209.0711,410.90235 C 1213.7841,432.83243 1289.6478,425.75754 1290.2725,400.30141 L 1294.0706,256.03111 L 1411.3001,254.20007 L 1407.4848,382.92072 C 1385.0696,366.01749 1336.2539,383.49778 1341.5770,408.26696 C 1346.2898,430.19704 1418.1147,422.71645 1418.7395,397.26034 L 1423.1577,217.58884 z " + style="fill:url(#linearGradient4386);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.2401829px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + <path + sodipodi:nodetypes="ccccccccccc" + id="path4384" + d="M 1420.2361,220.97928 L 1282.4504,223.84167 L 1279.4918,389.58337 C 1259.3593,374.40160 1207.1716,387.46980 1211.9526,409.71643 C 1216.1857,429.41310 1287.8416,422.65956 1288.4027,399.79593 L 1291.3696,253.77400 L 1413.4503,251.63973 L 1410.0236,386.80672 C 1389.8912,371.62497 1340.4051,385.10280 1345.1860,407.34944 C 1349.4189,427.04610 1415.7068,419.43846 1416.2679,396.57487 L 1420.2361,220.97928 z " + style="fill:url(#linearGradient4388);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:1.1138799px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1.0000000" /> + </g> + </g> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/settings/sound.svg lincity-ng-2.9~git20150314/data/images/mainmenu/settings/sound.svg --- lincity-ng-2.0/data/images/mainmenu/settings/sound.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/settings/sound.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,216 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="sound.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/settings" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2" + height="297mm" + width="210mm"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2848"> + <stop + id="stop2850" + offset="0" + style="stop-color:#ff0000;stop-opacity:1;" /> + <stop + id="stop2852" + offset="1.0000000" + style="stop-color:#780000;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2810"> + <stop + id="stop2812" + offset="0" + style="stop-color:#bdbdbd;stop-opacity:1;" /> + <stop + id="stop2814" + offset="1.0000000" + style="stop-color:#757575;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="430.97156" + fy="607.69922" + fx="481.80945" + cy="607.69922" + cx="481.80945" + id="radialGradient2818" + xlink:href="#linearGradient2810" + inkscape:collect="always" /> + <radialGradient + r="361.97122" + fy="278.02075" + fx="228.21063" + cy="278.02075" + cx="228.21063" + gradientUnits="userSpaceOnUse" + id="radialGradient2822" + xlink:href="#linearGradient2810" + inkscape:collect="always" /> + <radialGradient + r="430.97156" + fy="607.69922" + fx="481.80945" + cy="607.69922" + cx="481.80945" + gradientUnits="userSpaceOnUse" + id="radialGradient2840" + xlink:href="#linearGradient2810" + inkscape:collect="always" /> + <radialGradient + r="361.97122" + fy="278.02075" + fx="228.21063" + cy="278.02075" + cx="228.21063" + gradientUnits="userSpaceOnUse" + id="radialGradient2842" + xlink:href="#linearGradient2810" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="798.94110" + x2="461.92749" + y1="554.54236" + x1="351.94034" + gradientTransform="scale(0.910280,1.098563)" + id="linearGradient2854" + xlink:href="#linearGradient2848" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="399" + inkscape:window-x="65" + inkscape:window-height="540" + inkscape:window-width="640" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="520.00000" + inkscape:cx="375.00000" + inkscape:zoom="0.35000000" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-on.png" + transform="matrix(0.835182,0.000000,0.000000,0.835182,1.281415,-33.95075)" + d="M 560.00000 418.07648 A 222.85715 222.85715 0 1 1 114.28571,418.07648 A 222.85715 222.85715 0 1 1 560.00000 418.07648 z" + sodipodi:ry="222.85715" + sodipodi:rx="222.85715" + sodipodi:cy="418.07648" + sodipodi:cx="337.14285" + id="path2824" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:5.9867191;stroke:none;fill-opacity:0.63194442;fill:#000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-on.png" + transform="matrix(0.835182,0.000000,0.000000,0.835182,-7.290014,-39.66504)" + d="M 560.00000 418.07648 A 222.85715 222.85715 0 1 1 114.28571,418.07648 A 222.85715 222.85715 0 1 1 560.00000 418.07648 z" + sodipodi:ry="222.85715" + sodipodi:rx="222.85715" + sodipodi:cy="418.07648" + sodipodi:cx="337.14285" + id="path1291" + style="stroke-dasharray:none;stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:5.9867191;stroke:#555555;fill-opacity:1.0000000;fill:url(#radialGradient2818)" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-on.png" + transform="matrix(0.340729,0.000000,0.000000,0.340729,159.4114,167.0542)" + d="M 560.00000 418.07648 A 222.85715 222.85715 0 1 1 114.28571,418.07648 A 222.85715 222.85715 0 1 1 560.00000 418.07648 z" + sodipodi:ry="222.85715" + sodipodi:rx="222.85715" + sodipodi:cy="418.07648" + sodipodi:cx="337.14285" + id="path2820" + style="stroke-opacity:1.0000000;stroke-miterlimit:4.0000000;stroke-linejoin:round;stroke-linecap:round;stroke-width:14.674419;stroke:#555555;fill-opacity:1.0;fill:url(#radialGradient2822);stroke-dasharray:none" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-off.png" + transform="matrix(0.835182,0.000000,0.000000,0.835182,1.281415,417.4778)" + d="M 560.00000 418.07648 A 222.85715 222.85715 0 1 1 114.28571,418.07648 A 222.85715 222.85715 0 1 1 560.00000 418.07648 z" + sodipodi:ry="222.85715" + sodipodi:rx="222.85715" + sodipodi:cy="418.07648" + sodipodi:cx="337.14285" + id="path2834" + style="fill:#000000;fill-opacity:0.63194442;stroke:none;stroke-width:5.9867191;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-off.png" + transform="matrix(0.835182,0.000000,0.000000,0.835182,-7.290014,411.7635)" + d="M 560.00000 418.07648 A 222.85715 222.85715 0 1 1 114.28571,418.07648 A 222.85715 222.85715 0 1 1 560.00000 418.07648 z" + sodipodi:ry="222.85715" + sodipodi:rx="222.85715" + sodipodi:cy="418.07648" + sodipodi:cx="337.14285" + id="path2836" + style="fill:url(#radialGradient2840);fill-opacity:1.0000000;stroke:#555555;stroke-width:5.9867191;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-off.png" + transform="matrix(0.340729,0.000000,0.000000,0.340729,159.4114,618.4828)" + d="M 560.00000 418.07648 A 222.85715 222.85715 0 1 1 114.28571,418.07648 A 222.85715 222.85715 0 1 1 560.00000 418.07648 z" + sodipodi:ry="222.85715" + sodipodi:rx="222.85715" + sodipodi:cy="418.07648" + sodipodi:cx="337.14285" + id="path2838" + style="fill:url(#radialGradient2842);fill-opacity:1.0000000;stroke:#555555;stroke-width:14.674419;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + sodipodi:type="arc" /> + <path + inkscape:export-ydpi="13.380000" + inkscape:export-xdpi="13.380000" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings/sound-off.png" + sodipodi:nodetypes="ccccc" + id="path2846" + d="M 94.285719,860.93361 L 411.42857,595.21933 L 448.57142,646.64790 L 177.14286,938.07647 L 94.285719,860.93361 z " + style="fill:url(#linearGradient2854);fill-opacity:1.0;fill-rule:evenodd;stroke:#000000;stroke-width:2.0000000;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000;stroke-dasharray:none;stroke-miterlimit:4.0000000" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/settings_back.svg lincity-ng-2.9~git20150314/data/images/mainmenu/settings_back.svg --- lincity-ng-2.0/data/images/mainmenu/settings_back.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/settings_back.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,2292 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + width="1024.0000px" + height="768.00000px" + id="svg2" + sodipodi:version="0.32" + inkscape:version="0.41" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu" + sodipodi:docname="settings_back.svg" + inkscape:export-filename="/home/egore/source/lincity-ng/data/images/mainmenu/settings_back.png" + inkscape:export-xdpi="90.000000" + inkscape:export-ydpi="90.000000"> + <defs + id="defs3"> + <linearGradient + id="linearGradient2758"> + <stop + id="stop2760" + offset="0.0000000" + style="stop-color:#3eea27;stop-opacity:1.0000000;" /> + <stop + id="stop2762" + offset="1.0000000" + style="stop-color:#29b118;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient2744"> + <stop + id="stop2746" + offset="0.0000000" + style="stop-color:#294327;stop-opacity:1.0000000;" /> + <stop + id="stop2748" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient2734"> + <stop + id="stop2736" + offset="0.0000000" + style="stop-color:#385fa8;stop-opacity:1.0000000;" /> + <stop + id="stop2738" + offset="1.0000000" + style="stop-color:#29457a;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient18203"> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop18205" /> + <stop + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" + offset="0.50000000" + id="stop18209" /> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop18207" /> + </linearGradient> + <linearGradient + id="linearGradient4850"> + <stop + style="stop-color:#000000;stop-opacity:1;" + offset="0" + id="stop4852" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop4854" /> + </linearGradient> + <linearGradient + id="linearGradient4255"> + <stop + style="stop-color:#f7ff6b;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4257" /> + <stop + style="stop-color:#bac320;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4259" /> + </linearGradient> + <linearGradient + id="linearGradient4305"> + <stop + style="stop-color:#000000;stop-opacity:0.73333335;" + offset="0.0000000" + id="stop4307" /> + <stop + style="stop-color:#000000;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4309" /> + </linearGradient> + <linearGradient + id="linearGradient2380"> + <stop + style="stop-color:#a9ab1d;stop-opacity:1;" + offset="0" + id="stop2382" /> + <stop + style="stop-color:#a9ab1d;stop-opacity:0;" + offset="1" + id="stop2384" /> + </linearGradient> + <linearGradient + id="linearGradient2542"> + <stop + id="stop2544" + offset="0.0000000" + style="stop-color:#ffffff;stop-opacity:1.0000000;" /> + <stop + id="stop2546" + offset="1.0000000" + style="stop-color:#e2ecff;stop-opacity:1.0000000;" /> + </linearGradient> + <radialGradient + gradientUnits="userSpaceOnUse" + r="787.10168" + fy="473.20316" + fx="823.91541" + cy="473.20316" + cx="823.91541" + gradientTransform="matrix(1.162983,0.000000,0.000000,0.859900,8.931699e-3,1.615128e-2)" + id="radialGradient2550" + xlink:href="#linearGradient2542" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient22165" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient11999"> + <stop + style="stop-color:#e2e2e2;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12001" /> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12003" /> + </linearGradient> + <linearGradient + id="linearGradient11991"> + <stop + style="stop-color:#c9c9c9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop11993" /> + <stop + style="stop-color:#8b8b8b;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop11995" /> + </linearGradient> + <linearGradient + id="linearGradient12007"> + <stop + style="stop-color:#bababa;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop12009" /> + <stop + style="stop-color:#888888;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop12011" /> + </linearGradient> + <linearGradient + id="linearGradient14361"> + <stop + style="stop-color:#c3cde9;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop14363" /> + <stop + style="stop-color:#698ef6;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop14365" /> + </linearGradient> + <linearGradient + id="linearGradient19109"> + <stop + style="stop-color:#000000;stop-opacity:0.45378152;" + offset="0.0000000" + id="stop19111" /> + <stop + style="stop-color:#000000;stop-opacity:0;" + offset="1" + id="stop19113" /> + </linearGradient> + <linearGradient + id="linearGradient9030"> + <stop + style="stop-color:#00bfff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9032" /> + <stop + style="stop-color:#0021c8;stop-opacity:0.51405621;" + offset="1.0000000" + id="stop9034" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.35294119;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient3617" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,-1.360206,385.5420)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient1742" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,648.7695,483.3827)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" + gradientUnits="userSpaceOnUse" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4812" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4811" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient4810" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient3554" + gradientUnits="userSpaceOnUse" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2931" + gradientUnits="userSpaceOnUse" + cx="615.29224" + cy="668.54333" + fx="615.29224" + fy="668.54333" + r="494.38043" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="radialGradient2308" + cx="272.03766" + cy="469.37524" + fx="272.03766" + fy="469.37524" + r="469.63513" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient2304"> + <stop + style="stop-color:#6a57ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2305" /> + <stop + style="stop-color:#1300a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2306" /> + </linearGradient> + <linearGradient + id="linearGradient4802"> + <stop + style="stop-color:#8879ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4803" /> + <stop + style="stop-color:#4e42a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4804" /> + </linearGradient> + <linearGradient + id="linearGradient1738"> + <stop + style="stop-color:#60ff45;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop1739" /> + <stop + style="stop-color:#0bad00;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop1740" /> + </linearGradient> + <linearGradient + id="linearGradient3618"> + <stop + style="stop-color:#ff0000;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop3619" /> + <stop + style="stop-color:#860000;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop3620" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6500" + gradientTransform="scale(1.075954,0.929408)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-23.99263,0.925278)" + x1="63.393742" + y1="712.42957" + x2="72.464546" + y2="719.76025" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.075954,0.000000,0.000000,0.929408,-6.266319e-2,0.626632)" + x1="680.29120" + y1="721.96411" + x2="681.54474" + y2="737.44690" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient6512" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.075954,0.929408)" + x1="651.09534" + y1="720.26569" + x2="652.25720" + y2="728.05103" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2304" + id="linearGradient12124" + gradientTransform="scale(0.206219,4.849215)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient13654" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.206219,0.000000,0.000000,4.849215,0.224287,0.297193)" + x1="3138.8862" + y1="100.32681" + x2="2594.4343" + y2="79.180443" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient23468" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,741.3971,-280.0799)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23470" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,755.6905,-135.5312)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23472" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,755.6905,-135.5312)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23474" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,755.6905,-135.5312)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23476" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,749.5288,-149.6013)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23478" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,749.5288,-149.6013)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23480" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,749.5288,-149.6013)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23482" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,718.3285,-149.3086)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23484" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,718.3285,-149.3086)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23486" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,718.3285,-149.3086)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23488" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,765.0778,-199.5904)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23490" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,765.0778,-199.5904)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23492" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,765.0778,-199.5904)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23494" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,745.7026,-201.9960)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23496" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,745.7026,-201.9960)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23498" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,745.7026,-201.9960)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23500" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,721.0845,-209.0808)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23502" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,721.0845,-209.0808)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23504" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,721.0845,-209.0808)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23506" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,782.3408,-266.2137)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23508" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,782.3408,-266.2137)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23510" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.763570,1.309637)" + spreadMethod="pad" + x1="990.44958" + y1="122.82517" + x2="1026.7732" + y2="145.52820" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23512" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,763.4423,-270.0809)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23514" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,763.4423,-270.0809)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23516" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,763.4423,-270.0809)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23518" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,741.3971,-280.0799)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient23520" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,741.3971,-280.0799)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient23522" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,741.3971,-280.0799)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient23524" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,741.3971,-280.0799)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient23526" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,741.3971,-280.0799)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient23528" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,741.3971,-280.0799)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient23530" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.146091,0.000000,0.000000,0.653803,364.2777,-102.2402)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="247.83467" + fy="776.96881" + fx="60.051296" + cy="776.96881" + cx="60.051296" + gradientTransform="matrix(1.883522,0.000000,0.000000,0.846568,19.44520,10.81907)" + id="radialGradient28433" + xlink:href="#linearGradient28427" + inkscape:collect="always" /> + <radialGradient + r="279.10022" + fy="823.55896" + fx="72.217499" + cy="823.55896" + cx="72.217499" + gradientTransform="matrix(2.304414,0.000000,0.000000,0.691946,19.44520,10.81907)" + gradientUnits="userSpaceOnUse" + id="radialGradient23847" + xlink:href="#linearGradient19109" + inkscape:collect="always" /> + <linearGradient + spreadMethod="pad" + gradientUnits="userSpaceOnUse" + y2="864.99774" + x2="149.30901" + y1="611.94214" + x1="33.550251" + gradientTransform="matrix(1.709511,0.000000,0.000000,0.932741,19.44520,10.81907)" + id="linearGradient23831" + xlink:href="#linearGradient23833" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.099226,-8.979644e-2,0.154015,1.885338,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23057" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.811295,-6.627516e-2,0.208675,2.554449,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23055" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.722194,-0.140686,9.830286e-2,1.203356,-361.4174,73.44542)" + gradientUnits="userSpaceOnUse" + id="linearGradient23053" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025909,-0.125048,0.214475,1.759586,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23051" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.757182,-9.229261e-2,0.290593,2.384068,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23049" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.607324,-0.195916,0.136893,1.123092,-393.6883,88.65435)" + gradientUnits="userSpaceOnUse" + id="linearGradient23047" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.096066,-0.122485,0.210081,1.879917,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23033" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.808962,-9.040137e-2,0.284638,2.547103,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23031" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.717241,-0.191901,0.134089,1.199896,-375.0624,7.047793)" + gradientUnits="userSpaceOnUse" + id="linearGradient23029" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.025112,-0.131424,0.225413,1.758220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23027" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.756594,-9.699938e-2,0.305413,2.382215,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23025" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.606075,-0.205907,0.143875,1.122220,-396.9023,11.47477)" + gradientUnits="userSpaceOnUse" + id="linearGradient23023" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23009" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23007" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-321.9816,-116.1682)" + gradientUnits="userSpaceOnUse" + id="linearGradient23005" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23003" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient23001" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-362.8642,-94.58430)" + gradientUnits="userSpaceOnUse" + id="linearGradient22999" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.031931,-5.696918e-2,9.771068e-2,1.769915,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22985" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.761627,-4.204668e-2,0.132389,2.398063,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22983" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.616759,-8.925547e-2,6.236585e-2,1.129685,-357.3477,-175.1718)" + gradientUnits="userSpaceOnUse" + id="linearGradient22981" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="265.41870" + x2="376.08069" + y1="254.70479" + x1="367.53497" + spreadMethod="pad" + gradientTransform="matrix(1.102882,-3.734009e-3,6.404399e-3,1.891608,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22973" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + y2="184.97871" + x2="495.91205" + y1="183.69188" + x1="476.78058" + gradientTransform="matrix(0.813993,-2.755912e-3,8.677855e-3,2.562943,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22971" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <linearGradient + y2="412.35938" + x2="235.34807" + y1="428.89398" + x1="234.28046" + gradientTransform="matrix(1.727920,-5.850188e-3,4.087732e-3,1.207358,-317.4543,-194.2829)" + gradientUnits="userSpaceOnUse" + id="linearGradient22969" + xlink:href="#linearGradient12007" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="101.66785" + fy="134.69154" + fx="33.917580" + cy="134.69154" + cx="33.917580" + gradientTransform="matrix(1.369330,0.000000,0.000000,1.164460,19.44520,10.81907)" + id="radialGradient22961" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="171.45183" + x2="42.257313" + y1="104.70185" + x1="-45.389553" + gradientTransform="matrix(0.652578,0.000000,0.000000,2.443434,19.44520,10.81907)" + id="linearGradient22945" + xlink:href="#linearGradient22939" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="199.91158" + x2="247.58649" + y1="135.30980" + x1="92.894203" + gradientTransform="matrix(0.654723,0.000000,0.000000,2.435427,19.44520,10.81907)" + id="linearGradient22937" + xlink:href="#linearGradient22931" + inkscape:collect="always" /> + <radialGradient + r="40.587261" + fy="450.40305" + fx="333.19595" + cy="450.40305" + cx="333.19595" + gradientTransform="matrix(1.106581,0.000000,0.000000,1.440952,-214.8070,-47.29036)" + gradientUnits="userSpaceOnUse" + id="radialGradient22171" + xlink:href="#linearGradient14361" + inkscape:collect="always" /> + <linearGradient + id="linearGradient22931"> + <stop + id="stop22933" + offset="0" + style="stop-color:#c6bc96;stop-opacity:1;" /> + <stop + id="stop22935" + offset="1.0000000" + style="stop-color:#9f956f;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient22939"> + <stop + id="stop22941" + offset="0.0000000" + style="stop-color:#e0d6b3;stop-opacity:1.0000000;" /> + <stop + id="stop22943" + offset="1.0000000" + style="stop-color:#c6bc96;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient23833"> + <stop + id="stop23835" + offset="0.0000000" + style="stop-color:#545454;stop-opacity:1.0000000;" /> + <stop + id="stop23837" + offset="1.0000000" + style="stop-color:#949494;stop-opacity:1.0000000;" /> + </linearGradient> + <linearGradient + id="linearGradient26137"> + <stop + id="stop26139" + offset="0.0000000" + style="stop-color:#000000;stop-opacity:0.40160644;" /> + <stop + id="stop26141" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient28427"> + <stop + id="stop28429" + offset="0.0000000" + style="stop-color:#0fa900;stop-opacity:1.0000000;" /> + <stop + id="stop28431" + offset="1.0000000" + style="stop-color:#085400;stop-opacity:0.97991967;" /> + </linearGradient> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28579" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.824921,0.000000,0.000000,0.547969,434.5858,-14.91216)" + cx="202.21599" + cy="965.82007" + fx="202.21599" + fy="965.82007" + r="109.04317" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="radialGradient28581" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.323309,0.000000,0.000000,0.755681,434.5858,-14.91216)" + cx="248.40041" + cy="344.21854" + fx="248.40041" + fy="344.21854" + r="106.59798" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11999" + id="linearGradient28583" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.647824,0.000000,0.000000,1.543629,434.5858,-14.91216)" + x1="394.27765" + y1="230.83006" + x2="454.40619" + y2="269.62457" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient11991" + id="linearGradient28585" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.667222,0.000000,0.000000,1.498751,434.5858,-14.91216)" + x1="655.03217" + y1="215.95918" + x2="686.46759" + y2="293.98172" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28587" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309638,434.5858,-14.91216)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28589" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774430,434.5858,-14.91216)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28591" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196311,0.000000,0.000000,0.835903,434.5858,-14.91216)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28593" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.784152,0.000000,0.000000,1.344939,456.6310,-4.913168)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28595" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578752,0.000000,0.000000,1.822260,456.6310,-4.913168)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28597" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228558,0.000000,0.000000,0.858435,456.6310,-4.913168)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28599" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818455,0.000000,0.000000,1.403773,475.5295,-1.046018)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28601" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.604069,0.000000,0.000000,1.901975,475.5295,-1.046018)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28603" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.282300,0.000000,0.000000,0.895987,475.5295,-1.046018)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28605" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762605,-3.838409e-2,6.583438e-2,1.307982,414.2732,56.08694)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28607" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562848,-2.832981e-2,8.919912e-2,1.772186,414.2732,56.08694)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28609" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194798,-6.013815e-2,4.202024e-2,0.834846,414.2732,56.08694)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28611" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783539,-3.099551e-2,5.316198e-2,1.343887,438.8913,63.17166)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28613" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578299,-2.287658e-2,7.202925e-2,1.820835,438.8913,63.17166)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28615" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.227597,-4.856174e-2,3.393173e-2,0.857764,438.8913,63.17166)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28617" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.818001,-2.726833e-2,4.676928e-2,1.402994,458.2665,65.57730)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28619" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603734,-2.012567e-2,6.336779e-2,1.900919,458.2665,65.57730)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28621" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.281588,-4.272218e-2,2.985145e-2,0.895490,458.2665,65.57730)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28623" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.762229,-4.523925e-2,7.759215e-2,1.307337,411.5172,115.8591)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28625" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.562571,-3.338931e-2,0.105130,1.771313,411.5172,115.8591)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28627" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.194210,-7.087786e-2,4.952476e-2,0.834435,411.5172,115.8591)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28629" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.783885,-2.042908e-2,3.503894e-2,1.344482,442.7175,115.5664)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28631" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.578556,-1.507789e-2,4.747429e-2,1.821642,442.7175,115.5664)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28633" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.228141,-3.200691e-2,2.236432e-2,0.858144,442.7175,115.5664)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28635" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.817211,-4.511528e-2,7.737946e-2,1.401639,448.8792,129.6365)" + spreadMethod="pad" + x1="367.53497" + y1="254.70479" + x2="376.08069" + y2="265.41870" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28637" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.603151,-3.329779e-2,0.104842,1.899084,448.8792,129.6365)" + x1="476.78058" + y1="183.69188" + x2="495.91205" + y2="184.97871" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28639" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.280351,-7.068357e-2,4.938903e-2,0.894625,448.8792,129.6365)" + x1="234.28046" + y1="428.89398" + x2="235.34807" + y2="412.35938" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="radialGradient28641" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.876328,0.000000,0.000000,1.141125,434.5858,-14.91216)" + cx="333.19595" + cy="450.40305" + fx="333.19595" + fy="450.40305" + r="40.587261" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="radialGradient28643" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(2.443798,0.000000,0.000000,0.652480,326.2565,-254.3486)" + cx="165.64397" + cy="422.40503" + fx="165.64397" + fy="422.40503" + r="82.461761" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28645" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,309.6471,-268.0035)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28647" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,309.6471,-268.0035)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28649" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,309.6471,-268.0035)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28651" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,388.1837,-260.9011)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28653" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,388.1837,-260.9011)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28655" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,388.1837,-260.9011)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28657" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,295.3669,-193.6045)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28659" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,295.3669,-193.6045)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28661" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,295.3669,-193.6045)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28663" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,373.9035,-186.5021)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28665" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,373.9035,-186.5021)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28667" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,373.9035,-186.5021)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28669" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.763570,0.000000,0.000000,1.309637,287.5684,-121.2913)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28671" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.196310,0.000000,0.000000,0.835903,287.5684,-121.2913)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28673" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.563561,0.000000,0.000000,1.774431,287.5684,-121.2913)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient14361" + id="linearGradient28675" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.716700,0.000000,0.000000,1.229248,366.1050,-114.1889)" + spreadMethod="pad" + x1="712.84912" + y1="357.65839" + x2="687.44537" + y2="337.93430" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28677" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.122877,0.000000,0.000000,0.784593,366.1050,-114.1889)" + x1="444.73392" + y1="572.72632" + x2="433.36017" + y2="561.56354" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient12007" + id="linearGradient28679" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.528968,0.000000,0.000000,1.665511,366.1050,-114.1889)" + x1="980.05762" + y1="252.73389" + x2="951.85889" + y2="251.97037" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient3618" + id="linearGradient28683" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.162618,0.000000,0.000000,0.154485,0.257046,540.0277)" + x1="192.48090" + y1="824.52606" + x2="370.32205" + y2="1027.3083" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1738" + id="linearGradient28687" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(0.179629,0.000000,0.000000,0.139856,650.3868,637.8684)" + x1="482.88602" + y1="444.14270" + x2="197.87488" + y2="303.58148" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11099" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11101" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11103" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11119" + gradientUnits="userSpaceOnUse" + cx="919.44238" + cy="597.64313" + fx="919.44238" + fy="597.64313" + r="329.40637" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11147" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11149" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11151" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11155" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.019681,0.980699)" + x1="1285.5446" + y1="224.21413" + x2="1308.1616" + y2="427.44754" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11157" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient11159" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient11161" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11929" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(1.019681,0.980698)" + x1="1382.7700" + y1="450.88165" + x2="1338.9440" + y2="281.17014" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11939" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.724296,1.380651)" + x1="1483.8276" + y1="127.65721" + x2="1517.2938" + y2="163.18713" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11941" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.875390,1.142348)" + x1="1190.4481" + y1="256.72067" + x2="1204.2202" + y2="275.25522" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient11943" + gradientUnits="userSpaceOnUse" + gradientTransform="scale(0.967340,1.033763)" + x1="1084.2196" + y1="261.09338" + x2="1104.3732" + y2="285.89426" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15124" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.771563,0.000000,0.000000,1.120233,510.5786,-78.86733)" + x1="-219.63448" + y1="303.99045" + x2="-216.75520" + y2="308.88455" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15127" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.476166,0.000000,0.000000,1.344403,510.5786,-78.86733)" + x1="-230.62390" + y1="251.23874" + x2="-276.39948" + y2="184.97169" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15130" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.815633,0.000000,0.000000,1.093041,510.5786,-78.86733)" + x1="-207.06616" + y1="328.31525" + x2="-203.73848" + y2="334.50824" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15133" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.759186,0.000000,0.000000,1.128115,510.5786,-78.86733)" + x1="-217.00117" + y1="307.27005" + x2="-212.14000" + y2="314.99881" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient15136" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.079557,0.000000,0.000000,1.838314,510.5786,-78.86733)" + x1="-376.12292" + y1="156.36592" + x2="-348.23553" + y2="184.87762" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient16669" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient19109" + id="linearGradient16671" + gradientUnits="userSpaceOnUse" + x1="984.80670" + y1="653.02124" + x2="655.16907" + y2="155.81920" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient16673" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient18211" + gradientTransform="matrix(1.642849,0.000000,0.000000,0.808385,658.6872,-96.34662)" + cx="-176.34210" + cy="450.77838" + fx="-176.34210" + fy="450.77838" + r="39.028294" + gradientUnits="userSpaceOnUse" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient18219" + gradientTransform="matrix(1.480110,0.000000,0.000000,0.897269,658.6872,-96.34662)" + x1="-214.17880" + y1="426.79022" + x2="-183.00604" + y2="429.94711" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="293.60699" + x2="-270.52734" + y1="314.15237" + x1="-267.05222" + gradientTransform="matrix(1.334991,2.393726e-7,1.888070e-8,0.994804,427.3264,240.0520)" + gradientUnits="userSpaceOnUse" + id="linearGradient1612" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + r="400.52097" + fy="252.41725" + fx="729.51178" + cy="252.41725" + cx="729.51178" + gradientUnits="userSpaceOnUse" + id="radialGradient5648" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="413.27042" + x2="784.01733" + y1="390.78232" + x1="768.98694" + id="linearGradient7180" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="461.88126" + fy="258.65204" + fx="637.98926" + cy="258.65204" + cx="637.98926" + id="radialGradient7940" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + gradientUnits="userSpaceOnUse" + y2="280.70599" + x2="530.02094" + y1="258.33243" + x1="504.38077" + gradientTransform="scale(1.131006,0.884169)" + id="linearGradient8732" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="285.89426" + x2="1104.3732" + y1="261.09338" + x1="1084.2196" + gradientTransform="matrix(0.645794,0.000000,0.000000,0.690138,-87.16362,145.5283)" + gradientUnits="userSpaceOnUse" + id="linearGradient8800" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="275.25522" + x2="1204.2202" + y1="256.72067" + x1="1190.4481" + gradientTransform="matrix(0.584409,0.000000,0.000000,0.762629,-87.16362,145.5283)" + gradientUnits="userSpaceOnUse" + id="linearGradient8803" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <linearGradient + y2="163.18713" + x2="1517.2938" + y1="127.65721" + x1="1483.8276" + gradientTransform="matrix(0.483539,0.000000,0.000000,0.921720,-87.16362,145.5283)" + gradientUnits="userSpaceOnUse" + id="linearGradient8806" + xlink:href="#linearGradient4255" + inkscape:collect="always" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient2542" + id="radialGradient1675" + gradientUnits="userSpaceOnUse" + gradientTransform="matrix(1.162983,0.000000,0.000000,0.859900,8.931699e-3,1.615128e-2)" + cx="823.91541" + cy="473.20316" + fx="823.91541" + fy="473.20316" + r="787.10168" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="linearGradient1689" + gradientUnits="userSpaceOnUse" + x1="768.98694" + y1="390.78232" + x2="784.01733" + y2="413.27042" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient1691" + gradientUnits="userSpaceOnUse" + cx="637.98926" + cy="258.65204" + fx="637.98926" + fy="258.65204" + r="461.88126" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient1693" + gradientUnits="userSpaceOnUse" + cx="919.44238" + cy="597.64313" + fx="919.44238" + fy="597.64313" + r="329.40637" /> + <radialGradient + inkscape:collect="always" + xlink:href="#linearGradient4255" + id="radialGradient1695" + gradientUnits="userSpaceOnUse" + cx="729.51178" + cy="252.41725" + fx="729.51178" + fy="252.41725" + r="400.52097" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="368.90363" + fy="-58.850105" + fx="131.27052" + cy="-58.850105" + cx="131.27052" + gradientTransform="scale(0.938891,1.065086)" + id="radialGradient2742" + xlink:href="#linearGradient2734" + inkscape:collect="always" /> + <radialGradient + gradientUnits="userSpaceOnUse" + r="197.45959" + fy="397.32883" + fx="183.49265" + cy="397.32883" + cx="183.49265" + gradientTransform="scale(0.998003,1.002001)" + id="radialGradient2766" + xlink:href="#linearGradient2758" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="0.70417908" + inkscape:cx="267.76009" + inkscape:cy="254.64126" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showguides="true" + inkscape:guide-bbox="true" + inkscape:window-width="1272" + inkscape:window-height="774" + inkscape:window-x="5" + inkscape:window-y="184" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + rdf:about="" + id="Work6"> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + id="type9" + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1"> + <rect + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + style="fill:url(#radialGradient1675);fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.2557396;stroke-linecap:round;stroke-linejoin:bevel;stroke-miterlimit:4.0000000;stroke-opacity:1.0000000" + id="rect8854" + width="1024.0049" + height="767.99750" + x="-0.0086894706" + y="-0.00048458576" + rx="0.0000000" + ry="0.0000000" /> + <g + id="author"> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11198" + d="M 980.42466,753.53931 C 980.37165,753.48462 980.61184,753.56660 980.65365,753.57454 C 981.92987,753.75043 983.23382,753.61758 984.49357,753.38307 C 985.05016,753.26703 985.60766,753.12814 986.12767,752.89333 C 986.37610,752.78116 986.58578,752.64843 986.46480,752.71688 C 984.69118,753.72043 985.83495,753.24740 985.84932,752.93053 C 985.18755,752.42479 983.72740,752.62382 982.96097,752.70202 C 982.12073,752.80795 981.27503,752.96659 980.49083,753.29718 C 980.15244,753.43983 979.94188,753.57157 980.00351,753.53472 C 980.19081,753.42268 980.37906,753.31178 980.57295,753.21160 C 980.64174,753.17603 980.44254,753.29530 980.37957,753.34040 C 980.21733,753.45665 980.18589,753.49162 980.03844,753.62306 C 979.28795,754.33190 979.15044,755.32011 979.47115,756.26928 C 979.92941,757.46858 981.11699,757.85839 982.30676,757.85551 C 983.08868,757.81924 983.86162,757.62874 984.56782,757.28949 C 984.66360,757.24350 984.94040,757.08567 984.85093,757.14301 C 983.84426,757.78833 984.62833,757.25251 984.81259,757.10078 C 984.98290,756.96048 985.12774,756.80493 985.26895,756.63644 C 985.37056,756.51376 985.44195,756.37453 985.50727,756.23077 L 986.46047,755.79883 C 986.37503,755.96137 986.28395,756.11961 986.16204,756.25864 C 985.04206,757.53044 983.30448,758.22279 981.64031,758.34054 C 980.38908,758.35734 979.12410,758.00264 978.62944,756.73382 C 978.28845,755.75481 978.38125,754.73172 979.15640,753.98321 C 980.38581,752.85774 981.99798,752.39731 983.61410,752.21694 C 984.42210,752.12920 986.17082,751.87175 986.86692,752.36816 C 986.93589,752.54441 986.83102,752.68107 986.67483,752.77476 C 985.75930,753.32389 984.92267,753.74527 983.85252,753.86598 C 982.49842,754.08597 981.12751,754.20761 979.75531,754.21511 C 979.61577,754.21343 979.39147,754.25560 979.32101,754.10166 L 980.42466,753.53931 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11202" + d="M 990.52877,753.26033 C 990.53523,753.27150 990.54130,753.28289 990.54814,753.29381 C 990.55635,753.30688 990.53267,753.26691 990.52261,753.25524 C 990.46146,753.18432 990.38947,753.12772 990.30924,753.07931 C 990.01682,752.90293 989.70188,752.81351 989.36938,752.74806 C 988.19488,752.60465 986.97083,752.86353 985.94880,753.46297 C 985.87637,753.50546 986.22402,753.28467 986.17562,753.35331 C 986.09699,753.46480 985.95455,753.51372 985.85065,753.60217 C 985.55251,753.85597 985.34079,754.13841 985.13385,754.46669 C 984.26273,756.32174 985.72602,757.41573 987.44257,757.60038 C 989.50654,757.56153 990.83964,757.10980 991.64925,755.27914 C 991.84950,754.68928 991.91432,754.00721 991.63496,753.42814 C 991.57178,753.29714 991.47260,753.13151 991.32922,753.07273 C 991.27830,753.05185 991.11839,753.12920 991.16698,753.10334 C 992.10272,752.60506 992.28192,752.34080 991.98964,752.72216 C 991.51808,754.36724 992.20982,756.67351 992.57848,758.31210 C 992.74225,759.37013 993.66286,761.62286 992.51857,762.39266 C 992.17263,762.57736 991.83549,762.77956 991.48076,762.94675 C 991.03383,763.15737 990.23866,762.90415 989.80456,762.78488 C 988.67839,762.47547 987.61118,762.00136 986.55685,761.50607 C 984.95835,760.72403 983.39362,759.85622 981.93854,758.82806 C 981.20017,758.30632 980.34602,757.71623 980.07051,756.81457 C 980.07243,756.44910 980.25204,756.22404 980.56672,756.04271 C 980.90233,755.84936 981.24147,755.65878 981.59773,755.50682 C 982.32114,755.19826 984.11537,755.28120 984.90494,755.28818 C 986.64249,755.30355 988.37945,755.33513 990.11671,755.36926 C 992.65488,755.44519 995.19596,755.43576 997.72346,755.17250 L 997.25764,755.51458 C 994.87043,755.48596 992.48425,755.39354 990.09665,755.38378 C 987.74799,755.33765 985.37198,755.19189 983.03357,755.48745 C 982.57512,755.54539 982.05219,755.63274 981.60286,755.75566 C 981.41718,755.80646 981.24709,755.94184 981.05466,755.93731 C 980.94980,755.93483 981.27777,755.84956 981.30649,755.74868 C 981.33527,755.64754 980.62958,756.43256 980.81634,756.41762 C 980.87395,757.35588 981.58168,758.04818 982.28043,758.61066 C 983.67675,759.73469 985.31218,760.52894 986.94132,761.25029 C 987.94034,761.65706 988.95319,762.03326 990.00845,762.26799 C 990.57956,762.39502 991.18419,762.49642 991.77127,762.44161 C 992.14793,762.40646 992.28360,762.31668 992.25067,762.34283 C 992.04864,762.50334 991.81193,762.61455 991.59254,762.75039 C 992.87227,762.05886 992.20124,759.70442 992.04339,758.59900 C 991.68314,756.79719 991.11845,755.00570 991.01314,753.16846 C 991.10197,752.69923 991.90265,752.11317 992.24588,752.51097 C 992.62844,752.95437 992.64815,753.77697 992.55654,754.31488 C 992.50706,754.60537 992.47400,754.66484 992.37820,754.94614 C 991.43294,756.96686 989.01133,758.01893 986.86837,758.00899 C 985.00533,757.84126 983.47298,756.79568 984.43429,754.77444 C 985.60833,752.95456 987.99554,752.17027 990.07860,752.24777 C 990.54454,752.29109 991.27179,752.34857 991.63216,752.69812 L 990.52877,753.26033 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11204" + d="M 996.24929,754.08555 C 995.94918,753.71415 995.44354,753.52930 995.00861,753.37437 C 994.25293,753.13098 993.43241,753.06749 992.67136,753.32648 C 992.32552,753.44416 992.10498,753.58591 992.15038,753.55708 C 992.30968,753.45589 992.47056,753.35442 992.64365,753.27925 C 992.82262,753.20153 992.32855,753.50991 992.17902,753.63523 C 991.03059,754.73993 991.00598,756.07740 992.23952,757.11392 C 994.03807,758.30460 996.50626,758.42720 998.44187,757.50504 C 998.35410,757.55081 998.15022,757.73712 998.17858,757.64230 C 998.21418,757.52330 998.37866,757.49432 998.47019,757.41034 C 998.55842,757.32940 998.64140,757.24217 998.71641,757.14885 C 998.93865,756.87242 999.09150,756.54435 999.15989,756.19631 C 999.47094,754.61401 996.85621,753.58689 995.75156,753.14362 C 993.09520,752.29441 989.29999,751.46899 986.56805,752.45865 C 985.73525,752.93499 987.37513,751.84676 986.91674,752.28974 L 985.94807,752.68953 C 986.31139,752.33309 986.77499,752.08349 987.25780,751.92553 C 988.05008,751.73751 988.87199,751.75578 989.67998,751.81248 C 991.78452,751.96012 993.85971,752.42861 995.86633,753.06638 C 997.02395,753.47279 998.95165,754.05166 999.70364,755.09944 C 999.92074,755.40189 999.91454,755.51921 999.86134,755.86134 C 999.69534,756.92894 998.78085,757.47827 997.89734,757.93757 C 995.92178,758.80471 993.44726,758.55944 991.57789,757.53087 C 990.19652,756.53701 990.21620,755.13816 991.37904,753.95954 C 992.65268,752.83730 994.15781,752.35780 995.78962,752.84323 C 996.30796,752.99330 996.81368,753.17830 997.29390,753.42486 L 996.24929,754.08555 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11212" + d="M 998.04285,759.83236 C 998.12338,759.36467 998.12776,758.88106 998.14374,758.40689 C 998.18020,756.93597 998.10954,755.44149 997.73091,754.01316 C 997.48496,753.21467 997.28404,753.48371 998.61205,752.90548 C 998.61299,752.90506 998.81612,753.18683 998.82117,753.19303 C 999.05934,753.48547 999.34012,753.72091 999.64384,753.94208 C 1000.5716,754.56711 1001.7222,754.78408 1002.7663,754.33449 L 1001.9793,754.95228 C 1000.9199,755.32025 999.81264,754.99835 998.88755,754.42502 C 998.55641,754.21140 998.24630,753.97579 997.92914,753.74278 C 997.88359,753.70933 997.76137,753.61956 997.70081,753.59365 C 997.67958,753.58456 997.61336,753.59293 997.63277,753.58040 C 999.04071,752.67136 998.47821,752.78334 998.55731,753.57380 C 998.69585,755.04380 998.86707,756.51083 998.96719,757.98442 C 999.00732,758.41218 999.03186,758.85524 999.14650,759.27004 L 998.04285,759.83236 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11219" + d="M 1001.9270,755.16131 C 1002.4402,755.46052 1003.1012,755.51451 1003.6807,755.56740 C 1004.3003,755.59835 1004.9456,755.58956 1005.5336,755.36540 C 1005.6209,755.33213 1005.8676,755.19931 1005.7887,755.24927 C 1005.6076,755.36385 1005.4230,755.47599 1005.2259,755.56011 C 1005.1580,755.58907 1005.3437,755.47042 1005.3949,755.41736 C 1005.6697,755.13247 1005.6718,754.80086 1005.5725,754.44269 C 1004.6862,752.72346 1002.3158,752.81667 1000.8397,753.61878 C 1000.9143,753.59174 1001.0932,753.46410 1001.0634,753.53763 C 1001.0106,753.66817 1000.8504,753.72292 1000.7555,753.82689 C 1000.4801,754.12824 1000.2777,754.49165 1000.1838,754.89016 C 999.82214,756.42643 1001.0796,757.54528 1002.2772,758.21981 C 1002.7584,758.43167 1002.8589,758.49489 1003.3676,758.64215 C 1004.4483,758.95513 1005.6157,759.01563 1006.7186,758.78471 C 1007.1658,758.69104 1007.6047,758.54648 1008.0135,758.34115 C 1008.1298,758.28271 1008.4824,758.13004 1008.3537,758.14921 C 1008.2066,758.17111 1008.0881,758.28293 1007.9554,758.34981 L 1008.7098,758.05406 C 1008.4829,758.19111 1007.8292,758.61639 1007.4471,758.78840 C 1005.6773,759.58505 1003.5749,759.22296 1001.8539,758.49646 C 1000.9468,758.02725 999.99994,757.44508 999.62244,756.43650 C 999.07493,754.97401 1000.1649,753.83698 1001.3636,753.19766 C 1002.9234,752.39025 1005.3137,752.38116 1006.3928,753.99081 C 1006.5678,754.43936 1006.5354,754.94442 1006.0810,755.22957 C 1004.9997,755.90817 1004.2554,756.15192 1002.9957,756.05758 C 1002.2923,756.01917 1001.5868,755.96073 1000.8925,755.84194 L 1001.9270,755.16131 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11227" + d="M 1011.6830,751.23561 C 1011.7519,751.02469 1011.7193,750.82641 1011.6123,750.62849 C 1010.6233,749.43325 1008.6457,749.88419 1007.4477,750.46123 C 1007.5286,750.41766 1007.7470,750.25803 1007.6905,750.33052 C 1007.6076,750.43684 1007.4681,750.48360 1007.3637,750.56894 C 1007.1592,750.73615 1006.9803,750.91816 1006.8211,751.12917 C 1006.0176,752.19425 1006.1581,753.45914 1007.0233,754.41922 C 1008.1277,755.40078 1009.7265,755.64086 1011.1261,755.22475 C 1011.4207,755.19056 1011.6490,754.98815 1011.9213,754.89956 C 1012.0148,754.86911 1011.6121,755.12444 1011.6616,755.03948 C 1011.7269,754.92751 1011.8701,754.88553 1011.9744,754.80854 C 1013.0622,753.86732 1013.5596,752.15486 1012.7659,750.86906 C 1012.8446,750.67038 1012.3349,750.67111 1012.3408,750.66777 C 1012.6275,750.50542 1012.9142,750.34239 1013.2099,750.19706 C 1013.3110,750.14735 1013.1450,750.16650 1012.9966,750.45445 C 1012.9195,750.60407 1012.8658,750.77974 1012.8290,750.94236 C 1012.6811,751.59622 1012.7106,752.27220 1012.7468,752.93583 C 1012.8996,754.74963 1013.3675,756.52409 1014.0232,758.21804 L 1013.3950,758.56364 C 1012.9162,756.80547 1012.4657,755.03509 1012.1731,753.23518 C 1012.1519,753.08461 1012.1284,752.93434 1012.1093,752.78349 C 1012.0536,752.34418 1011.6582,749.22349 1013.3450,750.03521 C 1013.4831,750.10163 1013.5479,750.26127 1013.6150,750.38601 C 1014.1804,751.83316 1013.8344,753.50580 1012.6540,754.53846 C 1010.7493,755.97246 1008.3546,756.36291 1006.3877,754.80577 C 1005.1778,753.55627 1005.3798,751.93360 1006.7000,750.83230 C 1007.1107,750.48964 1007.4991,750.31347 1007.9938,750.02639 C 1009.3353,749.40628 1011.3002,749.05420 1012.5385,750.08229 C 1012.6791,750.24295 1012.7972,750.47928 1012.7867,750.67328 L 1011.6830,751.23561 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11229" + d="M 1014.6971,749.34919 C 1014.5756,749.93164 1014.6354,750.54346 1014.6866,751.13058 C 1014.9423,753.36470 1015.6072,755.55327 1016.7036,757.51882 C 1016.7745,757.63502 1016.8454,757.75125 1016.9162,757.86745 L 1016.2961,758.22340 C 1016.2366,758.09992 1016.1770,757.97647 1016.1174,757.85299 C 1015.1875,755.81842 1014.5079,753.67968 1013.9701,751.51047 C 1013.8391,750.97903 1013.7284,750.44120 1013.5934,749.91154 L 1014.6971,749.34919 z " /> + <path + style="fill:#000000;fill-opacity:0.75000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path11231" + d="M 1016.4801,748.90961 C 1016.3438,749.40948 1016.3545,749.94539 1016.3600,750.46182 C 1016.4205,752.57947 1016.9087,754.66561 1017.7539,756.60476 C 1018.0278,757.22562 1018.3743,757.80791 1018.7596,758.36496 L 1018.0720,758.76389 C 1017.7552,758.15983 1017.4601,757.54451 1017.2090,756.90987 C 1016.4422,754.96171 1015.8984,752.93429 1015.5889,750.86276 C 1015.5168,750.41108 1015.4441,749.90422 1015.3765,749.47194 L 1016.4801,748.90961 z " /> + </g> + <g + id="LinCity" + transform="translate(-593.7724,575.8895)"> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1449" + d="M 674.80639,26.179618 C 673.20472,44.103194 673.89393,57.134166 671.70559,69.841125 C 668.85961,86.367873 660.20108,113.42412 650.61203,122.98226 C 645.57355,128.45627 639.62626,131.54895 633.08750,135.22725 C 631.63560,136.04402 630.03178,136.65067 628.51472,137.33854 C 628.27025,137.44938 627.57069,137.83991 627.78422,137.67726 C 631.01660,135.21485 633.96865,130.61176 638.20289,130.50036 C 652.70301,129.17406 667.14240,130.76476 681.18263,134.46334 C 692.91216,137.87518 704.58058,142.38719 714.43771,149.75187 C 719.71561,154.07281 719.40459,151.27519 706.91047,158.06445 C 706.34085,158.37399 706.46270,156.84620 706.19235,156.25697 C 705.18253,154.05640 704.09404,151.89072 703.06503,149.69895 C 699.42958,141.50317 689.24957,129.53371 693.39175,117.23135 L 703.84212,112.46550 C 698.58190,129.59785 707.32200,137.01019 711.65903,144.77276 C 712.72088,146.51704 713.79648,148.24112 715.09661,149.82144 C 715.49197,150.30204 715.91474,150.78168 716.38044,151.19805 C 716.59195,151.38723 717.35995,151.46621 717.12066,151.61878 C 703.13031,160.53839 709.63977,160.39524 705.48723,155.30485 C 697.56703,146.69612 685.95039,142.19567 675.11715,138.63153 C 660.37559,134.59663 644.46814,133.03040 629.53931,137.08469 C 623.83485,139.00258 627.30639,137.53326 636.89683,130.58607 C 637.78416,129.94327 641.18083,128.82082 640.44932,129.28300 C 638.45254,130.54459 636.39552,131.70866 634.34810,132.88612 C 633.27931,133.50073 635.86214,132.14599 638.61581,130.03340 C 641.88001,127.52921 644.77511,124.57698 647.28204,121.31800 C 657.17364,107.37276 661.27505,90.353818 663.97278,73.633557 C 666.21580,59.730864 666.30747,57.715170 662.60043,32.482403 L 674.80639,26.179618 z " + sodipodi:nodetypes="csccccccccccccccccccccccccscc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1451" + d="M 731.16367,91.881031 C 729.85193,97.733445 729.33433,103.76040 728.76029,109.72389 C 727.65589,122.67788 726.88145,135.70860 727.43011,148.71218 C 727.54439,150.58761 727.47910,149.68961 727.62078,151.40654 L 718.23428,156.15989 C 718.46536,154.25205 718.34793,155.24563 718.58495,153.17892 C 720.00958,140.03149 720.80334,126.81590 721.06018,113.59502 C 721.11322,108.24585 721.42524,102.66430 720.30771,97.412378 L 731.16367,91.881031 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1453" + d="M 731.97512,77.092466 C 731.48391,79.151493 731.33061,81.277767 731.20989,83.386813 C 731.13855,84.669679 731.11329,85.954320 731.10256,87.238906 L 721.04629,92.315938 C 721.13102,91.012280 721.20830,89.708032 721.25427,88.402341 C 721.31942,86.487472 721.43749,84.515187 721.11915,82.623815 L 731.97512,77.092466 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1466" + d="M 749.17045,82.620752 C 747.69758,89.689483 747.68571,97.036566 747.51511,104.23306 C 747.19766,117.68301 747.65553,131.13002 748.06478,144.57192 C 748.05746,147.98498 748.40169,151.48494 747.57774,154.83355 L 735.52924,159.68164 C 738.54039,158.77368 737.76734,151.63238 738.48117,149.41598 C 739.72851,135.82010 739.47457,122.13432 739.14739,108.50280 C 738.90772,101.90168 738.93247,95.069074 737.37247,88.632110 L 749.17045,82.620752 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1470" + d="M 738.54733,103.24392 C 738.64772,102.02452 739.16229,100.92351 739.73154,99.855620 C 745.71405,91.386209 756.39500,85.270109 766.71025,84.200962 C 780.40083,83.721702 784.90353,97.873569 786.54713,109.03929 C 787.78916,119.77566 782.76154,143.37427 776.25902,154.25508 L 767.24856,158.53293 C 773.64652,142.79515 780.26559,124.07454 778.66279,113.22337 C 776.60792,102.39228 771.08997,89.555698 758.00147,90.700092 C 755.53419,91.080815 753.21578,91.667955 750.93147,92.700399 C 750.39279,92.943832 748.83594,93.791990 749.34180,93.486202 C 765.90715,83.472096 753.30556,90.253408 751.02466,94.754406 C 750.66049,95.519621 750.24012,96.358384 750.36488,97.222598 L 738.54733,103.24392 z " + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1478" + d="M 879.86009,68.558703 C 879.53973,65.710702 875.08350,62.141957 872.53439,60.193302 C 856.44825,48.959808 836.09113,48.582990 818.46331,56.179960 C 805.88799,62.633407 794.24319,82.622344 794.39169,103.83266 C 795.12939,120.89440 805.03778,134.30832 819.98378,141.85074 C 837.32382,149.61401 856.69878,147.35161 874.09590,141.05886 C 877.62528,139.68318 881.06652,138.08409 884.37946,136.24645 C 885.36314,135.70080 888.29360,134.03012 887.29110,134.54027 C 876.50699,140.02761 882.92604,136.84395 885.58463,134.68349 L 895.04197,130.89211 C 886.80431,137.30587 877.40645,142.27938 867.69175,146.05066 C 850.01115,152.06749 830.16178,154.27473 812.57436,146.72407 C 797.17213,139.02575 787.30149,125.06984 787.14251,107.51991 C 787.66112,82.354985 801.01543,62.219408 824.07698,51.746995 C 842.71133,43.978845 863.22213,45.302226 881.07409,54.711727 C 884.86612,56.818355 888.95414,59.064170 891.67763,62.537378 L 879.86009,68.558703 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1484" + d="M 890.98224,88.478526 C 890.28495,91.679124 889.97848,94.941049 889.63236,98.178514 C 888.36191,112.20554 887.88447,126.28042 887.65755,140.34282 C 887.79128,144.03654 887.32128,147.78164 887.84747,151.46208 L 876.34422,155.92105 C 879.13313,152.50656 878.15866,147.46236 879.45247,143.69190 C 881.35177,129.84976 881.79462,115.86030 880.48666,101.96726 C 880.18020,99.101062 879.90391,96.192733 879.16469,93.378820 L 890.98224,88.478526 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1486" + d="M 893.84602,67.021368 C 893.32350,68.697185 892.49210,70.958448 892.02969,72.877211 C 891.17418,76.838365 890.48661,80.881734 890.46476,84.945902 L 879.33024,90.516404 C 879.88989,86.381258 880.56331,82.262010 881.18711,78.136316 C 881.37791,76.908266 881.74461,73.406632 882.02860,73.042693 L 893.84602,67.021368 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1490" + d="M 915.61136,46.858420 C 914.37324,53.183960 914.08079,59.695486 913.66206,66.118654 C 912.37949,90.037582 912.56776,114.02710 913.74628,137.94650 C 913.93178,141.56615 913.92029,141.50784 914.12814,144.96826 C 914.26856,147.30346 914.41289,149.64060 914.62793,151.97043 C 914.68046,152.53920 914.79398,153.67428 914.91281,154.30283 C 914.96951,154.60248 915.51160,155.01447 915.24175,155.15658 C 903.23972,161.47697 903.48747,164.76316 903.48811,158.04163 L 914.08432,152.48806 C 915.58459,158.38690 918.30139,152.08566 903.34857,160.31093 C 903.01230,160.49589 904.07402,159.92252 904.23212,159.57283 C 904.58265,158.79769 904.88243,157.55904 905.04937,156.77804 C 906.12270,151.75527 906.40581,146.59554 906.78943,141.48881 C 908.03033,117.68301 907.74255,93.787646 906.03709,70.012553 C 905.52567,64.298704 905.15695,58.460545 903.79394,52.879746 L 915.61136,46.858420 z " /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1492" + d="M 904.03513,124.57025 C 906.82024,125.61746 911.17710,126.83426 913.87508,127.18075 C 923.52563,128.29296 933.17099,127.49016 942.86422,126.63510 L 950.28210,126.37465 C 942.23790,131.15847 941.04119,133.67222 933.66839,133.37992 C 924.07555,133.35272 914.62149,133.65743 905.04886,133.10609 C 901.47402,132.89023 895.05750,132.77720 892.21771,130.59157 L 904.03513,124.57025 z " + sodipodi:nodetypes="cccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1496" + d="M 979.55674,99.509861 C 977.22218,105.55669 975.12602,111.69609 972.99463,117.81624 C 965.89824,138.44577 957.69266,159.85530 940.60491,174.32142 C 930.77266,181.62396 918.28258,189.07642 906.02509,183.47843 L 915.21915,177.41043 C 919.67084,179.68911 924.45211,180.06111 929.28704,178.70747 C 932.58483,177.78414 934.69361,176.48350 934.47806,176.64940 C 933.01138,177.77820 931.37650,178.68981 929.70879,179.49237 C 928.60995,180.02116 931.74371,178.14790 932.76111,177.47566 C 950.64514,163.51967 960.17156,142.45108 966.13614,121.05193 C 968.07547,114.08088 969.83662,107.08259 971.07159,99.949884 C 971.08535,99.870350 971.47807,95.978066 971.48691,95.973337 C 975.37806,93.902022 979.36291,92.011523 983.30091,90.030615 C 983.30091,90.030615 980.32576,97.518022 979.55674,99.509861 z " + sodipodi:nodetypes="cccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path1502" + d="M 919.49974,98.740702 C 927.16739,93.589136 929.97460,90.786311 937.99128,91.979510 C 948.36298,93.940678 956.42233,100.87843 961.47105,109.91508 C 966.21102,119.45797 966.74693,130.47127 963.77872,140.62785 C 963.47137,141.68879 963.02877,142.69567 962.55625,143.69026 L 951.58172,148.54436 C 952.31386,147.56143 953.00079,146.55422 953.49327,145.42329 C 957.73875,135.66884 957.66563,124.41817 952.89169,114.85727 C 947.75800,105.85771 939.12977,99.311465 928.52472,98.746124 L 919.49974,98.740702 z " + sodipodi:nodetypes="cccccccccc" /> + <path + style="fill:#000000;fill-opacity:1.0000000;fill-rule:nonzero;stroke:none;stroke-width:1.0000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + id="path8379" + d="M 621.93884,154.71769 C 642.96597,157.90784 671.03962,159.58347 692.77149,161.01458 C 790.95563,166.94131 886.00803,172.26351 984.62263,175.32268 C 989.22875,175.47062 993.83500,175.61856 998.44112,175.76652 L 986.16912,180.35443 C 982.22442,179.96204 978.27960,179.56964 974.33491,179.17724 C 877.05136,170.61033 778.11349,168.27459 679.63943,167.64087 C 652.68294,167.52557 624.68569,167.13004 598.11296,168.27664 L 621.93884,154.71769 z " + sodipodi:nodetypes="ccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9139" + d="M 676.28456,26.890209 C 674.68289,44.813791 675.37210,57.844760 673.18389,70.551720 C 670.33778,87.078464 661.67925,114.13471 652.09033,123.69285 C 647.05172,129.16685 641.10456,132.25954 634.56567,135.93784 C 633.11377,136.75461 631.50995,137.36126 629.99302,138.04913 C 629.74855,138.15997 629.04899,138.55050 629.26252,138.38785 C 632.49477,135.92544 635.44682,131.32235 639.68106,131.21095 C 654.18131,129.88465 668.62057,131.47534 682.66080,135.17393 C 694.39033,138.58577 706.05887,143.09779 715.91588,150.46247 C 721.19378,154.78340 720.88289,151.98579 708.38877,158.77505 C 707.81914,159.08458 707.94100,157.55680 707.67064,156.96756 C 706.66070,154.76700 705.57234,152.60131 704.54320,150.40955 C 700.90775,142.21377 690.72774,130.24429 694.86993,117.94195 L 705.32029,113.17609 C 700.06007,130.30844 708.80030,137.72077 713.13720,145.48336 C 714.19905,147.22764 715.27478,148.95172 716.57491,150.53204 C 716.97027,151.01264 717.39304,151.49228 717.85861,151.90865 C 718.07025,152.09783 718.83825,152.17680 718.59884,152.32938 C 704.60848,161.24898 711.11794,161.10584 706.96540,156.01545 C 699.04532,147.40671 687.42856,142.90627 676.59532,139.34212 C 661.85376,135.30721 645.94631,133.74099 631.01761,137.79528 C 625.31315,139.71316 628.78457,138.24384 638.37500,131.29665 C 639.26246,130.65385 642.65913,129.53141 641.92762,129.99359 C 639.93083,131.25517 637.87382,132.41925 635.82628,133.59671 C 634.75749,134.21133 637.34031,132.85659 640.09411,130.74399 C 643.35818,128.23981 646.25328,125.28757 648.76034,122.02859 C 658.65194,108.08335 662.75322,91.064413 665.45095,74.344153 C 667.69409,60.441460 667.78564,58.425762 664.07872,33.192996 L 676.28456,26.890209 z " + sodipodi:nodetypes="csccccccccccccccccccccccccscc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9141" + d="M 732.64185,92.591630 C 731.33023,98.444033 730.81250,104.47100 730.23846,110.43447 C 729.13419,123.38848 728.35974,136.41919 728.90828,149.42278 C 729.02256,151.29821 728.95728,150.40021 729.09908,152.11714 L 719.71258,156.87048 C 719.94354,154.96265 719.82623,155.95623 720.06312,153.88952 C 721.48775,140.74207 722.28151,127.52648 722.53848,114.30561 C 722.59152,108.95644 722.90354,103.37490 721.78601,98.122967 L 732.64185,92.591630 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9143" + d="M 733.45329,77.803057 C 732.96208,79.862092 732.80891,81.988356 732.68806,84.097409 C 732.61684,85.380271 732.59146,86.664914 732.58085,87.949494 L 722.52459,93.026533 C 722.60919,91.722873 722.68647,90.418632 722.73256,89.112939 C 722.79760,87.198071 722.91566,85.225787 722.59745,83.334407 L 733.45329,77.803057 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9145" + d="M 750.64874,83.331351 C 749.17588,90.400082 749.16401,97.747161 748.99341,104.94366 C 748.67595,118.39361 749.13383,131.84061 749.54308,145.28252 C 749.53576,148.69557 749.87998,152.19554 749.05591,155.54415 L 737.00741,160.39224 C 740.01856,159.48428 739.24563,152.34298 739.95946,150.12658 C 741.20668,136.53070 740.95287,122.84492 740.62556,109.21340 C 740.38589,102.61227 740.41064,95.779662 738.85077,89.342708 L 750.64874,83.331351 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9147" + d="M 740.02551,103.95452 C 740.12602,102.73511 740.64046,101.63411 741.20971,100.56622 C 747.19235,92.096797 757.87317,85.980708 768.18843,84.911552 C 781.87900,84.432302 786.38171,98.584160 788.02542,109.74989 C 789.26734,120.48626 784.23971,144.08487 777.73732,154.96568 L 768.72686,159.24353 C 775.12470,143.50575 781.74389,124.78513 780.14096,113.93396 C 778.08622,103.10287 772.56814,90.266294 759.47977,91.410684 C 757.01236,91.791415 754.69408,92.378554 752.40964,93.410989 C 751.87096,93.654421 750.31424,94.502583 750.81997,94.196796 C 767.38532,84.182695 754.78386,90.964000 752.50284,95.464998 C 752.13879,96.230210 751.71829,97.068977 751.84305,97.933189 L 740.02551,103.95452 z " + sodipodi:nodetypes="ccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9149" + d="M 881.33839,69.269299 C 881.01790,66.421299 876.56179,62.852549 874.01256,60.903891 C 857.92655,49.670405 837.56930,49.293589 819.94148,56.890552 C 807.36616,63.343998 795.72136,83.332942 795.86986,104.54325 C 796.60756,121.60499 806.51595,135.01890 821.46208,142.56134 C 838.80200,150.32461 858.17695,148.06221 875.57420,141.76946 C 879.10345,140.39377 882.54482,138.79468 885.85763,136.95705 C 886.84131,136.41138 889.77190,134.74072 888.76927,135.25087 C 877.98516,140.73820 884.40421,137.55453 887.06280,135.39409 L 896.52014,131.60270 C 888.28261,138.01646 878.88462,142.98998 869.16993,146.76126 C 851.48932,152.77809 831.63995,154.98533 814.05253,147.43467 C 798.65043,139.73633 788.77966,125.78043 788.62068,108.23050 C 789.13942,83.065580 802.49373,62.930006 825.55528,52.457591 C 844.18951,44.689436 864.70031,46.012820 882.55227,55.422318 C 886.34429,57.528947 890.43231,59.774767 893.15593,63.247966 L 881.33839,69.269299 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9151" + d="M 892.46054,89.189120 C 891.76325,92.389717 891.45678,95.651645 891.11053,98.889114 C 889.84008,112.91614 889.36277,126.99101 889.13572,141.05343 C 889.26945,144.74714 888.79945,148.49223 889.32564,152.17267 L 877.82252,156.63165 C 880.61130,153.21716 879.63696,148.17296 880.93077,144.40250 C 882.82994,130.56034 883.27279,116.57089 881.96484,102.67785 C 881.65837,99.811651 881.38220,96.903330 880.64299,94.089412 L 892.46054,89.189120 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9153" + d="M 895.32432,67.731968 C 894.80167,69.407785 893.97028,71.669036 893.50786,73.587805 C 892.65247,77.548954 891.96478,81.592333 891.94294,85.656497 L 880.80841,91.226992 C 881.36819,87.091849 882.04161,82.972604 882.66528,78.846907 C 882.85608,77.618860 883.22278,74.117225 883.50678,73.753288 L 895.32432,67.731968 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9155" + d="M 917.08966,47.569017 C 915.85154,53.894559 915.55896,60.406078 915.14036,66.829243 C 913.85766,90.748171 914.04593,114.73769 915.22446,138.65709 C 915.40995,142.27675 915.39846,142.21844 915.60644,145.67886 C 915.74673,148.01406 915.89106,150.35120 916.10623,152.68103 C 916.15864,153.24980 916.27216,154.38488 916.39111,155.01343 C 916.44780,155.31308 916.98990,155.72507 916.72005,155.86718 C 904.71789,162.18757 904.96565,165.47376 904.96628,158.75223 L 915.56249,153.19866 C 917.06276,159.09750 919.77956,152.79626 904.82674,161.02153 C 904.49047,161.20649 905.55219,160.63312 905.71041,160.28342 C 906.06095,159.50829 906.36060,158.26963 906.52754,157.48864 C 907.60100,152.46587 907.88398,147.30614 908.26760,142.19941 C 909.50850,118.39361 909.22072,94.498239 907.51526,70.723150 C 907.00385,65.009296 906.63512,59.171137 905.27211,53.590338 L 917.08966,47.569017 z " /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9157" + d="M 905.51343,125.28084 C 908.29841,126.32806 912.65527,127.54484 915.35338,127.89134 C 925.00380,129.00354 934.64917,128.20075 944.34252,127.34568 L 951.76027,127.08524 C 943.71607,131.86906 942.51936,134.38282 935.14656,134.09051 C 925.55385,134.06332 916.09979,134.36802 906.52703,133.81668 C 902.95232,133.60083 896.53580,133.48778 893.69588,131.30216 L 905.51343,125.28084 z " + sodipodi:nodetypes="cccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9159" + d="M 981.03491,100.22045 C 978.70047,106.26728 976.60431,112.40668 974.47280,118.52684 C 967.37641,139.15635 959.17096,160.56590 942.08308,175.03202 C 932.25083,182.33456 919.76075,189.78702 907.50326,184.18903 L 916.69732,178.12103 C 921.14914,180.39970 925.93040,180.77171 930.76521,179.41807 C 934.06313,178.49474 936.17191,177.19409 935.95636,177.35999 C 934.48968,178.48880 932.85480,179.40040 931.18709,180.20297 C 930.08825,180.73176 933.22188,178.85850 934.23940,178.18626 C 952.12344,164.23027 961.64985,143.16167 967.61431,121.76253 C 969.55364,114.79147 971.31492,107.79319 972.54976,100.66048 C 972.56352,100.58094 972.95624,96.688663 972.96520,96.683928 C 976.85636,94.612619 980.84108,92.722122 984.77909,90.741213 C 984.77909,90.741213 981.80393,98.228621 981.03491,100.22045 z " + sodipodi:nodetypes="cccccccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9161" + d="M 920.97791,99.451301 C 928.64569,94.299735 931.45277,91.496904 939.46945,92.690099 C 949.84128,94.651271 957.90051,101.58902 962.94935,110.62568 C 967.68932,120.16856 968.22510,131.18186 965.25702,141.33844 C 964.94954,142.39939 964.50695,143.40627 964.03443,144.40086 L 953.06002,149.25496 C 953.79203,148.27202 954.47897,147.26482 954.97144,146.13389 C 959.21705,136.37943 959.14381,125.12876 954.36999,115.56787 C 949.23617,106.56831 940.60807,100.02206 930.00289,99.456718 L 920.97791,99.451301 z " + sodipodi:nodetypes="cccccccccc" /> + <path + style="fill:#000000;fill-opacity:0.51211071;fill-rule:nonzero;stroke:#000000;stroke-width:2.5254941;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.18685122" + id="path9163" + d="M 623.41701,155.42829 C 644.44414,158.61844 672.51779,160.29407 694.24979,161.72518 C 792.43393,167.65191 887.48620,172.97411 986.10093,176.03328 C 990.70705,176.18122 995.31317,176.32916 999.91930,176.47712 L 987.64729,181.06503 C 983.70259,180.67263 979.75790,180.28024 975.81308,179.88784 C 878.52966,171.32093 779.59166,168.98519 681.11773,168.35147 C 654.16111,168.23617 626.16399,167.84064 599.59118,168.98724 L 623.41701,155.42829 z " + sodipodi:nodetypes="ccccccccc" /> + </g> + <path + sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccc" + style="fill:#000000;fill-opacity:0.64583331;fill-rule:evenodd;stroke:none;stroke-width:4.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.75000000" + d="M 265.39912,328.97902 C 265.39912,328.97902 235.46800,369.99168 234.74287,369.97902 C 229.19229,369.88211 223.70493,370.42161 218.33662,371.41652 L 183.71162,334.13527 L 170.93037,341.13527 L 177.71162,391.54152 C 173.09651,395.73002 168.94652,400.46899 165.33662,405.69777 L 114.30537,406.01027 L 110.21162,420.01027 L 150.68037,450.72902 C 150.53884,456.95826 151.16926,463.08030 152.39912,469.07277 L 117.05537,504.85402 L 124.05537,517.63527 L 174.11787,510.19777 C 177.85000,514.04079 181.97066,517.51306 186.46162,520.60402 L 186.74287,571.54152 L 200.74287,575.63527 L 231.58662,535.19777 C 236.55472,535.30124 241.44410,534.91076 246.27412,534.13527 L 282.61787,570.54152 L 295.39912,563.54152 L 289.08662,513.47902 C 293.22006,509.70130 296.97604,505.50543 300.30537,500.88527 L 351.77412,500.88527 L 355.86787,486.91652 L 315.80537,455.79152 C 316.02615,450.14583 315.68712,444.57655 314.77412,439.10402 L 350.93037,402.51027 L 343.93037,389.69777 L 293.55537,396.04152 C 289.43629,391.64014 284.76534,387.74417 279.68037,384.29152 L 279.36787,333.07277 L 265.39912,328.97902 z M 233.05537,432.04152 C 244.24272,432.04152 253.30537,441.10417 253.30537,452.29152 C 253.30537,463.47886 244.24272,472.57277 233.05537,472.57277 C 221.86803,472.57276 212.77412,463.47887 212.77412,452.29152 C 212.77413,441.10417 221.86802,432.04152 233.05537,432.04152 z " + id="path2768" /> + <path + sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccc" + style="fill:url(#radialGradient2766);fill-opacity:1.0;fill-rule:evenodd;stroke:#106400;stroke-width:4.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:0.75000000;stroke-dasharray:none;stroke-miterlimit:4.0000000" + d="M 261.13884,326.13884 C 261.13884,326.13884 231.20772,367.15150 230.48259,367.13884 C 224.93201,367.04193 219.44465,367.58143 214.07634,368.57634 L 179.45134,331.29509 L 166.67009,338.29509 L 173.45134,388.70134 C 168.83623,392.88984 164.68624,397.62881 161.07634,402.85759 L 110.04509,403.17009 L 105.95134,417.17009 L 146.42009,447.88884 C 146.27856,454.11808 146.90898,460.24012 148.13884,466.23259 L 112.79509,502.01384 L 119.79509,514.79509 L 169.85759,507.35759 C 173.58972,511.20061 177.71038,514.67288 182.20134,517.76384 L 182.48259,568.70134 L 196.48259,572.79509 L 227.32634,532.35759 C 232.29444,532.46106 237.18382,532.07058 242.01384,531.29509 L 278.35759,567.70134 L 291.13884,560.70134 L 284.82634,510.63884 C 288.95978,506.86112 292.71576,502.66525 296.04509,498.04509 L 347.51384,498.04509 L 351.60759,484.07634 L 311.54509,452.95134 C 311.76587,447.30565 311.42684,441.73637 310.51384,436.26384 L 346.67009,399.67009 L 339.67009,386.85759 L 289.29509,393.20134 C 285.17601,388.79996 280.50506,384.90399 275.42009,381.45134 L 275.10759,330.23259 L 261.13884,326.13884 z M 228.79509,429.20134 C 239.98244,429.20134 249.04509,438.26399 249.04509,449.45134 C 249.04509,460.63868 239.98244,469.73259 228.79509,469.73259 C 217.60775,469.73258 208.51384,460.63869 208.51384,449.45134 C 208.51385,438.26399 217.60774,429.20134 228.79509,429.20134 z " + id="path8834" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccc" + style="fill:#000000;fill-opacity:0.64583331;fill-rule:evenodd;stroke:none;stroke-width:4.0000000;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4.0000000;stroke-opacity:0.75347221" + d="M 72.131717,-82.208471 L 55.725467,-24.614721 C -28.849126,-10.594689 -93.462033,62.729295 -93.462033,151.26027 C -93.462033,220.76752 -53.586630,280.87782 4.4442166,310.35402 L 7.3504664,364.57277 L 31.506717,373.94777 L 62.850467,328.22902 C 70.133183,329.13485 83.466773,330.05893 90.037967,329.51027 L 115.06922,377.97902 L 140.91297,376.57277 L 151.31922,316.88527 C 160.18149,313.33236 168.63072,309.03366 176.72547,304.16652 L 223.69422,333.94777 L 245.31922,319.69777 L 224.16297,262.91652 C 231.00223,254.40666 237.11196,245.28871 242.31922,235.60402 L 293.19422,240.16652 L 305.91297,217.60402 L 261.50672,176.69777 C 262.69950,168.36932 263.53797,159.91701 263.53797,151.26027 L 312.10047,117.29152 L 309.72547,91.479029 L 249.94422,83.041529 C 244.22526,69.242517 236.73891,56.404718 227.91297,44.604029 L 253.13172,-0.86472009 L 237.63172,-21.645971 L 182.94422,2.1040299 C 162.23542,-11.522319 138.50677,-20.806347 113.00672,-24.833471 L 97.944213,-79.895971 L 72.131717,-82.208471 z M 85.037967,115.32277 C 104.87009,115.32277 120.97547,131.42815 120.97547,151.26027 C 120.97547,171.09238 104.87008,187.19777 85.037967,187.19777 C 65.205853,187.19776 49.100467,171.09239 49.100467,151.26027 C 49.100467,131.42815 65.205849,115.32277 85.037967,115.32277 z " + id="path2770" /> + <path + sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccc" + style="stroke-miterlimit:4.0000000;stroke-dasharray:none;stroke-opacity:0.75347221;stroke-linejoin:round;stroke-linecap:butt;stroke-width:4.0000000;stroke:#000764;fill-rule:evenodd;fill-opacity:1.0;fill:url(#radialGradient2742)" + d="M 67.871437,-85.048657 L 51.465187,-27.454907 C -33.109406,-13.434875 -97.722313,59.889109 -97.722313,148.42009 C -97.722313,217.92734 -57.846910,278.03764 0.18393663,307.51384 L 3.0901866,361.73259 L 27.246437,371.10759 L 58.590187,325.38884 C 65.872903,326.29467 79.206493,327.21875 85.777687,326.67009 L 110.80894,375.13884 L 136.65269,373.73259 L 147.05894,314.04509 C 155.92121,310.49218 164.37044,306.19348 172.46519,301.32634 L 219.43394,331.10759 L 241.05894,316.85759 L 219.90269,260.07634 C 226.74195,251.56648 232.85168,242.44853 238.05894,232.76384 L 288.93394,237.32634 L 301.65269,214.76384 L 257.24644,173.85759 C 258.43922,165.52914 259.27769,157.07683 259.27769,148.42009 L 307.84019,114.45134 L 305.46519,88.638843 L 245.68394,80.201343 C 239.96498,66.402331 232.47863,53.564532 223.65269,41.763843 L 248.87144,-3.7049067 L 233.37144,-24.486157 L 178.68394,-0.73615669 C 157.97514,-14.362505 134.24649,-23.646533 108.74644,-27.673657 L 93.683937,-82.736157 L 67.871437,-85.048657 z M 80.777687,112.48259 C 100.60981,112.48259 116.71519,128.58797 116.71519,148.42009 C 116.71519,168.25220 100.60980,184.35759 80.777687,184.35759 C 60.945573,184.35758 44.840187,168.25221 44.840187,148.42009 C 44.840187,128.58797 60.945569,112.48259 80.777687,112.48259 z " + id="path1600" /> + </g> +</svg> diff -Nru lincity-ng-2.0/data/images/mainmenu/slider/slider.svg lincity-ng-2.9~git20150314/data/images/mainmenu/slider/slider.svg --- lincity-ng-2.0/data/images/mainmenu/slider/slider.svg 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/mainmenu/slider/slider.svg 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,336 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://web.resource.org/cc/" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://inkscape.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + sodipodi:docname="slider.png.svg" + sodipodi:docbase="/home/egore/source/lincity-ng/data/images/mainmenu/slider" + inkscape:version="0.41" + sodipodi:version="0.32" + id="svg2721" + height="100.00000px" + width="150.00000px"> + <defs + id="defs3"> + <linearGradient + id="linearGradient4375"> + <stop + style="stop-color:#97e5ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop4377" /> + <stop + style="stop-color:#445cd7;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop4379" /> + </linearGradient> + <linearGradient + id="linearGradient2304"> + <stop + style="stop-color:#6a57ff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop2305" /> + <stop + style="stop-color:#1300a8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop2306" /> + </linearGradient> + <linearGradient + id="linearGradient4960"> + <stop + style="stop-color:#ffffff;stop-opacity:0.73092371;" + offset="0.0000000" + id="stop4962" /> + <stop + style="stop-color:#ffffff;stop-opacity:0.0000000;" + offset="1.0000000" + id="stop4964" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient4960" + id="linearGradient10584" + gradientTransform="scale(0.924716,1.081414)" + x1="622.09137" + y1="247.68852" + x2="628.40155" + y2="259.02802" + gradientUnits="userSpaceOnUse" /> + <linearGradient + id="linearGradient9030"> + <stop + style="stop-color:#00bfff;stop-opacity:1.0000000;" + offset="0.0000000" + id="stop9032" /> + <stop + style="stop-color:#0021c8;stop-opacity:1.0000000;" + offset="1.0000000" + id="stop9034" /> + </linearGradient> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient9030" + id="linearGradient9036" + gradientTransform="scale(1.016773,0.983503)" + x1="563.65491" + y1="270.94437" + x2="575.49744" + y2="290.30325" + gradientUnits="userSpaceOnUse" /> + <linearGradient + y2="394.58347" + x2="609.47510" + y1="369.28265" + x1="589.08136" + gradientTransform="scale(0.964397,1.036917)" + gradientUnits="userSpaceOnUse" + id="linearGradient2817" + xlink:href="#linearGradient9030" + inkscape:collect="always" /> + <linearGradient + y2="259.02802" + x2="628.40155" + y1="247.68852" + x1="622.09137" + gradientTransform="matrix(0.924716,0.000000,0.000000,1.081414,-4.379882,118.1634)" + gradientUnits="userSpaceOnUse" + id="linearGradient2819" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="559.71527" + x2="603.89105" + y1="541.83276" + x1="593.99536" + gradientTransform="scale(0.971157,1.029700)" + gradientUnits="userSpaceOnUse" + id="linearGradient2821" + xlink:href="#linearGradient9030" + inkscape:collect="always" /> + <linearGradient + y2="294.93091" + x2="600.57306" + y1="288.35770" + x1="596.21234" + gradientTransform="matrix(0.959731,0.000000,0.000000,1.041959,0.000000,258.1723)" + gradientUnits="userSpaceOnUse" + id="linearGradient2823" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="394.58347" + x2="609.47510" + y1="369.28265" + x1="589.08136" + gradientTransform="scale(0.964397,1.036917)" + gradientUnits="userSpaceOnUse" + id="linearGradient3605" + xlink:href="#linearGradient4375" + inkscape:collect="always" /> + <linearGradient + y2="259.02802" + x2="628.40155" + y1="247.68852" + x1="622.09137" + gradientTransform="matrix(0.924716,0.000000,0.000000,1.081414,-4.379882,118.1634)" + gradientUnits="userSpaceOnUse" + id="linearGradient3607" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="559.71527" + x2="603.89105" + y1="541.83276" + x1="593.99536" + gradientTransform="scale(0.971157,1.029700)" + gradientUnits="userSpaceOnUse" + id="linearGradient3609" + xlink:href="#linearGradient4375" + inkscape:collect="always" /> + <linearGradient + y2="294.93091" + x2="600.57306" + y1="288.35770" + x1="596.21234" + gradientTransform="matrix(0.959731,0.000000,0.000000,1.041959,0.000000,258.1723)" + gradientUnits="userSpaceOnUse" + id="linearGradient3611" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + <linearGradient + y2="290.30325" + x2="575.49744" + y1="270.94437" + x1="563.65491" + gradientTransform="scale(1.016773,0.983503)" + gradientUnits="userSpaceOnUse" + id="linearGradient3613" + xlink:href="#linearGradient4375" + inkscape:collect="always" /> + <linearGradient + y2="259.02802" + x2="628.40155" + y1="247.68852" + x1="622.09137" + gradientTransform="scale(0.924716,1.081414)" + gradientUnits="userSpaceOnUse" + id="linearGradient3615" + xlink:href="#linearGradient4960" + inkscape:collect="always" /> + </defs> + <sodipodi:namedview + inkscape:window-y="0" + inkscape:window-x="0" + inkscape:window-height="966" + inkscape:window-width="1272" + inkscape:current-layer="layer1" + inkscape:document-units="px" + inkscape:cy="70.892606" + inkscape:cx="155.62256" + inkscape:zoom="3.9597980" + inkscape:pageshadow="2" + inkscape:pageopacity="0.0" + borderopacity="1.0" + bordercolor="#666666" + pagecolor="#ffffff" + id="base" /> + <metadata + id="metadata4"> + <rdf:RDF + id="RDF5"> + <cc:Work + id="Work6" + rdf:about=""> + <dc:format + id="format7">image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" + id="type9" /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + id="layer1" + inkscape:groupmode="layer" + inkscape:label="Layer 1"> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + transform="translate(-539.1901,-250.0248)" + id="slider-up"> + <path + style="fill:#000000;fill-opacity:0.58823532;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 568.85640,292.13576 C 572.15666,280.89816 577.83812,270.41253 585.14882,264.18799 C 588.36553,274.33942 593.58747,284.49085 599.18538,293.51435 C 585.71279,290.15142 578.56919,289.98433 568.85640,292.13576 z " + id="path9046" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient9036);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 567.97912,291.63446 C 571.27938,280.39686 576.96084,269.91123 584.27154,263.68669 C 587.48825,273.83812 592.71019,283.98955 598.30810,293.01305 C 584.83551,289.65012 577.69191,289.48303 567.97912,291.63446 z " + id="path8268" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient10584);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 583.14360,266.44386 C 581.65304,267.62019 578.91466,270.90948 576.80585,274.13210 C 574.69703,277.35472 573.57888,280.55566 573.93211,280.29243 C 574.88264,279.58408 577.85275,273.55462 580.39260,271.51593 C 582.60665,269.73875 584.02319,268.57846 584.83551,270.92429 C 585.43212,272.65071 585.57456,270.92556 585.12065,269.53738 C 584.66675,268.14920 583.58515,266.09539 583.14360,266.44386 z " + id="path9818" + sodipodi:nodetypes="cssssss" /> + </g> + <g + transform="translate(-474.1901,-540.9176)" + id="slider-down"> + <path + style="fill:#000000;fill-opacity:0.58823532;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 569.60835,557.82767 C 579.71801,555.36292 588.82506,554.90338 598.43342,557.95299 C 590.12010,566.89294 587.19582,575.45691 583.89555,586.40208 C 576.83551,579.42558 571.15404,567.56135 569.60835,557.82767 z " + id="path9048" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient2821);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 569.04439,557.32637 C 579.15405,554.86162 588.26110,554.40208 597.86946,557.45169 C 589.55614,566.39164 586.63186,574.95561 583.33159,585.90078 C 576.27155,578.92428 570.59008,567.06005 569.04439,557.32637 z " + id="path8270" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient2823);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 571.11228,558.70495 C 569.90658,560.10144 572.51626,567.28211 573.68147,566.78850 C 574.49690,566.44307 571.89798,561.77640 573.36333,559.70174 C 574.82868,557.62709 580.23298,557.95647 580.01045,557.20104 C 579.66177,556.01737 572.72065,556.84206 571.11228,558.70495 z " + id="path10586" + sodipodi:nodetypes="cssss" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + transform="translate(-507.2258,-371.4533)" + id="slider-position"> + <path + style="fill:url(#linearGradient2817);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 599.31071,393.77546 C 587.53943,367.78055 559.78816,384.76696 567.72846,406.80940 C 576.30299,430.61248 605.32638,407.06005 599.31071,393.77546 z " + id="path15180" + sodipodi:nodetypes="css" /> + <path + style="fill:url(#linearGradient2819);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 579.39035,382.53939 C 573.71982,383.56639 569.49387,391.05676 568.42429,394.32008 C 567.68663,396.57070 571.90629,390.52744 574.44614,388.48875 C 575.55317,387.60016 579.01433,386.45849 581.67366,387.02278 C 584.33298,387.58708 585.31318,391.48660 585.71934,392.65951 C 586.31595,394.38593 590.59416,386.51979 590.14025,385.13161 C 589.68635,383.74343 584.54967,381.60498 579.39035,382.53939 z " + id="path15948" + sodipodi:nodetypes="cssssss" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + transform="translate(-539.1995,-205.9286)" + id="slider-up-highlight"> + <path + style="fill:#000000;fill-opacity:0.58823532;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 568.85640,292.13576 C 572.15666,280.89816 577.83812,270.41253 585.14882,264.18799 C 588.36553,274.33942 593.58747,284.49085 599.18538,293.51435 C 585.71279,290.15142 578.56919,289.98433 568.85640,292.13576 z " + id="path3585" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient3613);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 567.97912,291.63446 C 571.27938,280.39686 576.96084,269.91123 584.27154,263.68669 C 587.48825,273.83812 592.71019,283.98955 598.30810,293.01305 C 584.83551,289.65012 577.69191,289.48303 567.97912,291.63446 z " + id="path3587" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient3615);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 583.14360,266.44386 C 581.65304,267.62019 578.91466,270.90948 576.80585,274.13210 C 574.69703,277.35472 573.57888,280.55566 573.93211,280.29243 C 574.88264,279.58408 577.85275,273.55462 580.39260,271.51593 C 582.60665,269.73875 584.02319,268.57846 584.83551,270.92429 C 585.43212,272.65071 585.57456,270.92556 585.12065,269.53738 C 584.66675,268.14920 583.58515,266.09539 583.14360,266.44386 z " + id="path3589" + sodipodi:nodetypes="cssssss" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + transform="translate(-474.1995,-496.8214)" + id="slider-down-highlight"> + <path + style="fill:#000000;fill-opacity:0.58823532;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 569.60835,557.82767 C 579.71801,555.36292 588.82506,554.90338 598.43342,557.95299 C 590.12010,566.89294 587.19582,575.45691 583.89555,586.40208 C 576.83551,579.42558 571.15404,567.56135 569.60835,557.82767 z " + id="path3593" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient3609);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 569.04439,557.32637 C 579.15405,554.86162 588.26110,554.40208 597.86946,557.45169 C 589.55614,566.39164 586.63186,574.95561 583.33159,585.90078 C 576.27155,578.92428 570.59008,567.06005 569.04439,557.32637 z " + id="path3595" + sodipodi:nodetypes="cccc" /> + <path + style="fill:url(#linearGradient3611);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 571.11228,558.70495 C 569.90658,560.10144 572.51626,567.28211 573.68147,566.78850 C 574.49690,566.44307 571.89798,561.77640 573.36333,559.70174 C 574.82868,557.62709 580.23298,557.95647 580.01045,557.20104 C 579.66177,556.01737 572.72065,556.84206 571.11228,558.70495 z " + id="path3597" + sodipodi:nodetypes="cssss" /> + </g> + <g + inkscape:export-ydpi="90.000000" + inkscape:export-xdpi="90.000000" + transform="translate(-507.2352,-327.3571)" + id="slider-position-hightlight"> + <path + style="fill:url(#linearGradient3605);fill-opacity:1.0000000;fill-rule:evenodd;stroke:#000000;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 599.31071,393.77546 C 587.53943,367.78055 559.78816,384.76696 567.72846,406.80940 C 576.30299,430.61248 605.32638,407.06005 599.31071,393.77546 z " + id="path3601" + sodipodi:nodetypes="css" /> + <path + style="fill:url(#linearGradient3607);fill-opacity:1.0000000;fill-rule:evenodd;stroke:none;stroke-width:0.25000000pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1.0000000" + d="M 579.39035,382.53939 C 573.71982,383.56639 569.49387,391.05676 568.42429,394.32008 C 567.68663,396.57070 571.90629,390.52744 574.44614,388.48875 C 575.55317,387.60016 579.01433,386.45849 581.67366,387.02278 C 584.33298,387.58708 585.31318,391.48660 585.71934,392.65951 C 586.31595,394.38593 590.59416,386.51979 590.14025,385.13161 C 589.68635,383.74343 584.54967,381.60498 579.39035,382.53939 z " + id="path3603" + sodipodi:nodetypes="cssssss" /> + </g> + </g> +</svg> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/blacksmith6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/blacksmith6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope1_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope1_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope1_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope1_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope1_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope1_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope1_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope1_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope2_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope2_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope2_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope2_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope2_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope2_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_rail_slope2_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_rail_slope2_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope1_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope1_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope1_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope1_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope1_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope1_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope1_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope1_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope2_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope2_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope2_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope2_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope2_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope2_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_road_slope2_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_road_slope2_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_track_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_track_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_track_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_track_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_track_slope1_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_track_slope1_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_track_slope1_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_track_slope1_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_track_slope1_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_track_slope1_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/bridge_track_slope1_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/bridge_track_slope1_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0000.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0000.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0001.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0001.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0002.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0002.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0003.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0003.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0004.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0004.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0005.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0005.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0006.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0006.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-0007.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-0007.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-down0013.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-down0013.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-down0014.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-down0014.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-down0015.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-down0015.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-down0016.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-down0016.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-up0009.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-up0009.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-up0010.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-up0010.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-up0011.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-up0011.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/car01-up0012.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/car01-up0012.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/coalmine-empty.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/coalmine-empty.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/coalmine-full.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/coalmine-full.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/coalmine-low.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/coalmine-low.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/coalmine-med.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/coalmine-med.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune10.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune10.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune11.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune11.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/commune9.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/commune9.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/cricket7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/cricket7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/crossing_rail_road0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/crossing_rail_road0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/crossing_rail_road90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/crossing_rail_road90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/crossing_rail_track0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/crossing_rail_track0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/crossing_rail_track90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/crossing_rail_track90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_1d.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_1d.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_1l.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_1l.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_1r.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_1r.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_1u.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_1u.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_2ld.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_2ld.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_2lr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_2lr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_2lu.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_2lu.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_2rd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_2rd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_2ru.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_2ru.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_2ud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_2ud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_3lrd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_3lrd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_3lru.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_3lru.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_3lud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_3lud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert_3rud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert_3rud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/desert.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/desert.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/ex_port.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/ex_port.png differ diff -Nru lincity-ng-2.0/data/images/tiles/extend.sh lincity-ng-2.9~git20150314/data/images/tiles/extend.sh --- lincity-ng-2.0/data/images/tiles/extend.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/tiles/extend.sh 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,26 @@ +#!/bin/sh +# UGLY WORKAROUND for fixing tiles going up and down when animated during game. +# +# this is due to image management, probably a wrong use of the center of the tile +# which has variable height ! +# So put all the images of a same family to the same size works around this bug +# +# with ImageMagick +# convert start.png -background none -gravity southwest -extent 512x512 result.png + +# works from data/images/tiles directory + +TMP=tmp.png +for family in `cat list` +do + echo "Processing image family : $family" + MaxW=`file $family*.png | sort -n -k4,4|tail -1|awk '{ print $4 }'` + MaxH=`file $family*.png | sort -n -k6,6|tail -1|awk '{ print $6 }'|cut -d"," -f1` + for f in `ls $family*.png` + do + echo " $f" + cp $f $TMP + convert $TMP -background none -gravity southwest -extent ${MaxW}x${MaxH} $f + done +done + Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/farm0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/farm0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/farm11.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/farm11.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/farm15.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/farm15.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/farm3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/farm3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/farm7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/farm7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/fire1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/fire1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/fire2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/fire2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/fire3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/fire3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/fire4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/fire4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/fire5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/fire5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firedone1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firedone1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firedone2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firedone2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firedone3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firedone3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firedone4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firedone4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation10.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation10.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/firestation9.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/firestation9.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/health.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/health.png differ diff -Nru lincity-ng-2.0/data/images/tiles/images.xml lincity-ng-2.9~git20150314/data/images/tiles/images.xml --- lincity-ng-2.0/data/images/tiles/images.xml 2009-01-25 20:20:50.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/tiles/images.xml 2015-05-05 16:32:50.000000000 +0000 @@ -1,9 +1,252 @@ <?xml version="1.0"?> +<!-- + images are only loaded to the latest previous resourceID inside a group + NOTE THE DIFFERENT RULES FOR IMAGES AND SOUNDS +--> <resources> - <image file="substation-RG.png" x="132" /> - <image file="substation-R.png" x="132" /> - <image file="substation-G.png" x="132" /> + <group> + <resourceID name="Green" /> + <image file="green.png" /> + <resourceID name="Tree" /> + <image file="tree.png" /> + <resourceID name="Tree2" /> + <image file="tree2.png" /> + <resourceID name="Tree3" /> + <image file="tree3.png" /> + </group> + + <group> + <resourceID name="Desert" /> + <image file="desert_0.png" /> + <image file="desert_1d.png" /> + <image file="desert_1r.png" /> + <image file="desert_2rd.png" /> + <image file="desert_1l.png" /> + <image file="desert_2ld.png" /> + <image file="desert_2lr.png" /> + <image file="desert_3lrd.png" /> + <image file="desert_1u.png" /> + <image file="desert_2ud.png" /> + <image file="desert_2ru.png" /> + <image file="desert_3rud.png" /> + <image file="desert_2lu.png" /> + <image file="desert_3lud.png" /> + <image file="desert_3lru.png" /> + <image file="desert.png" /> + </group> + + <group> + <resourceID name="Water" /> + <image file="water.png" /> + <image file="waterd.png" /> + <image file="waterr.png" /> + <image file="waterrd.png" /> + <image file="waterl.png" /> + <image file="waterld.png" /> + <image file="waterlr.png" /> + <image file="waterlrd.png" /> + <image file="wateru.png" /> + <image file="waterud.png" /> + <image file="waterur.png" /> + <image file="waterurd.png" /> + <image file="waterlu.png" /> + <image file="waterlud.png" /> + <image file="waterlur.png" /> + <image file="waterlurd.png" /> + </group> + + <group> + <resourceID name="PowerLine" /> + <image file="powerlhd.png" x="64" /> + <image file="powerlvd.png" x="64" /> + <image file="powerlrdd.png" x="64" /> + <image file="powerlldd.png" x="64" /> + <image file="powerlldrd.png" x="64" /> + <image file="powerlrud.png" x="64" /> + <image file="powerludrd.png" x="64" /> + <image file="powerllud.png" x="64" /> + <image file="powerlldud.png" x="64" /> + <image file="powerllurd.png" x="64" /> + <image file="powerlludrd.png" x="64" /> + + <image file="powerlhl.png" x="64" /> + <image file="powerlvl.png" x="64" /> + <image file="powerlrdl.png" x="64" /> + <image file="powerlldl.png" x="64" /> + <image file="powerlldrl.png" x="64" /> + <image file="powerlrul.png" x="64" /> + <image file="powerludrl.png" x="64" /> + <image file="powerllul.png" x="64" /> + <image file="powerlldul.png" x="64" /> + <image file="powerllurl.png" x="64" /> + <image file="powerlludrl.png" x="64" /> + + <image file="powerl-suspended90.png" x="64" /> + <image file="powerl-suspended0.png" x="64" /> + </group> + + <group> + <resourceID name="Track" /> + <image file="tracklr.png" /> + <image file="trackud.png" /> + <image file="tracklu.png" /> + <image file="trackur.png" /> + <image file="tracklur.png" /> + <image file="trackld.png" /> + <image file="tracklud.png" /> + <image file="trackdr.png" /> + <image file="trackldr.png" /> + <image file="trackudr.png" /> + <image file="trackludr.png" /> +<!-- + <image file="Trackbridge_pg2.png" /> + <image file="Trackbridge_pg1.png" /> +--> + <image file="bridge_track_90.png" /> + <image file="bridge_track_0.png" /> + +<!-- + <image file="Trackbridge_entrance_180.png" /> + <image file="Trackbridge_entrance_90.png" /> + <image file="Trackbridge_entrance_00.png" /> + <image file="Trackbridge_entrance_270.png" /> +--> + <image file="bridge_track_slope1_270.png" /> + <image file="bridge_track_slope1_0.png" /> + <image file="bridge_track_slope1_90.png" /> + <image file="bridge_track_slope1_180.png" /> + + </group> + + <group> + <resourceID name="TrackBridge" /> + <image file="bridge_track_90.png" /> + <image file="bridge_track_0.png" /> +<!-- + <image file="Trackbridge1.png" /> + <image file="Trackbridge2.png" /> +--> + </group> + + <group> + <resourceID name="Road" /> + <image file="roadlr.png" /> + <image file="roadud.png" /> + <image file="roadlu.png" /> + <image file="roadur.png" /> + <image file="roadlur.png" /> + <image file="roadld.png" /> + <image file="roadlud.png" /> + <image file="roaddr.png" /> + <image file="roadldr.png" /> + <image file="roadudr.png" /> + <image file="roadludr.png" /> +<!-- + <image file="Roadbridge_pg2.png" /> + <image file="Roadbridge_pg1.png" /> +--> + <image file="bridge_road_90.png" /> + <image file="bridge_road_0.png" /> +<!-- + <image file="Roadbridge_entrance2_180.png" /> + <image file="Roadbridge_entrance2_90.png" /> + <image file="Roadbridge_entrance2_00.png" /> + <image file="Roadbridge_entrance2_270.png" /> +--> + <image file="bridge_road_slope2_270.png" /> + <image file="bridge_road_slope2_0.png" /> + <image file="bridge_road_slope2_90.png" /> + <image file="bridge_road_slope2_180.png" /> +<!-- + <image file="Roadbridge_entrance1_180.png" /> + <image file="Roadbridge_entrance1_90.png" /> + <image file="Roadbridge_entrance1_00.png" /> + <image file="Roadbridge_entrance1_270.png" /> +--> + <image file="bridge_road_slope1_270.png" /> + <image file="bridge_road_slope1_0.png" /> + <image file="bridge_road_slope1_90.png" /> + <image file="bridge_road_slope1_180.png" /> + + </group> + + <group> + <resourceID name="RoadBridge" /> + <image file="bridge_road_90.png" /> + <image file="bridge_road_0.png" /> +<!-- + <image file="Roadbridge2s.png" /> + <image file="Roadbridge1s.png" /> + <image file="Roadbridge2.png" /> + <image file="Roadbridge1.png" /> +--> + </group> + + <group> + <resourceID name="Rail" /> + <image file="raillr.png" x="66" /> + <image file="railud.png" x="66" /> + <image file="raillu.png" x="66" /> + <image file="railur.png" x="66" /> + <image file="raillur.png" x="66" /> + <image file="railld.png" x="66" /> + <image file="raillud.png" x="66" /> + <image file="raildr.png" x="66" /> + <image file="railldr.png" x="66" /> + <image file="railudr.png" x="66" /> + <image file="railludr.png" x="66" /> +<!-- + <image file="Railbridge_pg2.png" /> + <image file="Railbridge_pg1.png" /> +--> + <image file="bridge_rail_90.png" /> + <image file="bridge_rail_0.png" /> +<!-- + <image file="Railbridge_entrance2_180.png" /> + <image file="Railbridge_entrance2_90.png" /> + <image file="Railbridge_entrance2_00.png" /> + <image file="Railbridge_entrance2_270.png" /> +--> + <image file="bridge_rail_slope2_270.png" /> + <image file="bridge_rail_slope2_0.png" /> + <image file="bridge_rail_slope2_90.png" /> + <image file="bridge_rail_slope2_180.png" /> +<!-- + <image file="Railbridge_entrance1_180.png" /> + <image file="Railbridge_entrance1_90.png" /> + <image file="Railbridge_entrance1_00.png" /> + <image file="Railbridge_entrance1_270.png" /> +--> + <image file="bridge_rail_slope1_270.png" /> + <image file="bridge_rail_slope1_0.png" /> + <image file="bridge_rail_slope1_90.png" /> + <image file="bridge_rail_slope1_180.png" /> + + <image file="crossing_rail_track0.png"/> + <image file="crossing_rail_track90.png"/> + <image file="crossing_rail_road0.png"/> + <image file="crossing_rail_road90.png"/> + </group> + + <group> + <resourceID name="RailBridge" /> +<!-- + <image file="Railbridge2.png" /> + <image file="Railbridge1.png" /> +--> + <image file="bridge_rail_90.png" /> + <image file="bridge_rail_0.png" /> + </group> + + + <group> + <resourceID name="Waterwell" /> + <image file="waterwell.png" /> + </group> + + <group> + <resourceID name="Tip" /> <image file="tip0.png" x="262" /> <image file="tip1.png" x="262" /> <image file="tip2.png" x="262" /> @@ -13,13 +256,15 @@ <image file="tip6.png" x="262" /> <image file="tip7.png" x="254" /> <image file="tip8.png" x="254" /> + </group> - <image file="powerscoal-empty.png" x="263" /> - <image file="powerscoal-low.png" x="266" /> - <image file="powerscoal-med.png" x="266" /> - <image file="powerscoal-full.png" x="266" /> - <image file="powerssolar.png" x="256" /> + <group> + <resourceID name="PowerSolar" /> + <image file="powerssolar.png" x="256" /> + </group> + <group> + <resourceID name="Pottery" /> <image file="pottery0.png" x="131" /> <image file="pottery1.png" x="131" /> <image file="pottery2.png" x="131" /> @@ -31,7 +276,10 @@ <image file="pottery8.png" x="131" /> <image file="pottery9.png" x="131" /> <image file="pottery10.png" x="131" /> + </group> + <group> + <resourceID name="Blacksmith" /> <image file="blacksmith0.png" x="132" /> <image file="blacksmith1.png" x="132" /> <image file="blacksmith2.png" x="132" /> @@ -39,7 +287,48 @@ <image file="blacksmith4.png" x="132" /> <image file="blacksmith5.png" x="132" /> <image file="blacksmith6.png" x="132" /> + </group> + + <group> + <resourceID name="Commune" /> + <image file="commune1.png" /> + <image file="commune2.png" /> + <image file="commune3.png" /> + <image file="commune4.png" /> + <image file="commune5.png" /> + <image file="commune6.png" /> + <image file="commune7.png" /> + <image file="commune8.png" /> + <image file="commune9.png" /> + <image file="commune10.png" /> + <image file="commune11.png" /> + </group> + + <group> + <resourceID name="CoalMine" /> + <image file="coalmine-empty.png" /> + <resourceID name="CoalMineLow" /> + <image file="coalmine-low.png" /> + <resourceID name="CoalMineMed" /> + <image file="coalmine-med.png" /> + <resourceID name="CoalMineFull" /> + <image file="coalmine-full.png" /> + </group> + + + <group> + <resourceID name="MarketEmpty" /> + <image file="market-empty.png" /> + <resourceID name="MarketLow" /> + <image file="market-low.png" /> + <resourceID name="MarketMed" /> + <image file="market-med.png" /> + <resourceID name="MarketFull" /> + <image file="market-full.png" /> + </group> + <group> + <resourceID name="OreMine" /> <image file="oremine1.png" x="256" /> <image file="oremine2.png" x="256" /> <image file="oremine3.png" x="256" /> @@ -48,9 +337,12 @@ <image file="oremine6.png" x="256" /> <image file="oremine7.png" x="256" /> <image file="oremine8.png" x="256" /> + </group> + <group> + <resourceID name="IndustryHigh" /> <image file="industryhc.png" x="256" /> - + <resourceID name="IndustryHighL" /> <image file="industryhl1.png" x="256" /> <image file="industryhl2.png" x="256" /> <image file="industryhl3.png" x="256" /> @@ -59,7 +351,7 @@ <image file="industryhl6.png" x="256" /> <image file="industryhl7.png" x="256" /> <image file="industryhl8.png" x="256" /> - + <resourceID name="IndustryHighM" /> <image file="industryhm1.png" x="256" /> <image file="industryhm2.png" x="256" /> <image file="industryhm3.png" x="256" /> @@ -68,8 +360,8 @@ <image file="industryhm6.png" x="256" /> <image file="industryhm7.png" x="256" /> <image file="industryhm8.png" x="256" /> - - <image file="industryhh1.png" x="256" /> + <resourceID name="IndustryHighH" /> + <image file="industryhh1.png" x="256" /> <image file="industryhh2.png" x="256" /> <image file="industryhh3.png" x="256" /> <image file="industryhh4.png" x="256" /> @@ -77,20 +369,87 @@ <image file="industryhh6.png" x="256" /> <image file="industryhh7.png" x="256" /> <image file="industryhh8.png" x="256" /> + </group> - <image file="windmill1g.png" x="131" /> - <image file="windmill2g.png" x="128" /> - <image file="windmill3g.png" x="148" /> + <group> + <resourceID name="IndustryLight" /> + <image file="industryl-empty.png" /> + <resourceID name="IndustryLightL" /> + <image file="industryl-low.png" /> + <resourceID name="IndustryLightM" /> + <image file="industryl-med.png" /> + <resourceID name="IndustryLightH" /> + <image file="industryl-full.png" /> + </group> + + <group> + <resourceID name="GraySmoke" /> + <image file="industryl-smoke0080.png" /> + <image file="industryl-smoke0082.png" /> + <image file="industryl-smoke0084.png" /> + <image file="industryl-smoke0086.png" /> + <image file="industryl-smoke0088.png" /> + <image file="industryl-smoke0090.png" /> + <image file="industryl-smoke0092.png" /> + <image file="industryl-smoke0094.png" /> + <image file="industryl-smoke0096.png" /> + <image file="industryl-smoke0098.png" /> + </group> + + + + <group> + <resourceID name="PowerCoalEmpty" /> + <image file="powerscoal-empty.png" /> + <resourceID name="PowerCoalLow" /> + <image file="powerscoal-low.png" /> + <resourceID name="PowerCoalMed" /> + <image file="powerscoal-med.png" /> + <resourceID name="PowerCoalFull" /> + <image file="powerscoal-full.png" /> + </group> + + <group> + <resourceID name="BlackSmoke" /> + <image file="powerscoal-smoke0080.png" /> + <image file="powerscoal-smoke0082.png" /> + <image file="powerscoal-smoke0084.png" /> + <image file="powerscoal-smoke0086.png" /> + <image file="powerscoal-smoke0088.png" /> + <image file="powerscoal-smoke0090.png" /> + <image file="powerscoal-smoke0092.png" /> + <image file="powerscoal-smoke0094.png" /> + <image file="powerscoal-smoke0096.png" /> + <image file="powerscoal-smoke0098.png" /> + <image file="powerscoal-smoke0100.png" /> + </group> + + + <group> + <resourceID name="WindMill" /> + <image file="windmill1w.png" /> + <image file="windmill2w.png" /> + <image file="windmill3w.png" /> + </group> + <group> + <resourceID name="WindMillHTech" /> <image file="windmill1r.png" x="131" /> <image file="windmill2r.png" x="128" /> <image file="windmill3r.png" x="148" /> - + <resourceID name="WindMillHTechRG" /> <image file="windmill1rg.png" x="131" /> <image file="windmill2rg.png" x="128" /> <image file="windmill3rg.png" x="148" /> + <resourceID name="WindMillHTechG" /> + <image file="windmill1g.png" x="131" /> + <image file="windmill2g.png" x="128" /> + <image file="windmill3g.png" x="148" /> + </group> - <image file="firestation1.png" x="132" /> + <group> + <resourceID name="FireStation" /> + <image file="firestation1.png" x="132" /> <image file="firestation2.png" x="132" /> <image file="firestation3.png" x="132" /> <image file="firestation4.png" x="132" /> @@ -100,67 +459,171 @@ <image file="firestation8.png" x="132" /> <image file="firestation9.png" x="132" /> <image file="firestation10.png" x="132" /> + </group> + <group> + <resourceID name="Fire" /> <image file="fire1.png" x="101" /> <image file="fire2.png" x="101" /> <image file="fire3.png" x="101" /> <image file="fire4.png" x="101" /> <image file="fire5.png" x="101" /> - + <resourceID name="FireWasteLand" /> <image file="firedone1.png" x="66" /> <image file="firedone2.png" x="66" /> <image file="firedone3.png" x="66" /> <image file="firedone4.png" x="66" /> + </group> + + <group> + <resourceID name="Monument" /> + <image file="monument5.png" x="131" /> + <resourceID name="MonumentConstruction" /> + <image file="monument0.png" /> + <image file="monument1.png" /> + <image file="monument2.png" /> + <image file="monument3.png" /> + <image file="monument4.png" /> + </group> + + <group> + <resourceID name="Harbor" /> + <image file="ex_port.png" /> + </group> + + <group> + <resourceID name="Rocket" /> + <image file="rocket1.png" /> + <image file="rocket2.png" /> + <image file="rocket3.png" /> + <image file="rocket4.png" /> + <image file="rocket5.png" /> + <image file="rocket6.png" /> + <image file="rocket7.png" /> + <image file="rocketflown.png" /> + </group> + + <group> + <resourceID name="University" /> + <image file="university.png" /> + </group> + + <group> + <resourceID name="School" /> + <image file="school-static.png" /> + <image file="school-animation.png"/> + </group> + + <group> + <resourceID name="ChildOnSwing" /> + <image file="school-swing0001.png" x="-37" y="96"/> + <image file="school-swing0002.png" x="-37" y="96"/> + <image file="school-swing0003.png" x="-37" y="96"/> + <image file="school-swing0004.png" x="-37" y="96"/> + <image file="school-swing0005.png" x="-37" y="96"/> + <image file="school-swing0006.png" x="-37" y="96"/> + <image file="school-swing0007.png" x="-37" y="96"/> + <image file="school-swing0008.png" x="-37" y="96"/> + <image file="school-swing0009.png" x="-37" y="96"/> + <image file="school-swing0010.png" x="-37" y="96"/> + <image file="school-swing0011.png" x="-37" y="96"/> + </group> + + <group> + <resourceID name="Shanty" /> + <image file="shanty.png" /> + </group> + + <group> + <resourceID name="SubstationOff" /> + <image file="substation-R.png" /> + <resourceID name="Substation" /> + <image file="substation-RG.png" /> + <resourceID name="SubstationOn" /> + <image file="substation-G.png" /> + </group> + + <group> + <resourceID name="ParklandPlane" /> + <image file="parkland-plane.png" /> + <resourceID name="ParklandLake" /> + <image file="parkland-lake.png" /> + </group> + + <group> + <resourceID name="Recycle" /> + <image file="recycle-centre.png" /> + </group> + + <group> + <resourceID name="Health" /> + <image file="health.png" /> + </group> + + <group> + <resourceID name="Farm" /> + <image file="farm0.png" /> + <image file="farm3.png" /> + <image file="farm7.png" /> + <image file="farm11.png" /> + <image file="farm15.png" /> + </group> + + <group> + <resourceID name="Mill" /> + <image file="mill0.png" /> + <image file="mill1.png" /> + <image file="mill2.png" /> + <image file="mill3.png" /> + <image file="mill4.png" /> + <image file="mill5.png" /> + <image file="mill6.png" /> + </group> + + <group> + <resourceID name="ResidentialLowLow" /> + <image file="reslowlow.png" /> + <resourceID name="ResidentialMedLow" /> + <image file="resmedlow.png" /> + <resourceID name="ResidentialHighLow" /> + <image file="reshilow.png" /> + <resourceID name="ResidentialLow" /> + <image file="reslowhi.png" /> + <resourceID name="ResidentialMedHigh" /> + <image file="resmedhi.png" /> + <resourceID name="ResidentialHighHigh" /> + <image file="reshihi.png" /> + </group> + + <group> + <resourceID name="SportsCroud" /> + <image file="cricket1.png" x="130" /> + <image file="cricket2.png" x="130" /> + <image file="cricket3.png" x="130" /> + <image file="cricket4.png" x="130" /> + <image file="cricket5.png" x="130" /> + <image file="cricket6.png" x="130" /> + <image file="cricket7.png" x="130" /> + </group> + + <group> + <resourceID name="Bluecar" /> + <image file="car01-0000.png" /> + <image file="car01-0001.png" /> + <image file="car01-0002.png" /> + <image file="car01-0003.png" /> + <image file="car01-0004.png" /> + <image file="car01-0005.png" /> + <image file="car01-0006.png" /> + <image file="car01-0007.png" /> + <image file="car01-up0009.png" /> + <image file="car01-up0010.png" /> + <image file="car01-up0011.png" /> + <image file="car01-up0012.png" /> + <image file="car01-down0013.png" /> + <image file="car01-down0014.png" /> + <image file="car01-down0015.png" /> + <image file="car01-down0016.png" /> + </group> - <image file="monument.png" x="131"/> - <image file="oremine.png" x="258"/> - <image file="port.png" x="262"/> - -<image file="market-empty.png" x="131" /> -<image file="market-low.png" x="131" /> -<image file="market-med.png" x="131" /> -<image file="market-full.png" x="131" /> - -<image file="powerlhd.png" x="64" /> -<image file="powerlhl.png" x="64" /> -<image file="powerlldd.png" x="64" /> -<image file="powerlldl.png" x="64" /> -<image file="powerlldrd.png" x="64" /> -<image file="powerlldrl.png" x="64" /> -<image file="powerlldud.png" x="64" /> -<image file="powerlldul.png" x="64" /> -<image file="powerllud.png" x="64" /> -<image file="powerlludrd.png" x="64" /> -<image file="powerlludrl.png" x="64" /> -<image file="powerllul.png" x="64" /> -<image file="powerllurd.png" x="64" /> -<image file="powerllurl.png" x="64" /> -<image file="powerlrdd.png" x="64" /> -<image file="powerlrdl.png" x="64" /> -<image file="powerlrud.png" x="64" /> -<image file="powerlrul.png" x="64" /> -<image file="powerludrd.png" x="64" /> -<image file="powerludrl.png" x="64" /> -<image file="powerlvd.png" x="64" /> -<image file="powerlvl.png" x="64" /> - -<image file="cricket1.png" x="130" /> -<image file="cricket2.png" x="130" /> -<image file="cricket3.png" x="130" /> -<image file="cricket4.png" x="130" /> -<image file="cricket5.png" x="130" /> -<image file="cricket6.png" x="130" /> -<image file="cricket7.png" x="130" /> - - <image file="raillr.png" x="66" /> - <image file="raillu.png" x="66" /> - <image file="railld.png" x="66" /> - <image file="railud.png" x="66" /> - <image file="railur.png" x="66" /> - <image file="raildr.png" x="66" /> - <image file="raillur.png" x="66" /> - <image file="railldr.png" x="66" /> - <image file="raillud.png" x="66" /> - <image file="railudr.png" x="66" /> - <image file="railludr.png" x="66" /> </resources> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhc.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhc.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhh8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhh8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhl8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhl8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryhm8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryhm8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylc.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylc.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-empty.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-empty.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-full.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-full.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylh1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylh1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylh2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylh2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylh3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylh3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylh4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylh4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryll1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryll1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryll2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryll2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryll3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryll3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryll4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryll4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-low.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-low.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylm1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylm1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylm2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylm2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylm3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylm3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylm4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylm4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-med.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-med.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylq1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylq1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylq2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylq2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylq3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylq3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industrylq4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industrylq4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0080.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0080.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0082.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0082.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0084.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0084.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0086.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0086.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0088.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0088.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0090.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0090.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0092.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0092.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0094.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0094.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0096.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0096.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/industryl-smoke0098.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/industryl-smoke0098.png differ diff -Nru lincity-ng-2.0/data/images/tiles/list lincity-ng-2.9~git20150314/data/images/tiles/list --- lincity-ng-2.0/data/images/tiles/list 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/tiles/list 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,25 @@ +blacksmith +coalmine +commune +cricket +desert +farm +fire +industryh +industryl +market +mill +monument +oremine +parkland +pottery +powerl +powerscoal +Railbridge +Roadbridge +substation +tip +Trackbridge +tree +windmill?w +windmill?[!w] Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/market-empty.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/market-empty.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/market-full.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/market-full.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/market-low.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/market-low.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/market-med.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/market-med.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/mill6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/mill6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/monument0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/monument0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/monument1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/monument1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/monument2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/monument2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/monument3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/monument3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/monument4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/monument4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/monument5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/monument5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/oremine8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/oremine8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/parkland-lake.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/parkland-lake.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/parkland-plane.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/parkland-plane.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery10.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery10.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/pottery9.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/pottery9.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlhd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlhd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlhl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlhl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlldd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlldd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlldl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlldl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlldrd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlldrd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlldrl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlldrl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlldud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlldud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlldul.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlldul.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerllud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerllud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlludrd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlludrd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlludrl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlludrl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerllul.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerllul.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerllurd_.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerllurd_.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerllurd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerllurd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerllurl_.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerllurl_.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerllurl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerllurl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlrdd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlrdd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlrdl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlrdl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlrud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlrud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlrul.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlrul.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerl-suspended0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerl-suspended0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerl-suspended90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerl-suspended90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerludrd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerludrd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerludrl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerludrl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlvd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlvd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerlvl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerlvl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-empty.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-empty.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-full.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-full.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-low.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-low.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-med.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-med.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0080.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0080.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0082.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0082.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0084.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0084.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0086.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0086.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0088.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0088.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0090.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0090.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0092.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0092.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0094.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0094.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0096.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0096.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0098.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0098.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/powerscoal-smoke0100.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/powerscoal-smoke0100.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance1_00.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance1_00.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance1_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance1_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance1_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance1_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance1_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance1_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance2_00.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance2_00.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance2_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance2_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance2_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance2_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_entrance2_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_entrance2_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_pg1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_pg1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Railbridge_pg2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Railbridge_pg2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/raildr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/raildr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/railld.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/railld.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/railldr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/railldr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/raillr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/raillr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/raillud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/raillud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/railludr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/railludr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/raillu.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/raillu.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/raillur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/raillur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/railud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/railud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/railudr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/railudr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/railur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/railur.png differ diff -Nru lincity-ng-2.0/data/images/tiles/README.txt lincity-ng-2.9~git20150314/data/images/tiles/README.txt --- lincity-ng-2.0/data/images/tiles/README.txt 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/images/tiles/README.txt 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,315 @@ +=========================================================================== +2011-04 LNG 2.1: +=========================================================================== +Added script "extend.sh" to put all images of a same familiy to the same size, to prevent image jig in animation. + +AL1 : It would be much simpler if all the images had the same scale (for 1x1, 2x2 ....) + lets say + 1x1 ground is 128 pixel wide (only ground, building can go higher and to the right) + 2x2 256 + 3x3 384 + 4x4 ... + So we would just need to know the tile size (1x1, or ...) to place it correctly + +Alas , this is not the case, so images.xml is used to know the x position, read below for explainations. + +=========================================================================== +Lincity-NG 1.0 comments : +=========================================================================== +Why do you need the symlinks? + +I don't. There should be different Pictures instead. +Some represent different states of the same Building: +eg: market-empty, market-low, market-med, market-full +Other are several kinds of similar elemnts, like +railud, railudr, railludr... etc. which show rails +in different directions. Some of the images are used +to do animations. + +The iso-Rendere expects the same imagenames as the original game. +Names are defined in "lincity/lctypes.h". + +See http://pingus.seul.org/~grumbel/tmp/lincity/ for +Overview of original Pictures + +<WolfgangB> grumbel: I can't figer out the meaning oft the coordinates in images.xml. Is it an offset of the Image? +<grumbel> WolfgangB: its the center of the image +<grumbel> with y-coordinate being wrong +<WolfgangB> so i dont have to look at that file to past the images? +<grumbel> you need the x-coordinate since some buildings aren't symetric +<grumbel> y-coordinate is simply calculateable from the image height +<WolfgangB> so x is not always image.width/2? +<grumbel> nope +<WolfgangB> okay, that was the missing clue. thanks +<grumbel> imagine a high tower with long shadow to the right + + +TODO: +Water: +------ +water* + + +=========================================================================== +Fire: +----- + +fire1.png +fire2.png +fire3.png +fire4.png +fire5.png + +firedone1.png +firedone2.png +firedone3.png +firedone4.png + +Railroad: +--------- + +raildr.png +railld.png +railldr.png +raillr.png +raillu.png +raillud.png +railludr.png +raillur.png +railud.png +railudr.png +railur.png + + +Firestation: +----------- +animation 1..10 + +firestation1.png doors closed +firestation2.png \ +firestation3.png moving out +firestation4.png / +firestation5.png / +firestation6.png/ +firestation7.png all gone, doors open (is shown longer) +firestation8.png moving in +firestation9.png / +firestation10.png / + +Light Industry +-------------- +industrylh1.png >80% output Animate 1..4 +industrylh2.png +industrylh3.png +industrylh4.png + +industrylm1.png >55% output Animate 1..4 +industrylm2.png +industrylm3.png +industrylm4.png + +industryll1.png >25% output Animate 1..4 +industryll2.png +industryll3.png +industryll4.png + +industrylq1.png >0% output Animate 1..4 +industrylq2.png +industrylq3.png +industrylq4.png + +industrylc.png is used for 0% output + +Tip: +---- +graphic represents fillstate + +tip0.png new, empty tip +tip1.png +tip2.png +tip3.png +tip4.png +tip5.png +tip6.png +tip7.png +tip8.png full tip, closed + +Oremine: +-------- + +graphic represents remaining ore. + +oremine1.png new mine +oremine2.png +oremine3.png +oremine4.png +oremine5.png +oremine6.png +oremine7.png +oremine8.png almost depleted + +Heavy Industry +-------------- + +industryhh1.png >80% output +industryhh2.png +industryhh3.png Animation 1..8 +industryhh4.png +industryhh5.png +industryhh6.png +industryhh7.png +industryhh8.png + +industryhm1.png >30% output +industryhm2.png +industryhm3.png Animation 1..8 +industryhm4.png +industryhm5.png +industryhm6.png +industryhm7.png +industryhm8.png + +industryhl1.png >0% output +industryhl2.png +industryhl3.png +industryhl4.png Animation 1..8 +industryhl5.png +industryhl6.png +industryhl7.png +industryhl8.png + +industryhc.png 0% output + + + +Coalmine: +--------- + +graphic represents Coal storage on Surface +coalmine-empty.png +coalmine-low.png +coalmine-med.png +coalmine-full.png + +Modern Windmill: +---------------- +Animation 1..3 +r red Light on (power OK) +g green Light on (blackout) +rg red+green Light on (brownout) + +windmill1g.png +windmill1r.png +windmill1rg.png +windmill2g.png +windmill2r.png +windmill2rg.png +windmill3g.png +windmill3r.png +windmill3rg.png + +Commune: +-------- + + +commune1.png idle + +commune2.png Animation 2..6 +commune3.png +commune4.png +commune5.png +commune6.png + +commune7.png Animation 7..11 +commune8.png this Animation is used when producing steel +commune9.png +commune10.png +commune11.png + +commune12.png unused +commune13.png unused +commune14.png unused + + +Sport: +------ + +cricket1.png Animation 1..7 1 is empty field +cricket2.png enter the players +cricket3.png play the game ... +cricket4.png +cricket5.png +cricket6.png +cricket7.png players leaving + +Farm: +----- + +Only 0,3,7,11 and 15 are used. + +farm0.png new farm, all fields empty +farm1.png +farm2.png +farm3.png used +farm4.png +farm5.png +farm6.png +farm7.png used +farm8.png +farm9.png +farm10.png +farm11.png used +farm12.png +farm13.png +farm14.png +farm15.png used +farm16.png + +Rocket: +------- +rocket1.png used while building Rocket < 25% completed +rocket2.png used while building Rocket < 60% completed +rocket3.png used while building Rocket < 90% completed +rocket4.png used while building Rocket <100% completed +rocket5.png used when Rocket is ready for launch (100%) +rocket6.png rocket standby animation if you do not launch at once. +rocket7.png cycles through rocket5, rocket6, rocket7, rocket5 ... + +rocketflown.png empty launchpad after launch. + + +Pottery: +-------- + +pottery0.png New Pottery +pottery1.png Animation 1..10 (no smoke) +pottery2.png smoke 1 [2 keys for smoke] +pottery3.png if pottery smoke 1 [4 keys] +pottery4.png not working smoke 1 [8 keys] +pottery5.png good enough smoke 1 [3 keys] +pottery6.png just 1..5 smoke 2 [2 keys] +pottery7.png is used, so smoke 2 [4 keys] +pottery8.png only one smoke 2 [8 keys] +pottery9.png smoking oven smoke 2 [3 keys] +pottery10.png smoke 2 -> pottery6.png + +Blacksmith: +----------- + +blacksmith0.png not Working +blacksmith1.png Animation 1..6 +blacksmith2.png +blacksmith3.png +blacksmith4.png +blacksmith5.png +blacksmith6.png + +Market: +------- + +graphic represents storage in market + +market-empty.png +market-full.png +market-low.png +market-med.png Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/reshilow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/reshilow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/resmedhi.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/resmedhi.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/resmedlow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/resmedlow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge1s.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge1s.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge2s.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge2s.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance1_00.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance1_00.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance1_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance1_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance1_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance1_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance1_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance1_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance2_00.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance2_00.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance2_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance2_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance2_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance2_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_entrance2_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_entrance2_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_pg1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_pg1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Roadbridge_pg2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Roadbridge_pg2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roaddr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roaddr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadld.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadld.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadldr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadldr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadlr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadlr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadlud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadlud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadludr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadludr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadlu.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadlu.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadlur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadlur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadudr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadudr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/roadur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/roadur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-animation.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-animation.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-static.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-static.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0001.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0001.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0002.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0002.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0003.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0003.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0004.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0004.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0005.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0005.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0006.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0006.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0007.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0007.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0008.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0008.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0009.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0009.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0010.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0010.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/school-swing0011.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/school-swing0011.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/substation-G.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/substation-G.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/substation-RG.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/substation-RG.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/substation-R.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/substation-R.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip0.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip0.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip5.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip5.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip6.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip6.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip7.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip7.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tip8.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tip8.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge_entrance_00.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge_entrance_00.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge_entrance_180.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge_entrance_180.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge_entrance_270.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge_entrance_270.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge_entrance_90.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge_entrance_90.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge_pg1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge_pg1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/Trackbridge_pg2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/Trackbridge_pg2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackdr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackdr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackld.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackld.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackldr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackldr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tracklr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tracklr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tracklud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tracklud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackludr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackludr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tracklu.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tracklu.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tracklur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tracklur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackudr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackudr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/trackur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/trackur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tree2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tree2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tree3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tree3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/tree.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/tree.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterld.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterld.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterl.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterl.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterlrd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterlrd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterlr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterlr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterlud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterlud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterlu.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterlu.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterlurd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterlurd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterlur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterlur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/water.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/water.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterrd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterrd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterr.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterr.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterud.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterud.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/wateru.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/wateru.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterurd.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterurd.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/waterur.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/waterur.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill1g.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill1g.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill1rg.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill1rg.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill1r.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill1r.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill1w.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill1w.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill2g.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill2g.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill2rg.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill2rg.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill2r.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill2r.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill2w.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill2w.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill3g.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill3g.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill3rg.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill3rg.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill3r.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill3r.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/images/tiles/windmill3w.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/images/tiles/windmill3w.png differ diff -Nru lincity-ng-2.0/data/Jamfile lincity-ng-2.9~git20150314/data/Jamfile --- lincity-ng-2.0/data/Jamfile 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/Jamfile 2015-05-05 16:32:49.000000000 +0000 @@ -44,9 +44,11 @@ help/ca help/cs help/de + help/el help/en help/es help/fr + help/gd help/gl help/nl help/pt_BR @@ -62,8 +64,8 @@ InstallData [ Wildcard fonts : *.ttf ] : fonts ; InstallData [ Wildcard locale : *.po ] : locale ; InstallData [ Wildcard locale/gui : *.po ] : locale/gui ; -InstallData [ Wildcard music : *.ogg ] : music ; -InstallData [ Wildcard sounds : *.wav ] : sounds ; +InstallData [ Wildcard music/default : *.ogg *.xml ] : music/default ; +InstallData [ Wildcard sounds : *.wav *.xml ] : sounds ; InstallData lincityconfig.xml ; # can only invoke xmlgettext when not cross compiling Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/lincity-ng.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/lincity-ng.png differ diff -Nru lincity-ng-2.0/data/locale/de.po lincity-ng-2.9~git20150314/data/locale/de.po --- lincity-ng-2.0/data/locale/de.po 2009-01-25 20:21:19.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/de.po 2015-05-05 16:32:50.000000000 +0000 @@ -9,8 +9,8 @@ "Project-Id-Version: lincity-ng 0.1\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2009-01-17 13:42+0100\n" -"PO-Revision-Date: 2009-01-17 14:34+0100\n" -"Last-Translator: Wolfgang Becker <uafr@gmx.de>\n" +"PO-Revision-Date: 2011-02-16 12:00+0100\n" +"Last-Translator: Tobias L. <tl.groups@t-online.de>\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -45,7 +45,7 @@ #: src/lincity/fileutil.cpp:484 #, c-format msgid "Couldn't create the save directory '%s'\n" -msgstr "Kann Speicherverzeichniss '%s' nicht anlegen\n" +msgstr "Kann Speicherverzeichnis '%s' nicht anlegen\n" #: src/lincity/fileutil.cpp:501 #, c-format @@ -66,11 +66,11 @@ #: src/lincity/engine.cpp:149 msgid "Port must be connected to river all along right side." -msgstr "Häfen müssen mit der ganzen rechten Seite am Fluß liegen." +msgstr "Häfen müssen mit der ganzen rechten Seite am Fluß liegen." #: src/lincity/engine.cpp:161 msgid "You can't build a water well here: it is all desert." -msgstr "Sie können hier keinen Brunnen bauen, alle Felde sind Wüste." +msgstr "Sie können hier keinen Brunnen bauen, alle Felder sind Wüste." #: src/lincity/engine.cpp:175 msgid "You can't build a tip here: this area was once a landfill" @@ -78,7 +78,7 @@ #: src/lincity/engine.cpp:190 msgid "You can't build a mine here: This area was once a landfill" -msgstr "Sie können hier keine Bergwerk bauen. Hier war mal eine Müllkippe" +msgstr "Sie können hier kein Bergwerk bauen. Hier war mal eine Müllkippe" #: src/lincity/engine.cpp:201 msgid "You can't build a mine here: there is no ore left at this site" @@ -94,11 +94,11 @@ #: src/lincity/engine.cpp:235 msgid "Too many markets. You cannot build one more" -msgstr "Es gibt zu viele Märkte. Sie könnenkeinen mehr bauen." +msgstr "Es gibt zu viele Märkte. Sie können keinen mehr bauen." #: src/lincity/engine.cpp:259 msgid "ERROR: group does not exist. This should not happen! Please consider filling a bug report to lincity-ng team, with the saved game and what you did :-) " -msgstr "Fehler: nicht vorhanden Gruppe. Das darf nicht passieren. Bitte schreiben sie einen Bugreport. Senden sie ihn zusammen mit dem Spielstand und einer Beschreibung, was sie gemacht haben an das LinCity NG Team." +msgstr "Fehler: nicht vorhandene Gruppe. Das darf nicht passieren. Bitte schreiben Sie einen Bugreport. Senden Sie Ihn zusammen mit dem Spielstand und einer Beschreibung, was Sie gemacht haben an das LinCity NG Team." #: src/lincity/engine.cpp:578 msgid "It's at a power line." @@ -818,7 +818,7 @@ #: src/lincity/modules/port.cpp:306 #: src/lincity-ng/MpsInterface.cpp:541 msgid "Total" -msgstr "Gesammt" +msgstr "Gesamt" #: src/lincity/modules/coal_power.cpp:84 msgid "Coal Power Station" @@ -940,7 +940,7 @@ #: src/lincity-ng/Dialog.cpp:381 #, c-format msgid "Economy is sustainable" -msgstr "DIe Wirtschaft ist nachhaltig." +msgstr "Die Wirtschaft ist nachhaltig." #: src/lincity-ng/Dialog.cpp:384 #, c-format @@ -1145,7 +1145,7 @@ #: src/lincity-ng/GameView.cpp:1638 msgid "Estimated Bulldoze Cost: " -msgstr "Geschätze Abbruchkosten:" +msgstr "Geschätzte Abbruchkosten:" #: src/lincity-ng/GameView.cpp:1640 msgid "Bulldoze Cost: " @@ -1223,11 +1223,11 @@ #: src/lincity-ng/MpsInterface.cpp:227 msgid "no further information available" -msgstr "keine weitenen Infos" +msgstr "keine weiteren Infos" #: src/lincity-ng/MpsInterface.cpp:230 msgid "build something here" -msgstr "Hier können sie bauen." +msgstr "Hier können Sie bauen." #: src/lincity-ng/MpsInterface.cpp:387 msgid "Coverage" @@ -1267,7 +1267,7 @@ #: src/lincity-ng/MpsInterface.cpp:416 msgid "death!" -msgstr "tötlich" +msgstr "tödlich" #: src/lincity-ng/MpsInterface.cpp:421 msgid "Bulldoze Cost" diff -Nru lincity-ng-2.0/data/locale/el.po lincity-ng-2.9~git20150314/data/locale/el.po --- lincity-ng-2.0/data/locale/el.po 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/el.po 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,1508 @@ +msgid "" +msgstr "" +"Project-Id-Version: LinCity NG\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-07-02 19:07+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: Yannis Kaskamanidis <ttnfy17@yahoo.gr>\n" +"Language-Team: <ttnfy17@yahoo.gr>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Greek\n" +"X-Poedit-Country: Greece\n" + +#: src/lincity/loadsave.cpp:130 +#, c-format +msgid "Save file <%s> - " +msgstr "Αποθήκευση αÏχείου <%s> - " + +#: src/lincity/loadsave.cpp:131 +msgid "Can't open save file!" +msgstr "Αδυναμία ανοίγματος αποθηκευμένου αÏχείου!" + +#: src/lincity/loadsave.cpp:293 +#: src/lincity/old_ldsvguts.cpp:130 +#, c-format +msgid "Can't open <%s> (gzipped)" +msgstr "Αδυναμία ανοίγματος <%s> (gzipped)" + +#: src/lincity/fileutil.cpp:233 +#: src/lincity/fileutil.cpp:277 +msgid "Error. Can't find LINCITY_HOME" +msgstr "Σφάλμα. Δεν μποÏεί να βÏεθεί το LINCITY_HOME" + +#: src/lincity/fileutil.cpp:463 +msgid "Error verifying package. Can't find colour.pal." +msgstr "Σφάλμα επαλήθευσης πακέτου. Αδυναμία εÏÏεσης παλέτας χÏωμάτων." + +#: src/lincity/fileutil.cpp:476 +#: src/lincity/fileutil.cpp:484 +#, c-format +msgid "Couldn't create the save directory '%s'\n" +msgstr "Αδυναμία δημιουÏγίας φακέλου αποθήκευσης '%s'\n" + +#: src/lincity/fileutil.cpp:501 +#, c-format +msgid "Out of memory: malloc failure\n" +msgstr "Μη επαÏκής μνήμη: το malloc απέτυχε\n" + +#: src/lincity/old_ldsvguts.cpp:162 +msgid "Loading scene" +msgstr "ΦόÏτωση τοπίου" + +#: src/lincity/simulate.cpp:81 +msgid "Upgrading from old game. You have 10 years to build water wells where needed. After, starvation will occur! You should check starvation minimap, and read waterwell help page :-)" +msgstr "Αναβάθμιση από παλιό παιχνίδι. Έχετε 10 χÏόνια να φτιάξετε πηγάδια νεÏÎ¿Ï ÏŒÏ€Î¿Ï… χÏειάζονταν. Μετά θα συμβεί λιμός! ΠÏέπει να ελέγξετε τη μικÏογÏαφία του χάÏτη και να διαβάσετε τη σελίδα βοήθειας :-)" + +#: src/lincity/power.cpp:298 +msgid "You have too many power grids. Join some of them" +msgstr "Έχετε πάÏα πολλά δίκτυα μεταφοÏάς ενέÏγειας. Συνδέστε μεÏικά από αυτά." + +#: src/lincity/engine.cpp:152 +msgid "Port must be connected to river all along right side." +msgstr "Για να μποÏέσετε να κατασκευάσετε ένα λιμάνι θα Ï€Ïέπει να το τοποθετήσετε σε μια αÏιστεÏή ευθÏγÏαμμη όχθη ποταμοÏ." + +#: src/lincity/engine.cpp:164 +msgid "You can't build a water well here: it is all desert." +msgstr "Δεν μποÏείτε να φτιάξετε πηγάδι νεÏÎ¿Ï ÎµÎ´ÏŽ: είναι έÏημος." + +#: src/lincity/engine.cpp:178 +msgid "You can't build a tip here: this area was once a landfill" +msgstr "Δεν μποÏείτε να φτιάξετε εδώ μια χωματεÏή: αυτή η πεÏιοχή ήταν κάποτε χωματεÏή." + +#: src/lincity/engine.cpp:193 +msgid "You can't build a mine here: This area was once a landfill" +msgstr "Δεν μποÏείτε να φτιάξετε εδώ ένα μεταλλείο: αυτή η πεÏιοχή ήταν κάποτε χωματεÏή." + +#: src/lincity/engine.cpp:204 +msgid "You can't build a mine here: there is no ore left at this site" +msgstr "Δεν μποÏείτε να φτιάξετε ένα μεταλλείο εδώ: δεν έχει απομείνει μετάλλευμα σε αυτό το μέÏος." + +#: src/lincity/engine.cpp:214 +msgid "You can't build a park here: it is a desert, parks need water" +msgstr "Δεν μποÏείτε να φτιάξετε εδώ ένα πάÏκο: είναι έÏημος και τα πάÏκα χÏειάζονται νεÏÏŒ." + +#: src/lincity/engine.cpp:229 +msgid "Too many substations + windmills. You cannot build one more" +msgstr "Πολλοί υποσταθμοί και ανεμόμυλοι. Δεν μποÏείτε να φτιάξετε ακόμη έναν." + +#: src/lincity/engine.cpp:238 +msgid "Too many markets. You cannot build one more" +msgstr "ΠάÏα πολλά καταστήματα. Δεν μποÏείτε να φτιάξετε ένα ακόμη." + +#: src/lincity/engine.cpp:262 +msgid "ERROR: group does not exist. This should not happen! Please consider filling a bug report to lincity-ng team, with the saved game and what you did :-) " +msgstr "ΣΦΑΛΜΑ: η ομάδα δεν υπάÏχει. Αυτό δεν Ï€Ïέπει να συμβαίνει. ΠαÏακαλώ συμπληÏώστε μια αναφοÏά σφάλματος Ï€Ïος την ομάδα του lincity-ng, με το αποθηκευμένο παιχνίδι και τι κάνατε :-) " + +#: src/lincity/engine.cpp:582 +msgid "It's at a power line." +msgstr "Είναι σε μια γÏαμμή ενέÏγειας." + +#: src/lincity/engine.cpp:584 +msgid "It's at a solar power station." +msgstr "Είναι σε έναν σταθμό ηλιακής ενέÏγειας." + +#: src/lincity/engine.cpp:586 +msgid "It's at a substation." +msgstr "Είναι σε έναν υποσταθμό." + +#: src/lincity/engine.cpp:588 +msgid "It's at a residential area." +msgstr "Είναι σε μια αστική πεÏιοχή." + +#: src/lincity/engine.cpp:590 +msgid "It's at a farm." +msgstr "Είναι σε ένα αγÏόκτημα" + +#: src/lincity/engine.cpp:592 +msgid "It's at a market." +msgstr "Είναι σε ένα κατάστημα." + +#: src/lincity/engine.cpp:594 +msgid "It's at a track." +msgstr "Î’Ïίσκεται σε απλό δÏόμο." + +#: src/lincity/engine.cpp:596 +msgid "It's at a coal mine." +msgstr "Î’Ïίσκεται σε ανθÏακωÏυχείο." + +#: src/lincity/engine.cpp:598 +msgid "It's at a railway." +msgstr "Î’Ïίσκεται σε σιδηÏόδÏομο." + +#: src/lincity/engine.cpp:600 +msgid "It's at a coal power station." +msgstr "Î’Ïίσκεται σε ατμοηλεκτÏικό σταθμό παÏαγωγής ενέÏγειας." + +#: src/lincity/engine.cpp:602 +msgid "It's at a road." +msgstr "Î’Ïίσκεται σε δÏόμο." + +#: src/lincity/engine.cpp:604 +msgid "It's at light industry." +msgstr "Î’Ïίσκεται σε ελαφÏά βιομηχανία." + +#: src/lincity/engine.cpp:606 +msgid "It's at a university." +msgstr "Î’Ïίσκεται σε πανεπιστήμιο" + +#: src/lincity/engine.cpp:608 +msgid "It's at a commune." +msgstr "Î’Ïίσκεται σε κοινότητα" + +#: src/lincity/engine.cpp:610 +msgid "It's at a tip." +msgstr "Î’Ïίσκεται σε χωματεÏή." + +#: src/lincity/engine.cpp:612 +msgid "It's at a port." +msgstr "Î’Ïίσκεται σε λιμάνι." + +#: src/lincity/engine.cpp:614 +msgid "It's at a steel works." +msgstr "Î’Ïίσκεται σε χαλυβουÏγείο." + +#: src/lincity/engine.cpp:616 +msgid "It's at a recycle centre." +msgstr "Î’Ïίσκεται σε κέντÏο ανακÏκλωσης." + +#: src/lincity/engine.cpp:618 +msgid "It's at a health centre." +msgstr "Î’Ïίσκεται σε κέντÏο υγείας." + +#: src/lincity/engine.cpp:620 +msgid "It's at a rocket site." +msgstr "Î’Ïίσκεται σε βάση διαστημόπλοιου." + +#: src/lincity/engine.cpp:622 +msgid "It's at a windmill." +msgstr "Î’Ïίσκεται σε ανεμόμυλο." + +#: src/lincity/engine.cpp:624 +msgid "It's at a school." +msgstr "Î’Ïίσκεται σε σχολείο." + +#: src/lincity/engine.cpp:626 +msgid "It's at a blacksmith." +msgstr "Î’Ïίσκεται σε σιδηÏουÏγείο." + +#: src/lincity/engine.cpp:628 +msgid "It's at a mill." +msgstr "Î’Ïίσκεται σε μÏλο." + +#: src/lincity/engine.cpp:630 +msgid "It's at a pottery." +msgstr "Î’Ïίσκεται σε εÏγαστήÏιο αγγειοπλαστικής." + +#: src/lincity/engine.cpp:632 +msgid "It's at a fire station!!!." +msgstr "Î’Ïίσκεται σε σταθμό πυÏοσβεστικής!" + +#: src/lincity/engine.cpp:634 +msgid "It's at a sports field!!!." +msgstr "Î’Ïίσκεται σε χώÏο άθλησης!" + +#: src/lincity/engine.cpp:636 +msgid "It's at a shanty town." +msgstr "Î’Ïίσκεται σε παÏαγκοÏπολη." + +#: src/lincity/engine.cpp:638 +msgid "UNKNOWN!" +msgstr "ΑΓÎΩΣΤΟ!" + +#: src/lincity/lintypes.cpp:21 +msgid "Empty" +msgstr "Κενό" + +#: src/lincity/lintypes.cpp:33 +msgid "Power line" +msgstr "ΓÏαμμή ηλεκτÏÎ¹ÎºÎ¿Ï ÏεÏματος" + +#: src/lincity/lintypes.cpp:44 +msgid "Solar PS" +msgstr "ΤÏοφοδοσία ÏεÏματος με ηλιακή ενέÏγεια" + +#: src/lincity/lintypes.cpp:55 +#: src/lincity/modules/substation.cpp:93 +msgid "Substation" +msgstr "Υποσταθμός" + +#: src/lincity/lintypes.cpp:66 +msgid "Residential LL" +msgstr "Κατοικημένη πεÏιοχή LL" + +#: src/lincity/lintypes.cpp:77 +msgid "Farm" +msgstr "ΑγÏόκτημα" + +#: src/lincity/lintypes.cpp:88 +#: src/lincity/modules/market.cpp:1011 +#: src/lincity-ng/Dialog.cpp:632 +msgid "Market" +msgstr "ΑγοÏά" + +#: src/lincity/lintypes.cpp:99 +msgid "Track" +msgstr "Απλός δÏόμος" + +#: src/lincity/lintypes.cpp:110 +msgid "Coalmine" +msgstr "ΑνθÏακωÏυχείο" + +#: src/lincity/lintypes.cpp:121 +msgid "Railway" +msgstr "ΣιδηÏόδÏομος" + +#: src/lincity/lintypes.cpp:132 +msgid "Coal PS" +msgstr "ΤÏοφοδοσία ÏεÏματος με άνθÏακα" + +#: src/lincity/lintypes.cpp:143 +msgid "Road" +msgstr "ΔÏόμος" + +#: src/lincity/lintypes.cpp:154 +msgid "Lt. Industry" +msgstr "ΕλαφÏά βιομηχανία" + +#: src/lincity/lintypes.cpp:165 +#: src/lincity/modules/university.cpp:59 +msgid "University" +msgstr "Πανεπιστήμιο" + +#: src/lincity/lintypes.cpp:176 +#: src/lincity/modules/commune.cpp:175 +msgid "Commune" +msgstr "Κοινότητα" + +#: src/lincity/lintypes.cpp:187 +msgid "Ore mine" +msgstr "ΜεταλλωÏυχείο" + +#: src/lincity/lintypes.cpp:198 +msgid "Rubbish tip" +msgstr "ΧωματεÏή" + +#: src/lincity/lintypes.cpp:209 +#: src/lincity/modules/port.cpp:281 +#: src/lincity-ng/Dialog.cpp:686 +msgid "Port" +msgstr "Λιμάνι" + +#: src/lincity/lintypes.cpp:220 +msgid "Hv. Industry" +msgstr "ΒαÏιά βιομηχανία" + +#: src/lincity/lintypes.cpp:231 +#: src/lincity/modules/parkland.cpp:21 +msgid "Park" +msgstr "ΠάÏκο" + +#: src/lincity/lintypes.cpp:242 +#: src/lincity-ng/MpsInterface.cpp:539 +msgid "Recycle" +msgstr "ΑνακÏκλωση" + +#: src/lincity/lintypes.cpp:253 +#: src/lincity/modules/water.cpp:20 +#: src/lincity/modules/residence.cpp:264 +msgid "Water" +msgstr "ÎεÏÏŒ" + +#: src/lincity/lintypes.cpp:264 +msgid "Health centre" +msgstr "ΚέντÏο υγείας" + +#: src/lincity/lintypes.cpp:275 +msgid "Rocket pad" +msgstr "ΕξέδÏα διαστημόπλοιου" + +#: src/lincity/lintypes.cpp:286 +#: src/lincity/modules/windmill.cpp:74 +#: src/lincity-ng/MpsInterface.cpp:529 +msgid "Windmill" +msgstr "Ανεμόμυλοι" + +#: src/lincity/lintypes.cpp:297 +#: src/lincity/modules/monument.cpp:51 +msgid "Monument" +msgstr "Μνημείο" + +#: src/lincity/lintypes.cpp:308 +#: src/lincity/modules/school.cpp:43 +msgid "School" +msgstr "Σχολείο" + +#: src/lincity/lintypes.cpp:319 +#: src/lincity/modules/blacksmith.cpp:91 +msgid "Blacksmith" +msgstr "ΣιδηÏουÏγείο" + +#: src/lincity/lintypes.cpp:330 +msgid "Mill" +msgstr "ÎœÏλος" + +#: src/lincity/lintypes.cpp:341 +#: src/lincity/modules/pottery.cpp:105 +msgid "Pottery" +msgstr "ΕÏγαστήÏιο αγγειοπλαστικής" + +#: src/lincity/lintypes.cpp:352 +msgid "Fire sta'n" +msgstr "ΠυÏοσβεστικός σταθμός" + +#: src/lincity/lintypes.cpp:363 +#: src/lincity/modules/cricket.cpp:92 +msgid "Sports field" +msgstr "ΧώÏος άθλησης" + +#: src/lincity/lintypes.cpp:375 +msgid "Burnt" +msgstr "Καμμένος" + +#: src/lincity/lintypes.cpp:387 +msgid "Shanty town" +msgstr "ΠαÏαγκοÏπολη" + +#: src/lincity/lintypes.cpp:399 +#: src/lincity/modules/residence.cpp:283 +#: src/lincity-ng/MpsInterface.cpp:403 +#: src/lincity-ng/EconomyGraph.cpp:134 +msgid "Fire" +msgstr "ΠυÏκ." + +#: src/lincity/lintypes.cpp:411 +msgid "Used" +msgstr "ΜεταχειÏισμένο" + +#: src/lincity/lintypes.cpp:422 +msgid "Residential ML" +msgstr "Κατοικημένη πεÏιοχή ML" + +#: src/lincity/lintypes.cpp:433 +msgid "Residential HL" +msgstr "Κατοικημένη πεÏιοχή HL" + +#: src/lincity/lintypes.cpp:444 +msgid "Residential LH" +msgstr "Κατοικημένη πεÏιοχή LH" + +#: src/lincity/lintypes.cpp:455 +msgid "Residential MH" +msgstr "Κατοικημένη πεÏιοχή MH" + +#: src/lincity/lintypes.cpp:466 +msgid "Residential HH" +msgstr "Κατοικημένη πεÏιοχή HH" + +#: src/lincity/lintypes.cpp:477 +msgid "Water well" +msgstr "Πηγάδι νεÏοÏ" + +#: src/lincity/lintypes.cpp:489 +msgid "Desert" +msgstr "ΈÏημος" + +#: src/lincity/lintypes.cpp:501 +msgid "Tree" +msgstr "ΔέντÏο" + +#: src/lincity/lintypes.cpp:514 +msgid "Trees" +msgstr "ΔέντÏα" + +#: src/lincity/lintypes.cpp:527 +msgid "Forest" +msgstr "Δάσος" + +#: src/lincity/lintypes.cpp:540 +msgid "Track Bridge" +msgstr "ΓέφυÏα Î±Ï€Î»Î¿Ï Î´Ïόμου" + +#: src/lincity/lintypes.cpp:552 +msgid "Road Bridge" +msgstr "ΓέφυÏα δÏόμου" + +#: src/lincity/lintypes.cpp:564 +msgid "Rail Bridge" +msgstr "ΓέφυÏα σιδηÏόδÏομου" + +#: src/lincity/lclib.cpp:15 +msgid "Jan" +msgstr "Ιαν" + +#: src/lincity/lclib.cpp:15 +msgid "Feb" +msgstr "Φεβ" + +#: src/lincity/lclib.cpp:15 +msgid "Mar" +msgstr "ΜαÏ" + +#: src/lincity/lclib.cpp:15 +msgid "Apr" +msgstr "ΑπÏ" + +#: src/lincity/lclib.cpp:16 +msgid "May" +msgstr "Μάι" + +#: src/lincity/lclib.cpp:16 +msgid "Jun" +msgstr "Ιουν" + +#: src/lincity/lclib.cpp:16 +msgid "Jul" +msgstr "Ιουλ" + +#: src/lincity/lclib.cpp:16 +msgid "Aug" +msgstr "ΑÏγ" + +#: src/lincity/lclib.cpp:17 +msgid "Sep" +msgstr "Σεπ" + +#: src/lincity/lclib.cpp:17 +msgid "Oct" +msgstr "Οκτ" + +#: src/lincity/lclib.cpp:17 +msgid "Nov" +msgstr "Îοέ" + +#: src/lincity/lclib.cpp:17 +msgid "Dec" +msgstr "Δεκ" + +#: src/lincity/modules/waterwell.cpp:56 +msgid "Water_well" +msgstr "Πηγάδι νεÏοÏ" + +#: src/lincity/modules/waterwell.cpp:59 +#: src/lincity/modules/residence.cpp:288 +#: src/lincity/modules/parkland.cpp:24 +#: src/lincity-ng/MpsInterface.cpp:411 +msgid "Pollution" +msgstr "ΡÏπανση" + +#: src/lincity/modules/waterwell.cpp:62 +#: src/lincity/modules/water.cpp:23 +#: src/lincity/modules/commune.cpp:180 +#: src/lincity/modules/commune.cpp:182 +#: src/lincity/modules/commune.cpp:184 +#: src/lincity/modules/commune.cpp:186 +#: src/lincity-ng/MpsInterface.cpp:402 +#: src/lincity-ng/MpsInterface.cpp:405 +#: src/lincity-ng/MpsInterface.cpp:408 +msgid "Yes" +msgstr "Îαι" + +#: src/lincity/modules/waterwell.cpp:63 +msgid "Drinkable" +msgstr "Πόσιμο" + +#: src/lincity/modules/health_centre.cpp:58 +msgid "Health Centre" +msgstr "ΚέντÏο υγείας" + +#: src/lincity/modules/health_centre.cpp:60 +#: src/lincity/modules/rocket_pad.cpp:194 +#: src/lincity/modules/recycle.cpp:144 +#: src/lincity/modules/mill.cpp:98 +#: src/lincity/modules/university.cpp:65 +#: src/lincity/modules/cricket.cpp:94 +#: src/lincity/modules/pottery.cpp:109 +#: src/lincity/modules/blacksmith.cpp:96 +#: src/lincity/modules/firestation.cpp:111 +#: src/lincity/modules/school.cpp:48 +msgid "Inventory" +msgstr "ΑπογÏαφή" + +#: src/lincity/modules/health_centre.cpp:61 +#: src/lincity/modules/rocket_pad.cpp:195 +#: src/lincity/modules/windmill.cpp:76 +#: src/lincity/modules/coalmine.cpp:155 +#: src/lincity/modules/market.cpp:1016 +#: src/lincity/modules/road.cpp:46 +#: src/lincity/modules/rail.cpp:51 +#: src/lincity/modules/coal_power.cpp:98 +#: src/lincity/modules/light_industry.cpp:287 +#: src/lincity/modules/university.cpp:66 +#: src/lincity/modules/cricket.cpp:95 +#: src/lincity/modules/track.cpp:37 +#: src/lincity/modules/pottery.cpp:110 +#: src/lincity/modules/firestation.cpp:112 +#: src/lincity/modules/organic_farm.cpp:220 +#: src/lincity/modules/school.cpp:49 +#: src/lincity/modules/solar_power.cpp:45 +msgid "Jobs" +msgstr "ΕÏγασία" + +#: src/lincity/modules/health_centre.cpp:62 +#: src/lincity/modules/rocket_pad.cpp:196 +#: src/lincity/modules/market.cpp:1018 +#: src/lincity/modules/port.cpp:298 +#: src/lincity/modules/road.cpp:48 +#: src/lincity/modules/rail.cpp:53 +#: src/lincity/modules/mill.cpp:99 +#: src/lincity/modules/university.cpp:67 +#: src/lincity/modules/cricket.cpp:96 +#: src/lincity/modules/track.cpp:39 +#: src/lincity/modules/pottery.cpp:111 +#: src/lincity/modules/blacksmith.cpp:97 +#: src/lincity/modules/firestation.cpp:113 +#: src/lincity/modules/school.cpp:50 +#: src/lincity-ng/MpsInterface.cpp:471 +msgid "Goods" +msgstr "Αγαθά" + +#: src/lincity/modules/rocket_pad.cpp:188 +msgid "Rocket Pad" +msgstr "Βάση εκτόξευσης πυÏαÏλου" + +#: src/lincity/modules/rocket_pad.cpp:191 +msgid "Completion" +msgstr "ΟλοκλήÏωση" + +#: src/lincity/modules/rocket_pad.cpp:197 +#: src/lincity/modules/market.cpp:1020 +#: src/lincity/modules/port.cpp:302 +#: src/lincity/modules/road.cpp:50 +#: src/lincity/modules/rail.cpp:55 +#: src/lincity/modules/light_industry.cpp:286 +#: src/lincity/modules/commune.cpp:185 +#: src/lincity/modules/track.cpp:41 +msgid "Steel" +msgstr "Ατσάλι" + +#: src/lincity/modules/windmill.cpp:75 +#: src/lincity/modules/recycle.cpp:142 +#: src/lincity/modules/coal_power.cpp:99 +#: src/lincity/modules/light_industry.cpp:277 +#: src/lincity/modules/organic_farm.cpp:218 +#: src/lincity/modules/solar_power.cpp:58 +msgid "Tech" +msgstr "Τεχνολογικό επίπεδο" + +#: src/lincity/modules/windmill.cpp:80 +msgid "Local Status" +msgstr "Τοπική κατάσταση" + +#: src/lincity/modules/windmill.cpp:83 +msgid "Prod." +msgstr "ΠαÏαγωγή" + +#: src/lincity/modules/windmill.cpp:86 +#: src/lincity/modules/windmill.cpp:98 +#: src/lincity/modules/substation.cpp:110 +msgid "Demand" +msgstr "Αίτημα" + +#: src/lincity/modules/windmill.cpp:89 +#: src/lincity/modules/substation.cpp:101 +msgid "Grid Status" +msgstr "Κατάσταση πλέγματος" + +#: src/lincity/modules/windmill.cpp:92 +#: src/lincity/modules/substation.cpp:104 +msgid "T. Cap." +msgstr "T. Cap." + +#: src/lincity/modules/windmill.cpp:95 +#: src/lincity/modules/substation.cpp:107 +msgid "A. Cap." +msgstr "A. Cap." + +#: src/lincity/modules/windmill.cpp:99 +#: src/lincity/modules/coal_power.cpp:100 +#: src/lincity/modules/substation.cpp:113 +#: src/lincity/modules/power_line.cpp:49 +#: src/lincity/modules/solar_power.cpp:59 +msgid "Grid ID" +msgstr "Πλέγμα ID" + +#: src/lincity/modules/water.cpp:23 +#: src/lincity/modules/commune.cpp:180 +#: src/lincity/modules/commune.cpp:182 +#: src/lincity/modules/commune.cpp:184 +#: src/lincity/modules/commune.cpp:186 +#: src/lincity-ng/MpsInterface.cpp:402 +#: src/lincity-ng/MpsInterface.cpp:405 +#: src/lincity-ng/MpsInterface.cpp:408 +msgid "No" +msgstr "Όχι" + +#: src/lincity/modules/water.cpp:24 +msgid "Navigable" +msgstr "Πλωτός" + +#: src/lincity/modules/recycle.cpp:134 +msgid "Recycling Center" +msgstr "ΚέντÏο ανακÏκλωσης" + +#: src/lincity/modules/recycle.cpp:137 +#: src/lincity/modules/heavy_industry.cpp:288 +#: src/lincity/modules/mill.cpp:96 +#: src/lincity/modules/light_industry.cpp:279 +#: src/lincity/modules/university.cpp:68 +#: src/lincity/modules/pottery.cpp:107 +#: src/lincity/modules/blacksmith.cpp:94 +#: src/lincity/modules/school.cpp:52 +msgid "Capacity" +msgstr "ΧωÏητικότητα" + +#: src/lincity/modules/recycle.cpp:139 +#: src/lincity/modules/residence.cpp:263 +#: src/lincity/modules/residence.cpp:267 +#: src/lincity/modules/residence.cpp:270 +#: src/lincity/modules/residence.cpp:273 +#: src/lincity/modules/residence.cpp:279 +#: src/lincity/modules/residence.cpp:282 +#: src/lincity/modules/residence.cpp:285 +#: src/lincity/modules/light_industry.cpp:282 +#: src/lincity/modules/organic_farm.cpp:217 +msgid "YES" +msgstr "ÎΑΙ" + +#: src/lincity/modules/recycle.cpp:139 +#: src/lincity/modules/residence.cpp:263 +#: src/lincity/modules/residence.cpp:267 +#: src/lincity/modules/residence.cpp:270 +#: src/lincity/modules/residence.cpp:273 +#: src/lincity/modules/residence.cpp:279 +#: src/lincity/modules/residence.cpp:282 +#: src/lincity/modules/residence.cpp:285 +#: src/lincity/modules/heavy_industry.cpp:280 +#: src/lincity/modules/light_industry.cpp:282 +#: src/lincity/modules/organic_farm.cpp:217 +msgid "NO" +msgstr "ΟΧΙ" + +#: src/lincity/modules/recycle.cpp:140 +#: src/lincity/modules/residence.cpp:271 +#: src/lincity/modules/heavy_industry.cpp:283 +#: src/lincity/modules/light_industry.cpp:283 +#: src/lincity/modules/organic_farm.cpp:217 +msgid "Power" +msgstr "ΕνέÏγεια" + +#: src/lincity/modules/recycle.cpp:145 +#: src/lincity/modules/heavy_industry.cpp:286 +#: src/lincity/modules/market.cpp:1019 +#: src/lincity/modules/port.cpp:294 +#: src/lincity/modules/road.cpp:49 +#: src/lincity/modules/rail.cpp:54 +#: src/lincity/modules/light_industry.cpp:285 +#: src/lincity/modules/commune.cpp:183 +#: src/lincity/modules/track.cpp:40 +#: src/lincity/modules/pottery.cpp:112 +msgid "Ore" +msgstr "Μετάλλευμα" + +#: src/lincity/modules/recycle.cpp:146 +#: src/lincity/modules/market.cpp:1021 +#: src/lincity/modules/road.cpp:51 +#: src/lincity/modules/rail.cpp:56 +#: src/lincity/modules/commune.cpp:187 +#: src/lincity/modules/track.cpp:42 +msgid "Waste" +msgstr "Σκουπίδια" + +#: src/lincity/modules/coalmine.cpp:151 +msgid "Coal Mine" +msgstr "ΑνθÏακωÏυχείο" + +#: src/lincity/modules/coalmine.cpp:158 +#: src/lincity/modules/oremine.cpp:165 +msgid "Stock" +msgstr "Απόθεμα" + +#: src/lincity/modules/coalmine.cpp:160 +#: src/lincity/modules/coalmine.cpp:162 +#: src/lincity/modules/oremine.cpp:168 +msgid "Reserve" +msgstr "Απόθεμα" + +#: src/lincity/modules/coalmine.cpp:162 +msgid "EMPTY" +msgstr "ΚΕÎΟ" + +#: src/lincity/modules/residence.cpp:255 +msgid "Residence" +msgstr "Κατοικία" + +#: src/lincity/modules/residence.cpp:259 +msgid "People" +msgstr "ΆνθÏωποι" + +#: src/lincity/modules/residence.cpp:268 +msgid "Fed" +msgstr "Σίτιση" + +#: src/lincity/modules/residence.cpp:274 +msgid "Employed" +msgstr "ΕÏγαζόμενος" + +#: src/lincity/modules/residence.cpp:276 +#: src/lincity-ng/MpsInterface.cpp:416 +msgid "good" +msgstr "αγαθό" + +#: src/lincity/modules/residence.cpp:276 +msgid "poor" +msgstr "φτωχός" + +#: src/lincity/modules/residence.cpp:277 +msgid "Job" +msgstr "ΕÏγασία" + +#: src/lincity/modules/residence.cpp:280 +msgid "Health Cvr" +msgstr "Υγεία Cvr" + +#: src/lincity/modules/residence.cpp:286 +#: src/lincity-ng/MpsInterface.cpp:409 +#: src/lincity-ng/MpsInterface.cpp:537 +msgid "Sport" +msgstr "Αθλητισμός" + +#: src/lincity/modules/monument.cpp:57 +msgid "Wisdom Bestowed" +msgstr "Απονομή σοφίας!" + +#: src/lincity/modules/monument.cpp:61 +#, c-format +msgid "% Complete" +msgstr "% ΟλοκληÏώθηκε" + +#: src/lincity/modules/heavy_industry.cpp:270 +msgid "Heavy Industry" +msgstr "ΒαÏιά βιομηχανία" + +#: src/lincity/modules/heavy_industry.cpp:275 +#: src/lincity/modules/heavy_industry.cpp:287 +#: src/lincity/modules/market.cpp:1017 +#: src/lincity/modules/port.cpp:290 +#: src/lincity/modules/road.cpp:47 +#: src/lincity/modules/rail.cpp:52 +#: src/lincity/modules/coal_power.cpp:97 +#: src/lincity/modules/mill.cpp:101 +#: src/lincity/modules/commune.cpp:181 +#: src/lincity/modules/track.cpp:38 +#: src/lincity/modules/pottery.cpp:113 +#: src/lincity/modules/blacksmith.cpp:98 +#: src/lincity-ng/MpsInterface.cpp:467 +msgid "Coal" +msgstr "ΆνθÏακας" + +#: src/lincity/modules/heavy_industry.cpp:277 +msgid "Grid" +msgstr "Πλέγμα" + +#: src/lincity/modules/heavy_industry.cpp:285 +#: src/lincity/modules/light_industry.cpp:284 +msgid "Store" +msgstr "Απόθεμα" + +#: src/lincity/modules/market.cpp:1015 +#: src/lincity/modules/port.cpp:286 +#: src/lincity/modules/road.cpp:45 +#: src/lincity/modules/rail.cpp:50 +#: src/lincity/modules/mill.cpp:100 +#: src/lincity/modules/track.cpp:36 +msgid "Food" +msgstr "ΤÏοφή" + +#: src/lincity/modules/port.cpp:306 +#: src/lincity-ng/MpsInterface.cpp:555 +msgid "Total" +msgstr "ΣÏνολο" + +#: src/lincity/modules/coal_power.cpp:84 +msgid "Coal Power Station" +msgstr "ΑτμοηλεκτÏικός σταθμός" + +#: src/lincity/modules/coal_power.cpp:88 +#: src/lincity/modules/solar_power.cpp:49 +msgid "Max Output" +msgstr "Μέγιστη παÏαγωγή" + +#: src/lincity/modules/coal_power.cpp:93 +#: src/lincity/modules/solar_power.cpp:54 +msgid "Current Output" +msgstr "ΤÏέχουσα παÏαγωγή" + +#: src/lincity/modules/substation.cpp:97 +msgid "Local Demand" +msgstr "Τοπική ζήτηση" + +#: src/lincity/modules/mill.cpp:94 +msgid "Textile Mill" +msgstr "ΥφαντουÏγικός μÏλος" + +#: src/lincity/modules/oremine.cpp:162 +msgid "Ore Mine" +msgstr "ΜεταλλωÏυχείο" + +#: src/lincity/modules/power_line.cpp:46 +msgid "Power Line" +msgstr "ΓÏαμμή ηλεκτÏικής ενέÏγειας" + +#: src/lincity/modules/light_industry.cpp:275 +msgid "Light Industry" +msgstr "ΕλαφÏά βιομηχανία" + +#: src/lincity/modules/university.cpp:61 +msgid "Tech Produced" +msgstr "ΠαÏαγόμενη τεχνολογία" + +#: src/lincity/modules/tip.cpp:100 +msgid "Landfill" +msgstr "ΧωματεÏή" + +#: src/lincity/modules/tip.cpp:103 +msgid "Last Month" +msgstr "Τελευταίος μήνας" + +#: src/lincity/modules/tip.cpp:104 +msgid "Tons" +msgstr "Τόνοι" + +#: src/lincity/modules/tip.cpp:105 +msgid "Percent" +msgstr "Ποσοστό" + +#: src/lincity/modules/tip.cpp:107 +msgid "Filled" +msgstr "ΠλήÏης" + +#: src/lincity/modules/tip.cpp:109 +msgid "Days degenerating" +msgstr "ΦθοÏά του χÏόνου" + +#: src/lincity/modules/commune.cpp:178 +msgid "Activity" +msgstr "ΔÏαστηÏιότητα" + +#: src/lincity/modules/firestation.cpp:109 +msgid "Fire Station" +msgstr "Σταθμός πυÏοσβεστικής" + +#: src/lincity/modules/organic_farm.cpp:214 +msgid "Organic Farm" +msgstr "Βιολογικό αγÏόκτημα" + +#: src/lincity/modules/organic_farm.cpp:219 +msgid "Prod" +msgstr "ΠαÏαγωγή" + +#: src/lincity/modules/organic_farm.cpp:225 +msgid "Debug info" +msgstr "ΠληÏοφοÏίες αποσφαλμάτωσης" + +#: src/lincity/modules/organic_farm.cpp:226 +msgid "max with power&water" +msgstr "μέγιστο με ενέÏγεια & νεÏÏŒ" + +#: src/lincity/modules/organic_farm.cpp:227 +msgid "N tiles with water" +msgstr "N τετÏαγωνίδια με νεÏÏŒ" + +#: src/lincity/modules/organic_farm.cpp:228 +msgid "Current production" +msgstr "ΤÏέχουσα παÏαγωγή" + +#: src/lincity/modules/school.cpp:45 +msgid "Lessons Learned" +msgstr "Διδαγμένα μαθήματα " + +#: src/lincity/modules/solar_power.cpp:43 +msgid "Solar power station" +msgstr "Σταθμός ηλιακής ενέÏγειας" + +#: src/lincity-ng/Dialog.cpp:174 +msgid "Launchsite" +msgstr "Βάση εκτόξευσης" + +#: src/lincity-ng/Dialog.cpp:372 +msgid "----- IN TEST MODE -------" +msgstr "----- ΣΕ ΛΕΙΤΟΥΡΓΙΑ ΔΟΚΙΜΗΣ -------" + +#: src/lincity-ng/Dialog.cpp:374 +#, c-format +msgid "Game statistics from LinCity-NG Version %s" +msgstr "Στατιστικά Ï€Î±Î¹Ï‡Î½Î¹Î´Î¹Î¿Ï Î±Ï€ÏŒ το LinCity-NG, έκδοση %s" + +#: src/lincity-ng/Dialog.cpp:377 +#, c-format +msgid "Initial loaded scene - %s" +msgstr "ΦόÏτωση αÏχικής σκηνής - %s" + +#: src/lincity-ng/Dialog.cpp:381 +#, c-format +msgid "Economy is sustainable" +msgstr "Η οικονομία είναι βιώσιμη" + +#: src/lincity-ng/Dialog.cpp:384 +#, c-format +msgid "Population %d of which %d are not housed." +msgstr "Πληθυσμός %d από τους οποίους %d δεν είναι στεγασμένοι." + +#: src/lincity-ng/Dialog.cpp:388 +#, c-format +msgid "Max population %d Number evacuated %d Total births %d" +msgstr "Μέγιστος πληθυσμός %d Κάτοικοι Ï€Ïος μετεγκατάσταση %d ΣÏνολο γεννήσεων %d" + +#: src/lincity-ng/Dialog.cpp:392 +#, c-format +msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" +msgstr "ΧÏονολογία %s %04d ΧÏήματα %8d Τεχνολογικό επίπεδο %5.1f (%5.1f)" + +#: src/lincity-ng/Dialog.cpp:398 +#, c-format +msgid "Deaths by starvation %7d History %8.3f" +msgstr "Θάνατοι από πείνα %7d ΙστοÏικό %8.3f" + +#: src/lincity-ng/Dialog.cpp:402 +#, c-format +msgid "Deaths from pollution %7d History %8.3f" +msgstr "Θάνατοι από μόλυνση %7d ΙστοÏικό %8.3f" + +#: src/lincity-ng/Dialog.cpp:405 +#, c-format +msgid "Years of unemployment %7d History %8.3f" +msgstr "Έτη ανεÏγίας %7d ΙστοÏικό %8.3f" + +#: src/lincity-ng/Dialog.cpp:408 +#, c-format +msgid "Rockets launched %2d Successful launches %2d" +msgstr "Εκτοξευμένα διαστημόπλοια %2d Επιτυχημένες εκτοξεÏσεις %2d" + +#: src/lincity-ng/Dialog.cpp:417 +msgid "Residences" +msgstr "Κατοικίες" + +#: src/lincity-ng/Dialog.cpp:424 +msgid "Markets" +msgstr "ΑγοÏές" + +#: src/lincity-ng/Dialog.cpp:425 +msgid "Farms" +msgstr "ΑγÏοκτήματα" + +#: src/lincity-ng/Dialog.cpp:427 +msgid "Water wells" +msgstr "Πηγάδια" + +#: src/lincity-ng/Dialog.cpp:435 +msgid "Monuments" +msgstr "Μνημεία" + +#: src/lincity-ng/Dialog.cpp:436 +#: src/lincity-ng/MpsInterface.cpp:523 +msgid "Schools" +msgstr "Σχολεία" + +#: src/lincity-ng/Dialog.cpp:437 +msgid "Universities" +msgstr "Πανεπιστήμια" + +#: src/lincity-ng/Dialog.cpp:439 +msgid "Fire stations" +msgstr "ΠυÏοσβ. σταθμ." + +#: src/lincity-ng/Dialog.cpp:440 +msgid "Parks" +msgstr "ΠάÏκα" + +#: src/lincity-ng/Dialog.cpp:441 +msgid "Sports fields" +msgstr "Γήπεδα" + +#: src/lincity-ng/Dialog.cpp:443 +msgid "Health centres" +msgstr "ΚέντÏα υγείας" + +#: src/lincity-ng/Dialog.cpp:444 +msgid "Tips" +msgstr "Συμβουλές" + +#: src/lincity-ng/Dialog.cpp:445 +#: src/lincity-ng/MpsInterface.cpp:558 +msgid "Shanties" +msgstr "ΠαÏαγκουπόλεις" + +#: src/lincity-ng/Dialog.cpp:451 +msgid "Windmills" +msgstr "Ανεμόμυλοι" + +#: src/lincity-ng/Dialog.cpp:452 +msgid "Coal powers" +msgstr "ΕνέÏγεια άνθÏακα" + +#: src/lincity-ng/Dialog.cpp:453 +msgid "Solar powers" +msgstr "Ηλιακή ενέÏγεια" + +#: src/lincity-ng/Dialog.cpp:455 +msgid "Substations" +msgstr "Υποσταθμοί" + +#: src/lincity-ng/Dialog.cpp:456 +msgid "Power lines" +msgstr "ΓÏαμ. μεταφ. ηλεκ." + +#: src/lincity-ng/Dialog.cpp:457 +msgid "Ports" +msgstr "Λιμάνια" + +#: src/lincity-ng/Dialog.cpp:459 +msgid "Tracks" +msgstr "Απλοί δÏόμοι" + +#: src/lincity-ng/Dialog.cpp:460 +msgid "Roads" +msgstr "ΔÏόμοι" + +#: src/lincity-ng/Dialog.cpp:461 +msgid "Rail" +msgstr "ΣιδηÏόδÏομος" + +#: src/lincity-ng/Dialog.cpp:467 +msgid "Potteries" +msgstr "ΕÏγ. αγγειοπλ." + +#: src/lincity-ng/Dialog.cpp:468 +msgid "Blacksmiths" +msgstr "ΣιδηÏουÏγεία" + +#: src/lincity-ng/Dialog.cpp:469 +msgid "Mills" +msgstr "ÎœÏλοι" + +#: src/lincity-ng/Dialog.cpp:471 +msgid "Light inds" +msgstr "ΕλαφÏ. βιομηχ." + +#: src/lincity-ng/Dialog.cpp:472 +msgid "Heavy inds" +msgstr "ΒαÏιές βιομηχανίες" + +#: src/lincity-ng/Dialog.cpp:473 +msgid "Recyclers" +msgstr "ΚέντÏα ανακÏκλ." + +#: src/lincity-ng/Dialog.cpp:475 +msgid "Coal mines" +msgstr "ΑνθÏακωÏυχεία" + +#: src/lincity-ng/Dialog.cpp:476 +msgid "Ore mines" +msgstr "ΜεταλλωÏυχεία" + +#: src/lincity-ng/Dialog.cpp:477 +msgid "Communes" +msgstr "Κοινότητες" + +#: src/lincity-ng/GameView.cpp:240 +msgid "Minimap: outline map" +msgstr "ΜικÏογÏαφία χάÏτη: πεÏίγÏαμμα χάÏτη" + +#: src/lincity-ng/GameView.cpp:243 +msgid "Minimap: unemployment" +msgstr "ΜικÏογÏαφία χάÏτη: ανεÏγία" + +#: src/lincity-ng/GameView.cpp:246 +msgid "Minimap: pollution" +msgstr "ΜικÏογÏαφία χάÏτη: μόλυνση" + +#: src/lincity-ng/GameView.cpp:249 +msgid "Minimap: nourishments" +msgstr "ΜικÏογÏαφία χάÏτη: Ï„Ïόφιμα" + +#: src/lincity-ng/GameView.cpp:252 +msgid "Minimap: power supply" +msgstr "ΜικÏογÏαφία χάÏτη: Ï„Ïοφοδοσία ÏεÏματος" + +#: src/lincity-ng/GameView.cpp:255 +msgid "Minimap: firedepartment cover" +msgstr "ΜικÏογÏαφία χάÏτη: κάλυψη από τον πυÏοσβεστικό σταθμό" + +#: src/lincity-ng/GameView.cpp:258 +msgid "Minimap: sport cover" +msgstr "ΜικÏογÏαφία χάÏτη: κάλυψη άθλησης" + +#: src/lincity-ng/GameView.cpp:261 +msgid "Minimap: medical care" +msgstr "ΜικÏογÏαφία χάÏτη: ιατÏοφαÏμακευτική πεÏίθαλψη" + +#: src/lincity-ng/GameView.cpp:264 +msgid "Minimap: coal depots" +msgstr "ΜικÏογÏαφία χάÏτη: αποθέματα άνθÏακα" + +#: src/lincity-ng/GameView.cpp:267 +msgid "Minimap: traffic density" +msgstr "ΜικÏογÏαφία χάÏτη: πυκνότητα κυκλοφοÏίας" + +#: src/lincity-ng/GameView.cpp:1665 +msgid "Estimated Bulldoze Cost: " +msgstr "Εκτιμώμενο κόστος κατεδάφισης/διαμόÏφωσης:" + +#: src/lincity-ng/GameView.cpp:1667 +msgid "Bulldoze Cost: " +msgstr "Κόστος κατεδάφισης/διαμόÏφωσης:" + +#: src/lincity-ng/GameView.cpp:1670 +#: src/lincity-ng/GameView.cpp:1683 +#: src/lincity-ng/GameView.cpp:1714 +#: src/lincity-ng/ScreenInterface.cpp:274 +msgid "$" +msgstr "€" + +#: src/lincity-ng/GameView.cpp:1672 +#: src/lincity-ng/GameView.cpp:1685 +msgid "n/a" +msgstr "n/a" + +#: src/lincity-ng/GameView.cpp:1681 +#: src/lincity-ng/GameView.cpp:1714 +msgid ": Cost to build " +msgstr ": Κόστος κατασκευής" + +#: src/lincity-ng/GameView.cpp:1703 +msgid "Query Tool: Show information about selected building." +msgstr "ΕÏγαλείο πληÏοφοÏιών: Εμφανίζει πληÏοφοÏίες για το επιλεγμένο κτίÏιο." + +#: src/lincity-ng/GameView.cpp:1707 +msgid "Bulldozer: remove building -price varies-" +msgstr "Μπουλντόζα: κατεδάφιση/αφαίÏεση κτιÏίων -οι τιμές ποικίλουν-" + +#: src/lincity-ng/GameView.cpp:1715 +msgid ", to bulldoze " +msgstr ", για κατεδάφιση/διαμόÏφωση" + +#: src/lincity-ng/GameView.cpp:1715 +#: src/lincity-ng/GameView.cpp:1718 +msgid "$." +msgstr "€." + +#: src/lincity-ng/GameView.cpp:1717 +msgid " To build " +msgstr "Για κατασκευή" + +#: src/lincity-ng/GameView.cpp:1717 +msgid " of them " +msgstr "από αυτά" + +#: src/lincity-ng/GameView.cpp:1718 +msgid "will cost about " +msgstr "θα κοστίσει πεÏίπου" + +#: src/lincity-ng/MainMenu.cpp:141 +msgid "good_times" +msgstr "Καλές μέÏες" + +#: src/lincity-ng/MainMenu.cpp:142 +msgid "bad_times" +msgstr "Άσχημες μέÏες" + +#: src/lincity-ng/MainMenu.cpp:143 +msgid "Beach" +msgstr "ΠαÏαλία" + +#: src/lincity-ng/MainMenu.cpp:144 +msgid "extreme_arid" +msgstr "Άγονη πεÏιοχή" + +#: src/lincity-ng/MainMenu.cpp:145 +msgid "extreme_wetland" +msgstr "ΥγÏή πεÏιοχή" + +#: src/lincity-ng/MainMenu.cpp:204 +msgid "empty" +msgstr "κενό" + +#: src/lincity-ng/MpsInterface.cpp:230 +msgid "no further information available" +msgstr "δεν υπάÏχουν πεÏισσότεÏες διαθέσιμες πληÏοφοÏίες." + +#: src/lincity-ng/MpsInterface.cpp:233 +msgid "build something here" +msgstr "κατασκευάστε κάτι εδώ" + +#: src/lincity-ng/MpsInterface.cpp:401 +msgid "Coverage" +msgstr "Κάλυψη" + +#: src/lincity-ng/MpsInterface.cpp:406 +msgid "Health" +msgstr "Υγεία" + +#: src/lincity-ng/MpsInterface.cpp:414 +msgid "clear" +msgstr "καθαÏισμός" + +#: src/lincity-ng/MpsInterface.cpp:418 +msgid "fair" +msgstr "δίκαιο" + +#: src/lincity-ng/MpsInterface.cpp:420 +msgid "smelly" +msgstr "δÏσοσμο" + +#: src/lincity-ng/MpsInterface.cpp:422 +msgid "smokey" +msgstr "καπνισμένο" + +#: src/lincity-ng/MpsInterface.cpp:424 +msgid "smoggy" +msgstr "ομιχλώδες" + +#: src/lincity-ng/MpsInterface.cpp:426 +msgid "bad" +msgstr "κακό" + +#: src/lincity-ng/MpsInterface.cpp:428 +msgid "very bad" +msgstr "Ï€Î¿Î»Ï ÎºÎ±ÎºÏŒ" + +#: src/lincity-ng/MpsInterface.cpp:430 +msgid "death!" +msgstr "θάνατος!" + +#: src/lincity-ng/MpsInterface.cpp:435 +msgid "Bulldoze Cost" +msgstr "Κόστος κατεδάφισης/διαμόÏφωσης" + +#: src/lincity-ng/MpsInterface.cpp:441 +msgid "N/A" +msgstr "N/A" + +#: src/lincity-ng/MpsInterface.cpp:459 +msgid "Tax Income" +msgstr "Εισόδημα" + +#: src/lincity-ng/MpsInterface.cpp:463 +msgid "Income" +msgstr "ΦόÏοι" + +#: src/lincity-ng/MpsInterface.cpp:475 +msgid "Export" +msgstr "Εξαγωγές" + +#: src/lincity-ng/MpsInterface.cpp:479 +msgid "Expenses" +msgstr "Δαπάνες" + +#: src/lincity-ng/MpsInterface.cpp:483 +msgid "Unemp." +msgstr "ΑνεÏγία" + +#: src/lincity-ng/MpsInterface.cpp:487 +msgid "Transport" +msgstr "ΜεταφοÏές" + +#: src/lincity-ng/MpsInterface.cpp:491 +msgid "Imports" +msgstr "Εισαγωγές" + +#: src/lincity-ng/MpsInterface.cpp:495 +msgid "Others" +msgstr "Άλλα" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Net" +msgstr "Δίκτυο" + +#: src/lincity-ng/MpsInterface.cpp:512 +msgid "Other Costs" +msgstr "Άλλες δαπάνες" + +#: src/lincity-ng/MpsInterface.cpp:517 +msgid "For year" +msgstr "Για έναν χÏόνο" + +#: src/lincity-ng/MpsInterface.cpp:521 +msgid "Interest" +msgstr "Τόκοι" + +#: src/lincity-ng/MpsInterface.cpp:525 +msgid "Univers." +msgstr "Πανεπιστήμια" + +#: src/lincity-ng/MpsInterface.cpp:527 +msgid "Deaths" +msgstr "Θάνατοι" + +#: src/lincity-ng/MpsInterface.cpp:531 +msgid "Hospital" +msgstr "Îοσοκομεία" + +#: src/lincity-ng/MpsInterface.cpp:533 +msgid "Rockets" +msgstr "Διαστημόπλοια" + +#: src/lincity-ng/MpsInterface.cpp:535 +msgid "Fire Stn" +msgstr "Σταθμοί πυÏοσβ." + +#: src/lincity-ng/MpsInterface.cpp:553 +msgid "Population" +msgstr "Πληθυσμός" + +#: src/lincity-ng/MpsInterface.cpp:556 +msgid "Housed" +msgstr "Στεγασμένοι" + +#: src/lincity-ng/MpsInterface.cpp:557 +msgid "Homeless" +msgstr "Άστεγοι" + +#: src/lincity-ng/MpsInterface.cpp:559 +msgid "Unn Dths" +msgstr "Μη φυσ. θάν." + +#: src/lincity-ng/MpsInterface.cpp:560 +msgid "Unemployment" +msgstr "ΑνεÏγία" + +#: src/lincity-ng/MpsInterface.cpp:561 +msgid "Claims" +msgstr "Αξιώσεις" + +#: src/lincity-ng/MpsInterface.cpp:562 +#: src/lincity-ng/MpsInterface.cpp:567 +msgid "Rate" +msgstr "Ρυθμός" + +#: src/lincity-ng/MpsInterface.cpp:564 +msgid "Starvation" +msgstr "Πείνα" + +#: src/lincity-ng/MpsInterface.cpp:565 +msgid "Cases" +msgstr "ΠεÏιπτώσεις" + +#: src/lincity-ng/EconomyGraph.cpp:124 +msgid "Mining" +msgstr "ΑνθÏακ." + +#: src/lincity-ng/EconomyGraph.cpp:126 +msgid "Trade" +msgstr "ΕμπόÏ." + +#: src/lincity-ng/EconomyGraph.cpp:128 +msgid "Money" +msgstr "ΧÏήμ." + +#: src/lincity-ng/EconomyGraph.cpp:130 +msgid "Popul." +msgstr "Πληθ." + +#: src/lincity-ng/EconomyGraph.cpp:132 +msgid "Techn." +msgstr "Τεχνολ." + +#: src/lincity-ng/EconomyGraph.cpp:137 +msgid "Economy Overview:" +msgstr "Επισκόπηση οικονομικών:" + +#: src/lincity-ng/EconomyGraph.cpp:140 +msgid "Sustainability:" +msgstr "Βιωσιμότητα:" + +#: src/lincity-ng/EconomyGraph.cpp:143 +msgid "Frames per Second:" +msgstr "Πλαίσια ανά δευτεÏόλεπτο:" + +#: src/lincity-ng/EconomyGraph.cpp:219 +msgid "You lose." +msgstr "Χάσατε" + +#: src/lincity-ng/ButtonPanel.cpp:200 +msgid "Query Tool" +msgstr "ΕÏγαλείο πληÏοφοÏιών" + +#: src/lincity-ng/ButtonPanel.cpp:201 +msgid "Bulldozer" +msgstr "Μπουλντόζα" + +#: src/lincity-ng/ButtonPanel.cpp:203 +msgid "Residential: 50 denizens, low birthrate, high deathrate" +msgstr "Κατοικημένη πεÏιοχή: 50 κάτοικοι, χαμηλή γεννητικότητα, υψηλή θνησιμότητα" + +#: src/lincity-ng/ButtonPanel.cpp:204 +msgid "Residential: 100 denizens, high birthrate, low deathrate" +msgstr "Κατοικημένη πεÏιοχή: 100 κάτοικοι, υψηλή γεννητικότητα, χαμηλή θνησιμότητα" + +#: src/lincity-ng/ButtonPanel.cpp:205 +msgid "Residential: 200 denizens, high birthrate, high deathrate" +msgstr "Κατοικημένη πεÏιοχή: 200 κάτοικοι, υψηλή γεννητικότητα, υψηλή θνησιμότητα" + +#: src/lincity-ng/ButtonPanel.cpp:206 +msgid "Residential: 100 denizens, low birthrate, high deathrate" +msgstr "Κατοικημένη πεÏιοχή: 100 κάτοικοι, χαμηλή γεννητικότητα, υψηλή θνησιμότητα" + +#: src/lincity-ng/ButtonPanel.cpp:207 +msgid "Residential: 200 denizens, high birthrate, low deathrate" +msgstr "Κατοικημένη πεÏιοχή: 200 κάτοικοι, υψηλή γεννητικότητα, χαμηλή θνησιμότητα" + +#: src/lincity-ng/ButtonPanel.cpp:208 +msgid "Residential: 400 denizens, high birthrate, high deathrate" +msgstr "Κατοικημένη πεÏιοχή: 400 κάτοικοι, υψηλή γεννητικότητα, υψηλή θνησιμότητα" + +#: src/lincity-ng/ButtonPanel.cpp:217 +msgid " [Click right for help.]" +msgstr " [Δεξί κλικ για βοήθεια]" + +#: src/lincity-ng/ButtonPanel.cpp:245 +#: src/lincity-ng/ButtonPanel.cpp:288 +#: src/lincity-ng/ButtonPanel.cpp:416 +#: src/lincity-ng/ButtonPanel.cpp:439 +#, c-format +msgid "%s (Techlevel %.1f required.)" +msgstr "%s (Τεχνολ. επίπεδο %.1f απαιτείται.)" + +#: src/lincity-ng/ButtonPanel.cpp:254 +#, c-format +msgid "%s is disabled (loaded old game)." +msgstr "%s απενεÏγοποιήθηκε (φόÏτωση Ï€Î±Î»Î¹Î¿Ï Ï€Î±Î¹Ï‡Î½Î¹Î´Î¹Î¿Ï)." + +#: src/lincity-ng/ScreenInterface.cpp:263 +msgid "MM" +msgstr "ΜΜ" + +#~ msgid "Center" +#~ msgstr "ΚέντÏο" +#~ msgid "Industry" +#~ msgstr "Βιομηχανία" +#~ msgid "Output" +#~ msgstr "ΠαÏαγωγή" +#~ msgid "NO " +#~ msgstr "ΟΧΙ" +#~ msgid "Solar" +#~ msgstr "Ηλιακή" +#~ msgid ". Residences %4d Markets %4d Farms %4d" +#~ msgstr "Κατοικημένες πεÏιοχές %4d ΑγοÏές %4d ΑγÏοκτήματα %4d" +#~ msgid ". Monuments %4d Schools %4d Universities %4d" +#~ msgstr "Μνημεία %4d Σχολεία %4d Πανεπιστήμια %4d" +#~ msgid ".Fire stations %4d Parks %4d Sports fields %4d" +#~ msgstr "Σταθμοί πυÏοσβεστικής %4d ΠάÏκα %4d ΧώÏοι άθλησης %4d" +#~ msgid "Health centres %4d Tips %4d Shanties %4d" +#~ msgstr "ΚέντÏα υγείας %4d ΧωματεÏές %4d ΠαÏαγκουπόλεις %4d" +#~ msgid ". Windmills %4d Coal powers %4d Solar powers %4d" +#~ msgstr "Ανεμόμυλοι %4d ΕνέÏγεια άνθÏακα %4d Ηλιακή ενέÏγεια %4d" +#~ msgid ". Substations %4d Power lines %4d Ports %4d" +#~ msgstr "Υποσταθμοί %4d ΓÏαμμές ενέÏγειας %4d Λιμάνια %4d" +#~ msgid ". Tracks %4d Roads %4d Rail %4d" +#~ msgstr "Απλοί δÏόμοι %4d ΔÏόμοι %4d ΣιδηÏόδÏομοι %4d" +#~ msgid ". Potteries %4d Blacksmiths %4d Mills %4d" +#~ msgstr "ΕÏγαστήÏια αγγειοπλαστικής %4dΣιδηÏουÏγεία %4d ÎœÏλοι %4d" +#~ msgid ". Light inds %4d Heavy inds %4d Recyclers %4d" +#~ msgstr "" +#~ "ΕλαφÏές βιομηχανίες %4d ΒαÏιές βιομηχανίες %4d ΚέντÏα ανακÏκλωσης %4d" +#~ msgid ". Coal mines %4d Ore mines %4d Communes %4d" +#~ msgstr "ΑνθÏακωÏυχεία %4dΜεταλλωÏυχεία %4d Κοινότητες %4d" + diff -Nru lincity-ng-2.0/data/locale/fr.po lincity-ng-2.9~git20150314/data/locale/fr.po --- lincity-ng-2.0/data/locale/fr.po 2009-01-25 20:21:19.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/fr.po 2015-05-05 16:32:50.000000000 +0000 @@ -249,7 +249,7 @@ #: src/lincity-ng/Dialog.cpp:477 msgid "Communes" -msgstr "Communes" +msgstr "Carbonneries" #: src/lincity-ng/Dialog.cpp:631 #: src/lincity/lintypes.cpp:88 @@ -766,7 +766,7 @@ #: src/lincity/engine.cpp:590 msgid "It's at a commune." -msgstr "C'est dans une commune." +msgstr "C'est dans une carbonnerie." #: src/lincity/engine.cpp:592 msgid "It's at a tip." @@ -955,7 +955,7 @@ #: src/lincity/lintypes.cpp:176 #: src/lincity/modules/commune.cpp:174 msgid "Commune" -msgstr "Commune" +msgstr "Carbonnerie" #: src/lincity/lintypes.cpp:187 msgid "Ore mine" diff -Nru lincity-ng-2.0/data/locale/gd.po lincity-ng-2.9~git20150314/data/locale/gd.po --- lincity-ng-2.0/data/locale/gd.po 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gd.po 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,801 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Bratzbert <fios@foramnagaidhlog.net>, 2013. +# GunChleoc <fios@foramnagaidhlig.net>, 2013, 2014. +msgid "" +msgstr "" +"Project-Id-Version: Lincity-NG\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2013-10-29 18:39+0000\n" +"PO-Revision-Date: 2014-01-21 13:10+0100\n" +"Last-Translator: GunChleoc <fios@foramnagaidhlig.net>\n" +"Language-Team: Fòram na Gàidhlig http://www.foramnagaidhlig.net\n" +"Language: gd\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : " +"(n > 2 && n < 20) ? 2 : 3;\n" +"X-Generator: Virtaal 0.7.1\n" + +#: src/lincity/lclib.cpp:15 +msgid "Jan" +msgstr "Faoi" + +#: src/lincity/lclib.cpp:15 +msgid "Feb" +msgstr "Gearr" + +#: src/lincity/lclib.cpp:15 +msgid "Mar" +msgstr "Màrt" + +#: src/lincity/lclib.cpp:15 +msgid "Apr" +msgstr "Gib" + +#: src/lincity/lclib.cpp:16 +msgid "May" +msgstr "Cèit" + +#: src/lincity/lclib.cpp:16 +msgid "Jun" +msgstr "Ã’gmh" + +#: src/lincity/lclib.cpp:16 +msgid "Jul" +msgstr "Iuch" + +#: src/lincity/lclib.cpp:16 +msgid "Aug" +msgstr "Lùn" + +#: src/lincity/lclib.cpp:17 +msgid "Sep" +msgstr "Sult" + +#: src/lincity/lclib.cpp:17 +msgid "Oct" +msgstr "Dàmh" + +#: src/lincity/lclib.cpp:17 +msgid "Nov" +msgstr "Samh" + +#: src/lincity/lclib.cpp:17 +msgid "Dec" +msgstr "Dùbh" + +#: src/lincity/loadsave.cpp:161 +#, c-format +msgid "Save file <%s> - " +msgstr "Faidhle sàbhalaidh <%s> - " + +#: src/lincity/loadsave.cpp:162 +msgid "Can't open save file!" +msgstr "Cha ghabh am faidhle sàbhalaidh fhosgladh" + +#: src/lincity/loadsave.cpp:355 src/lincity/old_ldsvguts.cpp:132 +#, c-format +msgid "Can't open <%s> (gzipped)" +msgstr "Cha ghabh <%s> fhosgladh (gzip)" + +#: src/lincity/simulate.cpp:89 +msgid "" +"Upgrading from old game. You have 10 years to build water wells where " +"needed. After, starvation will occur! You should check starvation minimap, " +"and read waterwell help page :-)" +msgstr "" +"Ag ùrachadh o sheann gheama. Tha 10 bliadhna agad gus tobraichean a togail " +"far a bheil feum orra. Bidh gortas ann an uairsin! Thoir sùil air meanbh-" +"mhapa a' ghortais is leugh duilleag na cobharach mu thobraichean :-)" + +#: src/lincity/fileutil.cpp:201 src/lincity/fileutil.cpp:245 +msgid "Error. Can't find LINCITY_HOME" +msgstr "Mearachd. Cha deach LINCITY_HOME a lorg" + +#: src/lincity/fileutil.cpp:431 +msgid "Error verifying package. Can't find colour.pal." +msgstr "Mearachd a' dearbhadh na pacaide. Cha deach colour.pal a lorg." + +#: src/lincity/fileutil.cpp:444 src/lincity/fileutil.cpp:454 +#, c-format +msgid "Couldn't create the save directory '%s'\n" +msgstr "Cha b' urrainn dhuinn am pasgan sàbhalaidh \"%s\" a chruthachadh\n" + +#: src/lincity/fileutil.cpp:450 +#, c-format +msgid "Failed to chown '%s'\n" +msgstr "Cha deach leinn chown a dhèanamh air \"%s\"\n" + +#: src/lincity/fileutil.cpp:471 +msgid "Out of memory: malloc failure\n" +msgstr "Tha cuimhne a dhìth: fàilligeadh malloc\n" + +#: src/lincity/engine.cpp:62 +msgid "You just spent all your money." +msgstr "Tha thu air a h-uile airgead agad a chosg." + +#: src/lincity/engine.cpp:77 +msgid "" +"ERROR: group does not exist. This should not happen! Please consider filling " +"a bug report to lincity-ng team, with the saved game and what you did :-) " +msgstr "" +"MEARACHD: chan eil am buidheann ann. Cha bu chòir seo a thachairt! Nach cuir " +"thu aithris air a' bhuga seo dhan sgioba lincity-ng leis a' gheama air a " +"shàbhaladh na cois is fios mu na rinn thu :-) " + +#: src/lincity/engine.cpp:206 +msgid "ups, Bulldozer found a dangling reportingConstruction" +msgstr "oich, lorg am milltear reportingConstruction a' clifeadh" + +#: src/lincity/engine.cpp:350 +msgid "UNKNOWN!" +msgstr "NEO-AITHNICHTE!" + +#: src/lincity/old_ldsvguts.cpp:164 +msgid "Loading scene" +msgstr "A' luchdadh sealladh" + +#: src/lincity/lintypes.cpp:1343 +msgid "Port must be connected to river all along right side." +msgstr "" +"Feumaidh an taobh deas uile gu lèir aig port a bhith ceangailte ri abhainn." + +#: src/lincity/lintypes.cpp:1359 +msgid "You can't build a water well here: it is all desert." +msgstr "Chan urrainn dhut tobar a thogail an-seo: chan eil ach fàsach ann." + +#: src/lincity/lintypes.cpp:1378 +msgid "You can't build a mine here: there is no ore left at this site" +msgstr "" +"Chan urrainn dhut mèinn a thogail an-seo: chan eil clach-mhèinneir air " +"fhàgail aig an ionad seo" + +#: src/lincity/lintypes.cpp:1389 +msgid "You can't build a park here: it is a desert, parks need water" +msgstr "" +"Chan urrainn dhut pàirc a thogail an-seo: 's e fàsach a th' ann, ach tha " +"pàirc feumach air uisge" + +#: src/lincity/lintypes.cpp:1450 +msgid "Empty" +msgstr "Falamh" + +#: src/lincity/lintypes.cpp:1463 +msgid "Power line" +msgstr "Loidhne-dhealain" + +#: src/lincity/lintypes.cpp:1475 +msgid "Solar PS" +msgstr "Stèisean cumhachd-grèine" + +#: src/lincity/lintypes.cpp:1486 +msgid "Substation" +msgstr "Fo-stèisean" + +#: src/lincity/lintypes.cpp:1497 +msgid "Residential LL" +msgstr "Còmhnaidh bheag" + +#: src/lincity/lintypes.cpp:1508 +msgid "Farm" +msgstr "Tuathanas" + +#: src/lincity/lintypes.cpp:1519 src/lincity-ng/Dialog.cpp:636 +msgid "Market" +msgstr "Margaid" + +#: src/lincity/lintypes.cpp:1530 +msgid "Track" +msgstr "Slighe" + +#: src/lincity/lintypes.cpp:1541 +msgid "Coalmine" +msgstr "Mèinn guail" + +#: src/lincity/lintypes.cpp:1552 +msgid "Railway" +msgstr "Rèile" + +#: src/lincity/lintypes.cpp:1563 +msgid "Coal PS" +msgstr "Stèisean cumhachd-guail" + +#: src/lincity/lintypes.cpp:1574 +msgid "Road" +msgstr "Rathad" + +#: src/lincity/lintypes.cpp:1585 +msgid "Lt. Industry" +msgstr "Gnìomhachas aotrom" + +#: src/lincity/lintypes.cpp:1596 +msgid "University" +msgstr "Oilthigh" + +#: src/lincity/lintypes.cpp:1607 +msgid "Commune" +msgstr "Coille" + +#: src/lincity/lintypes.cpp:1618 +msgid "Ore mine" +msgstr "Mèinn cloiche-mèinneir" + +#: src/lincity/lintypes.cpp:1629 +msgid "Rubbish tip" +msgstr "Ã’trach" + +#: src/lincity/lintypes.cpp:1640 src/lincity-ng/Dialog.cpp:697 +msgid "Port" +msgstr "Port" + +#: src/lincity/lintypes.cpp:1651 +msgid "Hv. Industry" +msgstr "Ceàrdach stàilinn" + +#: src/lincity/lintypes.cpp:1662 +msgid "Park" +msgstr "Pàirc" + +#: src/lincity/lintypes.cpp:1673 +msgid "Recycle" +msgstr "Ionad ath-chuairteachaidh" + +#: src/lincity/lintypes.cpp:1684 src/lincity/modules/water.cpp:17 +msgid "Water" +msgstr "Uisge" + +#: src/lincity/lintypes.cpp:1695 +msgid "Health centre" +msgstr "Ionad-slàinte" + +#: src/lincity/lintypes.cpp:1706 +msgid "Rocket pad" +msgstr "Raon-rocaide" + +#: src/lincity/lintypes.cpp:1717 +msgid "Windmill" +msgstr "Muileann-gaoithe" + +#: src/lincity/lintypes.cpp:1728 +msgid "Monument" +msgstr "Carragh" + +#: src/lincity/lintypes.cpp:1739 +msgid "School" +msgstr "Sgoil" + +#: src/lincity/lintypes.cpp:1750 +msgid "Blacksmith" +msgstr "Gobha-dubh" + +#: src/lincity/lintypes.cpp:1761 +msgid "Mill" +msgstr "Muileann-clòtha" + +#: src/lincity/lintypes.cpp:1772 +msgid "Pottery" +msgstr "Criadhadaireachd" + +#: src/lincity/lintypes.cpp:1783 +msgid "Fire sta'n" +msgstr "Stèisean-smàlaidh" + +#: src/lincity/lintypes.cpp:1794 +msgid "Sports field" +msgstr "Raon spòrsa" + +#: src/lincity/lintypes.cpp:1806 +msgid "Burnt" +msgstr "Loisgte" + +#: src/lincity/lintypes.cpp:1818 +msgid "Shanty town" +msgstr "Bothain" + +#: src/lincity/lintypes.cpp:1830 src/lincity-ng/EconomyGraph.cpp:135 +msgid "Fire" +msgstr "Teine" + +#: src/lincity/lintypes.cpp:1842 +msgid "Used" +msgstr "'Ga chleachdadh" + +#: src/lincity/lintypes.cpp:1853 +msgid "Residential ML" +msgstr "Còmhnaidh mheadhanach" + +#: src/lincity/lintypes.cpp:1864 +msgid "Residential HL" +msgstr "Còmhnaidh mhòr" + +#: src/lincity/lintypes.cpp:1875 +msgid "Residential LH" +msgstr "Còmhnaidh nuadh bheag" + +#: src/lincity/lintypes.cpp:1886 +msgid "Residential MH" +msgstr "Còmhnaidh nuadh mheadhanach" + +#: src/lincity/lintypes.cpp:1897 +msgid "Residential HH" +msgstr "Còmhnaidh nuadh mhòr" + +#: src/lincity/lintypes.cpp:1908 +msgid "Water well" +msgstr "Tobar" + +#: src/lincity/lintypes.cpp:1920 +msgid "Desert" +msgstr "Fàsach" + +#: src/lincity/lintypes.cpp:1932 +msgid "Tree" +msgstr "Craobh" + +#: src/lincity/lintypes.cpp:1945 +msgid "Trees" +msgstr "Craobhan" + +#: src/lincity/lintypes.cpp:1958 +msgid "Forest" +msgstr "Coille" + +#: src/lincity/lintypes.cpp:1971 +msgid "Track Bridge" +msgstr "Drochaid slighe" + +#: src/lincity/lintypes.cpp:1983 +msgid "Road Bridge" +msgstr "Drochaid rathaid" + +#: src/lincity/lintypes.cpp:1995 +msgid "Rail Bridge" +msgstr "Drochaid rèile" + +#: src/lincity/lintypes.cpp:2007 +msgid "Wind Power" +msgstr "Cumhachd-ghaoithe" + +#: src/lincity/modules/recycle.cpp:70 src/lincity/modules/organic_farm.cpp:170 +#: src/lincity/modules/heavy_industry.cpp:251 +#: src/lincity/modules/windpower.cpp:78 src/lincity/modules/rocket_pad.cpp:236 +#: src/lincity/modules/light_industry.cpp:219 +#: src/lincity/modules/coal_power.cpp:66 +#: src/lincity/modules/solar_power.cpp:54 +msgid "Tech" +msgstr "Teicneolas" + +#: src/lincity/modules/recycle.cpp:71 +msgid "Efficiency Ore" +msgstr "Èifeachdachd cloiche-mèinneir" + +#: src/lincity/modules/recycle.cpp:72 +msgid "Efficiency Steel" +msgstr "Èifeachdachd stàilinn" + +#: src/lincity/modules/recycle.cpp:73 src/lincity/modules/organic_farm.cpp:171 +#: src/lincity/modules/market.cpp:182 +#: src/lincity/modules/heavy_industry.cpp:250 +#: src/lincity/modules/windpower.cpp:77 src/lincity/modules/blacksmith.cpp:99 +#: src/lincity/modules/rocket_pad.cpp:235 src/lincity/modules/monument.cpp:115 +#: src/lincity/modules/light_industry.cpp:218 +#: src/lincity/modules/coal_power.cpp:65 +#: src/lincity/modules/solar_power.cpp:53 src/lincity/modules/mill.cpp:91 +msgid "busy" +msgstr "Trang" + +#: src/lincity/modules/organic_farm.cpp:172 +msgid "Output" +msgstr "Toradh" + +#: src/lincity/modules/waterwell.cpp:65 +msgid "Pollution" +msgstr "Truailleadh" + +#: src/lincity/modules/waterwell.cpp:67 +msgid "Drinkable" +msgstr "Gabhaidh e òl" + +#: src/lincity/modules/university.cpp:58 +msgid "Tech researched" +msgstr "Teicneolas air a rannsachadh" + +#: src/lincity/modules/tip.cpp:114 +msgid "Filled" +msgstr "Làn" + +#: src/lincity/modules/water.cpp:20 +msgid "River" +msgstr "Abhainn" + +#: src/lincity/modules/water.cpp:20 +msgid "Lake" +msgstr "Loch" + +#: src/lincity/modules/residence.cpp:349 +msgid "Tenants" +msgstr "Màladairean" + +#: src/lincity/modules/residence.cpp:350 +msgid "Desireability" +msgstr "Goireasachd" + +#: src/lincity/modules/residence.cpp:351 +msgid "Births per year" +msgstr "Breithean / bliadhna" + +#: src/lincity/modules/residence.cpp:352 +msgid "Death per year" +msgstr "Caochladh / bliadhna" + +#: src/lincity/modules/residence.cpp:353 +msgid "Unnat. mortality" +msgstr "Bàs mì-nàdarra" + +#: src/lincity/modules/school.cpp:57 +msgid "Lessons learned" +msgstr "Leasanan air an ionnsachadh" + +#: src/lincity-ng/EconomyGraph.cpp:125 +msgid "Mining" +msgstr "Mèinnean" + +#: src/lincity-ng/EconomyGraph.cpp:127 +msgid "Trade" +msgstr "Malart" + +#: src/lincity-ng/EconomyGraph.cpp:129 +msgid "Money" +msgstr "Airgead" + +#: src/lincity-ng/EconomyGraph.cpp:131 +msgid "Popul." +msgstr "Sluagh" + +#: src/lincity-ng/EconomyGraph.cpp:133 +msgid "Techn." +msgstr "Teicneolas" + +#: src/lincity-ng/EconomyGraph.cpp:138 +msgid "Economy Overview:" +msgstr "Foir-shealladh an eaconamaidh:" + +#: src/lincity-ng/EconomyGraph.cpp:141 +msgid "Sustainability:" +msgstr "Seasmhachd:" + +#: src/lincity-ng/EconomyGraph.cpp:144 +msgid "Frames per Second:" +msgstr "Frèaman gach diog:" + +#: src/lincity-ng/EconomyGraph.cpp:219 +msgid "You lose." +msgstr "Chaill thu." + +#: src/lincity-ng/MainMenu.cpp:154 +msgid "river delta" +msgstr "gobhlan aibhne" + +#: src/lincity-ng/MainMenu.cpp:158 +msgid "semi desert" +msgstr "leth-fhàsach" + +#: src/lincity-ng/MainMenu.cpp:162 +msgid "temperate" +msgstr "measarra" + +#: src/lincity-ng/MainMenu.cpp:166 +msgid "swamp" +msgstr "boglach" + +#: src/lincity-ng/MainMenu.cpp:171 +msgid "good_times" +msgstr "deagh amannan" + +#: src/lincity-ng/MainMenu.cpp:172 +msgid "bad_times" +msgstr "droch amannan" + +#: src/lincity-ng/MainMenu.cpp:173 +msgid "Beach" +msgstr "Tràigh" + +#: src/lincity-ng/MainMenu.cpp:174 +msgid "extreme_arid" +msgstr "glè thioram" + +#: src/lincity-ng/MainMenu.cpp:175 +msgid "extreme_wetland" +msgstr "glè fhliuch" + +#: src/lincity-ng/MainMenu.cpp:234 +msgid "empty" +msgstr "falamh" + +#: src/lincity-ng/Dialog.cpp:175 +msgid "Launchsite" +msgstr "Raon-rocaide" + +#: src/lincity-ng/Dialog.cpp:373 +msgid "----- IN TEST MODE -------" +msgstr "----- ANN AM MODH DEUCHAINN -------" + +#: src/lincity-ng/Dialog.cpp:375 +#, c-format +msgid "Game statistics from LinCity-NG Version %s" +msgstr "Stadastaireachd a' gheama o LinCity-NG tionndadh %s" + +#: src/lincity-ng/Dialog.cpp:378 +#, c-format +msgid "Initial loaded scene - %s" +msgstr "Sealladh tòiseachaidh - %s" + +#: src/lincity-ng/Dialog.cpp:382 +msgid "Economy is sustainable" +msgstr "Tha an eaconamaidh seasmhach" + +#: src/lincity-ng/Dialog.cpp:385 +#, c-format +msgid "Population %d of which %d are not housed." +msgstr "Sluagh de %d le %d gun dachaigh." + +#: src/lincity-ng/Dialog.cpp:389 +#, c-format +msgid "Max population %d Number evacuated %d Total births %d" +msgstr "Sluagh as motha: %d Air às-àiteachadh: %d Breithean iomlan: %d" + +#: src/lincity-ng/Dialog.cpp:393 +#, c-format +msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" +msgstr "Ceann-là: %s %04d Airgead: %8d Teicneolas %5.1f (%5.1f)" + +#: src/lincity-ng/Dialog.cpp:399 +#, c-format +msgid "Deaths by starvation %7d History %8.3f" +msgstr "Bàs leis an acras: %7d Eachdraidh: %8.3f" + +#: src/lincity-ng/Dialog.cpp:403 +#, c-format +msgid "Deaths from pollution %7d History %8.3f" +msgstr "Bàs leis an truailleadh: %7d Eachdraidh: %8.3f" + +#: src/lincity-ng/Dialog.cpp:406 +#, c-format +msgid "Years of unemployment %7d History %8.3f" +msgstr "Bliadhnaichean gun obair: %7d Eachdraidh: %8.3f" + +#: src/lincity-ng/Dialog.cpp:409 +#, c-format +msgid "Rockets launched %2d Successful launches %2d" +msgstr "Rocaidean air losgadh: %2d Losgaidhean soirbheachail: %2d" + +#: src/lincity-ng/Dialog.cpp:418 +msgid "Residences" +msgstr "Còmhnaidhean" + +#: src/lincity-ng/Dialog.cpp:426 +msgid "Markets" +msgstr "Margaidean" + +#: src/lincity-ng/Dialog.cpp:427 +msgid "Farms" +msgstr "Tuathanasan" + +#: src/lincity-ng/Dialog.cpp:429 +msgid "Water wells" +msgstr "Tobraichean" + +#: src/lincity-ng/Dialog.cpp:430 +msgid "Wind powers" +msgstr "Muilleann-gaoithe nuadh" + +#: src/lincity-ng/Dialog.cpp:437 +msgid "Monuments" +msgstr "Carraighean" + +#: src/lincity-ng/Dialog.cpp:438 +msgid "Schools" +msgstr "Sgoiltean" + +#: src/lincity-ng/Dialog.cpp:439 +msgid "Universities" +msgstr "Oilthighean" + +#: src/lincity-ng/Dialog.cpp:441 +msgid "Fire stations" +msgstr "Stèiseanan-smàlaidh" + +#: src/lincity-ng/Dialog.cpp:442 +msgid "Parks" +msgstr "Pàircean" + +#: src/lincity-ng/Dialog.cpp:443 +msgid "Sports fields" +msgstr "Raointean spòrsa" + +#: src/lincity-ng/Dialog.cpp:445 +msgid "Health centres" +msgstr "Ionadan-slàinte" + +#: src/lincity-ng/Dialog.cpp:446 +msgid "Tips" +msgstr "Ã’traichean" + +#: src/lincity-ng/Dialog.cpp:447 +msgid "Shanties" +msgstr "Bothain" + +#: src/lincity-ng/Dialog.cpp:453 +msgid "Windmills" +msgstr "Muileannan-gaoithe" + +#: src/lincity-ng/Dialog.cpp:454 +msgid "Coal powers" +msgstr "St. cumhachd-guail" + +#: src/lincity-ng/Dialog.cpp:455 +msgid "Solar powers" +msgstr "St. cumhachd-grèine" + +#: src/lincity-ng/Dialog.cpp:457 +msgid "Substations" +msgstr "Fo-stèiseanan" + +#: src/lincity-ng/Dialog.cpp:458 +msgid "Power lines" +msgstr "Loidhnichean-dealain" + +#: src/lincity-ng/Dialog.cpp:459 +msgid "Ports" +msgstr "Puirt" + +#: src/lincity-ng/Dialog.cpp:461 +msgid "Tracks" +msgstr "Slighean" + +#: src/lincity-ng/Dialog.cpp:462 +msgid "Roads" +msgstr "Rathaidean" + +#: src/lincity-ng/Dialog.cpp:463 +msgid "Rail" +msgstr "Rèilean" + +#: src/lincity-ng/Dialog.cpp:469 +msgid "Potteries" +msgstr "Criadhadaireachd" + +#: src/lincity-ng/Dialog.cpp:470 +msgid "Blacksmiths" +msgstr "Goibhnean-dubha" + +#: src/lincity-ng/Dialog.cpp:471 +msgid "Mills" +msgstr "Muileannan-clòtha" + +#: src/lincity-ng/Dialog.cpp:473 +msgid "Light inds" +msgstr "Gnìomh. aotrom" + +#: src/lincity-ng/Dialog.cpp:474 +msgid "Heavy inds" +msgstr "Ceàrd. stàilinn" + +#: src/lincity-ng/Dialog.cpp:475 +msgid "Recyclers" +msgstr "Ath-chuairteachadh" + +#: src/lincity-ng/Dialog.cpp:477 +msgid "Coal mines" +msgstr "Mèinnean guail" + +#: src/lincity-ng/Dialog.cpp:478 +msgid "Ore mines" +msgstr "Clach-mhèinneir" + +#: src/lincity-ng/Dialog.cpp:479 +msgid "Forests" +msgstr "Coilltean" + +#: src/lincity-ng/ButtonPanel.cpp:296 src/lincity-ng/ButtonPanel.cpp:342 +#: src/lincity-ng/ButtonPanel.cpp:473 src/lincity-ng/ButtonPanel.cpp:498 +#, c-format +msgid "%s (Techlevel %.1f required.)" +msgstr "%s (ÃŒre teicneolais %.1f riatanach.)" + +#: src/lincity-ng/ButtonPanel.cpp:305 +#, c-format +msgid "%s is disabled (loaded old game)." +msgstr "Tha %s à comas (chaidh seann gheama a luchdadh)." + +#: src/lincity-ng/ScreenInterface.cpp:234 +msgid "M" +msgstr "M" + +#: src/lincity-ng/ScreenInterface.cpp:245 src/lincity-ng/GameView.cpp:1774 +#: src/lincity-ng/GameView.cpp:1786 src/lincity-ng/GameView.cpp:1816 +msgid "$" +msgstr "£" + +#: src/lincity-ng/GameView.cpp:260 +msgid "Minimap: outline map" +msgstr "Meanbh-mhapa: oir-loidhne" + +#: src/lincity-ng/GameView.cpp:263 +msgid "Minimap: unemployment" +msgstr "Meanbh-mhapa: cion-cosnaidh" + +#: src/lincity-ng/GameView.cpp:266 +msgid "Minimap: pollution" +msgstr "Meanbh-mhapa: truailleadh" + +#: src/lincity-ng/GameView.cpp:269 +msgid "Minimap: nourishments" +msgstr "Meanbh-mhapa: biadh" + +#: src/lincity-ng/GameView.cpp:272 +msgid "Minimap: power supply" +msgstr "Meanbh-mhapa: solar cumhachd" + +#: src/lincity-ng/GameView.cpp:275 +msgid "Minimap: firedepartment cover" +msgstr "Meanbh-mhapa: còmhdachadh smàlaidh" + +#: src/lincity-ng/GameView.cpp:278 +msgid "Minimap: sport cover" +msgstr "Meanbh-mhapa: còmhdachadh spòrsa" + +#: src/lincity-ng/GameView.cpp:281 +msgid "Minimap: medical care" +msgstr "Meanbh-mhapa: cùram slàinte" + +#: src/lincity-ng/GameView.cpp:284 +msgid "Minimap: coal deposits" +msgstr "Meanbh-mhapa: tionalan guail" + +#: src/lincity-ng/GameView.cpp:1769 +msgid "Estimated Bulldoze Cost: " +msgstr "Tuairmse air cosgais a' mhillidh: " + +#: src/lincity-ng/GameView.cpp:1771 +msgid "Bulldoze Cost: " +msgstr "Cosgais a' mhillidh: " + +#: src/lincity-ng/GameView.cpp:1776 src/lincity-ng/GameView.cpp:1788 +msgid "n/a" +msgstr "[chan eil seo iomchaidh]" + +#: src/lincity-ng/GameView.cpp:1784 src/lincity-ng/GameView.cpp:1816 +msgid ": Cost to build " +msgstr ": Cosgais togail " + +#: src/lincity-ng/GameView.cpp:1806 +msgid "Query Tool: Show information about selected building." +msgstr "Inneal ceiste: seall fiosrachadh mun togalach air a thaghadh." + +#: src/lincity-ng/GameView.cpp:1810 +msgid "Bulldozer: remove building -price varies-" +msgstr "Milltear: thoir togalach air falbh - prìs chaochlaideach -" + +#: src/lincity-ng/GameView.cpp:1817 +msgid ", to bulldoze " +msgstr ", airson milleadh " + +#: src/lincity-ng/GameView.cpp:1817 src/lincity-ng/GameView.cpp:1820 +msgid "$." +msgstr "£." + +#: src/lincity-ng/GameView.cpp:1819 +msgid " To build " +msgstr " Airson togail " + +#: src/lincity-ng/GameView.cpp:1819 +msgid " of them " +msgstr " dhiubh " + +#: src/lincity-ng/GameView.cpp:1820 +msgid "will cost about " +msgstr "cosgaidh e mu " diff -Nru lincity-ng-2.0/data/locale/gui/el.po lincity-ng-2.9~git20150314/data/locale/gui/el.po --- lincity-ng-2.0/data/locale/gui/el.po 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gui/el.po 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,710 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: Thu Jul 2 19:07:53 2009\n" +"PO-Revision-Date: 2009-07-02 22:38+0200\n" +"Last-Translator: Yannis Kaskamanidis <ttnfy17@yahoo.gr>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: data/gui/minimap.xml +msgid "$" +msgstr "€" + +#: data/gui/fire.xml +msgid "A Fire has started" +msgstr "Μια πυÏκαγιά έχει εκδηλωθεί" + +#: data/gui/shfire-uc.xml +msgid "A fire has broken out at a shanty town. It is in a fire cover area and APPEARS to be under control. " +msgstr "Μια πυÏκαγιά έχει εκδηλωθεί σε μια παÏαγκοÏπολη. Η πεÏιοχή καλÏπτεται από πυÏοσβεστική υπηÏεσία και η πυÏκαγιά ΦΑΙÎΕΤΑΙ να είναι υπό έλεγχο." + +#: data/gui/shfire-oc.xml +msgid "A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may spread to other areas. " +msgstr "Μια πυÏκαγιά έχει εκδηλωθεί σε μια παÏαγκοÏπολη. Η πυÏκαγιά ΕΙÎΑΙ ΕΚΤΟΣ ΕΛΕΓΧΟΥ και ενδέχεται να εξαπλωθεί και σε άλλες πεÏιοχές." + +#: data/gui/newgame.xml data/gui/loadgame.xml data/gui/credits.xml +#: data/gui/savegame.xml +msgid "Back" +msgstr "Πίσω" + +#: data/gui/options.xml +msgid "Background Music" +msgstr "Μουσική παÏασκηνίου" + +#: data/gui/cricketup.xml +msgid "Basketball Courts available" +msgstr "Διαθέσιμα γήπεδα μπάσκετ" + +#: data/gui/blacksmithup.xml +msgid "Blacksmiths available" +msgstr "Διαθέσιμα σιδηÏουÏγεία" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Bulldozing a monument costs a lot of money." +msgstr "Η κατεδάφιση ενός μνημείου κοστίζει πολλά χÏήματα." + +#: data/gui/bulldoze_river_yn.xml +msgid "Bulldozing a section of river costs a lot of money." +msgstr "Η διαμόÏφωση ενός τμήματος του Ï€Î¿Ï„Î±Î¼Î¿Ï ÎºÎ¿ÏƒÏ„Î¯Î¶ÎµÎ¹ πολλά χÏήματα." + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Bulldozing a shanty town costs a lot of money and may cause a fire." +msgstr "Η κατεδάφιση μιας παÏαγκοÏπολης κοστίζει πολλά χÏήματα και ενδέχεται να Ï€Ïοκαλέσει πυÏκαγιά." + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Buy" +msgstr "ΑγοÏά" + +#: data/gui/newgame.xml +msgid "Choose Scenario" +msgstr "Επιλογή σεναÏίου" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Coal" +msgstr "ΆνθÏακας" + +#: data/gui/coalpowerup.xml +msgid "Coal Fired Power Stations available" +msgstr "Διαθέσιμος ΑτμοηλεκτÏικός Σταθμός" + +#: data/gui/coalmineup.xml +msgid "Coal Mine available" +msgstr "Διαθέσιμο ανθÏακωÏυχείο" + +#: data/gui/coal_survey_yn.xml +msgid "Coal Survey" +msgstr "ΧαÏτογÏάφηση άνθÏακα" + +#: data/gui/creditslist.xml +msgid "Code" +msgstr "Κώδικας" + +#: data/gui/mainmenu.xml +msgid "Continue" +msgstr "Συνέχεια" + +#: data/gui/mainmenu.xml data/gui/creditslist.xml +msgid "Credits" +msgstr "Συντελεστές" + +#: data/gui/coal_survey_yn.xml +msgid "Do coal survey?" +msgstr "Îα γίνει χαÏτογÏάφηση του άνθÏακα;" + +#: data/gui/launch-good.xml +msgid "Doing well." +msgstr "Πάει καλά." + +#: data/gui/minimap.xml +msgid "Eco" +msgstr "Eco" + +#: data/gui/sustain.xml +msgid "Economy Sustainable." +msgstr "ΑειφόÏος οικονομική ανάπτυξη" + +#: data/gui/launch-evac.xml +msgid "Evacuation Launch Good" +msgstr "Σωστή εκτόξευση μετεγκατάστασης " + +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire" +msgstr "ΠυÏκαγιά" + +#: data/gui/firestationup.xml +msgid "Fire Stations available" +msgstr "Διάθεσιμοι πυÏοσβεστικοί σταθμοί" + +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire!" +msgstr "ΠυÏκαγιά!" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Food" +msgstr "ΤÏοφή" + +#: data/gui/options.xml +msgid "Fullscreen" +msgstr "ΠλήÏης οθόνη" + +#: data/gui/gamestats.xml +msgid "Gamestats" +msgstr "Στατιστικά παιχνιδιοÏ" + +#: data/gui/speedpanel.xml +msgid "Go back to Main Menu" +msgstr "ΕπιστÏοφή στο ΚÏÏιο ΜενοÏ" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Goods" +msgstr "Αγαθά" + +#: data/gui/creditslist.xml +msgid "Graphics" +msgstr "ΓÏαφικά" + +#: data/gui/portdialog.xml +msgid "Harbour Trade Settings" +msgstr "Ρυθμίσεις εμποÏίου του λιμανιοÏ" + +#: data/gui/healthup.xml +msgid "Health Centres available" +msgstr "Διαθέσιμα κέντÏα υγείας" + +#: data/gui/hvindustryup.xml +msgid "Heavy Industry available" +msgstr "Διαθέσιμη βαÏιά βιομηχανία" + +#: data/gui/import-exportup.xml +msgid "Import/Export available" +msgstr "Διαθέσιμες εισαγωγές/εξαγωγές" + +#: data/gui/pbar.xml data/gui/tradedialog.xml +msgid "Jobs" +msgstr "ΕÏγασία" + +#: data/gui/launch-fail.xml +msgid "Launch Failure" +msgstr "Αποτυχημένη εκτόξευση" + +#: data/gui/launch-good.xml +msgid "Launch Successfull" +msgstr "Επιτυχημένη εκτόξευση" + +#: data/gui/launch_rocket_yn.xml +msgid "Launch now?" +msgstr "Εκτόξευση Ï„ÏŽÏα;" + +#: data/gui/ltindustryup.xml +msgid "Light Industry available" +msgstr "Διαθέσιμη ελαφÏά βιομηχανία" + +#: data/gui/sustain.xml +msgid "LinCity has determined that you have a sustainable economy." +msgstr "Το Lincity διαπίστωσε ότι η οικονομία σας είναι αειφόÏος." + +#: data/gui/mainmenu.xml data/gui/loadgame.xml +msgid "Load" +msgstr "ΦόÏτωση" + +#: data/gui/loadgame.xml +msgid "Load Game" +msgstr "ΦόÏτωση παιχνιδιοÏ" + +#: data/gui/minimap.xml +msgid "Map" +msgstr "ΧάÏτης" + +#: data/gui/millup.xml +msgid "Mills available" +msgstr "Διαθέσιμοι μÏλοι" + +#: data/gui/mod_wind_up.xml +msgid "Modern Windmills available" +msgstr "Διαθέσιμοι σÏγχÏονοι ανεμόμυλοι" + +#: data/gui/pbar.xml +msgid "Money" +msgstr "ΧÏήματα" + +#: data/gui/newgame.xml data/gui/mainmenu.xml +msgid "New Game" +msgstr "Îέο παιχνίδι" + +#: data/gui/riverup.xml data/gui/hvindustryup.xml data/gui/windmillup.xml +#: data/gui/ltindustryup.xml data/gui/cricketup.xml data/gui/coalmineup.xml +#: data/gui/coalpowerup.xml data/gui/parkup.xml data/gui/solarpowerup.xml +#: data/gui/potteryup.xml data/gui/railwayup.xml data/gui/roadup.xml +#: data/gui/rocketup.xml data/gui/millup.xml data/gui/healthup.xml +#: data/gui/universityup.xml data/gui/recycleup.xml data/gui/blacksmithup.xml +#: data/gui/firestationup.xml data/gui/schoolup.xml +#: data/gui/import-exportup.xml data/gui/mod_wind_up.xml +msgid "New Invention" +msgstr "Îέα εφεÏÏεση" + +#: data/gui/bulldoze_monument_yn.xml data/gui/launch_rocket_yn.xml +#: data/gui/bulldoze_river_yn.xml data/gui/coal_survey_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "No" +msgstr "Όχι" + +#: data/gui/no-credit-solar-power.xml data/gui/no-credit-rocket.xml +#: data/gui/no-credit-parkland.xml data/gui/no-credit-university.xml +#: data/gui/no-credit-recycle.xml +msgid "No Credit Available" +msgstr "Δεν υπάÏχουν διαθέσιμες πιστώσεις" + +#: data/gui/allgone.xml +msgid "Nobody Home" +msgstr "Κανένας δεν βÏίσκεται στο σπίτι" + +#: data/gui/nobull-tip.xml +msgid "Not Allowed" +msgstr "Δεν επιτÏέπεται" + +#: data/gui/riverup.xml data/gui/hvindustryup.xml +#: data/gui/no-credit-solar-power.xml data/gui/windmillup.xml +#: data/gui/options.xml data/gui/ltindustryup.xml data/gui/cricketup.xml +#: data/gui/coalmineup.xml data/gui/launch-good.xml data/gui/coalpowerup.xml +#: data/gui/parkup.xml data/gui/solarpowerup.xml data/gui/potteryup.xml +#: data/gui/railwayup.xml data/gui/allgone.xml data/gui/nobull-tip.xml +#: data/gui/sustain.xml data/gui/roadup.xml data/gui/rocketup.xml +#: data/gui/millup.xml data/gui/no-credit-rocket.xml data/gui/healthup.xml +#: data/gui/no-credit-parkland.xml data/gui/shfire-uc.xml data/gui/fire.xml +#: data/gui/universityup.xml data/gui/launch-evac.xml data/gui/recycleup.xml +#: data/gui/no-credit-university.xml data/gui/no-credit-recycle.xml +#: data/gui/launch-fail.xml data/gui/blacksmithup.xml +#: data/gui/firestationup.xml data/gui/schoolup.xml +#: data/gui/import-exportup.xml data/gui/launch-gone.xml +#: data/gui/mod_wind_up.xml data/gui/warning.xml data/gui/shfire-oc.xml +#: data/gui/too-old.xml +msgid "Ok" +msgstr "Εντάξει" + +#: data/gui/gamestats.xml +msgid "Okay" +msgstr "Εντάξει" + +#: data/gui/mainmenu.xml data/gui/options.xml +msgid "Options" +msgstr "Επιλογές" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Ore" +msgstr "Μετάλλευμα" + +#: data/gui/creditslist.xml +msgid "Original Idea and Code" +msgstr "Αυθεντική ιδέα και κώδικας" + +#: data/gui/parkup.xml +msgid "Parks available" +msgstr "Διαθέσιμα πάÏκα" + +#: data/gui/speedpanel.xml +msgid "Pause the game" +msgstr "ΠαÏση του παιχνιδιοÏ" + +#: data/gui/pbar.xml +msgid "Population" +msgstr "Πληθυσμός" + +#: data/gui/potteryup.xml +msgid "Potteries available" +msgstr "Διαθέσιμα εÏγαστήÏια αγγειοπλαστικής" + +#: data/gui/minimap.xml +msgid "Press this button to show statistics" +msgstr "Πατήστε αυτό το πλήκτÏο για να εμφανιστοÏν τα στατιστικά" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Product" +msgstr "ΠÏοϊόν" + +#: data/gui/mainmenu.xml +msgid "Quit" +msgstr "Έξοδος" + +#: data/gui/railwayup.xml +msgid "Railways available" +msgstr "Διαθέσιμοι σιδηÏόδÏομοι" + +#: data/gui/recycleup.xml +msgid "Recycling Centres available" +msgstr "Διαθέσιμα κέντÏα ανακÏκλωσης" + +#: data/gui/options.xml +msgid "Resolution" +msgstr "Ανάλυση" + +#: data/gui/riverup.xml +msgid "Rivers available" +msgstr "Διαθέσιμα ποτάμια" + +#: data/gui/roadup.xml +msgid "Roads available" +msgstr "Διαθέσιμοι δÏόμοι" + +#: data/gui/rocketup.xml +msgid "Rocket Launch Pad available" +msgstr "Διαθέσιμη βάση εκτόξευσης διαστημόπλοιου" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket Ready" +msgstr "Το διαστημόπλοιο είναι έτοιμο" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket ready to launch" +msgstr "Το διαστημόπλοιο είναι έτοιμο για εκτόξευση" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with fast speed" +msgstr "Εκτέλεση της Ï€Ïοσομοίωσης με γÏήγοÏη ταχÏτητα" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with normal speed" +msgstr "Εκτέλεση της Ï€Ïοσομοίωσης με κανονική ταχÏτητα" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with very fast speed" +msgstr "Εκτέλεση της Ï€Ïοσομοίωσης με Ï€Î¿Î»Ï Î³ÏήγοÏη ταχÏτητα" + +#: data/gui/mainmenu.xml +msgid "Save" +msgstr "Αποθήκευση" + +#: data/gui/savegame.xml +msgid "Save Game" +msgstr "Αποθήκευση παιχνιδιοÏ" + +#: data/gui/schoolup.xml +msgid "Schools available" +msgstr "Διαθέσιμα σχολεία" + +#: data/gui/coalmineup.xml +msgid "See the help screen for more information on coal mines and coal surveys." +msgstr "Δείτε τη βοήθεια για πεÏισσότεÏες πληÏοφοÏίες σχετικά με τα ανθÏακωÏυχεία και τη χαÏτογÏάφηση του άνθÏακα." + +#: data/gui/riverup.xml data/gui/hvindustryup.xml data/gui/windmillup.xml +#: data/gui/ltindustryup.xml data/gui/cricketup.xml data/gui/coalpowerup.xml +#: data/gui/parkup.xml data/gui/solarpowerup.xml data/gui/potteryup.xml +#: data/gui/railwayup.xml data/gui/rocketup.xml data/gui/millup.xml +#: data/gui/healthup.xml data/gui/universityup.xml data/gui/recycleup.xml +#: data/gui/blacksmithup.xml data/gui/firestationup.xml data/gui/schoolup.xml +#: data/gui/mod_wind_up.xml +msgid "See the help screen for more information." +msgstr "Δείτε τη βοήθεια για πεÏισσότεÏες πληÏοφοÏίες." + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Sell" +msgstr "Πώληση" + +#: data/gui/coal_survey_yn.xml +msgid "Send out Prospectors" +msgstr "Αποπομπή των γεωλόγων." + +#: data/gui/minimap.xml +msgid "Show Income and Expenses. Click this tab again to cycle through views." +msgstr "Εμφάνιση εσόδων και εξόδων. Κάντε κλικ πάλι σε αυτή την καÏτέλα για να δείτε και άλλες πληÏοφοÏίες σχετικές με τον οικισμό σας." + +#: data/gui/minimapswitchbuttons.xml +msgid "Show coal depots" +msgstr "Αποθέματα άνθÏακα" + +#: data/gui/minimap.xml +msgid "Show economy graphs." +msgstr "Εμφάνιση γÏαφημάτων οικονομίας." + +#: data/gui/minimapswitchbuttons.xml +msgid "Show fire department cover" +msgstr "ΠυÏοσβεστική κάλυψη" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show map outline" +msgstr "Εμφάνιση χÏήσης γης" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show medical care" +msgstr "ΙατÏοφαÏμακευτική κάλυψη" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show nourishments" +msgstr "Κάλυψη πείνας" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show pollution density" +msgstr "Κάλυψη μόλυνσης" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show power supply" +msgstr "ΕνεÏγειακή κάλυψη" + +#: data/gui/minimap.xml +msgid "Show resources." +msgstr "Εμφάνιση πόÏων" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show sport cover" +msgstr "Αθλητική κάλυψη" + +#: data/gui/minimap.xml +msgid "Show the MiniMap" +msgstr "Εμφάνιση μικÏογÏαφίας του χάÏτη" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show traffic density" +msgstr "Κάλυψη μεταφοÏών" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show unemployment" +msgstr "Κάλυψη ανεÏγίας" + +#: data/gui/solarpowerup.xml +msgid "Solar Power Stations available" +msgstr "Διαθέσιμοι σταθμοί παÏαγωγής ηλεκτÏÎ¹ÏƒÎ¼Î¿Ï Î±Ï€ÏŒ ηλιακή ενέÏγεια" + +#: data/gui/nobull-tip.xml +msgid "Sorry you can't bulldoze a tip." +msgstr "Συγνώμη, αλλά δεν μποÏείτε να διαμοÏφώσετε έναν σκουπιδότοπο." + +#: data/gui/too-old.xml +msgid "Sorry, the game you wanted is too old. Cannot load it. Still play with previous game." +msgstr "Συγνώμη, το παιχνίδι που επιθυμείτε είναι Ï€Î¿Î»Ï Ï€Î±Î»Î¹ÏŒ. Δεν μποÏεί να φοÏτωθεί. Παίξτε με το Ï€ÏοηγοÏμενο παιχνίδι." + +#: data/gui/options.xml +msgid "Sound Effects" +msgstr "Ηχητικά εφέ" + +#: data/gui/creditslist.xml +msgid "Sound and Music" +msgstr "Ήχος και μουσική" + +#: data/gui/newgame.xml +msgid "Start" +msgstr "ΈναÏξη" + +#: data/gui/newgame.xml +msgid "Start with empty board." +msgstr "ΈναÏξη με άδειο πεδίο" + +#: data/gui/newgame.xml +msgid "Start with random village." +msgstr "ΈναÏξη με τυχαίο οικισμό" + +#: data/gui/minimap.xml +msgid "Stats" +msgstr "Στατ" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Steel" +msgstr "Χάλυβας" + +#: data/gui/pbar.xml +msgid "Tech Level" +msgstr "Τεχν. επίπεδο" + +#: data/gui/allgone.xml +msgid "There are no people left in this city." +msgstr "Δεν απέμειναν κάτοικοι σε αυτόν τον οικισμό." + +#: data/gui/coal_survey_yn.xml +msgid "This will cost you 1 million once. After that it is free to call again." +msgstr "Αυτή η ενέÏγεια θα σας κοστίσει 1 εκατομμÏÏιο. Μετά από αυτό μποÏείτε να επαναλάβετε την ενέÏγεια δωÏεάν." + +#: data/gui/launch-gone.xml +msgid "Total Evacuation Complete." +msgstr "ΟλοκληÏώθηκε η πλήÏης μετεγκατάσταση." + +#: data/gui/tradedialog.xml +msgid "Trade Settings" +msgstr "Ρυθμίσεις εμποÏίου" + +#: data/gui/creditslist.xml +msgid "Translation" +msgstr "ΜεταφÏάσεις" + +#: data/gui/universityup.xml +msgid "University available" +msgstr "Διαθέσιμο πανεπιστήμιο" + +#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Want to bulldoze?" +msgstr "Θέλετε να κατεδαφίσετε/διαμοÏφώσετε;" + +#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml data/gui/warning.xml data/gui/too-old.xml +msgid "Warning" +msgstr "ΠÏοειδοποίηση" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Warning: Bulldozing monuments is expensive" +msgstr "ΠÏοειδοποίηση: Η κατεδάφιση μνημείων είναι ακÏιβή." + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Warning: Bulldozing shanties is dangerous." +msgstr "ΠÏοειδοποίηση: Η κατεδάφιση παÏαγκουπόλεων είνα επικίνδυνη." + +#: data/gui/bulldoze_river_yn.xml +msgid "Warning: Bulldozing water is expensive" +msgstr "ΠÏοειδοποίηση: Η διαμόÏφωση των ποταμών είναι ακÏιβή." + +#: data/gui/launch-gone.xml +msgid "Well done you have evacuated all your people." +msgstr "ΣυγχαÏητήÏια, ολοκληÏώσατε τη μετεγκατάσταση όλων των κατοίκων." + +#: data/gui/windmillup.xml +msgid "Windmills available" +msgstr "Διαθέσιμοι ανεμόμυλοι" + +#: data/gui/bulldoze_monument_yn.xml data/gui/launch_rocket_yn.xml +#: data/gui/bulldoze_river_yn.xml data/gui/coal_survey_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Yes" +msgstr "Îαι" + +#: data/gui/fire.xml +msgid "You better go and look for it" +msgstr "ΚαλÏτεÏα να πάτε και να δείτε γι' αυτό" + +#: data/gui/launch_rocket_yn.xml +msgid "You can launch the rocket now or wait until later. If you wait it will continue costing you money to keep the rocket ready. Launch it later by clicking on the rocket area." +msgstr "ΜποÏείτε να εκτοξεÏσετε το διαστημόπλοιο Ï„ÏŽÏα ή να το αφήσετε για αÏγότεÏα. Εάν πεÏίμενετε, θα συνεχίσει να σας κοστίζει χÏήματα ώστε να κÏατάτε το διαστημόπλοιο σε ετοιμότητα. ΕκτοξεÏστε το αÏγότεÏα κάνοντας κλικ στην βάση του διαστημόπλοιου." + +#: data/gui/import-exportup.xml +msgid "You can now import and export coal, goods, ore and steel. Read the help pages on these subjects to find out how to use them. " +msgstr "ΜποÏείτε να εισάγετε και να εξάγετε άνθÏακα, αγαθά, μεταλλεÏματα και ατσάλι. Διαβάστε τις σελίδες βοήθειας γι' αυτά τα ζητήματα, ώστε να δείτε πώς θα τα χÏησιμοποιήσετε." + +#: data/gui/no-credit-parkland.xml +msgid "You have a budget deficit. The legislative council will not allow you to build parks on credit." +msgstr "Έχετε έλλειμμα στον Ï€Ïοϋπολογισμό σας. Το δημοτικό συμβοÏλιο δεν θα σας επιτÏέψει να δημιουÏγήσετε πάÏκα με πίστωση." + +#: data/gui/no-credit-recycle.xml +msgid "You have a budget deficit. The legislative council will not allow you to build recycling centres on credit." +msgstr "Έχετε έλλειμμα στον Ï€Ïοϋπολογισμό σας. Το δημοτικό συμβοÏλιο δεν θα σας επιτÏέψει να δημιουÏγήσετε κέντÏα ανακÏκλωσης με πίστωση." + +#: data/gui/no-credit-rocket.xml +msgid "You have a budget deficit. The legislative council will not allow you to build rocket launch pads on credit." +msgstr "Έχετε έλλειμμα στον Ï€Ïοϋπολογισμό σας. Το δημοτικό συμβοÏλιο δεν θα σας επιτÏέψει να κατασκευάσετε βάση εκτόξευσης διαστημόπλοιων με πίστωση." + +#: data/gui/no-credit-solar-power.xml +msgid "You have a budget deficit. The legislative council will not allow you to build solar power stations on credit." +msgstr "Έχετε έλλειμμα στον Ï€Ïοϋπολογισμό σας. Το δημοτικό συμβοÏλιο δεν θα σας επιτÏέψει να δημιουÏγήσετε ηλιακοÏÏ‚ σταθμοÏÏ‚ παÏαγωγής ÏεÏματος με πίστωση." + +#: data/gui/no-credit-university.xml +msgid "You have a budget deficit. The legislative council will not allow you to build universities on credit." +msgstr "Έχετε έλλειμμα στον Ï€Ïοϋπολογισμό σας. Το δημοτικό συμβοÏλιο δεν θα σας επιτÏέψει να κατασκευάσετε πανεπιστήμια με πίστωση." + +#: data/gui/launch-evac.xml +msgid "You have evacuated 1000 people. You might want to reduce the size of your economy to reflect the reduced population. " +msgstr "Έχετε μετεγκαταστήσει 1000 κατοίκους. Θα μποÏοÏσατε να μειώσετε το μέγεθος της οικονομίας σας, ώστε να είναι ανάλογο με τον μειωμένο πληθυσμό που Ï€Ïοέκυψε." + +#: data/gui/blacksmithup.xml +msgid "You have reached the tech level which enables you to build blacksmiths. Blacksmiths use jobs and steel to make goods." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να δημουÏγήσετε σιδηÏουÏγεία. Τα σιδηÏουÏγεία απαιτοÏν εÏγασία και ατσάλι για να παÏάγουν αγαθά. " + +#: data/gui/coalpowerup.xml +msgid "You have reached the tech level which enables you to build coal fired power stations." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε ατμοηλεκτÏικοÏÏ‚ σταθμοÏÏ‚ παÏαγωγής ηλεκτÏÎ¹ÎºÎ¿Ï ÏεÏματος." + +#: data/gui/firestationup.xml +msgid "You have reached the tech level which enables you to build fire stations. Fire stations prevent most fires from starting. If you haven't had any fires yet, you might not think you need them." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε σταθμοÏÏ‚ πυÏοσβεστικής. Οι σταθμοί αυτοί αποτÏέπουν τις πεÏισσότεÏες πυÏκαγιές. Εάν δεν είχατε καθόλου πυÏκαγιές ως Ï„ÏŽÏα, αυτό δεν σημαίνει ότι δεν τους χÏειάζεστε." + +#: data/gui/healthup.xml +msgid "You have reached the tech level which enables you to build health centres. Heath centres reduce the number of people killed by pollution and increase overall productivity." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε κέντÏα υγείας. Τα κέντÏα υγείας συμβάλλουν στη μείωση του αÏÎ¹Î¸Î¼Î¿Ï Ï„Ï‰Î½ θανάτων που οφείλονται στη μόλυνση και αυξάνουν συνολικά την παÏαγωγικότητα του πληθυσμοÏ." + +#: data/gui/hvindustryup.xml +msgid "You have reached the tech level which enables you to build heavy industry (steel works). Heavy industry produces steel. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να δημιουÏγήσετε βαÏιά βιομηχανία (χαλυβουÏγεία). Η βαÏιά βιομηχανία παÏάγει ατσάλι." + +#: data/gui/ltindustryup.xml +msgid "You have reached the tech level which enables you to build light industry. Light industry produces goods. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να δημιουÏγήσετε ελαφÏά βιομηχανία. Η ελαφÏά βιομηχανία παÏάγει αγαθά." + +#: data/gui/millup.xml +msgid "You have reached the tech level which enables you to build mills. Mills use jobs and food to make goods. Watch out, they can use a lot of food! " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε μÏλους. Οι μÏλοι απαιτοÏν εÏγασία και Ï„Ïόφιμα για να παÏάγουν αγαθά. ΠÏοσέξτε, μποÏεί να απαιτοÏν μεγάλες ποσότητες φαγητοÏ!" + +#: data/gui/mod_wind_up.xml +msgid "You have reached the tech level which enables you to build modern, more efficient, windmills. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε σÏγχÏονους, πεÏισσότεÏο αποτελεσματικοÏÏ‚ ανεμόμυλους." + +#: data/gui/parkup.xml +msgid "You have reached the tech level which enables you to build parks. Parks are used to absorb pollution. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να δημιουÏγήσετε πάÏκα. Τα πάÏκα αποÏÏοφοÏν αφομοιώνουν την ατμοσφαιÏική μόλυνση." + +#: data/gui/potteryup.xml +msgid "You have reached the tech level which enables you to build potteries. Potteries use jobs and ore to make goods. (You need ore mines to get ore) " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε εÏγαστήÏια αγγειοπλαστικής. Τα εÏγαστήÏια αυτά απαιτοÏν εÏγασία και μεταλλεÏματα για να παÏάγουν αγαθά. (ΧÏειάζεστε μεταλλωÏυχεία για να έχετε διαθέσιμα μεταλλεÏματα.)" + +#: data/gui/railwayup.xml +msgid "You have reached the tech level which enables you to build railways. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε σιδηÏόδÏομους." + +#: data/gui/riverup.xml +msgid "You have reached the tech level which enables you to build rivers. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να δημιουÏγήσετε ποτάμια." + +#: data/gui/roadup.xml +msgid "You have reached the tech level which enables you to build roads. See the help screen for more information." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε δÏόμους. Δείτε την οθόνη βοήθειας για πεÏισσότεÏες πληÏοφοÏίες." + +#: data/gui/rocketup.xml +msgid "You have reached the tech level which enables you to build rocket launch pads. Rockets enable you to evacuate your population and is a way to 'win' the game." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε βάση εκτόξευσης διαστημόπλοιων. Τα διαστημόπλοια σας δίνουν τη δυνατότητα να μετεγκαταστήσετε τους κατοίκους του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ και είναι ένας Ï„Ïόπος να 'κεÏδίσετε' το παιχνίδι." + +#: data/gui/schoolup.xml +msgid "You have reached the tech level which enables you to build schools. Schools use jobs and goods to increase tech level. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε σχολεία. Τα σχολεία απαιτοÏν εÏγασία και αγαθά για να αυξήσουν το τεχνολογικό επίπεδο." + +#: data/gui/solarpowerup.xml +msgid "You have reached the tech level which enables you to build solar power stations. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε ηλιακοÏÏ‚ σταθμοÏÏ‚ παÏαγωγής ενέÏγειας." + +#: data/gui/universityup.xml +msgid "You have reached the tech level which enables you to build universities. Universities produces PhDs, which produce more technology. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε πανεπιστήμια. Τα πανεπιστήμια Ï€Ïοάγουν τη διδακτοÏική έÏευνα που με τη σειÏά της παÏάγει πεÏισσότεÏη τεχνολογία." + +#: data/gui/windmillup.xml +msgid "You have reached the tech level which enables you to build windmills. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε ανεμόμυλους." + +#: data/gui/coalmineup.xml +msgid "You have reached the tech level which enables you to dig deep coal mines." +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να δημιουÏγήσετε ανθÏακωÏυχεία σε μεγάλο βάθος. " + +#: data/gui/recycleup.xml +msgid "You have reached the tech level which enables you to recycling centres. Recycling centres recycle used goods back into ore. " +msgstr "Έχετε Ï€Ïοσεγγίσει το τεχνολογικό επίπεδο που σας επιτÏέπει να κατασκευάσετε κέντÏα ανακÏκλωσης. Τα κέντÏα ανακÏκλωσης παÏάγουν μεταλλεÏματα από χÏησιμοποιημένα αγαθά." + +#: data/gui/sustain.xml data/gui/launch-gone.xml +msgid "You have won the game." +msgstr "ΚεÏδίσατε το παιχνίδι!" + +#: data/gui/allgone.xml +msgid "You should start a new career elsewhere." +msgstr "Ίσως Ï€Ïέπει να αÏχίσετε μια νέα καÏιέÏα κάπου αλλοÏ." + +#: data/gui/cricketup.xml +msgid "Your people have invented basketball. Basketball Courts use a few jobs and goods and make people in the surrounding areas (about 10 units in each direction) happier." +msgstr "Οι κάτοικοι του Î¿Î¹ÎºÎ¹ÏƒÎ¼Î¿Ï ÏƒÎ±Ï‚ επινόησαν το μπάσκετ. Τα γήπεδα μπάσκετ απαιτοÏν λίγη εÏγασία και αγαθά και κάνουν τους κατοίκους της γÏÏω πεÏιοχής (πεÏίπου 10 μονάδες σε κάθε κατεÏθυνση) πεÏισσότεÏο ευτυχισμένους." + +#: data/gui/launch-fail.xml +msgid "Your rocket crashed shortly after launch. People no longer trust the technology for evacuation. You must launch five more unmanned rockets to restore confidence." +msgstr "Το διαστημόπλοιό σας εξεÏÏάγη λίγο μετά την εκτόξευση. Οι κάτοικοι δεν θα εμπιστεÏονται πλέον την τεχνολογία για να μετεγκατασταθοÏν. Θα Ï€Ïέπει να εκτοξεÏσετε πεÏισσότεÏα από πέντε μη επανδÏωμένα διαστημόπλοια για να ξανακεÏδίσετε την εμπιστοσÏνη τους." + +#: data/gui/minimap.xml +msgid "[+] Zoom in view so that less buildings but more details are visible" +msgstr "[+] Μεγέθυνση της Ï€Ïοβολής, έτσι ώστε λιγότεÏα κτίÏια, αλλά πεÏισσότεÏες πληÏοφοÏίες να είναι οÏατές." + +#: data/gui/minimap.xml +msgid "[-] Zoom out" +msgstr "[-] ΣμίκÏυνση" + +#: data/gui/minimap.xml +msgid "[F1] Press this button to get help" +msgstr "[F1] Πατήστε αυτό το πλήκτÏο για να λάβετε βοήθεια." + +#: data/gui/minimap.xml +msgid "[h] Hide high buildings. " +msgstr "[h] ΑπόκÏυψη ψηλών κτιÏίων." + +#: data/gui/minimap.xml +msgid "[v] Cycle through MiniMap overlay modes. " +msgstr "[v] Διαδοχικές Ï€Ïοβολές των λειτουÏγιών κάλυψης της μικÏογÏαφίας του χάÏτη." + +#: data/gui/savegame.xml +msgid "save to selected slot" +msgstr "Αποθήκευση στην επιλεγμένη υποδοχή" + diff -Nru lincity-ng-2.0/data/locale/gui/gd.po lincity-ng-2.9~git20150314/data/locale/gui/gd.po --- lincity-ng-2.0/data/locale/gui/gd.po 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gui/gd.po 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,908 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Bratzbert <fios@foramnagaidhlog.net>, 2013. +# GunChleoc <fios@foramnagaidhlig.net>, 2013, 2014. +msgid "" +msgstr "" +"Project-Id-Version: Lincity-NG GUI\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: Tue Oct 29 18:39:39 2013\n" +"PO-Revision-Date: 2014-01-16 12:00+0100\n" +"Last-Translator: GunChleoc <fios@foramnagaidhlig.net>\n" +"Language-Team: Fòram na Gàidhlig http://www.foramnagaidhlig.net\n" +"Language: gd\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : " +"(n > 2 && n < 20) ? 2 : 3;\n" +"X-Generator: Virtaal 0.7.1\n" + +#: data/gui/minimap.xml +msgid "$" +msgstr "£" + +#: data/gui/fire.xml +msgid "A Fire has started" +msgstr "Tha taighean air theine" + +#: data/gui/shfire-uc.xml +msgid "" +"A fire has broken out at a shanty town. It is in a fire cover area and " +"APPEARS to be under control. " +msgstr "" +"Tha bothain air theine. Tha e fo chòmhdachadh-smàlaidh is fhuair sinn smachd " +"air a-rèir coltais." + +#: data/gui/shfire-oc.xml +msgid "" +"A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may " +"spread to other areas. " +msgstr "" +"Tha bothain air theine. Cha d' fhuair sinn smachd air is dh'fhaoidte gun " +"sgaoil e gu raointean eile." + +#: data/gui/savegame.xml data/gui/loadgame.xml data/gui/newgame.xml +#: data/gui/credits.xml +msgid "Back" +msgstr "Air ais" + +#: data/gui/options.xml +msgid "Background Music" +msgstr "Ceòl cùlaibh" + +#: data/gui/cricketup.xml +msgid "Basketball Courts available" +msgstr "Tha raointean spòrsa ri làimh" + +#: data/gui/options.xml +msgid "Binary saving" +msgstr "Sàbhaladh bìnearaidh" + +#: data/gui/blacksmithup.xml +msgid "Blacksmiths available" +msgstr "Tha goibhnean-dubha ri làimh" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Bulldozing a monument costs a lot of money." +msgstr "Tha e glè chosgail carragh a mhilleadh." + +#: data/gui/bulldoze_river_yn.xml +msgid "Bulldozing a section of river costs a lot of money." +msgstr "Tha e glè chosgail roinn de dh'abhainn a mhilleadh." + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Bulldozing a shanty town costs a lot of money and may cause a fire." +msgstr "" +"Tha e glè chosgail bothain a mhilleadh is dh'fhaoidte gun adhbharaich seo " +"teine." + +#: data/gui/portdialog.xml data/gui/tradedialog.xml +msgid "Buy" +msgstr "Ceannaich" + +#: data/gui/newgame.xml +msgid "Choose Scenario" +msgstr "Tagh cnàmh-sgeul" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Coal" +msgstr "Gual" + +#: data/gui/coalpowerup.xml +msgid "Coal Fired Power Stations available" +msgstr "Tha stèiseanan cumhachd-guail ri làimh" + +#: data/gui/coalmineup.xml +msgid "Coal Mine available" +msgstr "Tha mèinnean-guail ri làimh" + +#: data/gui/coal_survey_yn.xml +msgid "Coal Survey" +msgstr "Rùrachadh airson guail" + +#: data/gui/creditslist.xml +msgid "Code" +msgstr "Còd" + +#: data/gui/mainmenu.xml +msgid "Continue" +msgstr "Lean air adhart" + +#: data/gui/creditslist.xml data/gui/mainmenu.xml +msgid "Credits" +msgstr "Cliù" + +#: data/gui/coal_survey_yn.xml +msgid "Do coal survey?" +msgstr "A bheil thu airson rùrachadh airson guail?" + +#: data/gui/launch-good.xml +msgid "Doing well." +msgstr "Ri dol gu math." + +#: data/gui/minimap.xml +msgid "Eco" +msgstr "Eaco" + +#: data/gui/sustain.xml +msgid "Economy Sustainable." +msgstr "Tha an eaconamaidh seasmhach." + +#: data/gui/launch-evac.xml +msgid "Evacuation Launch Good" +msgstr "Tha losgadh an às-àiteachaidh ri dol gu math" + +#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml +msgid "Fire" +msgstr "Teine" + +#: data/gui/firestationup.xml +msgid "Fire Stations available" +msgstr "Tha stèiseanan smàlaidh ri làimh" + +#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml +msgid "Fire!" +msgstr "Teine!" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Food" +msgstr "Biadh" + +#: data/gui/options.xml +msgid "Fullscreen" +msgstr "Làn-sgrìn" + +#: data/gui/gamestats.xml +msgid "Gamestats" +msgstr "Stadastaireachd a' gheama" + +#: data/gui/speedpanel.xml +msgid "Go back to Main Menu" +msgstr "Till dhan phrìomh chlàr-taice" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Goods" +msgstr "Bathar" + +#: data/gui/creditslist.xml +msgid "Graphics" +msgstr "Grafaigeachd" + +#: data/gui/portdialog.xml +msgid "Harbour Trade Settings" +msgstr "Roghainnean malart a' phuirt" + +#: data/gui/healthup.xml +msgid "Health Centres available" +msgstr "Tha ionadan-slàinte ri làimh" + +#: data/gui/hvindustryup.xml +msgid "Heavy Industry available" +msgstr "Tha ceàrdaichean stàilinn ri làimh" + +#: data/gui/import-exportup.xml +msgid "Import/Export available" +msgstr "Tha ion-mhalairt/às-mhalairt ri làimh" + +#: data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Jobs" +msgstr "Obair" + +#: data/gui/options.xml +msgid "Language" +msgstr "Cànan" + +#: data/gui/launch-fail.xml +msgid "Launch Failure" +msgstr "Dh'fhàillig leis an losgadh" + +#: data/gui/launch-good.xml +msgid "Launch Successfull" +msgstr "Shoirbhich leis an losgadh" + +#: data/gui/launch_rocket_yn.xml +msgid "Launch now?" +msgstr "A bheil thu airson 'ga losgadh an-dràsta?" + +#: data/gui/ltindustryup.xml +msgid "Light Industry available" +msgstr "Tha gnìomhachasan aotrom ri làimh" + +#: data/gui/sustain.xml +msgid "LinCity has determined that you have a sustainable economy." +msgstr "Mhothaich LinCity gu bheil eaconamaidh seasmhach agad." + +#: data/gui/loadgame.xml data/gui/mainmenu.xml +msgid "Load" +msgstr "Luchdaich" + +#: data/gui/loadgame.xml +msgid "Load Game" +msgstr "Luchdaich geama" + +#: data/gui/pbar2nd.xml +msgid "MWh" +msgstr "MWh" + +#: data/gui/minimap.xml +msgid "Map" +msgstr "Mapa" + +#: data/gui/options.xml +msgid "Map Size" +msgstr "Meud a' mhapa" + +#: data/gui/millup.xml +msgid "Mills available" +msgstr "Tha muileannan-clòtha ri làimh" + +#: data/gui/mod_wind_up.xml +msgid "Modern Windmills available" +msgstr "Tha muileannan-gaoithe nuadha ri làimh" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Money" +msgstr "Airgead" + +#: data/gui/mainmenu.xml data/gui/newgame.xml +msgid "New Game" +msgstr "Geama ùr" + +#: data/gui/universityup.xml data/gui/solarpowerup.xml data/gui/railwayup.xml +#: data/gui/rocketup.xml data/gui/mod_wind_up.xml data/gui/potteryup.xml +#: data/gui/hvindustryup.xml data/gui/coalmineup.xml data/gui/healthup.xml +#: data/gui/blacksmithup.xml data/gui/millup.xml data/gui/riverup.xml +#: data/gui/cricketup.xml data/gui/ltindustryup.xml data/gui/windmillup.xml +#: data/gui/schoolup.xml data/gui/firestationup.xml data/gui/roadup.xml +#: data/gui/coalpowerup.xml data/gui/import-exportup.xml +#: data/gui/recycleup.xml data/gui/parkup.xml +msgid "New Invention" +msgstr "Tionnsgnadh ùr" + +#: data/gui/coal_survey_yn.xml data/gui/bulldoze_shanty_yn.xml +#: data/gui/launch_rocket_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_monument_yn.xml +msgid "No" +msgstr "Chan eil" + +#: data/gui/no-credit-recycle.xml data/gui/no-credit-rocket.xml +#: data/gui/no-credit-university.xml data/gui/no-credit-solar-power.xml +#: data/gui/no-credit-parkland.xml +msgid "No Credit Available" +msgstr "Chan eil creideis ri làimh" + +#: data/gui/allgone.xml +msgid "Nobody Home" +msgstr "Chan eil duine a-staigh" + +#: data/gui/nobull-tip.xml +msgid "Not Allowed" +msgstr "Chan eil seo ceadaichte" + +#: data/gui/launch-good.xml data/gui/fire.xml data/gui/universityup.xml +#: data/gui/solarpowerup.xml data/gui/railwayup.xml data/gui/rocketup.xml +#: data/gui/mod_wind_up.xml data/gui/potteryup.xml data/gui/allgone.xml +#: data/gui/warning.xml data/gui/hvindustryup.xml +#: data/gui/no-credit-recycle.xml data/gui/options.xml data/gui/coalmineup.xml +#: data/gui/healthup.xml data/gui/blacksmithup.xml data/gui/millup.xml +#: data/gui/launch-gone.xml data/gui/riverup.xml data/gui/cricketup.xml +#: data/gui/ltindustryup.xml data/gui/windmillup.xml data/gui/sustain.xml +#: data/gui/launch-fail.xml data/gui/no-credit-rocket.xml +#: data/gui/launch-evac.xml data/gui/no-credit-university.xml +#: data/gui/too-old.xml data/gui/nobull-tip.xml data/gui/schoolup.xml +#: data/gui/firestationup.xml data/gui/roadup.xml data/gui/coalpowerup.xml +#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml data/gui/import-exportup.xml +#: data/gui/no-credit-solar-power.xml data/gui/recycleup.xml +#: data/gui/parkup.xml data/gui/no-credit-parkland.xml +msgid "Ok" +msgstr "Ceart ma-thà" + +#: data/gui/gamestats.xml +msgid "Okay" +msgstr "Ceart ma-thà" + +#: data/gui/options.xml data/gui/mainmenu.xml +msgid "Options" +msgstr "Roghainnean" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Ore" +msgstr "Clach-mhèinneir" + +#: data/gui/creditslist.xml +msgid "Original Idea and Code" +msgstr "Beachd tùsail is còd" + +#: data/gui/parkup.xml +msgid "Parks available" +msgstr "Tha pàircean ri làimh" + +#: data/gui/speedpanel.xml +msgid "Pause the game" +msgstr "Cuir an geama 'na stad" + +#: data/gui/pbar2nd.xml +msgid "Pollution" +msgstr "Truailleadh" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Population" +msgstr "Sluagh" + +#: data/gui/potteryup.xml +msgid "Potteries available" +msgstr "Tha criadhadaireachd ri làimh" + +#: data/gui/minimap.xml +msgid "Press this button to show statistics" +msgstr "Briog air a' phutan seo gus stadastaireachd a shealltainn" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml +msgid "Product" +msgstr "Bathar" + +#: data/gui/mainmenu.xml +msgid "Quit" +msgstr "Fàg an-seo" + +#: data/gui/railwayup.xml +msgid "Railways available" +msgstr "Tha rèilean ri làimh" + +#: data/gui/recycleup.xml +msgid "Recycling Centres available" +msgstr "Tha ionadan ath-chuairteachaidh ri làimh" + +#: data/gui/options.xml +msgid "Resolution" +msgstr "Dùmhlachd-bhreacaidh" + +#: data/gui/riverup.xml +msgid "Rivers available" +msgstr "Tha aibhnean ri làimh" + +#: data/gui/roadup.xml +msgid "Roads available" +msgstr "Tha rathaidean ri làimh" + +#: data/gui/rocketup.xml +msgid "Rocket Launch Pad available" +msgstr "Tha raon-rocaide ri làimh" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket Ready" +msgstr "Tha rocaid ullamh" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket ready to launch" +msgstr "Tha rocaid ullamh airson a losgadh" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with fast speed" +msgstr "Ruith an geama gu luath" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with normal speed" +msgstr "Ruith an geama aig luaths àbhaisteach" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with very fast speed" +msgstr "Ruith an geama glè luath" + +#: data/gui/savegame.xml data/gui/mainmenu.xml +msgid "Save" +msgstr "Sàbhail" + +#: data/gui/savegame.xml +msgid "Save Game" +msgstr "Sàbhail an geama" + +#: data/gui/schoolup.xml +msgid "Schools available" +msgstr "Tha sgoiltean ri làimh" + +#: data/gui/coalmineup.xml +msgid "" +"See the help screen for more information on coal mines and coal surveys." +msgstr "" +"Thoir sùil air sgrìn na cobharach airson barrachd fiosrachaidh mu mhèinnean-" +"guail is rùrachadh guail." + +#: data/gui/universityup.xml data/gui/solarpowerup.xml data/gui/railwayup.xml +#: data/gui/rocketup.xml data/gui/mod_wind_up.xml data/gui/potteryup.xml +#: data/gui/hvindustryup.xml data/gui/healthup.xml data/gui/blacksmithup.xml +#: data/gui/millup.xml data/gui/riverup.xml data/gui/cricketup.xml +#: data/gui/ltindustryup.xml data/gui/windmillup.xml data/gui/schoolup.xml +#: data/gui/firestationup.xml data/gui/coalpowerup.xml data/gui/recycleup.xml +#: data/gui/parkup.xml +msgid "See the help screen for more information." +msgstr "Thoir sùil air sgrìn na cobharach airson barrachd fiosrachaidh." + +#: data/gui/options.xml +msgid "Seed saving" +msgstr "Sàbhaladh sìol" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml +msgid "Sell" +msgstr "Reic" + +#: data/gui/coal_survey_yn.xml +msgid "Send out Prospectors" +msgstr "Cuir lorgairean" + +#: data/gui/minimap.xml +msgid "Show Income and Expenses. Use scroll buttons to cylce through views." +msgstr "" +"Seall teachd a-steach is cosgaisean. Cleachd na putanan sgrolaidh gus dol " +"mun cuairt air na seallaidhean." + +#: data/gui/minimapswitchbuttons.xml +msgid "Show coal depots" +msgstr "Seall tionalan guail" + +#: data/gui/minimap.xml +msgid "Show economy graphs." +msgstr "Seall grafaichean an eaconamaidh." + +#: data/gui/minimapswitchbuttons.xml +msgid "Show fire department cover" +msgstr "Seall an còmhdachadh smàlaidh" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show map outline" +msgstr "Seall oir-loidhne a' mhapa" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show medical care" +msgstr "Seall cùram slàinte" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show nourishments" +msgstr "Seall biadh" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show pollution density" +msgstr "Seall dùmhlachd an truaillidh" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show power supply" +msgstr "Seall solar cumhachd" + +#: data/gui/minimap.xml +msgid "Show resources. Use scroll buttons to cylce through views." +msgstr "" +"Seall stòrasan. Cleachd na putanan sgrolaidh gus dol mun cuairt air na " +"seallaidhean." + +#: data/gui/minimapswitchbuttons.xml +msgid "Show sport cover" +msgstr "Seall còmhdachadh spòrsa" + +#: data/gui/minimap.xml +msgid "Show the MiniMap" +msgstr "Seall am meanbh-mhapa" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show traffic density" +msgstr "Seall dùmhlachd na trafaige" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show unemployment" +msgstr "Seall cion-cosnaidh" + +#: data/gui/solarpowerup.xml +msgid "Solar Power Stations available" +msgstr "Tha stèiseanan cumhachd-grèine ri làimh" + +#: data/gui/nobull-tip.xml +msgid "Sorry you can't bulldoze a tip." +msgstr "Duilich ach chan urrainn dhut òtrach a mhilleadh." + +#: data/gui/too-old.xml +msgid "" +"Sorry, the game you wanted is too old. Cannot load it. Still play with " +"previous game." +msgstr "" +"Duilich, ach tha an geama a dh'iarr thu ro shean. Cha ghabh a luchdadh. 'S " +"urrainn dhut a chluiche fhathast le seann-tionndaidhean a' gheama." + +#: data/gui/options.xml +msgid "Sound Effects" +msgstr "Èifeachdan fuaime" + +#: data/gui/creditslist.xml +msgid "Sound and Music" +msgstr "Fuaim is ceòl" + +#: data/gui/newgame.xml +msgid "Start" +msgstr "Tòisich" + +#: data/gui/minimap.xml +msgid "Stats" +msgstr "Stats" + +#: data/gui/portdialog.xml data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Steel" +msgstr "Stàilinn" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Tech Level" +msgstr "Teicneolas" + +#: data/gui/pbar2nd.xml +msgid "Tenants" +msgstr "Màladairean" + +#: data/gui/allgone.xml +msgid "There are no people left in this city." +msgstr "Chan eil duine air fhàgail sa bhaile seo." + +#: data/gui/coal_survey_yn.xml +msgid "This will cost you 1 million once. After that it is free to call again." +msgstr "" +"Cosgaidh seo millean not aon turas. 'S urrainn ghut gairm an-asgaidh an " +"uairsin." + +#: data/gui/launch-gone.xml +msgid "Total Evacuation Complete." +msgstr "Tha an t-às-àiteachadh iomlan coileanta." + +#: data/gui/tradedialog.xml +msgid "Trade Settings" +msgstr "Roghainnean malairt" + +#: data/gui/creditslist.xml +msgid "Translation" +msgstr "Eadar-theangachadh" + +#: data/gui/universityup.xml +msgid "University available" +msgstr "Tha oilthighean ri làimh" + +#: data/gui/newgame.xml +msgid "Village" +msgstr "Baile" + +#: data/gui/bulldoze_shanty_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_monument_yn.xml +msgid "Want to bulldoze?" +msgstr "A bheil thu airson seo a mhilleadh?" + +#: data/gui/warning.xml data/gui/bulldoze_shanty_yn.xml +#: data/gui/bulldoze_river_yn.xml data/gui/too-old.xml +#: data/gui/bulldoze_monument_yn.xml +msgid "Warning" +msgstr "Rabhadh" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Warning: Bulldozing monuments is expensive" +msgstr "Rabhadh: tha e cosgail carraighean a mhilleadh" + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Warning: Bulldozing shanties is dangerous." +msgstr "Rabhadh: tha e cunnartach bothain a mhilleadh." + +#: data/gui/bulldoze_river_yn.xml +msgid "Warning: Bulldozing water is expensive" +msgstr "Rabhadh: tha e cosgail abhainn a mhilleadh" + +#: data/gui/tradedialog.xml data/gui/pbar2nd.xml +msgid "Waste" +msgstr "Sgudal" + +#: data/gui/pbar2nd.xml +msgid "Water" +msgstr "Uisge" + +#: data/gui/launch-gone.xml +msgid "Well done you have evacuated all your people." +msgstr "Meal do naidheachd! Tha thu air a h-uile duine às-àiteachadh." + +#: data/gui/windmillup.xml +msgid "Windmills available" +msgstr "Tha muileannan-gaoithe ri làimh" + +#: data/gui/coal_survey_yn.xml data/gui/bulldoze_shanty_yn.xml +#: data/gui/launch_rocket_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_monument_yn.xml +msgid "Yes" +msgstr "Tha" + +#: data/gui/fire.xml +msgid "You better go and look for it" +msgstr "B' fheairrde thu a lorg" + +#: data/gui/launch_rocket_yn.xml +msgid "" +"You can launch the rocket now or wait until later. If you wait it will " +"continue costing you money to keep the rocket ready. Launch it later by " +"clicking on the rocket area." +msgstr "" +"'S urrainn dhut an rocaid a losgadh an-dràsta no a dhèanamh uaireigin eile. " +"Ma dh'fhuiricheas tu, cosgaidh e airgead gus an rocaid a chumail ullamh. " +"Loisg i an uairsin 's tu a' briogadh air raon na rocaide." + +#: data/gui/import-exportup.xml +msgid "" +"You can now import and export coal, goods, ore and steel. Read the help " +"pages on these subjects to find out how to use them. " +msgstr "" +"'S urrainn dhut gual, bathar, clach-mhèinneir is stàilinn às-phortadh is ion-" +"phortadh a-nis. Leugh duilleagan na cobharach air na cuspairean seo gus " +"faighinn a-mach mar a chleachdas tu e." + +#: data/gui/no-credit-parkland.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build parks on credit." +msgstr "" +"Tha easbhaidh sa bhuidsead agad. Cha leig a' chomhairle leat gun tog thu " +"pàircean le creideis." + +#: data/gui/no-credit-recycle.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build recycling centres on credit." +msgstr "" +"Tha easbhaidh sa bhuidsead agad. Cha leig a' chomhairle leat gun tog thu " +"ionadan ath-chuairteachaidh le creideis." + +#: data/gui/no-credit-rocket.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build rocket launch pads on credit." +msgstr "" +"Tha easbhaidh sa bhuidsead agad. Cha leig a' chomhairle leat gun tog thu " +"ionadan-rocaide le creideis." + +#: data/gui/no-credit-solar-power.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build solar power stations on credit." +msgstr "" +"Tha easbhaidh sa bhuidsead agad. Cha leig a' chomhairle leat gun tog thu " +"stèiseanan cumhachd-grèine le creideis." + +#: data/gui/no-credit-university.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build universities on credit." +msgstr "" +"Tha easbhaidh sa bhuidsead agad. Cha leig a' chomhairle leat gun tog thu " +"oilthighean le creideis." + +#: data/gui/launch-evac.xml +msgid "" +"You have evacuated 1000 people. You might want to reduce the size of your " +"economy to reflect the reduced population. " +msgstr "" +"Tha thu air mìle daoine às-àiteachadh. 'S dòcha gum b' fheairrde thu an " +"eaconamaidh agad lùghdachadh ach am freagair e ris an t-sluagh as lugha." + +#: data/gui/blacksmithup.xml +msgid "" +"You have reached the tech level which enables you to build blacksmiths. " +"Blacksmiths use jobs and steel to make goods." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat goibhnean-dubha a thogail. " +"Cleachdaidh goibhnean-dubha obair is stàilinn gus bathar a dhèanamh." + +#: data/gui/coalpowerup.xml +msgid "" +"You have reached the tech level which enables you to build coal fired power " +"stations." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat stèiseanan cumhachd-guail a " +"thogail." + +#: data/gui/firestationup.xml +msgid "" +"You have reached the tech level which enables you to build fire stations. " +"Fire stations prevent most fires from starting. If you haven't had any fires " +"yet, you might not think you need them." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat stèiseanan-smàlaidh a thogail. " +"Cuiridh stèiseanan-smàlaidh casg air a' mhòrchuid a theintean. Mur eil teine " +"air a bhith ann fhathast, 's dòcha gu bheil thu dhen bheachd nach biodh feum " +"agad orra." + +#: data/gui/healthup.xml +msgid "" +"You have reached the tech level which enables you to build health centres. " +"Heath centres reduce the number of people killed by pollution and increase " +"overall productivity." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat ionadan-slàinte a thogail. " +"Lùghdaichidh ionadan-slàinte an àireamh de dhaoine a gheibh bàs leis an " +"truailleadh is cuiridh iad ris an tarbhachd." + +#: data/gui/hvindustryup.xml +msgid "" +"You have reached the tech level which enables you to build heavy industry " +"(steel works). Heavy industry produces steel. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat ceàrdaichean stàilinn a " +"thogail. Saothraichidh iad stàilinn." + +#: data/gui/ltindustryup.xml +msgid "" +"You have reached the tech level which enables you to build light industry. " +"Light industry produces goods. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat gnìomhachasan aotrom a thogail. " +"Saothraichidh gnìomhachasan aotrom bathar." + +#: data/gui/millup.xml +msgid "" +"You have reached the tech level which enables you to build mills. Mills use " +"jobs and food to make goods. Watch out, they can use a lot of food! " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat muileannan-clòtha a thogail. " +"Cleachdaidh muileannan-clòtha obair is biadh gus bathar a dhèanamh. Thoir an " +"aire gun cleachd iad torr bìdh!" + +#: data/gui/mod_wind_up.xml +msgid "" +"You have reached the tech level which enables you to build modern, more " +"efficient, windmills. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat muileannan-gaoithe ùr-nòsach is " +"as èifeachdaiche a thogail." + +#: data/gui/parkup.xml +msgid "" +"You have reached the tech level which enables you to build parks. Parks are " +"used to absorb pollution. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat pàircean a thogail. Sùghaidh " +"pàircean truailleadh." + +#: data/gui/potteryup.xml +msgid "" +"You have reached the tech level which enables you to build potteries. " +"Potteries use jobs and ore to make goods. (You need ore mines to get ore) " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat criadhadaireachd a thogail. " +"Cleachdaich criadhadaireachd obair is clach-mhèinneir gus bathar a " +"shaothrachadh. (feumaidh tu mèinnean cloiche-mèinneir gus clach-mhèinneir " +"fhaighinn)" + +#: data/gui/railwayup.xml +msgid "You have reached the tech level which enables you to build railways. " +msgstr "Ràinig thu ìre an teicneolais a leigeas leat rèilean a thogail." + +#: data/gui/riverup.xml +msgid "You have reached the tech level which enables you to build rivers. " +msgstr "Ràinig thu ìre an teicneolais a leigeas leat aibhnean a thogail." + +#: data/gui/roadup.xml +msgid "" +"You have reached the tech level which enables you to build roads. See the " +"help screen for more information." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat rathaidean a thogail. Faic " +"sgrìn na cobharach airson barrachd fiosrachaidh." + +#: data/gui/rocketup.xml +msgid "" +"You have reached the tech level which enables you to build rocket launch " +"pads. Rockets enable you to evacuate your population and is a way to 'win' " +"the game." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat ionadan-rocaide a thogail. 'S " +"urrainn dhut an sluagh agad às-àiteachadh is 's e dòigh gus an geama a " +"bhuannachd a th' ann." + +#: data/gui/schoolup.xml +msgid "" +"You have reached the tech level which enables you to build schools. Schools " +"use jobs and goods to increase tech level. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat sgoiltean a thogail. " +"Cleachdaich sgoiltean obair is bathar gus ìre an teicneolais adhartachadh." + +#: data/gui/solarpowerup.xml +msgid "" +"You have reached the tech level which enables you to build solar power " +"stations. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat stèiseanan cumhachd-grèine a " +"thogail." + +#: data/gui/universityup.xml +msgid "" +"You have reached the tech level which enables you to build universities. " +"Universities produces PhDs, which produce more technology. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat oilthighean a thogail. " +"Saothraichidh oilthighean ollamhan a shaothraicheas barrachd teicneolais." + +#: data/gui/windmillup.xml +msgid "You have reached the tech level which enables you to build windmills. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat muileannan-gaoithe a thogail." + +#: data/gui/coalmineup.xml +msgid "" +"You have reached the tech level which enables you to dig deep coal mines." +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat mèinnean-guail domhain a " +"thochladh." + +#: data/gui/recycleup.xml +msgid "" +"You have reached the tech level which enables you to recycling centres. " +"Recycling centres recycle used goods back into ore. " +msgstr "" +"Ràinig thu ìre an teicneolais a leigeas leat ionadan ath-chuairteachaidh a " +"thogail. Nì ionadan ath-chuairteachaidh clach-mhèinneir dhe bhathar air a " +"chleachdadh." + +#: data/gui/launch-gone.xml data/gui/sustain.xml +msgid "You have won the game." +msgstr "Bhuannaich thu an geama." + +#: data/gui/allgone.xml +msgid "You should start a new career elsewhere." +msgstr "Bu chòir dhut dreuchd a lorg àiteigin eile." + +#: data/gui/cricketup.xml +msgid "" +"Your people have invented basketball. Basketball Courts use a few jobs and " +"goods and make people in the surrounding areas (about 10 units in each " +"direction) happier." +msgstr "" +"Thionnsgainn do mhuinntir raointean spòrsa. Cleachdaidh raointean spòrsa " +"beagan obrach is bathair is nì iad na daoine am fagas nas toilichte (mu 10 " +"aonadan anns gach comhair)." + +#: data/gui/launch-fail.xml +msgid "" +"Your rocket crashed shortly after launch. People no longer trust the " +"technology for evacuation. You must launch five more unmanned rockets to " +"restore confidence." +msgstr "" +"Bha tubaist aig an rocaid às dèidh a losgaidh. Chan eil earbsa aig do " +"mhuinntir air an teicneolas airson às-àiteachadh tuilleadh. Feumaidh tu còig " +"rocaidean gun duine ann a losgadh mus gabh iad earbsa ann a-rithist." + +#: data/gui/minimap.xml +msgid "[+] Zoom in view so that less buildings but more details are visible" +msgstr "" +"[+] Sùm an sealladh a-steach ach am faic thu nas lugha de thogalaichean ach " +"barrachd mion-fhiosrachadh" + +#: data/gui/minimap.xml +msgid "[-] Zoom out" +msgstr "[-] Sùm a-mach" + +#: data/gui/minimap.xml +msgid "[F1] Press this button to get help" +msgstr "[F1] Brùth air an iuchair seo airson cobharach" + +#: data/gui/minimap.xml +msgid "[h] Hide high buildings. " +msgstr "[h] Falaich togalaichean àrda. " + +#: data/gui/minimap.xml +msgid "[m] Scroll up." +msgstr "[m] Sgrolaich suas." + +#: data/gui/minimap.xml +msgid "[n] Scroll down." +msgstr "[n] Sgrolaich sìos." + +#: data/gui/minimap.xml +msgid "[v] Cycle through MiniMap overlay modes. " +msgstr "[v] Rach mun cuairt air modhan tar-chòmhdachaidh a' mheanbh-mhapa. " + +#: data/gui/pbar2nd.xml +msgid "kWh" +msgstr "kWh" + +#: data/gui/minimap.xml +msgid "toggle terrain height rendering" +msgstr "toglaich reandaradh aig àirde na tìre" diff -Nru lincity-ng-2.0/data/locale/gui/pt_BR.po lincity-ng-2.9~git20150314/data/locale/gui/pt_BR.po --- lincity-ng-2.0/data/locale/gui/pt_BR.po 2009-01-25 20:21:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gui/pt_BR.po 2015-05-05 16:32:50.000000000 +0000 @@ -7,8 +7,8 @@ msgstr "" "Project-Id-Version: lincity-ng 1.1.0rc2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: Mon Feb 18 22:35:34 2008\n" -"PO-Revision-Date: 2007-05-10 19:53-0300\n" +"POT-Creation-Date: Mon Jan 26 22:37:36 2009\n" +"PO-Revision-Date: 2009-01-27 21:47+0100\n" "Last-Translator: Nilo Menezes <nilo.menezes@gmail.com>\n" "Language-Team: Portuguese/Brazil <gnome-l10n-br@listas.cipsga.org.br>\n" "MIME-Version: 1.0\n" @@ -19,7 +19,7 @@ #: data/gui/allgone.xml msgid "Nobody Home" -msgstr "Casa Desabitada" +msgstr "Ninguém em casa" #: data/gui/allgone.xml data/gui/blacksmithup.xml data/gui/coalmineup.xml #: data/gui/coalpowerup.xml data/gui/cricketup.xml data/gui/fire.xml @@ -45,7 +45,7 @@ #: data/gui/allgone.xml msgid "You should start a new career elsewhere." -msgstr "Você pode começar uma nova profissão em outro lugar." +msgstr "Você deve começar uma nova profissão em outro lugar." #: data/gui/blacksmithup.xml msgid "Blacksmiths available" @@ -78,7 +78,7 @@ "Blacksmiths use jobs and steel to make goods." msgstr "" "Você alcançou o nível tecnológico que habilita a construir ferreiros. " -"Ferreiros utiliza produção e aço para produzir bens." +"Ferreiros utilizam a empregos e aço para produzir bens." #: data/gui/bulldoze_monument_yn.xml msgid "Bulldozing a monument costs a lot of money." @@ -140,7 +140,8 @@ #: data/gui/coal_survey_yn.xml msgid "This will cost you 1 million once. After that it is free to call again." -msgstr "Isto custará 1 milhão. Após, estará livre para usar novamente." +msgstr "" +"Isto custará 1 milhão apenas uma vez. Depois será grátis para usar novamente." #: data/gui/coalmineup.xml msgid "Coal Mine available" @@ -239,7 +240,7 @@ #: data/gui/gamestats.xml msgid "Gamestats" -msgstr "Estat. do Jogo" +msgstr "Estatísticas do Jogo" #: data/gui/gamestats.xml msgid "Okay" @@ -285,7 +286,7 @@ #: data/gui/launch-evac.xml msgid "Evacuation Launch Good" -msgstr "Boa Evacuação de Lançamento" +msgstr "Lançamento de Evacuação bom" #: data/gui/launch-evac.xml msgid "" @@ -327,7 +328,7 @@ #: data/gui/launch-good.xml msgid "Launch Successfull" -msgstr "Sucesso no Lançamento" +msgstr "Lançamento bem sucedido" #: data/gui/launch_rocket_yn.xml msgid "Launch now?" @@ -339,7 +340,7 @@ #: data/gui/launch_rocket_yn.xml msgid "Rocket ready to launch" -msgstr "Foguete preparado para o lançamento" +msgstr "Foguete pronto para o lançamento" #: data/gui/launch_rocket_yn.xml msgid "" @@ -348,8 +349,8 @@ "clicking on the rocket area." msgstr "" "Você pode lançar o foguete agora ou mais tarde. Lançar mais tarde continuará " -"custando para manter o foguete pronto para o lançamento. Lance-o clicando na " -"área do foguete." +"custando para manter o foguete pronto para o lançamento. Lance-o depois " +"clicando na área do foguete." #: data/gui/loadgame.xml data/gui/mainmenu.xml msgid "Load" @@ -414,7 +415,7 @@ #: data/gui/minimap.xml msgid "Map" -msgstr "Mapa" +msgstr "Map" #: data/gui/minimap.xml msgid "Press this button to show statistics" @@ -428,7 +429,7 @@ #: data/gui/minimap.xml msgid "Show economy graphs." -msgstr "Exibir gráficos economicos." +msgstr "Exibir gráficos da economia." #: data/gui/minimap.xml msgid "Show resources." @@ -440,7 +441,7 @@ #: data/gui/minimap.xml msgid "Stats" -msgstr "Estado" +msgstr "Estat" #: data/gui/minimap.xml msgid "[+] Zoom in view so that less buildings but more details are visible" @@ -484,7 +485,7 @@ #: data/gui/minimapswitchbuttons.xml msgid "Show pollution density" -msgstr "Exibir densidade populacional" +msgstr "Exibir densidade da poluição" #: data/gui/minimapswitchbuttons.xml msgid "Show power supply" @@ -622,7 +623,7 @@ #: data/gui/pbar.xml data/gui/tradedialog.xml msgid "Jobs" -msgstr "Produção" +msgstr "Empregos" #: data/gui/pbar.xml msgid "Money" @@ -716,7 +717,7 @@ #: data/gui/rocketup.xml msgid "Rocket Launch Pad available" -msgstr "Base de lançamento disponível" +msgstr "Base de lançamento de foguetes disponível" #: data/gui/rocketup.xml msgid "" @@ -738,7 +739,7 @@ #: data/gui/schoolup.xml msgid "Schools available" -msgstr "Escola disponível" +msgstr "Escolas disponíves" #: data/gui/schoolup.xml msgid "" @@ -817,6 +818,8 @@ "Sorry, the game you wanted is too old. Cannot load it. Still play with " "previous game." msgstr "" +"Desculpe, mas o jogo que você quer é muito antigo. Impossível carregá-lo. " +"Continue a jogar com o jogo antigo." #: data/gui/tradedialog.xml msgid "Trade Settings" diff -Nru lincity-ng-2.0/data/locale/gui/ru.po lincity-ng-2.9~git20150314/data/locale/gui/ru.po --- lincity-ng-2.0/data/locale/gui/ru.po 2009-01-25 20:21:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gui/ru.po 2015-05-05 16:32:50.000000000 +0000 @@ -2,317 +2,205 @@ # This file is distributed under the same license as the lincity-ng package. # Copyright (C) 2007 Leonid Myravjev <asm@asm.pp.ru>. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: ru\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: Mon Feb 18 22:35:34 2008\n" -"PO-Revision-Date: 2008-24-12 06:39-0000\n" +"POT-Creation-Date: Sun Feb 16 11:31:09 2014\n" +"PO-Revision-Date: 2014-02-16 13:44+0300\n" "Last-Translator: ASM <asm@asm.pp.ru>\n" "Language-Team: ASM <asm@asm.pp.ru>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.5\n" -#: data/gui/allgone.xml -msgid "Nobody Home" -msgstr "Ðикого нет дома" +#: data/gui/minimap.xml +msgid "$" +msgstr "Фин" -#: data/gui/allgone.xml data/gui/blacksmithup.xml data/gui/coalmineup.xml -#: data/gui/coalpowerup.xml data/gui/cricketup.xml data/gui/fire.xml -#: data/gui/firestationup.xml data/gui/healthup.xml data/gui/hvindustryup.xml -#: data/gui/import-exportup.xml data/gui/launch-evac.xml -#: data/gui/launch-fail.xml data/gui/launch-gone.xml data/gui/launch-good.xml -#: data/gui/ltindustryup.xml data/gui/millup.xml data/gui/mod_wind_up.xml -#: data/gui/no-credit-parkland.xml data/gui/no-credit-recycle.xml -#: data/gui/no-credit-rocket.xml data/gui/no-credit-solar-power.xml -#: data/gui/no-credit-university.xml data/gui/nobull-tip.xml -#: data/gui/options.xml data/gui/parkup.xml data/gui/potteryup.xml -#: data/gui/railwayup.xml data/gui/recycleup.xml data/gui/riverup.xml -#: data/gui/roadup.xml data/gui/rocketup.xml data/gui/schoolup.xml -#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml data/gui/solarpowerup.xml -#: data/gui/sustain.xml data/gui/too-old.xml data/gui/universityup.xml -#: data/gui/warning.xml data/gui/windmillup.xml -msgid "Ok" -msgstr "Ок" +#: data/gui/fire.xml +msgid "A Fire has started" +msgstr "ÐачалÑÑ Ð¿Ð¾Ð¶Ð°Ñ€" -#: data/gui/allgone.xml -msgid "There are no people left in this city." -msgstr "Ð’ городе больше нет людей." +#: data/gui/shfire-uc.xml +msgid "" +"A fire has broken out at a shanty town. It is in a fire cover area and " +"APPEARS to be under control. " +msgstr "" +"Пожар уничтожил хижину. ЕÑли так дальше пойдет, он может выйти из под " +"контролÑ. " -#: data/gui/allgone.xml -msgid "You should start a new career elsewhere." -msgstr "Ð’Ñ‹ должны попробовать реализоватьÑÑ Ð³Ð´Ðµ-нибудь ещё." +#: data/gui/shfire-oc.xml +msgid "" +"A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may " +"spread to other areas. " +msgstr "" +"Пожар уничтожил хижину. Огонь вышел из под контролÑ! И может уничтожить " +"другие поÑтройки!!! " -#: data/gui/blacksmithup.xml -msgid "Blacksmiths available" -msgstr "ÐšÑƒÐ·Ð½ÐµÑ‡Ð½Ð°Ñ Ð´Ð¾Ñтупна" +#: data/gui/pbar2nd.xml +#, fuzzy +msgid "Air Pollution" +msgstr "ЗагрÑзнение" -#: data/gui/blacksmithup.xml data/gui/coalmineup.xml data/gui/coalpowerup.xml -#: data/gui/cricketup.xml data/gui/firestationup.xml data/gui/healthup.xml -#: data/gui/hvindustryup.xml data/gui/import-exportup.xml -#: data/gui/ltindustryup.xml data/gui/millup.xml data/gui/mod_wind_up.xml -#: data/gui/parkup.xml data/gui/potteryup.xml data/gui/railwayup.xml -#: data/gui/recycleup.xml data/gui/riverup.xml data/gui/roadup.xml -#: data/gui/rocketup.xml data/gui/schoolup.xml data/gui/solarpowerup.xml -#: data/gui/universityup.xml data/gui/windmillup.xml -msgid "New Invention" -msgstr "Ðовое изобретение" +#: data/gui/credits.xml data/gui/newgame.xml data/gui/savegame.xml +#: data/gui/loadgame.xml +msgid "Back" +msgstr "Ðазад" -#: data/gui/blacksmithup.xml data/gui/coalpowerup.xml data/gui/cricketup.xml -#: data/gui/firestationup.xml data/gui/healthup.xml data/gui/hvindustryup.xml -#: data/gui/ltindustryup.xml data/gui/millup.xml data/gui/mod_wind_up.xml -#: data/gui/parkup.xml data/gui/potteryup.xml data/gui/railwayup.xml -#: data/gui/recycleup.xml data/gui/riverup.xml data/gui/rocketup.xml -#: data/gui/schoolup.xml data/gui/solarpowerup.xml data/gui/universityup.xml -#: data/gui/windmillup.xml -msgid "See the help screen for more information." -msgstr "Смотрите окно помощи Ð´Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐµÐ¹ информации." +#: data/gui/options.xml +msgid "Background Music" +msgstr "Музыка" + +#: data/gui/cricketup.xml +msgid "Basketball Courts available" +msgstr "БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° доÑтупна" + +#: data/gui/options.xml +msgid "Binary Saving" +msgstr "Сохранить в новом формате" #: data/gui/blacksmithup.xml -msgid "" -"You have reached the tech level which enables you to build blacksmiths. " -"Blacksmiths use jobs and steel to make goods." -msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить кузницы. Которые дают работу и " -"позволÑÑŽÑ‚ производить товары." +msgid "Blacksmiths available" +msgstr "Кузницы доÑтупна" #: data/gui/bulldoze_monument_yn.xml msgid "Bulldozing a monument costs a lot of money." msgstr "Уничтожение монумента Ñтоит больших денег." -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml data/gui/coal_survey_yn.xml -#: data/gui/launch_rocket_yn.xml -msgid "No" -msgstr "Ðет" - -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml -msgid "Want to bulldoze?" -msgstr "Хотите ÑнеÑти?" - -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml data/gui/too-old.xml data/gui/warning.xml -msgid "Warning" -msgstr "Внимание" - -#: data/gui/bulldoze_monument_yn.xml -msgid "Warning: Bulldozing monuments is expensive" -msgstr "Внимание: Попытка ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð½ÑƒÐ¼ÐµÐ½Ñ‚Ð°" - -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml data/gui/coal_survey_yn.xml -#: data/gui/launch_rocket_yn.xml -msgid "Yes" -msgstr "Да" - #: data/gui/bulldoze_river_yn.xml msgid "Bulldozing a section of river costs a lot of money." msgstr "Уничтожение реки Ñтоит больших денег." -#: data/gui/bulldoze_river_yn.xml -msgid "Warning: Bulldozing water is expensive" -msgstr "Внимание: Попытка заÑыпать речку." - #: data/gui/bulldoze_shanty_yn.xml msgid "Bulldozing a shanty town costs a lot of money and may cause a fire." msgstr "Уничтожение хижины Ñтоит больших денег и вызовет пожар." -#: data/gui/bulldoze_shanty_yn.xml -msgid "Warning: Bulldozing shanties is dangerous." -msgstr "Внимание: Попытка ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñ…Ð¸Ð¶Ð¸Ð½Ñ‹. " - -#: data/gui/coal_survey_yn.xml -msgid "Coal Survey" -msgstr "ОÑмотр углÑ" - -#: data/gui/coal_survey_yn.xml -msgid "Do coal survey?" -msgstr "Сделать оÑмотр угольный меÑторождений?" - -#: data/gui/coal_survey_yn.xml -msgid "Send out Prospectors" -msgstr "ЗапроÑить информацию?" - -#: data/gui/coal_survey_yn.xml -msgid "This will cost you 1 million once. After that it is free to call again." -msgstr "Это дейÑтвие отнимет 1 миллион рублей. Ð’ дальнейшем беÑплатно. " - -#: data/gui/coalmineup.xml -msgid "Coal Mine available" -msgstr "Угольный рудник доÑтупен" +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Buy" +msgstr "Куп." -#: data/gui/coalmineup.xml -msgid "" -"See the help screen for more information on coal mines and coal surveys." -msgstr "" -"Смотрите окно помощи Ð´Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐµÐ¹ информации про уголь, шахты и угольные " -"иÑÑледованиÑ." +#: data/gui/newgame.xml +msgid "Choose Scenario" +msgstr "Выбрать Ñценарий" -#: data/gui/coalmineup.xml -msgid "" -"You have reached the tech level which enables you to dig deep coal mines." -msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет копать глубокие угольные шахты." +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Coal" +msgstr "Уголь" #: data/gui/coalpowerup.xml msgid "Coal Fired Power Stations available" msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð´Ð¾Ñтупна" -#: data/gui/coalpowerup.xml -msgid "" -"You have reached the tech level which enables you to build coal fired power " -"stations." -msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить угольные ÑлектроÑтанции." +#: data/gui/coalmineup.xml +msgid "Coal Mine available" +msgstr "Угольный рудник доÑтупен" -#: data/gui/credits.xml data/gui/loadgame.xml data/gui/newgame.xml -#: data/gui/savegame.xml -msgid "Back" -msgstr "Ðазад" +#: data/gui/coal_survey_yn.xml +msgid "Coal Survey" +msgstr "ОÑмотр углÑ" #: data/gui/creditslist.xml msgid "Code" msgstr "Код" -#: data/gui/creditslist.xml data/gui/mainmenu.xml +#: data/gui/mainmenu.xml +msgid "Continue" +msgstr "Продолжить" + +#: data/gui/mainmenu.xml data/gui/creditslist.xml msgid "Credits" msgstr "Ðвторы" -#: data/gui/creditslist.xml -msgid "Graphics" -msgstr "Графика" - -#: data/gui/creditslist.xml -msgid "Original Idea and Code" -msgstr "ÐžÑ€Ð¸Ð³Ð¸Ð½Ð°Ð»ÑŒÐ½Ð°Ñ Ð¸Ð´ÐµÑ Ð¸ код" - -#: data/gui/creditslist.xml -msgid "Sound and Music" -msgstr "Звук и музыка" +#: data/gui/coal_survey_yn.xml +msgid "Do coal survey?" +msgstr "Сделать оÑмотр угольный меÑторождений?" -#: data/gui/creditslist.xml -msgid "Translation" -msgstr "Перевод" +#: data/gui/launch-good.xml +msgid "Doing well." +msgstr "Запущенно удачно." -#: data/gui/cricketup.xml -msgid "Basketball Courts available" -msgstr "БаÑкетбольное поле доÑтупно" +#: data/gui/minimap.xml +msgid "Eco" +msgstr "Эко" -#: data/gui/cricketup.xml -msgid "" -"Your people have invented basketball. Basketball Courts use a few jobs and " -"goods and make people in the surrounding areas (about 10 units in each " -"direction) happier." -msgstr "" -"Ваши люди придумали баÑкетбол. БаÑкетбольные площадки иÑпользуют работу, " -"товары и делают людей (в зоне 10 клеток) ÑчаÑтливыми." +#: data/gui/sustain.xml +msgid "Economy Sustainable." +msgstr "Экономика Ñтабилизирована." -#: data/gui/fire.xml -msgid "A Fire has started" -msgstr "ÐачалÑÑ Ð¿Ð¾Ð¶Ð°Ñ€" +#: data/gui/launch-evac.xml +msgid "Evacuation Launch Good" +msgstr "Ð­Ð²Ð°ÐºÑƒÐ°Ñ†Ð¸Ñ Ð¿Ñ€Ð¾ÑˆÐ»Ð° уÑпешно" -#: data/gui/fire.xml -msgid "You better go and look for it" -msgstr "Вам лучше идти и поÑмотреть на Ñто" +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire" +msgstr "Огонь" #: data/gui/firestationup.xml msgid "Fire Stations available" msgstr "ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑÑ‚Ð°Ð½Ñ†Ð¸Ñ Ð´Ð¾Ñтупна" -#: data/gui/firestationup.xml -msgid "" -"You have reached the tech level which enables you to build fire stations. " -"Fire stations prevent most fires from starting. If you haven't had any fires " -"yet, you might not think you need them." -msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить пожарные Ñтанции. ЕÑли у Ð²Ð°Ñ Ð½ÐµÑ‚ " -"ни одной пожарной Ñтанции, не думайте, что они не нужны." +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire!" +msgstr "Пожар!" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Food" +msgstr "Еда" + +#: data/gui/options.xml +msgid "Fullscreen" +msgstr "Полный Ñкран" #: data/gui/gamestats.xml msgid "Gamestats" msgstr "СтатиÑтика игры" -#: data/gui/gamestats.xml -msgid "Okay" -msgstr "ПонÑтно" +#: data/gui/speedpanel.xml +msgid "Go back to Main Menu" +msgstr "ВернутьÑÑ Ð² главное меню" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Goods" +msgstr "Товары" + +#: data/gui/creditslist.xml +msgid "Graphics" +msgstr "Графика" + +#: data/gui/portdialog.xml +msgid "Harbour Trade Settings" +msgstr "ÐаÑтройки Порта" #: data/gui/healthup.xml msgid "Health Centres available" msgstr "Больницы доÑтупны" -#: data/gui/healthup.xml -msgid "" -"You have reached the tech level which enables you to build health centres. " -"Heath centres reduce the number of people killed by pollution and increase " -"overall productivity." -msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить больницы." - #: data/gui/hvindustryup.xml msgid "Heavy Industry available" msgstr "ТÑÐ¶ÐµÐ»Ð°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð´Ð¾Ñтупна" -#: data/gui/hvindustryup.xml -msgid "" -"You have reached the tech level which enables you to build heavy industry " -"(steel works). Heavy industry produces steel. " -msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить Ñ‚Ñжелую индуÑтрию (производить " -"Ñталь)." +#: data/gui/helpwindow.xml +msgid "Help" +msgstr "Помощь" #: data/gui/import-exportup.xml msgid "Import/Export available" msgstr "ЭкÑпорт/Импорт доÑтупен" -#: data/gui/import-exportup.xml -msgid "" -"You can now import and export coal, goods, ore and steel. Read the help " -"pages on these subjects to find out how to use them. " -msgstr "" -"Теперь вы можете покупать и продавать реÑурÑÑ‹. Это уголь, товар и прочее. " -"Прочитайте помощь, что бы найти ответ, как Ñтим пользоватьÑÑ. " - -#: data/gui/launch-evac.xml -msgid "Evacuation Launch Good" -msgstr "Ð­Ð²Ð°ÐºÑƒÐ°Ñ†Ð¸Ñ Ð¿Ñ€Ð¾ÑˆÐ»Ð° уÑпешно" +#: data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Jobs" +msgstr "Работа" -#: data/gui/launch-evac.xml -msgid "" -"You have evacuated 1000 people. You might want to reduce the size of your " -"economy to reflect the reduced population. " -msgstr "" -"Ð’Ñ‹ Ñвакуировали 1000 человек. Теперь нужно Ñледить за Ñкономикой и роÑтом " -"наÑелениÑ." +#: data/gui/options.xml +msgid "Language" +msgstr "Язык" #: data/gui/launch-fail.xml msgid "Launch Failure" msgstr "Ðеудачный запуÑк" -#: data/gui/launch-fail.xml -msgid "" -"Your rocket crashed shortly after launch. People no longer trust the " -"technology for evacuation. You must launch five more unmanned rockets to " -"restore confidence." -msgstr "" -"Ваша ракета взорвалаÑÑŒ поÑле взлета. Теперь люди боÑÑ‚ÑŒÑÑ Ð»ÐµÑ‚Ð°Ñ‚ÑŒ в ракетах. " -"Ð’Ñ‹ должны запуÑтить 5 ракет, что бы люди в них Ñнова поверили." - -#: data/gui/launch-gone.xml -msgid "Total Evacuation Complete." -msgstr "Итого Ñвакуировано." - -#: data/gui/launch-gone.xml -msgid "Well done you have evacuated all your people." -msgstr "ПоздравлÑем, вы Ñвакуировали вÑех людей." - -#: data/gui/launch-gone.xml data/gui/sustain.xml -msgid "You have won the game." -msgstr "Ð’Ñ‹ выиграли!" - -#: data/gui/launch-good.xml -msgid "Doing well." -msgstr "Запущенно удачно." - #: data/gui/launch-good.xml msgid "Launch Successfull" msgstr "ЗапуÑк уÑпешен" @@ -321,24 +209,15 @@ msgid "Launch now?" msgstr "ЗапуÑтить ÑейчаÑ?" -#: data/gui/launch_rocket_yn.xml -msgid "Rocket Ready" -msgstr "Ракета готова" - -#: data/gui/launch_rocket_yn.xml -msgid "Rocket ready to launch" -msgstr "Ракета готова к запуÑку" +#: data/gui/ltindustryup.xml +msgid "Light Industry available" +msgstr "Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð´Ð¾Ñтупна" -#: data/gui/launch_rocket_yn.xml -msgid "" -"You can launch the rocket now or wait until later. If you wait it will " -"continue costing you money to keep the rocket ready. Launch it later by " -"clicking on the rocket area." -msgstr "" -"Ð’Ñ‹ можете запуÑтить ракету ÑÐµÐ¹Ñ‡Ð°Ñ Ð¸Ð»Ð¸ позже. Содержание ракеты Ñтоит денег. " -"Чтобы запуÑтить позже, нажмите на ракетной площадке." +#: data/gui/sustain.xml +msgid "LinCity has determined that you have a sustainable economy." +msgstr "LinCity принÑла решение о том, что у Ð²Ð°Ñ ÑÑ‚Ð°Ð±Ð¸Ð»Ð¸Ð·Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ñкономика." -#: data/gui/loadgame.xml data/gui/mainmenu.xml +#: data/gui/mainmenu.xml data/gui/loadgame.xml msgid "Load" msgstr "Загрузить" @@ -346,180 +225,413 @@ msgid "Load Game" msgstr "Загрузить игру" -#: data/gui/ltindustryup.xml -msgid "Light Industry available" -msgstr "Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑÑ‚Ñ€Ð¸Ñ Ð´Ð¾Ñтупна" +#: data/gui/pbar2nd.xml +msgid "MWh" +msgstr "МВт⋅ч" -#: data/gui/ltindustryup.xml -msgid "" -"You have reached the tech level which enables you to build light industry. " -"Light industry produces goods. " -msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить легкую индуÑтрию. Она Ñоздает " -"товары. " +#: data/gui/minimap.xml +msgid "Map" +msgstr "Крт" -#: data/gui/mainmenu.xml -msgid "Continue" -msgstr "Продолжить" +#: data/gui/options.xml +msgid "Map Size" +msgstr "Размер карты" + +#: data/gui/millup.xml +msgid "Mills available" +msgstr "ТекÑÐ¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ° доÑтупна" + +#: data/gui/mod_wind_up.xml +msgid "Modern Windmills available" +msgstr "Продвинутый ветрогенератор доÑтупен" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Money" +msgstr "Деньги" #: data/gui/mainmenu.xml data/gui/newgame.xml msgid "New Game" msgstr "ÐÐ¾Ð²Ð°Ñ Ð¸Ð³Ñ€Ð°" +#: data/gui/parkup.xml data/gui/blacksmithup.xml data/gui/roadup.xml +#: data/gui/coalmineup.xml data/gui/millup.xml data/gui/ltindustryup.xml +#: data/gui/hvindustryup.xml data/gui/railwayup.xml data/gui/universityup.xml +#: data/gui/schoolup.xml data/gui/recycleup.xml data/gui/coalpowerup.xml +#: data/gui/riverup.xml data/gui/rocketup.xml data/gui/healthup.xml +#: data/gui/import-exportup.xml data/gui/solarpowerup.xml +#: data/gui/cricketup.xml data/gui/mod_wind_up.xml data/gui/potteryup.xml +#: data/gui/firestationup.xml data/gui/windmillup.xml +msgid "New Invention" +msgstr "Ðовое изобретение" + +#: data/gui/bulldoze_river_yn.xml data/gui/coal_survey_yn.xml +#: data/gui/launch_rocket_yn.xml data/gui/bulldoze_monument_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "No" +msgstr "Ðет" + +#: data/gui/no-credit-solar-power.xml data/gui/no-credit-rocket.xml +#: data/gui/no-credit-university.xml data/gui/no-credit-parkland.xml +#: data/gui/no-credit-recycle.xml +msgid "No Credit Available" +msgstr "Ðет кредитов" + +#: data/gui/allgone.xml +msgid "Nobody Home" +msgstr "Ðикого нет дома" + +#: data/gui/nobull-tip.xml +msgid "Not Allowed" +msgstr "Запрещено" + +#: data/gui/parkup.xml data/gui/blacksmithup.xml data/gui/roadup.xml +#: data/gui/coalmineup.xml data/gui/millup.xml data/gui/ltindustryup.xml +#: data/gui/no-credit-solar-power.xml data/gui/launch-evac.xml +#: data/gui/launch-fail.xml data/gui/hvindustryup.xml data/gui/launch-good.xml +#: data/gui/no-credit-rocket.xml data/gui/shfire-uc.xml +#: data/gui/nobull-tip.xml data/gui/railwayup.xml data/gui/universityup.xml +#: data/gui/fire.xml data/gui/no-credit-university.xml data/gui/allgone.xml +#: data/gui/options.xml data/gui/schoolup.xml data/gui/no-credit-parkland.xml +#: data/gui/sustain.xml data/gui/shfire-oc.xml data/gui/recycleup.xml +#: data/gui/too-old.xml data/gui/coalpowerup.xml +#: data/gui/no-credit-recycle.xml data/gui/riverup.xml data/gui/rocketup.xml +#: data/gui/healthup.xml data/gui/import-exportup.xml +#: data/gui/solarpowerup.xml data/gui/cricketup.xml data/gui/mod_wind_up.xml +#: data/gui/potteryup.xml data/gui/warning.xml data/gui/firestationup.xml +#: data/gui/launch-gone.xml data/gui/windmillup.xml +msgid "Ok" +msgstr "Ок" + +#: data/gui/gamestats.xml +msgid "Okay" +msgstr "Ок" + #: data/gui/mainmenu.xml data/gui/options.xml msgid "Options" msgstr "Опции" +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Ore" +msgstr "Руда" + +#: data/gui/creditslist.xml +msgid "Original Idea and Code" +msgstr "ÐžÑ€Ð¸Ð³Ð¸Ð½Ð°Ð»ÑŒÐ½Ð°Ñ Ð¸Ð´ÐµÑ Ð¸ код" + +#: data/gui/parkup.xml +msgid "Parks available" +msgstr "Парк доÑтупен" + +#: data/gui/speedpanel.xml +msgid "Pause the game" +msgstr "Пауза игры" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Population" +msgstr "ÐаÑеление" + +#: data/gui/potteryup.xml +msgid "Potteries available" +msgstr "Гончарные доÑтупны" + +#: data/gui/minimap.xml +msgid "Press this button to show statistics" +msgstr "Ðажмите, чтобы увидеть ÑтатиÑтику" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Product" +msgstr "Продукт" + #: data/gui/mainmenu.xml msgid "Quit" msgstr "Выход" -#: data/gui/mainmenu.xml -msgid "Save" -msgstr "Сохранить" +#: data/gui/railwayup.xml +msgid "Railways available" +msgstr "ДоÑтупна Ð¶ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°(рельÑÑ‹)" -#: data/gui/millup.xml -msgid "Mills available" -msgstr "Мельница доÑтупна" +#: data/gui/recycleup.xml +msgid "Recycling Centres available" +msgstr "Центр переработки доÑтупен" -#: data/gui/millup.xml -msgid "" -"You have reached the tech level which enables you to build mills. Mills use " -"jobs and food to make goods. Watch out, they can use a lot of food! " -msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить мельницы. Они дают работу и " -"позволÑÑŽÑ‚ производить товары из еды. Они могут иÑтратить Ñлишком много еды!" +#: data/gui/options.xml +#, fuzzy +msgid "Resolution" +msgstr "ÐаÑеление" -#: data/gui/minimap.xml -msgid "$" -msgstr "Фин" +#: data/gui/riverup.xml +msgid "Rivers available" +msgstr "Речки доÑтупны" -#: data/gui/minimap.xml -msgid "Eco" -msgstr "Эко" +#: data/gui/roadup.xml +msgid "Roads available" +msgstr "Дороги доÑтупны" -#: data/gui/minimap.xml -msgid "Map" -msgstr "Крт" +#: data/gui/rocketup.xml +msgid "Rocket Launch Pad available" +msgstr "Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ ÑƒÑтановка доÑтупна" -#: data/gui/minimap.xml -msgid "Press this button to show statistics" -msgstr "Ðажмите, что бы увидеть ÑтатиÑтику" +#: data/gui/launch_rocket_yn.xml +msgid "Rocket Ready" +msgstr "Ракета готова" -#: data/gui/minimap.xml -msgid "Show Income and Expenses. Click this tab again to cycle through views." -msgstr "" -"Показать затраты и прибыль. Ðажимайте Ñнова, что бы увидеть другие данные." +#: data/gui/launch_rocket_yn.xml +msgid "Rocket ready to launch" +msgstr "Ракета готова к запуÑку" -#: data/gui/minimap.xml -msgid "Show economy graphs." -msgstr "Показать график Ñкономики." +#: data/gui/speedpanel.xml +msgid "Run the simulation with fast speed" +msgstr "ЗапуÑтить игру Ñ Ð±Ñ‹Ñтрой ÑкороÑтью" -#: data/gui/minimap.xml -msgid "Show resources." -msgstr "Показать реÑурÑÑ‹." +#: data/gui/speedpanel.xml +msgid "Run the simulation with normal speed" +msgstr "ЗапуÑтить игру Ñ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ð¾Ð¹ ÑкороÑтью" -#: data/gui/minimap.xml -msgid "Show the MiniMap" -msgstr "Показать мини-карту" +#: data/gui/speedpanel.xml +msgid "Run the simulation with very fast speed" +msgstr "ЗапуÑтить игру Ñ Ð¾Ñ‡ÐµÐ½ÑŒ быÑтрой ÑкороÑтью" -#: data/gui/minimap.xml -msgid "Stats" -msgstr "Ст-ка" +#: data/gui/mainmenu.xml data/gui/savegame.xml +msgid "Save" +msgstr "Сохранить" -#: data/gui/minimap.xml -msgid "[+] Zoom in view so that less buildings but more details are visible" -msgstr "[+] Увеличить." +#: data/gui/savegame.xml +msgid "Save Game" +msgstr "Сохранить игру" -#: data/gui/minimap.xml -msgid "[-] Zoom out" -msgstr "[-] Отдалить" +#: data/gui/schoolup.xml +msgid "Schools available" +msgstr "Школы доÑтупны" -#: data/gui/minimap.xml -msgid "[F1] Press this button to get help" -msgstr "[F1] Ðажмите и уведете помощь " +#: data/gui/coalmineup.xml +msgid "" +"See the help screen for more information on coal mines and coal surveys." +msgstr "" +"Смотрите окно помощи Ð´Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐµÐ¹ информации про уголь, шахты и угольные " +"иÑÑледованиÑ." -#: data/gui/minimap.xml -msgid "[h] Hide high buildings. " -msgstr "[h] СпрÑтать Ñложные зданиÑ" +#: data/gui/parkup.xml data/gui/blacksmithup.xml data/gui/millup.xml +#: data/gui/ltindustryup.xml data/gui/hvindustryup.xml data/gui/railwayup.xml +#: data/gui/universityup.xml data/gui/schoolup.xml data/gui/recycleup.xml +#: data/gui/coalpowerup.xml data/gui/riverup.xml data/gui/rocketup.xml +#: data/gui/healthup.xml data/gui/solarpowerup.xml data/gui/cricketup.xml +#: data/gui/mod_wind_up.xml data/gui/potteryup.xml data/gui/firestationup.xml +#: data/gui/windmillup.xml +msgid "See the help screen for more information." +msgstr "Смотрите окно помощи Ð´Ð»Ñ Ð±Ð¾Ð»ÑŒÑˆÐµÐ¹ информации." + +#: data/gui/options.xml +msgid "Seed Saving" +msgstr "Сохранить ÑобытиÑ" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Sell" +msgstr "Прод." + +#: data/gui/coal_survey_yn.xml +msgid "Send out Prospectors" +msgstr "ЗапроÑить информацию?" #: data/gui/minimap.xml -msgid "[v] Cycle through MiniMap overlay modes. " -msgstr "[v] Показать на оÑновной карте то, что находитьÑÑ Ð½Ð° мини-карте." +#, fuzzy +msgid "Show Income and Expenses. Use scroll buttons to cylce through views." +msgstr "" +"Показать затраты и прибыль. Ðажимайте Ñнова, чтобы увидеть другие данные." #: data/gui/minimapswitchbuttons.xml msgid "Show coal depots" msgstr "Показать угольные меÑторождениÑ." +#: data/gui/minimap.xml +msgid "Show economy graphs." +msgstr "Показать график Ñкономики." + #: data/gui/minimapswitchbuttons.xml msgid "Show fire department cover" msgstr "Показать противопожарные зоны" #: data/gui/minimapswitchbuttons.xml msgid "Show map outline" -msgstr "Показать карту поÑтроек" +msgstr "Показать зону иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð·ÐµÐ¼Ð»Ð¸" #: data/gui/minimapswitchbuttons.xml msgid "Show medical care" -msgstr "Показать медицинÑкое покрытие" +msgstr "Показать зоны доÑтупа к больницам" #: data/gui/minimapswitchbuttons.xml msgid "Show nourishments" -msgstr "Показать обеÑпечение едой" +msgstr "Показать зону голоданиÑ" #: data/gui/minimapswitchbuttons.xml msgid "Show pollution density" -msgstr "Показать загрÑзнениÑ" +msgstr "Показать зоны загрÑзнений" #: data/gui/minimapswitchbuttons.xml msgid "Show power supply" -msgstr "Показать Ñлектро зоны" +msgstr "Показать зоны ÑлектроÑнабжениÑ" + +#: data/gui/minimap.xml +#, fuzzy +msgid "Show resources. Use scroll buttons to cylce through views." +msgstr "" +"Показать затраты и прибыль. Ðажимайте Ñнова, чтобы увидеть другие данные." #: data/gui/minimapswitchbuttons.xml msgid "Show sport cover" msgstr "Показать Ñпортивные зоны" +#: data/gui/minimap.xml +msgid "Show the MiniMap" +msgstr "Показать мини-карту" + #: data/gui/minimapswitchbuttons.xml msgid "Show traffic density" -msgstr "Показать напрÑженноÑÑ‚ÑŒ трафика" +msgstr "Показать зоны транÑпорта" #: data/gui/minimapswitchbuttons.xml msgid "Show unemployment" -msgstr "Показать доÑтупноÑÑ‚ÑŒ работы. " +msgstr "Показать безработицы" -#: data/gui/mod_wind_up.xml -msgid "Modern Windmills available" -msgstr "ÐŸÑ€Ð¾Ð´Ð²Ð¸Ð½ÑƒÑ‚Ð°Ñ Ð²ÐµÑ‚Ñ€ÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð° доÑтупна" +#: data/gui/solarpowerup.xml +msgid "Solar Power Stations available" +msgstr "Солнечные ÑлектроÑтанции доÑтупны." -#: data/gui/mod_wind_up.xml +#: data/gui/nobull-tip.xml +msgid "Sorry you can't bulldoze a tip." +msgstr "Уничтожить Ñвалку невозможно." + +#: data/gui/too-old.xml msgid "" -"You have reached the tech level which enables you to build modern, more " -"efficient, windmills. " +"Sorry, the game you wanted is too old. Cannot load it. Still play with " +"previous game." msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить продвинутые, Ñффективные " -"ветрÑные мельницы. " - -#: data/gui/newgame.xml -msgid "Choose Scenario" -msgstr "Выбрать Ñценарий" +"Извините, файл Ñ Ñохраненной игрой уÑтарел. ПользуйтеÑÑŒ более Ñтарыми " +"верÑиÑми игры." + +#: data/gui/options.xml +msgid "Sound Effects" +msgstr "Звуковые Ñффекты" + +#: data/gui/creditslist.xml +msgid "Sound and Music" +msgstr "Звук и музыка" #: data/gui/newgame.xml msgid "Start" msgstr "Ðачать" +#: data/gui/minimap.xml +msgid "Stats" +msgstr "Ст-ка" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Steel" +msgstr "Сталь" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Tech Level" +msgstr "Образование" + +#: data/gui/pbar2nd.xml +msgid "Tenants" +msgstr "Жители" + +#: data/gui/allgone.xml +msgid "There are no people left in this city." +msgstr "Ð’ городе больше нет людей." + +#: data/gui/coal_survey_yn.xml +msgid "This will cost you 1 million once. After that it is free to call again." +msgstr "Это дейÑтвие отнимет 1 миллион рублей. Ð’ дальнейшем беÑплатно. " + +#: data/gui/launch-gone.xml +msgid "Total Evacuation Complete." +msgstr "Итого Ñвакуировано." + +#: data/gui/tradedialog.xml +msgid "Trade Settings" +msgstr "Торговые наÑтройки" + +#: data/gui/creditslist.xml +msgid "Translation" +msgstr "Перевод" + +#: data/gui/universityup.xml +msgid "University available" +msgstr "УниверÑитеты доÑтупны" + #: data/gui/newgame.xml -msgid "Start with empty board." -msgstr "Ðачать Ñ Ð¿ÑƒÑтой карты" +msgid "Village" +msgstr "С поÑелением" + +#: data/gui/bulldoze_river_yn.xml data/gui/bulldoze_monument_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Want to bulldoze?" +msgstr "Хотите ÑнеÑти?" + +#: data/gui/bulldoze_river_yn.xml data/gui/bulldoze_monument_yn.xml +#: data/gui/too-old.xml data/gui/bulldoze_shanty_yn.xml data/gui/warning.xml +msgid "Warning" +msgstr "Внимание" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Warning: Bulldozing monuments is expensive" +msgstr "Внимание: Попытка ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¼Ð¾Ð½ÑƒÐ¼ÐµÐ½Ñ‚Ð°" + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Warning: Bulldozing shanties is dangerous." +msgstr "Внимание: Попытка ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ Ñ…Ð¸Ð¶Ð¸Ð½Ñ‹. " + +#: data/gui/bulldoze_river_yn.xml +msgid "Warning: Bulldozing water is expensive" +msgstr "Внимание: Попытка заÑыпать речку." + +#: data/gui/pbar2nd.xml data/gui/tradedialog.xml +msgid "Waste" +msgstr "МуÑор" + +#: data/gui/pbar2nd.xml +msgid "Water" +msgstr "Вода" + +#: data/gui/launch-gone.xml +msgid "Well done you have evacuated all your people." +msgstr "ПоздравлÑем, вы Ñвакуировали вÑех людей." + +#: data/gui/windmillup.xml +msgid "Windmills available" +msgstr "Ветрогенераторы доÑтупны" #: data/gui/newgame.xml -msgid "Start with random village." -msgstr "Ðачать Ñо Ñлучайного городишки." +msgid "Without trees" +msgstr "Без деревьев" -#: data/gui/no-credit-parkland.xml data/gui/no-credit-recycle.xml -#: data/gui/no-credit-rocket.xml data/gui/no-credit-solar-power.xml -#: data/gui/no-credit-university.xml -msgid "No Credit Available" -msgstr "Ðет кредитов" +#: data/gui/bulldoze_river_yn.xml data/gui/coal_survey_yn.xml +#: data/gui/launch_rocket_yn.xml data/gui/bulldoze_monument_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Yes" +msgstr "Да" + +#: data/gui/fire.xml +msgid "You better go and look for it" +msgstr "Вам лучше идти и поÑмотреть на Ñто" + +#: data/gui/launch_rocket_yn.xml +msgid "" +"You can launch the rocket now or wait until later. If you wait it will " +"continue costing you money to keep the rocket ready. Launch it later by " +"clicking on the rocket area." +msgstr "" +"Ð’Ñ‹ можете запуÑтить ракету ÑÐµÐ¹Ñ‡Ð°Ñ Ð¸Ð»Ð¸ позже. Содержание ракеты Ñтоит денег. " +"Чтобы запуÑтить позже, нажмите на ракетной площадке." + +#: data/gui/import-exportup.xml +msgid "" +"You can now import and export coal, goods, ore and steel. Read the help " +"pages on these subjects to find out how to use them. " +msgstr "" +"Теперь вы можете покупать и продавать реÑурÑÑ‹. Это уголь, товар и прочее. " +"Прочитайте помощь, чтобы найти ответ, как Ñтим пользоватьÑÑ. " #: data/gui/no-credit-parkland.xml msgid "" @@ -551,29 +663,75 @@ "build universities on credit." msgstr "УниверÑитеты запрещено Ñтроить при отрицательном баланÑе." -#: data/gui/nobull-tip.xml -msgid "Not Allowed" -msgstr "Запрещено" +#: data/gui/launch-evac.xml +msgid "" +"You have evacuated 1000 people. You might want to reduce the size of your " +"economy to reflect the reduced population. " +msgstr "" +"Ð’Ñ‹ Ñвакуировали 1000 человек. Теперь нужно Ñледить за Ñкономикой и роÑтом " +"наÑелениÑ." -#: data/gui/nobull-tip.xml -msgid "Sorry you can't bulldoze a tip." -msgstr "Уничтожить помойку невозможно." +#: data/gui/blacksmithup.xml +msgid "" +"You have reached the tech level which enables you to build blacksmiths. " +"Blacksmiths use jobs and steel to make goods." +msgstr "" +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить кузницы. Которые дают работу и " +"позволÑÑŽÑ‚ производить товары." -#: data/gui/options.xml -msgid "Background Music" -msgstr "Музыка" +#: data/gui/coalpowerup.xml +msgid "" +"You have reached the tech level which enables you to build coal fired power " +"stations." +msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить угольные ÑлектроÑтанции." -#: data/gui/options.xml -msgid "Fullscreen" -msgstr "Полный Ñкран" +#: data/gui/firestationup.xml +msgid "" +"You have reached the tech level which enables you to build fire stations. " +"Fire stations prevent most fires from starting. If you haven't had any fires " +"yet, you might not think you need them." +msgstr "" +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить пожарные Ñтанции. ЕÑли у Ð²Ð°Ñ Ð½ÐµÑ‚ " +"ни одной пожарной Ñтанции, не думайте, что они не нужны." -#: data/gui/options.xml -msgid "Sound Effects" -msgstr "Звуковые Ñффекты" +#: data/gui/healthup.xml +msgid "" +"You have reached the tech level which enables you to build health centres. " +"Heath centres reduce the number of people killed by pollution and increase " +"overall productivity." +msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить больницы." -#: data/gui/parkup.xml -msgid "Parks available" -msgstr "Парк доÑтупен" +#: data/gui/hvindustryup.xml +msgid "" +"You have reached the tech level which enables you to build heavy industry " +"(steel works). Heavy industry produces steel. " +msgstr "" +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить Ñ‚Ñжелую индуÑтрию (производить " +"Ñталь)." + +#: data/gui/ltindustryup.xml +msgid "" +"You have reached the tech level which enables you to build light industry. " +"Light industry produces goods. " +msgstr "" +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить легкую индуÑтрию. Она Ñоздает " +"товары. " + +#: data/gui/millup.xml +msgid "" +"You have reached the tech level which enables you to build mills. Mills use " +"jobs and food to make goods. Watch out, they can use a lot of food! " +msgstr "" +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить текÑильные фабрики. Они дают работу и " +"позволÑÑŽÑ‚ производить товары из еды. Они могут иÑтратить Ñлишком много еды!" + +#: data/gui/mod_wind_up.xml +msgid "" +"You have reached the tech level which enables you to build modern, more " +"efficient, windmills. " +msgstr "" +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить продвинутые, Ñффективные " +"ветрогенераторы. " #: data/gui/parkup.xml msgid "" @@ -583,62 +741,6 @@ "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить парки. Они дейÑтвуют на " "наÑеление. " -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Coal" -msgstr "Уголь" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Food" -msgstr "Еда" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Goods" -msgstr "Товары" - -#: data/gui/pbar.xml data/gui/tradedialog.xml -msgid "Jobs" -msgstr "Работа" - -#: data/gui/pbar.xml -msgid "Money" -msgstr "Деньги" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Ore" -msgstr "Руда" - -#: data/gui/pbar.xml -msgid "Population" -msgstr "ÐаÑеление" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Steel" -msgstr "Сталь" - -#: data/gui/pbar.xml -msgid "Tech Level" -msgstr "Образование" - -#: data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Buy" -msgstr "Купить" - -#: data/gui/portdialog.xml -msgid "Harbour Trade Settings" -msgstr "ÐаÑтройки Порта" - -#: data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Product" -msgstr "Продукт" - -#: data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Sell" -msgstr "Продано" - -#: data/gui/potteryup.xml -msgid "Potteries available" -msgstr "Гончарные доÑтупны" - #: data/gui/potteryup.xml msgid "" "You have reached the tech level which enables you to build potteries. " @@ -648,48 +750,20 @@ "и из руды делают товары. " #: data/gui/railwayup.xml -msgid "Railways available" -msgstr "ДоÑтупна Ð¶ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°(рельÑÑ‹)" - -#: data/gui/railwayup.xml msgid "You have reached the tech level which enables you to build railways. " msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить железную дорогу. " -#: data/gui/recycleup.xml -msgid "Recycling Centres available" -msgstr "Центр переработки доÑтупен" - -#: data/gui/recycleup.xml -msgid "" -"You have reached the tech level which enables you to recycling centres. " -"Recycling centres recycle used goods back into ore. " -msgstr "" -"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет копать Ñтроить центры переработки. " -"Центры переработки из иÑпользованных товаров делают руду." - -#: data/gui/riverup.xml -msgid "Rivers available" -msgstr "Речки доÑтупны" - #: data/gui/riverup.xml msgid "You have reached the tech level which enables you to build rivers. " msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет рыть реки. " #: data/gui/roadup.xml -msgid "Roads available" -msgstr "Дороги доÑтупны" - -#: data/gui/roadup.xml msgid "" "You have reached the tech level which enables you to build roads. See the " "help screen for more information." msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет клаÑÑ‚ÑŒ дороги." #: data/gui/rocketup.xml -msgid "Rocket Launch Pad available" -msgstr "Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ ÑƒÑтановка доÑтупна" - -#: data/gui/rocketup.xml msgid "" "You have reached the tech level which enables you to build rocket launch " "pads. Rockets enable you to evacuate your population and is a way to 'win' " @@ -698,18 +772,6 @@ "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить ракетные площадки. Ðа ракетах " "можно увеÑти вÑех людей в другой мир, тем Ñамым выиграть игру." -#: data/gui/savegame.xml -msgid "Save Game" -msgstr "Сохранить игру" - -#: data/gui/savegame.xml -msgid "save to selected slot" -msgstr "Сохранить в выбранный Ñлот" - -#: data/gui/schoolup.xml -msgid "Schools available" -msgstr "Школы доÑтупны" - #: data/gui/schoolup.xml msgid "" "You have reached the tech level which enables you to build schools. Schools " @@ -718,94 +780,105 @@ "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить школы. Школы дают работу, и " "товар преобразовывают в научный уровень." -#: data/gui/shfire-oc.xml +#: data/gui/solarpowerup.xml msgid "" -"A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may " -"spread to other areas. " -msgstr "" -"Пожар уничтожил хижину. Огонь вышел из под контролÑ! И может уничтожить " -"другие поÑтройки!!! " +"You have reached the tech level which enables you to build solar power " +"stations. " +msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить Ñолнечные ÑлектроÑтанции. " -#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml -msgid "Fire" -msgstr "Огонь" +#: data/gui/universityup.xml +msgid "" +"You have reached the tech level which enables you to build universities. " +"Universities produces PhDs, which produce more technology. " +msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить универÑитеты. " -#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml -msgid "Fire!" -msgstr "Пожар!" +#: data/gui/windmillup.xml +msgid "You have reached the tech level which enables you to build windmills. " +msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить ветрогенераторы. " -#: data/gui/shfire-uc.xml +#: data/gui/coalmineup.xml msgid "" -"A fire has broken out at a shanty town. It is in a fire cover area and " -"APPEARS to be under control. " +"You have reached the tech level which enables you to dig deep coal mines." +msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет копать глубокие угольные шахты." + +#: data/gui/recycleup.xml +msgid "" +"You have reached the tech level which enables you to recycling centres. " +"Recycling centres recycle used goods back into ore. " msgstr "" -"Пожар уничтожил хижину. ЕÑли так дальше пойдет, он может выйти из под " -"контролÑ. " +"Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет копать Ñтроить центры переработки. " +"Центры переработки из иÑпользованных товаров делают руду." -#: data/gui/solarpowerup.xml -msgid "Solar Power Stations available" -msgstr "Солнечные ÑлектроÑтанции доÑтупны." +#: data/gui/sustain.xml data/gui/launch-gone.xml +msgid "You have won the game." +msgstr "Ð’Ñ‹ выиграли!" -#: data/gui/solarpowerup.xml +#: data/gui/allgone.xml +msgid "You should start a new career elsewhere." +msgstr "Ð’Ñ‹ должны попробовать реализоватьÑÑ Ð³Ð´Ðµ-нибудь ещё." + +#: data/gui/cricketup.xml msgid "" -"You have reached the tech level which enables you to build solar power " -"stations. " -msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить Ñолнечные ÑлектроÑтанции. " +"Your people have invented basketball. Basketball Courts use a few jobs and " +"goods and make people in the surrounding areas (about 10 units in each " +"direction) happier." +msgstr "" +"Ваши люди придумали баÑкетбол. БаÑкетбольные площадки иÑпользуют работу, " +"товары и делают людей (в зоне 10 клеток) ÑчаÑтливыми." -#: data/gui/speedpanel.xml -msgid "Go back to Main Menu" -msgstr "ВернутьÑÑ Ð² главное меню" +#: data/gui/launch-fail.xml +msgid "" +"Your rocket crashed shortly after launch. People no longer trust the " +"technology for evacuation. You must launch five more unmanned rockets to " +"restore confidence." +msgstr "" +"Ваша ракета взорвалаÑÑŒ поÑле взлета. Теперь люди боÑÑ‚ÑŒÑÑ Ð»ÐµÑ‚Ð°Ñ‚ÑŒ в ракетах. " +"Ð’Ñ‹ должны запуÑтить 5 ракет, чтобы люди в них Ñнова поверили." -#: data/gui/speedpanel.xml -msgid "Pause the game" -msgstr "Пауза игры" +#: data/gui/minimap.xml +msgid "[+] Zoom in view so that less buildings but more details are visible" +msgstr "[+] Увеличить." -#: data/gui/speedpanel.xml -msgid "Run the simulation with fast speed" -msgstr "ЗапуÑтить игру Ñ Ð±Ñ‹Ñтрой ÑкороÑтью" +#: data/gui/minimap.xml +msgid "[-] Zoom out" +msgstr "[-] Отдалить" -#: data/gui/speedpanel.xml -msgid "Run the simulation with normal speed" -msgstr "ЗапуÑтить игру Ñ Ð½Ð¾Ñ€Ð¼Ð°Ð»ÑŒÐ½Ð¾Ð¹ ÑкороÑтью" +#: data/gui/minimap.xml +msgid "[F1] Press this button to get help" +msgstr "[F1] Ðажмите и уведете помощь " -#: data/gui/speedpanel.xml -msgid "Run the simulation with very fast speed" -msgstr "ЗапуÑтить игру Ñ Ð¾Ñ‡ÐµÐ½ÑŒ быÑтрой ÑкороÑтью" +#: data/gui/minimap.xml +msgid "[h] Hide high buildings. " +msgstr "[h] СпрÑтать Ñложные зданиÑ" -#: data/gui/sustain.xml -msgid "Economy Sustainable." -msgstr "Экономика Ñтабилизирована." +#: data/gui/minimap.xml +msgid "[m] Scroll up." +msgstr "[m] ЛиÑтать вверх" -#: data/gui/sustain.xml -msgid "LinCity has determined that you have a sustainable economy." -msgstr "LinCity принÑла решение о том, что у Ð²Ð°Ñ ÑÑ‚Ð°Ð±Ð¸Ð»Ð¸Ð·Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð½Ð°Ñ Ñкономика." +#: data/gui/minimap.xml +msgid "[n] Scroll down." +msgstr "[n] ЛиÑтать вниз" -#: data/gui/too-old.xml -msgid "" -"Sorry, the game you wanted is too old. Cannot load it. Still play with " -"previous game." -msgstr "" -"Извините, файл Ñ Ñохраненной игрой уÑтарел. ПользуйтеÑÑŒ более Ñтарыми " -"верÑиÑми игры." +#: data/gui/minimap.xml +msgid "[v] Cycle through MiniMap overlay modes. " +msgstr "[v] Показать на оÑновной карте то, что находитьÑÑ Ð½Ð° мини-карте." -#: data/gui/tradedialog.xml -msgid "Trade Settings" -msgstr "Торговые наÑтройки" +#: data/gui/pbar2nd.xml +msgid "kWh" +msgstr "кВт⋅ч" -#: data/gui/universityup.xml -msgid "University available" -msgstr "УниверÑитеты доÑтупны" +#: data/gui/minimap.xml +msgid "toggle terrain height rendering" +msgstr "" -#: data/gui/universityup.xml -msgid "" -"You have reached the tech level which enables you to build universities. " -"Universities produces PhDs, which produce more technology. " -msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить универÑитеты. " +#~ msgid "Show resources." +#~ msgstr "Показать реÑурÑÑ‹." -#: data/gui/windmillup.xml -msgid "Windmills available" -msgstr "ВетрÑные мельницы доÑтупны" +#~ msgid "Start with empty board." +#~ msgstr "Ðачать Ñ Ð¿ÑƒÑтой карты" -#: data/gui/windmillup.xml -msgid "You have reached the tech level which enables you to build windmills. " -msgstr "Уровень научного Ñ€Ð°Ð·Ð²Ð¸Ñ‚Ð¸Ñ Ð¿Ð¾Ð·Ð²Ð¾Ð»Ñет Ñтроить ветрÑные мельницы. " +#~ msgid "Start with random village." +#~ msgstr "Ðачать Ñо Ñлучайного городишки." + +#~ msgid "save to selected slot" +#~ msgstr "Сохранить в выбранный Ñлот" diff -Nru lincity-ng-2.0/data/locale/gui/tr.po lincity-ng-2.9~git20150314/data/locale/gui/tr.po --- lincity-ng-2.0/data/locale/gui/tr.po 2009-01-25 20:21:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gui/tr.po 2015-05-05 16:32:50.000000000 +0000 @@ -1,352 +1,220 @@ # translation of tr.po to Türkçe # This file is distributed under the same license as the Lincity-NG +# Volkan Gezer <volkangezer@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: tr\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: Mon Feb 18 22:35:34 2008\n" -"PO-Revision-Date: 2007-12-16 22:50+0100\n" -"Last-Translator: benz <uyg01@hotmail.com>\n" -"Language-Team: Türkçe\n" +"POT-Creation-Date: Tue Jul 30 19:30:05 2013\n" +"PO-Revision-Date: 2013-07-30 19:46+0200\n" +"Last-Translator: Volkan Gezer <volkangezer@gmail.com>\n" +"Language-Team: Turkish <kde-l10n-tr@kde.org>\n" +"Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Lokalize 1.5\n" -#: data/gui/allgone.xml -msgid "Nobody Home" -msgstr "Kimsesiz ev" +#: data/gui/minimap.xml +msgid "$" +msgstr " TRY" -#: data/gui/allgone.xml data/gui/blacksmithup.xml data/gui/coalmineup.xml -#: data/gui/coalpowerup.xml data/gui/cricketup.xml data/gui/fire.xml -#: data/gui/firestationup.xml data/gui/healthup.xml data/gui/hvindustryup.xml -#: data/gui/import-exportup.xml data/gui/launch-evac.xml -#: data/gui/launch-fail.xml data/gui/launch-gone.xml data/gui/launch-good.xml -#: data/gui/ltindustryup.xml data/gui/millup.xml data/gui/mod_wind_up.xml -#: data/gui/no-credit-parkland.xml data/gui/no-credit-recycle.xml -#: data/gui/no-credit-rocket.xml data/gui/no-credit-solar-power.xml -#: data/gui/no-credit-university.xml data/gui/nobull-tip.xml -#: data/gui/options.xml data/gui/parkup.xml data/gui/potteryup.xml -#: data/gui/railwayup.xml data/gui/recycleup.xml data/gui/riverup.xml -#: data/gui/roadup.xml data/gui/rocketup.xml data/gui/schoolup.xml -#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml data/gui/solarpowerup.xml -#: data/gui/sustain.xml data/gui/too-old.xml data/gui/universityup.xml -#: data/gui/warning.xml data/gui/windmillup.xml -msgid "Ok" -msgstr "Tamam" +#: data/gui/fire.xml +msgid "A Fire has started" +msgstr "Yangın çıktı" -#: data/gui/allgone.xml -msgid "There are no people left in this city." -msgstr "Bu ÅŸehirde insan kalmamış" +#: data/gui/shfire-uc.xml +msgid "" +"A fire has broken out at a shanty town. It is in a fire cover area and " +"APPEARS to be under control. " +msgstr "" +"Çıkan yangın gecekondu mahallesini bozdu. Ä°tfaiye bölgeye ulaÅŸtı ve kontrol " +"altında olduÄŸu GÖRÃœLÃœYOR. " -#: data/gui/allgone.xml -msgid "You should start a new career elsewhere." -msgstr "BaÅŸka bir yerde yeni bir kariyer baÅŸlatmalısınız." +#: data/gui/shfire-oc.xml +msgid "" +"A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may " +"spread to other areas. " +msgstr "" +"Çıkan yangın gecekondu mahallesini bozdu. Yangın KONTROLDEN ÇIKTI ve diÄŸer " +"bölgelere yayılabilir. " -#: data/gui/blacksmithup.xml -msgid "Blacksmiths available" -msgstr "Demirciler Kullanılabilir" +#: data/gui/newgame.xml data/gui/credits.xml data/gui/loadgame.xml +#: data/gui/savegame.xml +msgid "Back" +msgstr "Geri" -#: data/gui/blacksmithup.xml data/gui/coalmineup.xml data/gui/coalpowerup.xml -#: data/gui/cricketup.xml data/gui/firestationup.xml data/gui/healthup.xml -#: data/gui/hvindustryup.xml data/gui/import-exportup.xml -#: data/gui/ltindustryup.xml data/gui/millup.xml data/gui/mod_wind_up.xml -#: data/gui/parkup.xml data/gui/potteryup.xml data/gui/railwayup.xml -#: data/gui/recycleup.xml data/gui/riverup.xml data/gui/roadup.xml -#: data/gui/rocketup.xml data/gui/schoolup.xml data/gui/solarpowerup.xml -#: data/gui/universityup.xml data/gui/windmillup.xml -msgid "New Invention" -msgstr "Yeni KeÅŸif" +#: data/gui/options.xml +msgid "Background Music" +msgstr "Arkaplan MüziÄŸi" -#: data/gui/blacksmithup.xml data/gui/coalpowerup.xml data/gui/cricketup.xml -#: data/gui/firestationup.xml data/gui/healthup.xml data/gui/hvindustryup.xml -#: data/gui/ltindustryup.xml data/gui/millup.xml data/gui/mod_wind_up.xml -#: data/gui/parkup.xml data/gui/potteryup.xml data/gui/railwayup.xml -#: data/gui/recycleup.xml data/gui/riverup.xml data/gui/rocketup.xml -#: data/gui/schoolup.xml data/gui/solarpowerup.xml data/gui/universityup.xml -#: data/gui/windmillup.xml -msgid "See the help screen for more information." -msgstr "Daha fazla bilgi için yardım ekranına bakın." +#: data/gui/cricketup.xml +msgid "Basketball Courts available" +msgstr "Basketbol Sahaları Kullanılabilir" + +#: data/gui/options.xml +msgid "Binary mode" +msgstr "Ä°kili kip" #: data/gui/blacksmithup.xml -msgid "" -"You have reached the tech level which enables you to build blacksmiths. " -"Blacksmiths use jobs and steel to make goods." -msgstr "" -"Teknoloji seviyesini Demirciler yapabilecek düzeye ulaÅŸtırdınız. Demirciler " -"işçileri kullanır ve çelikten eÅŸyalar yapar." +msgid "Blacksmiths available" +msgstr "Demirciler Kullanılabilir" #: data/gui/bulldoze_monument_yn.xml msgid "Bulldozing a monument costs a lot of money." msgstr "Anıtı yıkmak yüksek fiyatlıdır." -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml data/gui/coal_survey_yn.xml -#: data/gui/launch_rocket_yn.xml -msgid "No" -msgstr "Hayır" - -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml -msgid "Want to bulldoze?" -msgstr "Yıkmak mı istiyorsun?" - -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml data/gui/too-old.xml data/gui/warning.xml -msgid "Warning" -msgstr "Uyarı" - -#: data/gui/bulldoze_monument_yn.xml -msgid "Warning: Bulldozing monuments is expensive" -msgstr "Uyarı: Anıt yıkmak pahalıdır." - -#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml -#: data/gui/bulldoze_shanty_yn.xml data/gui/coal_survey_yn.xml -#: data/gui/launch_rocket_yn.xml -msgid "Yes" -msgstr "Evet" - #: data/gui/bulldoze_river_yn.xml msgid "Bulldozing a section of river costs a lot of money." msgstr "Nehir yıkmak yüksek fiyatlıdır." -#: data/gui/bulldoze_river_yn.xml -msgid "Warning: Bulldozing water is expensive" -msgstr "Uyarı: Nehir yıkmak pahalıdır." - #: data/gui/bulldoze_shanty_yn.xml msgid "Bulldozing a shanty town costs a lot of money and may cause a fire." msgstr "" "Gecekondu mahallesini yıkmak yüksek fiyatlıdır ve yangına sebep olabilir." -#: data/gui/bulldoze_shanty_yn.xml -msgid "Warning: Bulldozing shanties is dangerous." -msgstr "Uyarı: Gecekondu Mahallesi yıkmak tehlikelidir." - -#: data/gui/coal_survey_yn.xml -msgid "Coal Survey" -msgstr "Kömür AraÅŸtırması" +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Buy" +msgstr "Satın al" -#: data/gui/coal_survey_yn.xml -msgid "Do coal survey?" -msgstr "Kömür AraÅŸtırması yapacakmısınız?" +#: data/gui/newgame.xml +msgid "Choose Scenario" +msgstr "Senaryo Seç" -#: data/gui/coal_survey_yn.xml -msgid "Send out Prospectors" -msgstr "Maden AraÅŸtırmacılarını gönder" +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Coal" +msgstr "Kömür" -#: data/gui/coal_survey_yn.xml -msgid "This will cost you 1 million once. After that it is free to call again." -msgstr "" -"Bu size 1 milyona mal olacak. Ödedikten sonra tekrar kullanmak ücretsiz." +#: data/gui/coalpowerup.xml +msgid "Coal Fired Power Stations available" +msgstr "Termik Santraller kullanılabilir " #: data/gui/coalmineup.xml msgid "Coal Mine available" msgstr "Kömür Madeni kullanılabilir" -#: data/gui/coalmineup.xml -msgid "" -"See the help screen for more information on coal mines and coal surveys." -msgstr "" -"Kömür Madeninde ve Kömür AraÅŸtırmalarında daha fazla bilgi için yardım " -"ekranına bakın." - -#: data/gui/coalmineup.xml -msgid "" -"You have reached the tech level which enables you to dig deep coal mines." -msgstr "" -"Teknoloji seviyesini derin Kömür Madenleri yapabilecek düzeye ulaÅŸtırdınız." - -#: data/gui/coalpowerup.xml -msgid "Coal Fired Power Stations available" -msgstr "Kömürden Elektrik Ãœreteçleri kullanılabilir " - -#: data/gui/coalpowerup.xml -msgid "" -"You have reached the tech level which enables you to build coal fired power " -"stations." -msgstr "" -"Teknoloji seviyesini Kömürden Elektrik Ãœreteci yapabilecek düzeye " -"ulaÅŸtırdınız." - -#: data/gui/credits.xml data/gui/loadgame.xml data/gui/newgame.xml -#: data/gui/savegame.xml -msgid "Back" -msgstr "Geri" +#: data/gui/coal_survey_yn.xml +msgid "Coal Survey" +msgstr "Kömür AraÅŸtırması" #: data/gui/creditslist.xml msgid "Code" msgstr "Kod" -#: data/gui/creditslist.xml data/gui/mainmenu.xml +#: data/gui/mainmenu.xml +msgid "Continue" +msgstr "Devam" + +#: data/gui/mainmenu.xml data/gui/creditslist.xml msgid "Credits" msgstr "Hazırlayanlar" -#: data/gui/creditslist.xml -msgid "Graphics" -msgstr "Canlandırmalar" - -#: data/gui/creditslist.xml -msgid "Original Idea and Code" -msgstr "Orjinal fikir ve kod" - -#: data/gui/creditslist.xml -msgid "Sound and Music" -msgstr "Ses ve Müzik" +#: data/gui/coal_survey_yn.xml +msgid "Do coal survey?" +msgstr "Kömür AraÅŸtırması yapacak mısınız?" -#: data/gui/creditslist.xml -msgid "Translation" -msgstr "" +#: data/gui/launch-good.xml +msgid "Doing well." +msgstr "Ä°yi gidiyor." -#: data/gui/cricketup.xml -msgid "Basketball Courts available" -msgstr "Basketbol Sahaları Kullanılabilir" +#: data/gui/minimap.xml +msgid "Eco" +msgstr "Eko" -#: data/gui/cricketup.xml -msgid "" -"Your people have invented basketball. Basketball Courts use a few jobs and " -"goods and make people in the surrounding areas (about 10 units in each " -"direction) happier." -msgstr "" -"Ä°nsanların basketbolu keÅŸfetti. Basketbol Sahaları biraz işçi ve eÅŸya " -"kullanır ve bölgenin etrafındaki insanları mutlu eder (her yöndeki 10 " -"üniteyi) " +#: data/gui/sustain.xml +msgid "Economy Sustainable." +msgstr "Ekonomi Sürdürülebilir." -#: data/gui/fire.xml -msgid "A Fire has started" -msgstr "Yangın Çıktı" +#: data/gui/launch-evac.xml +msgid "Evacuation Launch Good" +msgstr "Tahliye Ä°yi BaÅŸladı" -#: data/gui/fire.xml -msgid "You better go and look for it" -msgstr "Gidip bakarsan daha iyi olacak." +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire" +msgstr "Yangın" #: data/gui/firestationup.xml msgid "Fire Stations available" msgstr "Ä°tfaiyeler kullanılabilir" -#: data/gui/firestationup.xml -msgid "" -"You have reached the tech level which enables you to build fire stations. " -"Fire stations prevent most fires from starting. If you haven't had any fires " -"yet, you might not think you need them." -msgstr "" -"Teknoloji seviyesini Ä°tfaiye yapabilecek düzeye ulaÅŸtırdınız. Ä°tfaiye birçok " -"yangını baÅŸlamadan engeller. EÄŸer henüz hiç yangın çıkmadıysa, ihtiyacınız " -"olmadığını düşünmemelisiniz." +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire!" +msgstr "Yangın!" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Food" +msgstr "Yiyecek" + +#: data/gui/options.xml +msgid "Fullscreen" +msgstr "Tam Ekran" #: data/gui/gamestats.xml msgid "Gamestats" -msgstr "OyunÄ°stat" +msgstr "Oyun Ä°stat." -#: data/gui/gamestats.xml -msgid "Okay" -msgstr "Tamam" +#: data/gui/speedpanel.xml +msgid "Go back to Main Menu" +msgstr "Ana Menüye Dön" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Goods" +msgstr "EÅŸya" + +#: data/gui/creditslist.xml +msgid "Graphics" +msgstr "Canlandırmalar" + +#: data/gui/portdialog.xml +msgid "Harbour Trade Settings" +msgstr "Liman Ticareti Ayarları" #: data/gui/healthup.xml msgid "Health Centres available" msgstr "Hastaneler Kullanılabilir" -#: data/gui/healthup.xml -msgid "" -"You have reached the tech level which enables you to build health centres. " -"Heath centres reduce the number of people killed by pollution and increase " -"overall productivity." -msgstr "" -"Teknoloji seviyesini Hastaneler yapabilecek düzeye ulaÅŸtırdınız. Hastaneler " -"kirlilikten insan ölümlerinin sayısını azaltır ve toplam verimliliÄŸi artırır." - #: data/gui/hvindustryup.xml msgid "Heavy Industry available" msgstr "Ağır Sanayi kullanılabilir" -#: data/gui/hvindustryup.xml -msgid "" -"You have reached the tech level which enables you to build heavy industry " -"(steel works). Heavy industry produces steel. " -msgstr "" -"Teknoloji seviyesini Ağır Sanayi yapabilecek düzeye ulaÅŸtırdınız (Çelik " -"işçiliÄŸi). Ağır Sanayi ÇeliÄŸi iÅŸler" +#: data/gui/pbar2nd.xml +msgid "Housing" +msgstr "Konutlandırma" #: data/gui/import-exportup.xml msgid "Import/Export available" msgstr "Ä°thalat/Ä°hracat Kullanılabilir" -#: data/gui/import-exportup.xml -msgid "" -"You can now import and export coal, goods, ore and steel. Read the help " -"pages on these subjects to find out how to use them. " -msgstr "" -"Artık Kömür, EÅŸya, Mineral ve Çelik Ä°thal/Ä°hrac edebilirsiniz. Onları nasıl " -"kullanacağınızı öğrenmek için o nesneler üzerindeki yardımı okuyun." - -#: data/gui/launch-evac.xml -msgid "Evacuation Launch Good" -msgstr "Tahliye iyi baÅŸladı" +#: data/gui/tradedialog.xml data/gui/pbar.xml +msgid "Jobs" +msgstr "İşçi" -#: data/gui/launch-evac.xml -msgid "" -"You have evacuated 1000 people. You might want to reduce the size of your " -"economy to reflect the reduced population. " -msgstr "" -"Tahliye edilmiÅŸ 1000 ÅŸahıs var. Ekonominizin boyutunu nüfusunuzun azalmasına " -"aksetmek isteyebilirsiniz." +#: data/gui/options.xml +msgid "Language" +msgstr "Dil" #: data/gui/launch-fail.xml msgid "Launch Failure" msgstr "Fırlatma BaÅŸarısız" -#: data/gui/launch-fail.xml -msgid "" -"Your rocket crashed shortly after launch. People no longer trust the " -"technology for evacuation. You must launch five more unmanned rockets to " -"restore confidence." -msgstr "" -"Füzen, fırlatmadan kısa süre sonra infilak etti. Tahliye için insanlar " -"teknolojiye artık güvenmez. Güveni tekrar kazanmak için 5 insansız füze daha " -"fırlatmalısınız." +#: data/gui/launch-good.xml +msgid "Launch Successfull" +msgstr "Fırlatma BaÅŸarılı" -#: data/gui/launch-gone.xml -msgid "Total Evacuation Complete." -msgstr "Tamamlanan Toplam Tahliye" +#: data/gui/launch_rocket_yn.xml +msgid "Launch now?" +msgstr "Åžimdi fırlat?" -#: data/gui/launch-gone.xml -msgid "Well done you have evacuated all your people." -msgstr "BaÅŸardın; bütün insanlarını tahliye ettin" - -#: data/gui/launch-gone.xml data/gui/sustain.xml -msgid "You have won the game." -msgstr "Oyunu kazandın." - -#: data/gui/launch-good.xml -msgid "Doing well." -msgstr "Ä°yi gidiyor" - -#: data/gui/launch-good.xml -msgid "Launch Successfull" -msgstr "Fırlatma BaÅŸarılı" - -#: data/gui/launch_rocket_yn.xml -msgid "Launch now?" -msgstr "Åžimdi fırlat?" - -#: data/gui/launch_rocket_yn.xml -msgid "Rocket Ready" -msgstr "Füze Hazır" - -#: data/gui/launch_rocket_yn.xml -msgid "Rocket ready to launch" -msgstr "Füze Atılmaya Hazır" +#: data/gui/ltindustryup.xml +msgid "Light Industry available" +msgstr "Hafif Sanayi kullanılabilir" -#: data/gui/launch_rocket_yn.xml -msgid "" -"You can launch the rocket now or wait until later. If you wait it will " -"continue costing you money to keep the rocket ready. Launch it later by " -"clicking on the rocket area." -msgstr "" -"Füzeyi ÅŸimdi fırlatabilirsiniz yada daha sonrası için beklersiniz. EÄŸer " -"beklerseniz füzeyi hazır tutmak masraflı olmaya devam edecek. Füze bölgesine " -"tıklayarak daha sonra fırlatın." +#: data/gui/sustain.xml +msgid "LinCity has determined that you have a sustainable economy." +msgstr "LinCity, sürdürülebilir bir ekonomiye sahip olduÄŸunuza karar verdi." -#: data/gui/loadgame.xml data/gui/mainmenu.xml +#: data/gui/mainmenu.xml data/gui/loadgame.xml msgid "Load" msgstr "Yükle" @@ -354,127 +222,238 @@ msgid "Load Game" msgstr "Oyunu Yükle" -#: data/gui/ltindustryup.xml -msgid "Light Industry available" -msgstr "Hafif Sanayi kullanılabilir" +#: data/gui/pbar2nd.xml +msgid "MWh" +msgstr "MWh" -#: data/gui/ltindustryup.xml -msgid "" -"You have reached the tech level which enables you to build light industry. " -"Light industry produces goods. " -msgstr "" -"Teknoloji seviyesini Hafif Sanayi yapabilecek düzeye ulaÅŸtırdınız. Hafif " -"Sanayi EÅŸya yapar" +#: data/gui/minimap.xml +msgid "Map" +msgstr "Hari." -#: data/gui/mainmenu.xml -msgid "Continue" -msgstr "Devam" +#: data/gui/options.xml +msgid "Map Size" +msgstr "Harita Boyutu" + +#: data/gui/millup.xml +msgid "Mills available" +msgstr "Fabrikalar kullanılabilir" + +#: data/gui/mod_wind_up.xml +msgid "Modern Windmills available" +msgstr "GeliÅŸmiÅŸ Rüzgar DeÄŸirmenleri kullanılabilir" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Money" +msgstr "Para" #: data/gui/mainmenu.xml data/gui/newgame.xml msgid "New Game" msgstr "Yeni Oyun" -#: data/gui/mainmenu.xml data/gui/options.xml +#: data/gui/blacksmithup.xml data/gui/railwayup.xml data/gui/schoolup.xml +#: data/gui/solarpowerup.xml data/gui/coalmineup.xml +#: data/gui/import-exportup.xml data/gui/riverup.xml data/gui/healthup.xml +#: data/gui/coalpowerup.xml data/gui/windmillup.xml data/gui/parkup.xml +#: data/gui/potteryup.xml data/gui/mod_wind_up.xml data/gui/cricketup.xml +#: data/gui/rocketup.xml data/gui/universityup.xml data/gui/hvindustryup.xml +#: data/gui/roadup.xml data/gui/millup.xml data/gui/firestationup.xml +#: data/gui/recycleup.xml data/gui/ltindustryup.xml +msgid "New Invention" +msgstr "Yeni KeÅŸif" + +#: data/gui/bulldoze_monument_yn.xml data/gui/launch_rocket_yn.xml +#: data/gui/coal_survey_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "No" +msgstr "Hayır" + +#: data/gui/no-credit-university.xml data/gui/no-credit-recycle.xml +#: data/gui/no-credit-solar-power.xml data/gui/no-credit-rocket.xml +#: data/gui/no-credit-parkland.xml +msgid "No Credit Available" +msgstr "Kullanılabilir Kredi Yok" + +#: data/gui/allgone.xml +msgid "Nobody Home" +msgstr "Kimsesiz Ev" + +#: data/gui/nobull-tip.xml +msgid "Not Allowed" +msgstr "Ä°zin Verilmedi" + +#: data/gui/no-credit-university.xml data/gui/blacksmithup.xml +#: data/gui/options.xml data/gui/railwayup.xml data/gui/shfire-uc.xml +#: data/gui/schoolup.xml data/gui/no-credit-recycle.xml +#: data/gui/solarpowerup.xml data/gui/coalmineup.xml +#: data/gui/import-exportup.xml data/gui/riverup.xml data/gui/launch-good.xml +#: data/gui/healthup.xml data/gui/coalpowerup.xml data/gui/windmillup.xml +#: data/gui/parkup.xml data/gui/launch-fail.xml data/gui/potteryup.xml +#: data/gui/allgone.xml data/gui/mod_wind_up.xml data/gui/cricketup.xml +#: data/gui/no-credit-solar-power.xml data/gui/warning.xml +#: data/gui/rocketup.xml data/gui/fire.xml data/gui/launch-gone.xml +#: data/gui/universityup.xml data/gui/hvindustryup.xml +#: data/gui/no-credit-rocket.xml data/gui/roadup.xml data/gui/millup.xml +#: data/gui/nobull-tip.xml data/gui/sustain.xml data/gui/firestationup.xml +#: data/gui/no-credit-parkland.xml data/gui/recycleup.xml +#: data/gui/ltindustryup.xml data/gui/too-old.xml data/gui/shfire-oc.xml +#: data/gui/launch-evac.xml +msgid "Ok" +msgstr "Tamam" + +#: data/gui/gamestats.xml +msgid "Okay" +msgstr "Tamam" + +#: data/gui/options.xml data/gui/mainmenu.xml msgid "Options" msgstr "Seçenekler" -#: data/gui/mainmenu.xml -msgid "Quit" -msgstr "Çık" +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Ore" +msgstr "Mineral" -#: data/gui/mainmenu.xml -msgid "Save" -msgstr "Kayıt" +#: data/gui/creditslist.xml +msgid "Original Idea and Code" +msgstr "Orjinal Fikir ve Kod" -#: data/gui/millup.xml -msgid "Mills available" -msgstr "Fabrikalar kullanılabilir" +#: data/gui/parkup.xml +msgid "Parks available" +msgstr "Parklar kullanılabilir" -#: data/gui/millup.xml -msgid "" -"You have reached the tech level which enables you to build mills. Mills use " -"jobs and food to make goods. Watch out, they can use a lot of food! " -msgstr "" -"Teknoloji seviyenizi Fabrikalar yapabilecek düzeye ulaÅŸtırdınız. Fabrikalar " -"EÅŸya üretmek için yiyecek ve işçi kullanır. Dikkat edin, fazla yiyecek " -"kullanabilirler! " +#: data/gui/speedpanel.xml +msgid "Pause the game" +msgstr "Oyunu duraklat" -#: data/gui/minimap.xml -msgid "$" -msgstr "YTL" +#: data/gui/pbar2nd.xml +msgid "Pollution" +msgstr "Kirlilik" -#: data/gui/minimap.xml -msgid "Eco" -msgstr "Eko" +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Population" +msgstr "Nüfus" -#: data/gui/minimap.xml -msgid "Map" -msgstr "Hari." +#: data/gui/potteryup.xml +msgid "Potteries available" +msgstr "Çömlekçiler kullanılabilir" #: data/gui/minimap.xml msgid "Press this button to show statistics" msgstr "Ä°statistikleri görüntülemek için bu düğmeye basın" -#: data/gui/minimap.xml -msgid "Show Income and Expenses. Click this tab again to cycle through views." -msgstr "" -"Geliri ve masrafları göster. Görünümler arası dönüşüm için tekrar bu sekmeye " -"basın." +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Product" +msgstr "Ãœrün" -#: data/gui/minimap.xml -msgid "Show economy graphs." -msgstr "Ekonomi canlandırmasını Göster" +#: data/gui/mainmenu.xml +msgid "Quit" +msgstr "Çık" -#: data/gui/minimap.xml -#, fuzzy -msgid "Show resources." -msgstr "Kaynakları göster" +#: data/gui/railwayup.xml +msgid "Railways available" +msgstr "Demiryolları kullanılabilir" -#: data/gui/minimap.xml -msgid "Show the MiniMap" -msgstr "Küçükharita'yı göster" +#: data/gui/recycleup.xml +msgid "Recycling Centres available" +msgstr "Geridönüşüm Merkezleri kullanılabilir" -#: data/gui/minimap.xml -msgid "Stats" -msgstr "Ä°stat." +#: data/gui/options.xml +msgid "Resolution" +msgstr "Çözünürlük" -#: data/gui/minimap.xml -msgid "[+] Zoom in view so that less buildings but more details are visible" +#: data/gui/riverup.xml +msgid "Rivers available" +msgstr "Nehir kullanılabilir" + +#: data/gui/roadup.xml +msgid "Roads available" +msgstr "Yollar kullanılabilir" + +#: data/gui/rocketup.xml +msgid "Rocket Launch Pad available" +msgstr "Füze Rampası kullanılabilir" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket Ready" +msgstr "Füze Hazır" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket ready to launch" +msgstr "Füze atılmaya hazır" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with fast speed" +msgstr "Benzetimi yüksek hızda çalıştır" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with normal speed" +msgstr "Benzetimi normal hızda çalıştır" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with very fast speed" +msgstr "Benzetimi çok yüksek hızda çalıştır" + +#: data/gui/mainmenu.xml data/gui/savegame.xml +msgid "Save" +msgstr "Kayıt" + +#: data/gui/savegame.xml +msgid "Save Game" +msgstr "Oyunu Kayıt Et" + +#: data/gui/schoolup.xml +msgid "Schools available" +msgstr "Okullar kullanılabilir" + +#: data/gui/coalmineup.xml +msgid "" +"See the help screen for more information on coal mines and coal surveys." msgstr "" -"[+] Görüntüye yaklaÅŸ bu ÅŸekilde daha az yapı fakat daha fazla ayrıntı " -"görülebilir." +"Kömür Madeninde ve Kömür AraÅŸtırmalarında daha fazla bilgi için yardım " +"ekranına bakın." -#: data/gui/minimap.xml -msgid "[-] Zoom out" -msgstr "[-] UzaklaÅŸ" +#: data/gui/blacksmithup.xml data/gui/railwayup.xml data/gui/schoolup.xml +#: data/gui/solarpowerup.xml data/gui/riverup.xml data/gui/healthup.xml +#: data/gui/coalpowerup.xml data/gui/windmillup.xml data/gui/parkup.xml +#: data/gui/potteryup.xml data/gui/mod_wind_up.xml data/gui/cricketup.xml +#: data/gui/rocketup.xml data/gui/universityup.xml data/gui/hvindustryup.xml +#: data/gui/millup.xml data/gui/firestationup.xml data/gui/recycleup.xml +#: data/gui/ltindustryup.xml +msgid "See the help screen for more information." +msgstr "Daha fazla bilgi için yardım ekranına bakın." -#: data/gui/minimap.xml -msgid "[F1] Press this button to get help" -msgstr "[F1] Yardım almak için bu düğmeye basın." +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Sell" +msgstr "Sat" -#: data/gui/minimap.xml -msgid "[h] Hide high buildings. " -msgstr "[h] Yüksek yapıları gizle." +#: data/gui/coal_survey_yn.xml +msgid "Send out Prospectors" +msgstr "Maden AraÅŸtırmacılarını gönder" #: data/gui/minimap.xml -msgid "[v] Cycle through MiniMap overlay modes. " -msgstr "[v] Küçükharita uygulama modları yoluyla dönüş" +msgid "Show Income and Expenses. Use scroll buttons to cylce through views." +msgstr "" +"Geliri ve Masrafları göster. Görünümler arası dönüşüm için kaydırma " +"düğmelerini kullanın." #: data/gui/minimapswitchbuttons.xml msgid "Show coal depots" -msgstr "Kömür Depolarını Göster" +msgstr "Kömür depolarını göster" + +#: data/gui/minimap.xml +msgid "Show economy graphs." +msgstr "Ekonomi grafiklerini göster." #: data/gui/minimapswitchbuttons.xml msgid "Show fire department cover" -msgstr "Ä°tfaiye alanlarını Göster" +msgstr "Ä°tfaiye alanlarını göster" #: data/gui/minimapswitchbuttons.xml msgid "Show map outline" -msgstr "Harita krokisini Göster" +msgstr "Harita krokisini göster" #: data/gui/minimapswitchbuttons.xml msgid "Show medical care" -msgstr "SaÄŸlık bakım alanlarını Göster" +msgstr "SaÄŸlık bakım alanlarını göster" #: data/gui/minimapswitchbuttons.xml msgid "Show nourishments" @@ -488,9 +467,19 @@ msgid "Show power supply" msgstr "Elektrik kaynaklarını göster" +#: data/gui/minimap.xml +msgid "Show resources. Use scroll buttons to cylce through views." +msgstr "" +"Geliri ve Masrafları göster. Görünümler arası dönüşüm için kaydırma " +"düğmelerini kullanın." + #: data/gui/minimapswitchbuttons.xml msgid "Show sport cover" -msgstr "Spor alanlarını göster " +msgstr "Spor alanlarını göster" + +#: data/gui/minimap.xml +msgid "Show the MiniMap" +msgstr "Küçük haritayı göster" #: data/gui/minimapswitchbuttons.xml msgid "Show traffic density" @@ -500,164 +489,255 @@ msgid "Show unemployment" msgstr "Ä°ÅŸsizliÄŸi göster" -#: data/gui/mod_wind_up.xml -msgid "Modern Windmills available" -msgstr "GeliÅŸmiÅŸ YeldeÄŸirmenleri kullanılabilir" +#: data/gui/solarpowerup.xml +msgid "Solar Power Stations available" +msgstr "GüneÅŸ Panelleri kullanılabilir" -#: data/gui/mod_wind_up.xml +#: data/gui/nobull-tip.xml +msgid "Sorry you can't bulldoze a tip." +msgstr "Ãœzgünüm, çöplüğü yıkamazsnız." + +#: data/gui/too-old.xml msgid "" -"You have reached the tech level which enables you to build modern, more " -"efficient, windmills. " +"Sorry, the game you wanted is too old. Cannot load it. Still play with " +"previous game." msgstr "" -"Teknoloji seviyesini daha geliÅŸmiÅŸ, daha verimli YeldeÄŸirmenleri yapabilecek " -"düzeye ulaÅŸtırdınız." +"Ãœzgünüm, istediÄŸiniz oyun çok eski. Yüklenemiyor. Hala önceki oyun ile " +"oynanılabilir." -#: data/gui/newgame.xml -msgid "Choose Scenario" -msgstr "Senaryo seç" +#: data/gui/options.xml +msgid "Sound Effects" +msgstr "Ses Etkileri" + +#: data/gui/creditslist.xml +msgid "Sound and Music" +msgstr "Ses ve Müzik" #: data/gui/newgame.xml msgid "Start" msgstr "BaÅŸla" -#: data/gui/newgame.xml -msgid "Start with empty board." -msgstr "BoÅŸ Arazi ile BaÅŸla" +#: data/gui/minimap.xml +msgid "Stats" +msgstr "Ä°stat." -#: data/gui/newgame.xml -msgid "Start with random village." -msgstr "Rasgele Köy ile BaÅŸla" +#: data/gui/tradedialog.xml data/gui/portdialog.xml data/gui/pbar.xml +msgid "Steel" +msgstr "Çelik" + +#: data/gui/pbar2nd.xml data/gui/pbar.xml +msgid "Tech Level" +msgstr "Tek. Seviyesi" + +#: data/gui/allgone.xml +msgid "There are no people left in this city." +msgstr "Bu ÅŸehirde insan kalmamış." + +#: data/gui/coal_survey_yn.xml +msgid "This will cost you 1 million once. After that it is free to call again." +msgstr "" +"Bu size 1 milyona mal olacak. Ödedikten sonra tekrar kullanmak ücretsiz." + +#: data/gui/launch-gone.xml +msgid "Total Evacuation Complete." +msgstr "Tamamlanan Toplam Tahliye." + +#: data/gui/tradedialog.xml +msgid "Trade Settings" +msgstr "Ticaret Seçenekleri" + +#: data/gui/creditslist.xml +msgid "Translation" +msgstr "Çeviri" + +#: data/gui/universityup.xml +msgid "University available" +msgstr "Ãœniversite kullanılabilir" + +#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Want to bulldoze?" +msgstr "Yıkmak mı istiyorsunuz?" + +#: data/gui/bulldoze_monument_yn.xml data/gui/warning.xml +#: data/gui/bulldoze_river_yn.xml data/gui/bulldoze_shanty_yn.xml +#: data/gui/too-old.xml +msgid "Warning" +msgstr "Uyarı" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Warning: Bulldozing monuments is expensive" +msgstr "Uyarı: Anıt yıkmak pahalıdır." + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Warning: Bulldozing shanties is dangerous." +msgstr "Uyarı: Gecekondu Mahallesi yıkmak tehlikelidir." + +#: data/gui/bulldoze_river_yn.xml +msgid "Warning: Bulldozing water is expensive" +msgstr "Uyarı: Nehir yıkmak pahalıdır." + +#: data/gui/tradedialog.xml data/gui/pbar2nd.xml +msgid "Waste" +msgstr "Atık" + +#: data/gui/pbar2nd.xml +msgid "Water" +msgstr "Su" + +#: data/gui/launch-gone.xml +msgid "Well done you have evacuated all your people." +msgstr "BaÅŸardınız; bütün insanlarını tahliye ettiniz." + +#: data/gui/windmillup.xml +msgid "Windmills available" +msgstr "Rüzgar DeÄŸirmenleri kullanılabilir" + +#: data/gui/bulldoze_monument_yn.xml data/gui/launch_rocket_yn.xml +#: data/gui/coal_survey_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Yes" +msgstr "Evet" + +#: data/gui/fire.xml +msgid "You better go and look for it" +msgstr "Gidip bakarsanız daha iyi olacak." + +#: data/gui/launch_rocket_yn.xml +msgid "" +"You can launch the rocket now or wait until later. If you wait it will " +"continue costing you money to keep the rocket ready. Launch it later by " +"clicking on the rocket area." +msgstr "" +"Füzeyi ÅŸimdi fırlatabilir veya daha sonrası için bekleyebilirsiniz. EÄŸer " +"beklerseniz füzeyi hazır tutmak masraflı olmaya devam edecek. Sonradan " +"fırlatmak için füze bölgesine tıklayın." + +#: data/gui/import-exportup.xml +msgid "" +"You can now import and export coal, goods, ore and steel. Read the help " +"pages on these subjects to find out how to use them. " +msgstr "" +"Artık Kömür, EÅŸya, Mineral ve Çelik Ä°thal/Ä°hraç edebilirsiniz. Nasıl " +"kullanacağınızı öğrenmek için o nesneler üzerindeki yardımı okuyun." + +#: data/gui/no-credit-parkland.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build parks on credit." +msgstr "Bütçenizde açık var. Yasama Kurulu Park yapmanıza izin vermeyecek." + +#: data/gui/no-credit-recycle.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build recycling centres on credit." +msgstr "" +"Bütçenizde açık var. Yasama Kurulu Geridönüşüm Merkezi yapmanıza izin " +"vermeyecek." + +#: data/gui/no-credit-rocket.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build rocket launch pads on credit." +msgstr "" +"Bütçenizde açık var. Yasam Kurulu Füze Rampası yapmanıza izin vermeyecek." + +#: data/gui/no-credit-solar-power.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build solar power stations on credit." +msgstr "" +"Bütçenizde açık var. Yasama Kurulu GüneÅŸ Panelleri yapmanıza izin vermeyecek." -#: data/gui/no-credit-parkland.xml data/gui/no-credit-recycle.xml -#: data/gui/no-credit-rocket.xml data/gui/no-credit-solar-power.xml #: data/gui/no-credit-university.xml -msgid "No Credit Available" -msgstr "Kullanılabilir Kredi yok" +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build universities on credit." +msgstr "" +"Bütçenizde açık var. Yasam Kurulu Ãœniversite yapmanıza izin vermeyecek." + +#: data/gui/launch-evac.xml +msgid "" +"You have evacuated 1000 people. You might want to reduce the size of your " +"economy to reflect the reduced population. " +msgstr "" +"Tahliye edilmiÅŸ 1000 ÅŸahıs var. Ekonominizin boyutunu nüfusunuzun azalmasına " +"aksetmek isteyebilirsiniz. " + +#: data/gui/blacksmithup.xml +msgid "" +"You have reached the tech level which enables you to build blacksmiths. " +"Blacksmiths use jobs and steel to make goods." +msgstr "" +"Teknoloji seviyesini Demirciler yapabilecek düzeye ulaÅŸtırdınız. Demirciler " +"işçileri kullanır ve çelikten eÅŸyalar yapar." + +#: data/gui/coalpowerup.xml +msgid "" +"You have reached the tech level which enables you to build coal fired power " +"stations." +msgstr "" +"Teknoloji seviyesini Termik Santraller yapabilecek düzeye ulaÅŸtırdınız." + +#: data/gui/firestationup.xml +msgid "" +"You have reached the tech level which enables you to build fire stations. " +"Fire stations prevent most fires from starting. If you haven't had any fires " +"yet, you might not think you need them." +msgstr "" +"Teknoloji seviyesini Ä°tfaiye yapabilecek düzeye ulaÅŸtırdınız. Ä°tfaiye birçok " +"yangını baÅŸlamadan engeller. EÄŸer henüz hiç yangın çıkmadıysa, ihtiyacınız " +"olmadığını düşünmemelisiniz." -#: data/gui/no-credit-parkland.xml +#: data/gui/healthup.xml msgid "" -"You have a budget deficit. The legislative council will not allow you to " -"build parks on credit." +"You have reached the tech level which enables you to build health centres. " +"Heath centres reduce the number of people killed by pollution and increase " +"overall productivity." msgstr "" -"Bütçenizde açık var. Yasama Kurulu Millet Bahçesi yapmanıza izin vermeyecek." +"Teknoloji seviyesini Hastaneler yapabilecek düzeye ulaÅŸtırdınız. Hastaneler " +"kirlilikten insan ölümlerinin sayısını azaltır ve toplam verimliliÄŸi artırır." -#: data/gui/no-credit-recycle.xml +#: data/gui/hvindustryup.xml msgid "" -"You have a budget deficit. The legislative council will not allow you to " -"build recycling centres on credit." +"You have reached the tech level which enables you to build heavy industry " +"(steel works). Heavy industry produces steel. " msgstr "" -"Bütçenizde açık var. Yasama Kurulu Geridönüşüm Merkezi yapmanıza izin " -"vermeyecek." +"Teknoloji seviyesini Ağır Sanayi yapabilecek düzeye ulaÅŸtırdınız (Çelik " +"işçiliÄŸi). Ağır Sanayi çeliÄŸi iÅŸler." -#: data/gui/no-credit-rocket.xml +#: data/gui/ltindustryup.xml msgid "" -"You have a budget deficit. The legislative council will not allow you to " -"build rocket launch pads on credit." +"You have reached the tech level which enables you to build light industry. " +"Light industry produces goods. " msgstr "" -"Bütçenizde açık var. Yasam Kurulu Füze Rampası yapmanıza izin vermeyecek." +"Teknoloji seviyesini Hafif Sanayi yapabilecek düzeye ulaÅŸtırdınız. Hafif " +"Sanayi EÅŸya üretir. " -#: data/gui/no-credit-solar-power.xml +#: data/gui/millup.xml msgid "" -"You have a budget deficit. The legislative council will not allow you to " -"build solar power stations on credit." +"You have reached the tech level which enables you to build mills. Mills use " +"jobs and food to make goods. Watch out, they can use a lot of food! " msgstr "" -"Bütçenizde açık var. Yasama Kurulu GüneÅŸsel Elektrik Santrali yapmanıza izin " -"vermeyecek." +"Teknoloji seviyenizi Fabrikalar yapabilecek düzeye ulaÅŸtırdınız. Fabrikalar " +"EÅŸya üretmek için yiyecek ve işçi kullanır. Dikkat edin, fazla yiyecek " +"kullanabilirler! " -#: data/gui/no-credit-university.xml +#: data/gui/mod_wind_up.xml msgid "" -"You have a budget deficit. The legislative council will not allow you to " -"build universities on credit." +"You have reached the tech level which enables you to build modern, more " +"efficient, windmills. " msgstr "" -"Bütçenizde açık var. Yasam Kurulu Ãœniversite yapmanıza izin vermeyecek." - -#: data/gui/nobull-tip.xml -msgid "Not Allowed" -msgstr "Ä°zin Verilmedi" - -#: data/gui/nobull-tip.xml -msgid "Sorry you can't bulldoze a tip." -msgstr "Ãœzgünüm, çöplüğü yıkamazsnız" - -#: data/gui/options.xml -msgid "Background Music" -msgstr "Arkaplan MüziÄŸi" - -#: data/gui/options.xml -msgid "Fullscreen" -msgstr "Tam ekran" - -#: data/gui/options.xml -msgid "Sound Effects" -msgstr "Ses Etkileri" - -#: data/gui/parkup.xml -msgid "Parks available" -msgstr "Millet Bahçeleri kullanılabilir" +"Teknoloji seviyesini daha geliÅŸmiÅŸ, daha verimli Rüzgar DeÄŸirmenleri " +"yapabilecek düzeye ulaÅŸtırdınız. " #: data/gui/parkup.xml msgid "" "You have reached the tech level which enables you to build parks. Parks are " "used to absorb pollution. " msgstr "" -"Teknoloji seviyesini Millet Bahçesi yapabilecek düzeye ulaÅŸtırdınız. Millet " -"Pahçeleri açlığı etkisizleÅŸtirmek için kullanılır." - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Coal" -msgstr "Kömür" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Food" -msgstr "Yiyecek" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Goods" -msgstr "EÅŸya" - -#: data/gui/pbar.xml data/gui/tradedialog.xml -msgid "Jobs" -msgstr "İşçi" - -#: data/gui/pbar.xml -msgid "Money" -msgstr "Para" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Ore" -msgstr "Mineral" - -#: data/gui/pbar.xml -msgid "Population" -msgstr "Nüfus" - -#: data/gui/pbar.xml data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Steel" -msgstr "Çelik" - -#: data/gui/pbar.xml -msgid "Tech Level" -msgstr "Tek. Seviyesi" - -#: data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Buy" -msgstr "Satın al" - -#: data/gui/portdialog.xml -msgid "Harbour Trade Settings" -msgstr "Liman Ticareti Ayarları" - -#: data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Product" -msgstr "Ãœrün" - -#: data/gui/portdialog.xml data/gui/tradedialog.xml -msgid "Sell" -msgstr "Sat" - -#: data/gui/potteryup.xml -msgid "Potteries available" -msgstr "Çömlekçiler kullanılabilir" +"Teknoloji seviyesini Park yapabilecek düzeye ulaÅŸtırdınız. Park açlığı " +"etkisizleÅŸtirmek için kullanılır. " #: data/gui/potteryup.xml msgid "" @@ -669,36 +749,12 @@ "Mineral Madenine ihtiyacınız var) " #: data/gui/railwayup.xml -msgid "Railways available" -msgstr "Demiryolları kullanılabilir" - -#: data/gui/railwayup.xml msgid "You have reached the tech level which enables you to build railways. " -msgstr "Teknoloji seviyesini Demiryolları yapabilecek düzeye ulaÅŸtırdınız." - -#: data/gui/recycleup.xml -msgid "Recycling Centres available" -msgstr "Geridönüşüm Merkezleri kullanılabilir" - -#: data/gui/recycleup.xml -msgid "" -"You have reached the tech level which enables you to recycling centres. " -"Recycling centres recycle used goods back into ore. " -msgstr "" -"Teknoloji seviyesini Geridönüşüm Merkezleri yapabilecek düzeye ulaÅŸtırdınız. " -"Geridönüşüm Merkezleri kullanılmış eÅŸyaları minerale geri çevirir." - -#: data/gui/riverup.xml -msgid "Rivers available" -msgstr "Nehir kullanılabilir" +msgstr "Teknoloji seviyesini Demiryolları yapabilecek düzeye ulaÅŸtırdınız. " #: data/gui/riverup.xml msgid "You have reached the tech level which enables you to build rivers. " -msgstr "Teknoloji seviyesini Nehir yapabilecek düzeye ulaÅŸtırdınız." - -#: data/gui/roadup.xml -msgid "Roads available" -msgstr "Yollar kullanılabilir" +msgstr "Teknoloji seviyesini Nehir yapabilecek düzeye ulaÅŸtırdınız. " #: data/gui/roadup.xml msgid "" @@ -709,10 +765,6 @@ "için Yardım ekranına bakın." #: data/gui/rocketup.xml -msgid "Rocket Launch Pad available" -msgstr "Füze Rampası kullanılabilir" - -#: data/gui/rocketup.xml msgid "" "You have reached the tech level which enables you to build rocket launch " "pads. Rockets enable you to evacuate your population and is a way to 'win' " @@ -721,18 +773,6 @@ "Teknoloji seviyesini Füze Rampası yapabilecek düzeye ulaÅŸtırdınız. Füzeler " "nüfusunuzu tahliye etmenizi saÄŸlar ve oyunu 'kazanmanızın' bir yoludur." -#: data/gui/savegame.xml -msgid "Save Game" -msgstr "Oyunu Kayıt Et" - -#: data/gui/savegame.xml -msgid "save to selected slot" -msgstr "seçilen dilimi kayıt etmek için" - -#: data/gui/schoolup.xml -msgid "Schools available" -msgstr "Okullar kullanılabilir" - #: data/gui/schoolup.xml msgid "" "You have reached the tech level which enables you to build schools. Schools " @@ -741,96 +781,113 @@ "Teknoloji seviyesini Okullar yapabilecek düzeye ulaÅŸtırdınız. Okullar " "teknoloji seviyesini artırmak için işçileri ve eÅŸyaları kullanır." -#: data/gui/shfire-oc.xml +#: data/gui/solarpowerup.xml msgid "" -"A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may " -"spread to other areas. " +"You have reached the tech level which enables you to build solar power " +"stations. " +msgstr "Teknoloji seviyesini GüneÅŸ Panelleri yapabilecek düzeye ulaÅŸtırdınız. " + +#: data/gui/universityup.xml +msgid "" +"You have reached the tech level which enables you to build universities. " +"Universities produces PhDs, which produce more technology. " msgstr "" -"Çıkan yangın gecekondu mahallesini bozdu. Yangın KONTROLDEN ÇIKTI ve diÄŸer " -"bölgelere yayılabilir." +"Teknoloji seviyesini Ãœniversiteler yapabilecek düzeye ulaÅŸtırdınız. " +"Ãœniversiteler daha fazla teknoloji saÄŸlayan Doktora mezunları saÄŸlar. " -#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml -msgid "Fire" -msgstr "Yangın" +#: data/gui/windmillup.xml +msgid "You have reached the tech level which enables you to build windmills. " +msgstr "" +"Teknoloji seviyesini Rüzgar DeÄŸirmenleri yapabilecek düzeye ulaÅŸtırdınız. " -#: data/gui/shfire-oc.xml data/gui/shfire-uc.xml -msgid "Fire!" -msgstr "Yangın!" +#: data/gui/coalmineup.xml +msgid "" +"You have reached the tech level which enables you to dig deep coal mines." +msgstr "" +"Teknoloji seviyesini derin Kömür Madenleri yapabilecek düzeye ulaÅŸtırdınız." -#: data/gui/shfire-uc.xml +#: data/gui/recycleup.xml msgid "" -"A fire has broken out at a shanty town. It is in a fire cover area and " -"APPEARS to be under control. " +"You have reached the tech level which enables you to recycling centres. " +"Recycling centres recycle used goods back into ore. " msgstr "" -"Çıkan yangın gecekondu mahallesini bozdu. Ä°tfaiye bölgesinde oldu ve kontrol " -"altında olduÄŸu aÅŸikâr" +"Teknoloji seviyesini Geridönüşüm Merkezleri yapabilecek düzeye ulaÅŸtırdınız. " +"Geridönüşüm Merkezleri kullanılmış eÅŸyaları minerale geri çevirir. " -#: data/gui/solarpowerup.xml -msgid "Solar Power Stations available" -msgstr "GüneÅŸsel Elektrik Ãœreteçleri kullanılabilir" +#: data/gui/launch-gone.xml data/gui/sustain.xml +msgid "You have won the game." +msgstr "Oyunu kazandınız." -#: data/gui/solarpowerup.xml +#: data/gui/allgone.xml +msgid "You should start a new career elsewhere." +msgstr "BaÅŸka bir yerde yeni bir kariyer baÅŸlatmalısınız." + +#: data/gui/cricketup.xml msgid "" -"You have reached the tech level which enables you to build solar power " -"stations. " +"Your people have invented basketball. Basketball Courts use a few jobs and " +"goods and make people in the surrounding areas (about 10 units in each " +"direction) happier." msgstr "" -"Teknoloji seviyesini GüneÅŸsel Elektrik Ãœreteçleri yapabilecek düzeye " -"ulaÅŸtırdınız." +"Ä°nsanlarınız basketbolu keÅŸfetti. Basketbol Sahaları biraz işçi ve eÅŸya " +"kullanır ve bölgenin etrafındaki insanları mutlu eder (her yöndeki 10 " +"üniteyi) " -#: data/gui/speedpanel.xml -msgid "Go back to Main Menu" -msgstr "Ana menüye dön" +#: data/gui/launch-fail.xml +msgid "" +"Your rocket crashed shortly after launch. People no longer trust the " +"technology for evacuation. You must launch five more unmanned rockets to " +"restore confidence." +msgstr "" +"Füzeniz, fırlatmadan kısa süre sonra infilak etti. Tahliye için insanlar " +"teknolojiye artık güvenmez. Güveni tekrar kazanmak için 5 insansız füze daha " +"fırlatmalısınız." -#: data/gui/speedpanel.xml -msgid "Pause the game" -msgstr "Oyunu Duraklat" +#: data/gui/minimap.xml +msgid "[+] Zoom in view so that less buildings but more details are visible" +msgstr "" +"[+] Görüntüye yaklaÅŸ. Bu ÅŸekilde daha az yapı fakat daha fazla ayrıntı " +"görülebilir." -#: data/gui/speedpanel.xml -msgid "Run the simulation with fast speed" -msgstr "Benzetimi Yüksek Hızda Çalıştır" +#: data/gui/minimap.xml +msgid "[-] Zoom out" +msgstr "[-] UzaklaÅŸ" -#: data/gui/speedpanel.xml -msgid "Run the simulation with normal speed" -msgstr "Benzetimi Normal Hızda Çalıştır" +#: data/gui/minimap.xml +msgid "[F1] Press this button to get help" +msgstr "[F1] Yardım almak için bu düğmeye basın" -#: data/gui/speedpanel.xml -msgid "Run the simulation with very fast speed" -msgstr "Benzetimi Çok Yüksek Hızda Çalıştır" +#: data/gui/minimap.xml +msgid "[h] Hide high buildings. " +msgstr "[h] Yüksek yapıları gizle. " -#: data/gui/sustain.xml -msgid "Economy Sustainable." -msgstr "Ekonomi Sürdürülebilir" +#: data/gui/minimap.xml +msgid "[m] Scroll up." +msgstr "[m] Yukarı kaydır." -#: data/gui/sustain.xml -msgid "LinCity has determined that you have a sustainable economy." -msgstr "Sahip olduÄŸunuz sürdürülebilir ekonomi sayesinde LinCity azimkâr" +#: data/gui/minimap.xml +msgid "[n] Scroll down." +msgstr "[n] AÅŸağı kaydır." -#: data/gui/too-old.xml -msgid "" -"Sorry, the game you wanted is too old. Cannot load it. Still play with " -"previous game." -msgstr "" +#: data/gui/minimap.xml +msgid "[v] Cycle through MiniMap overlay modes. " +msgstr "[v] Küçük harita uygulama kipleri yoluyla dönüş. " -#: data/gui/tradedialog.xml -msgid "Trade Settings" -msgstr "Ticaret Seçenekleri" +#: data/gui/pbar2nd.xml +msgid "kWh" +msgstr "kWh" -#: data/gui/universityup.xml -msgid "University available" -msgstr "Ãœniversite kullanılabilir" +#: data/gui/minimap.xml +msgid "toggle terrain height rendering" +msgstr "zemin yükseklik hazırlamasını aç/kapat" -#: data/gui/universityup.xml -msgid "" -"You have reached the tech level which enables you to build universities. " -"Universities produces PhDs, which produce more technology. " -msgstr "" -"Teknoloji seviyesini Ãœniversiteler yapabilecek düzeye ulaÅŸtırdınız. " -"Ãœniversiteler daha fazla teknoloji saÄŸlayan PhDs saÄŸlar." +#~ msgid "Show resources." +#~ msgstr "Kaynakları göster." -#: data/gui/windmillup.xml -msgid "Windmills available" -msgstr "YeldeÄŸirmenleri kullanılabilir" +#~ msgid "Start with empty board." +#~ msgstr "BoÅŸ arazi ile baÅŸla." -#: data/gui/windmillup.xml -msgid "You have reached the tech level which enables you to build windmills. " -msgstr "Teknoloji seviyesini YeldeÄŸirmenleri yapabilecek düzeye ulaÅŸtırdınız." +#~ msgid "Start with random village." +#~ msgstr "Rastgele köy ile baÅŸla." + +#~ msgid "save to selected slot" +#~ msgstr "seçilen dilimi kayıt etmek için" diff -Nru lincity-ng-2.0/data/locale/gui/zh_CN.po lincity-ng-2.9~git20150314/data/locale/gui/zh_CN.po --- lincity-ng-2.0/data/locale/gui/zh_CN.po 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/gui/zh_CN.po 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,789 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: LINCITY Chinese\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: Wed Dec 19 13:48:29 2007\n" +"PO-Revision-Date: 2013-03-01 14:12-0800\n" +"Last-Translator: Z-Localization <azaytseva@miis.edu>\n" +"Language-Team: Z Localization <azaytseva@miis.edu>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.5\n" +"Language: zh_CN\n" + +#: data/gui/minimap.xml +msgid "$" +msgstr "$" + +#: data/gui/fire.xml +msgid "A Fire has started" +msgstr "ç€ç«äº†" + +#: data/gui/shfire-uc.xml +msgid "" +"A fire has broken out at a shanty town. It is in a fire cover area and " +"APPEARS to be under control. " +msgstr "在一个贫民窟处开始ç€ç«ã€‚ç«åŠ¿è¦†ç›–范围之内,貌似一切在å¯æŽ§èŒƒå›´ä¹‹å†…。" + +#: data/gui/shfire-oc.xml +msgid "" +"A fire has broken out at a shanty town. The fire is OUT OF CONTROL and may " +"spread to other areas. " +msgstr "在一个贫民窟处开始ç€ç«ã€‚ç«åŠ¿æ— æ³•æŽ§åˆ¶ï¼Œå¯èƒ½è”“延至其他地区。" + +#: data/gui/newgame.xml data/gui/loadgame.xml data/gui/credits.xml +#: data/gui/savegame.xml +msgid "Back" +msgstr "åŽé€€" + +#: data/gui/options.xml +msgid "Background Music" +msgstr "背景音ä¹" + +#: data/gui/cricketup.xml +msgid "Basketball Courts available" +msgstr "篮çƒåœºå¯ç”¨" + +#: data/gui/blacksmithup.xml +msgid "Blacksmiths available" +msgstr "é“匠铺å¯ç”¨" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Bulldozing a monument costs a lot of money." +msgstr "推倒一个纪念碑è¦èŠ±å¾ˆå¤šé’±ã€‚" + +#: data/gui/bulldoze_river_yn.xml +msgid "Bulldozing a section of river costs a lot of money." +msgstr "推倒一个河段è¦èŠ±å¾ˆå¤šé’±ã€‚" + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Bulldozing a shanty town costs a lot of money and may cause a fire." +msgstr "推倒一个贫民窟è¦èŠ±å¾ˆå¤šé’±ï¼Œå¹¶æœ‰ç«ç¾å±é™©ã€‚" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Buy" +msgstr "è´­ä¹°" + +#: data/gui/newgame.xml +msgid "Choose Scenario" +msgstr "选择情景" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Coal" +msgstr "矿山" + +#: data/gui/coalpowerup.xml +msgid "Coal Fired Power Stations available" +msgstr "煤电站å¯ç”¨" + +#: data/gui/coalmineup.xml +msgid "Coal Mine available" +msgstr "矿山" + +#: data/gui/coal_survey_yn.xml +msgid "Coal Survey" +msgstr "煤矿调查" + +#: data/gui/creditslist.xml +msgid "Code" +msgstr "代ç " + +#: data/gui/mainmenu.xml +msgid "Continue" +msgstr "继续" + +#: data/gui/mainmenu.xml data/gui/creditslist.xml +msgid "Credits" +msgstr "积分" + +#: data/gui/coal_survey_yn.xml +msgid "Do coal survey?" +msgstr "åšç…¤çŸ¿è°ƒæŸ¥å—?" + +#: data/gui/launch-good.xml +msgid "Doing well." +msgstr "åšçš„很好。" + +#: data/gui/minimap.xml +msgid "Eco" +msgstr "ç»æµŽ" + +#: data/gui/sustain.xml +msgid "Economy Sustainable." +msgstr "å¯æŒç»­çš„ç»æµŽ" + +#: data/gui/launch-evac.xml +msgid "Evacuation Launch Good" +msgstr "è¿ç§»è¿›å±•é¡ºåˆ©" + +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire" +msgstr "ç«ç¾" + +#: data/gui/firestationup.xml +msgid "Fire Stations available" +msgstr "消防站å¯ç”¨" + +#: data/gui/shfire-uc.xml data/gui/shfire-oc.xml +msgid "Fire!" +msgstr "ç€ç«äº†ï¼" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Food" +msgstr "食å“" + +#: data/gui/options.xml +msgid "Fullscreen" +msgstr "å…¨å±" + +#: data/gui/gamestats.xml +msgid "Gamestats" +msgstr "游æˆæ•°æ®" + +#: data/gui/speedpanel.xml +msgid "Go back to Main Menu" +msgstr "回到主èœå•" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Goods" +msgstr "物å“" + +#: data/gui/creditslist.xml +msgid "Graphics" +msgstr "图åƒ" + +#: data/gui/portdialog.xml +msgid "Harbour Trade Settings" +msgstr "港å£è´¸æ˜“设定" + +#: data/gui/healthup.xml +msgid "Health Centres available" +msgstr "医疗中心å¯ç”¨" + +#: data/gui/hvindustryup.xml +msgid "Heavy Industry available" +msgstr "é‡å·¥ä¸šå¯ç”¨" + +#: data/gui/import-exportup.xml +msgid "Import/Export available" +msgstr "è¿›/出å£å¯ç”¨" + +#: data/gui/pbar.xml data/gui/tradedialog.xml +msgid "Jobs" +msgstr "工作" + +#: data/gui/launch-fail.xml +msgid "Launch Failure" +msgstr "å¯åŠ¨å¤±è´¥" + +#: data/gui/launch-good.xml +msgid "Launch Successfull" +msgstr "å¯åŠ¨æˆåŠŸ" + +#: data/gui/launch_rocket_yn.xml +msgid "Launch now?" +msgstr "现在å¯åŠ¨ï¼Ÿ" + +#: data/gui/ltindustryup.xml +msgid "Light Industry available" +msgstr "轻工业å¯ç”¨" + +#: data/gui/sustain.xml +msgid "LinCity has determined that you have a sustainable economy." +msgstr "LinCity认为你有å¯æŒç»­å‘展的ç»æµŽã€‚" + +#: data/gui/mainmenu.xml data/gui/loadgame.xml +msgid "Load" +msgstr "加载" + +#: data/gui/loadgame.xml +msgid "Load Game" +msgstr "加载游æˆ" + +#: data/gui/minimap.xml +msgid "Map" +msgstr "地图" + +#: data/gui/millup.xml +msgid "Mills available" +msgstr "磨åŠå¯ç”¨" + +#: data/gui/mod_wind_up.xml +msgid "Modern Windmills available" +msgstr "现代风车å¯ç”¨" + +#: data/gui/pbar.xml +msgid "Money" +msgstr "é’±å¸" + +#: data/gui/newgame.xml data/gui/mainmenu.xml +msgid "New Game" +msgstr "新游æˆ" + +#: data/gui/riverup.xml data/gui/hvindustryup.xml data/gui/windmillup.xml +#: data/gui/ltindustryup.xml data/gui/cricketup.xml data/gui/coalmineup.xml +#: data/gui/coalpowerup.xml data/gui/parkup.xml data/gui/solarpowerup.xml +#: data/gui/potteryup.xml data/gui/railwayup.xml data/gui/roadup.xml +#: data/gui/rocketup.xml data/gui/millup.xml data/gui/healthup.xml +#: data/gui/universityup.xml data/gui/recycleup.xml data/gui/blacksmithup.xml +#: data/gui/firestationup.xml data/gui/schoolup.xml +#: data/gui/import-exportup.xml data/gui/mod_wind_up.xml +msgid "New Invention" +msgstr "æ–°å‘明" + +#: data/gui/bulldoze_monument_yn.xml data/gui/launch_rocket_yn.xml +#: data/gui/bulldoze_river_yn.xml data/gui/coal_survey_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "No" +msgstr "å¦" + +#: data/gui/no-credit-solar-power.xml data/gui/no-credit-rocket.xml +#: data/gui/no-credit-parkland.xml data/gui/no-credit-university.xml +#: data/gui/no-credit-recycle.xml +msgid "No Credit Available" +msgstr "无积分å¯ç”¨" + +#: data/gui/allgone.xml +msgid "Nobody Home" +msgstr "无人屋" + +#: data/gui/nobull-tip.xml +msgid "Not Allowed" +msgstr "ä¸å…许" + +#: data/gui/riverup.xml data/gui/hvindustryup.xml +#: data/gui/no-credit-solar-power.xml data/gui/windmillup.xml +#: data/gui/options.xml data/gui/ltindustryup.xml data/gui/cricketup.xml +#: data/gui/coalmineup.xml data/gui/launch-good.xml data/gui/coalpowerup.xml +#: data/gui/parkup.xml data/gui/solarpowerup.xml data/gui/potteryup.xml +#: data/gui/railwayup.xml data/gui/allgone.xml data/gui/nobull-tip.xml +#: data/gui/sustain.xml data/gui/roadup.xml data/gui/rocketup.xml +#: data/gui/millup.xml data/gui/no-credit-rocket.xml data/gui/healthup.xml +#: data/gui/no-credit-parkland.xml data/gui/shfire-uc.xml data/gui/fire.xml +#: data/gui/universityup.xml data/gui/launch-evac.xml data/gui/recycleup.xml +#: data/gui/no-credit-university.xml data/gui/no-credit-recycle.xml +#: data/gui/launch-fail.xml data/gui/blacksmithup.xml +#: data/gui/firestationup.xml data/gui/schoolup.xml +#: data/gui/import-exportup.xml data/gui/launch-gone.xml +#: data/gui/mod_wind_up.xml data/gui/warning.xml data/gui/shfire-oc.xml +#: data/gui/too-old.xml +msgid "Ok" +msgstr "å¯ä»¥" + +#: data/gui/gamestats.xml +msgid "Okay" +msgstr "好的" + +#: data/gui/mainmenu.xml data/gui/options.xml +msgid "Options" +msgstr "选择" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Ore" +msgstr "矿石" + +#: data/gui/creditslist.xml +msgid "Original Idea and Code" +msgstr "原创想法和代ç " + +#: data/gui/parkup.xml +msgid "Parks available" +msgstr "åœè½¦åœºå¯ç”¨" + +#: data/gui/speedpanel.xml +msgid "Pause the game" +msgstr "æš‚åœæ¸¸æˆ" + +#: data/gui/pbar.xml +msgid "Population" +msgstr "人å£" + +#: data/gui/potteryup.xml +msgid "Potteries available" +msgstr "陶器厂å¯ç”¨" + +#: data/gui/minimap.xml +msgid "Press this button to show statistics" +msgstr "按此按钮显示数æ®" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Product" +msgstr "产出" + +#: data/gui/mainmenu.xml +msgid "Quit" +msgstr "退出" + +#: data/gui/railwayup.xml +msgid "Railways available" +msgstr "é“è·¯å¯ç”¨" + +#: data/gui/recycleup.xml +msgid "Recycling Centres available" +msgstr "回收中心å¯ç”¨" + +#: data/gui/riverup.xml +msgid "Rivers available" +msgstr "æ²³æµå¯ç”¨" + +#: data/gui/roadup.xml +msgid "Roads available" +msgstr "é“è·¯å¯ç”¨" + +#: data/gui/rocketup.xml +msgid "Rocket Launch Pad available" +msgstr "ç«ç®­å‘å°„å°å¯ç”¨" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket Ready" +msgstr "ç«ç®­å·²å‡†å¤‡å¥½" + +#: data/gui/launch_rocket_yn.xml +msgid "Rocket ready to launch" +msgstr "ç«ç®­å‡†å¤‡å‘å°„" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with fast speed" +msgstr "高速è¿è¡Œæ¨¡æ‹Ÿå™¨" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with normal speed" +msgstr "常速è¿è¡Œæ¨¡æ‹Ÿå™¨" + +#: data/gui/speedpanel.xml +msgid "Run the simulation with very fast speed" +msgstr "超高速è¿è¡Œæ¨¡æ‹Ÿå™¨" + +#: data/gui/mainmenu.xml +msgid "Save" +msgstr "ä¿å­˜" + +#: data/gui/savegame.xml +msgid "Save Game" +msgstr "ä¿å­˜æ¸¸æˆ" + +#: data/gui/schoolup.xml +msgid "Schools available" +msgstr "学校å¯ç”¨" + +#: data/gui/coalmineup.xml +msgid "" +"See the help screen for more information on coal mines and coal surveys." +msgstr "查看帮助å±å¹•äº†è§£æ›´å¤šç…¤çŸ¿å’Œç…¤ç‚­è°ƒæŸ¥ä¿¡æ¯ã€‚" + +#: data/gui/riverup.xml data/gui/hvindustryup.xml data/gui/windmillup.xml +#: data/gui/ltindustryup.xml data/gui/cricketup.xml data/gui/coalpowerup.xml +#: data/gui/parkup.xml data/gui/solarpowerup.xml data/gui/potteryup.xml +#: data/gui/railwayup.xml data/gui/rocketup.xml data/gui/millup.xml +#: data/gui/healthup.xml data/gui/universityup.xml data/gui/recycleup.xml +#: data/gui/blacksmithup.xml data/gui/firestationup.xml data/gui/schoolup.xml +#: data/gui/mod_wind_up.xml +msgid "See the help screen for more information." +msgstr "查看帮助å±å¹•äº†è§£æ›´å¤šä¿¡æ¯ã€‚" + +#: data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Sell" +msgstr "å–出" + +#: data/gui/coal_survey_yn.xml +msgid "Send out Prospectors" +msgstr "æ´¾é£å‹˜æŽ¢è€…" + +#: data/gui/minimap.xml +msgid "Show Income and Expenses. Click this tab again to cycle through views." +msgstr "显示收入和支出。å†æ¬¡å•å‡»æ­¤æ ‡ç­¾è½¬æ¢è§†å›¾ã€‚" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show coal depots" +msgstr "显示矿è—" + +#: data/gui/minimap.xml +msgid "Show economy graphs." +msgstr "显示ç»æµŽå›¾è¡¨ã€‚" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show fire department cover" +msgstr "显示消防站覆盖" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show map outline" +msgstr "显示概è¦åœ°å›¾" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show medical care" +msgstr "显示医疗中心" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show nourishments" +msgstr "显示食物" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show pollution density" +msgstr "显示污染程度" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show power supply" +msgstr "显示能æºä¾›ç»™" + +#: data/gui/minimap.xml +msgid "Show resources." +msgstr "显示资æº" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show sport cover" +msgstr "显示è¿åŠ¨åœºè¦†ç›–" + +#: data/gui/minimap.xml +msgid "Show the MiniMap" +msgstr "显示迷你地图" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show traffic density" +msgstr "显示交通密集程度" + +#: data/gui/minimapswitchbuttons.xml +msgid "Show unemployment" +msgstr "显示失业情况" + +#: data/gui/solarpowerup.xml +msgid "Solar Power Stations available" +msgstr "太阳能å‘电站å¯ç”¨" + +#: data/gui/nobull-tip.xml +msgid "Sorry you can't bulldoze a tip." +msgstr "对ä¸èµ·ï¼Œæ‚¨ä¸èƒ½æŽ¨å€’垃圾场。" + +#: data/gui/too-old.xml +msgid "" +"Sorry, the game you wanted is too old. Cannot load it. Still play with " +"previous game." +msgstr "对ä¸èµ·ï¼Œæ‚¨æƒ³è¦çš„游æˆæ˜¯å¤ªä¹…之å‰çš„。无法加载。ä»ç„¶ç»§ç»­ä¹‹å‰æ¸¸æˆã€‚" + +#: data/gui/options.xml +msgid "Sound Effects" +msgstr "音效" + +#: data/gui/creditslist.xml +msgid "Sound and Music" +msgstr "音效和音ä¹" + +#: data/gui/newgame.xml +msgid "Start" +msgstr "开始" + +#: data/gui/newgame.xml +msgid "Start with empty board." +msgstr "在空地开始。" + +#: data/gui/newgame.xml +msgid "Start with random village." +msgstr "在任æ„æ‘庄开始。" + +#: data/gui/minimap.xml +msgid "Stats" +msgstr "æ•°æ®" + +#: data/gui/pbar.xml data/gui/tradedialog.xml data/gui/portdialog.xml +msgid "Steel" +msgstr "é’¢é“" + +#: data/gui/pbar.xml +msgid "Tech Level" +msgstr "科技程度" + +#: data/gui/allgone.xml +msgid "There are no people left in this city." +msgstr "这个城市里没有人了。" + +#: data/gui/coal_survey_yn.xml +msgid "This will cost you 1 million once. After that it is free to call again." +msgstr "您将一次花费一百万。之åŽæ‚¨å¯ä»¥å…è´¹å†æ‰“。" + +#: data/gui/launch-gone.xml +msgid "Total Evacuation Complete." +msgstr "全部转移完æˆã€‚" + +#: data/gui/tradedialog.xml +msgid "Trade Settings" +msgstr "贸易设定" + +#: data/gui/creditslist.xml +msgid "Translation" +msgstr "翻译" + +#: data/gui/universityup.xml +msgid "University available" +msgstr "大学å¯ç”¨" + +#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Want to bulldoze?" +msgstr "使用推土机?" + +#: data/gui/bulldoze_monument_yn.xml data/gui/bulldoze_river_yn.xml +#: data/gui/bulldoze_shanty_yn.xml data/gui/warning.xml data/gui/too-old.xml +msgid "Warning" +msgstr "警告" + +#: data/gui/bulldoze_monument_yn.xml +msgid "Warning: Bulldozing monuments is expensive" +msgstr "警告:推倒纪念碑很贵" + +#: data/gui/bulldoze_shanty_yn.xml +msgid "Warning: Bulldozing shanties is dangerous." +msgstr "警告:推倒贫民窟很å±é™©ã€‚" + +#: data/gui/bulldoze_river_yn.xml +msgid "Warning: Bulldozing water is expensive" +msgstr "警告:推倒水æºå¾ˆè´µ" + +#: data/gui/launch-gone.xml +msgid "Well done you have evacuated all your people." +msgstr "åšçš„好,您已转移了所有人。" + +#: data/gui/windmillup.xml +msgid "Windmills available" +msgstr "风车å¯ç”¨" + +#: data/gui/bulldoze_monument_yn.xml data/gui/launch_rocket_yn.xml +#: data/gui/bulldoze_river_yn.xml data/gui/coal_survey_yn.xml +#: data/gui/bulldoze_shanty_yn.xml +msgid "Yes" +msgstr "是" + +#: data/gui/fire.xml +msgid "You better go and look for it" +msgstr "您最好去找找看" + +#: data/gui/launch_rocket_yn.xml +msgid "" +"You can launch the rocket now or wait until later. If you wait it will " +"continue costing you money to keep the rocket ready. Launch it later by " +"clicking on the rocket area." +msgstr "" +"您å¯ä»¥çŽ°åœ¨å‘å°„ç«ç®­æˆ–之åŽå†è¯´ã€‚如果您想è¦ç»§ç»­èŠ±é’±ç»´æŠ¤ç«ç®­å‡†å¤‡çŠ¶æ€ã€‚å•å‡»ç«ç®­åŒº" +"域,之åŽå‘射。" + +#: data/gui/import-exportup.xml +msgid "" +"You can now import and export coal, goods, ore and steel. Read the help " +"pages on these subjects to find out how to use them. " +msgstr "" +"您å¯ä»¥è¿›å‡ºå£ç…¤ç‚­ï¼Œå•†å“,矿石和钢é“。阅读这些物å“的帮助页é¢ï¼Œäº†è§£å¦‚何使用。" + +#: data/gui/no-credit-parkland.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build parks on credit." +msgstr "您有预算赤字。法律部门ä¸ä¼šå…许您用积分建åœè½¦åœºã€‚" + +#: data/gui/no-credit-recycle.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build recycling centres on credit." +msgstr "您有预算赤字。法律部门ä¸ä¼šå…许您用积分建回收中心。" + +#: data/gui/no-credit-rocket.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build rocket launch pads on credit." +msgstr "您有预算赤字。法律部门ä¸ä¼šå…许您用积分建ç«ç®­å‘å°„å°ã€‚" + +#: data/gui/no-credit-solar-power.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build solar power stations on credit." +msgstr "您有预算赤字。法律部门ä¸ä¼šå…许您用积分建太阳能å‘电站。" + +#: data/gui/no-credit-university.xml +msgid "" +"You have a budget deficit. The legislative council will not allow you to " +"build universities on credit." +msgstr "您有预算赤字。法律部门ä¸ä¼šå…许您用积分建大学。" + +#: data/gui/launch-evac.xml +msgid "" +"You have evacuated 1000 people. You might want to reduce the size of your " +"economy to reflect the reduced population. " +msgstr "您已转移1000人。您应缩å°ç»æµŽè§„模以å映人å£å‡å°‘。" + +#: data/gui/blacksmithup.xml +msgid "" +"You have reached the tech level which enables you to build blacksmiths. " +"Blacksmiths use jobs and steel to make goods." +msgstr "您的科技程度已ç»å…许建造é“匠铺。é“匠铺用工作和钢é“制造物å“。" + +#: data/gui/coalpowerup.xml +msgid "" +"You have reached the tech level which enables you to build coal fired power " +"stations." +msgstr "您的科技程度已ç»å…许建造煤炭å‘电站。" + +#: data/gui/firestationup.xml +msgid "" +"You have reached the tech level which enables you to build fire stations. " +"Fire stations prevent most fires from starting. If you haven't had any fires " +"yet, you might not think you need them." +msgstr "" +"您的科技程度已ç»å…许建造消防站。消防站å¯ä»¥é˜²æ­¢å¤§éƒ¨åˆ†ç«ç¾å‘生。如果您没é‡åˆ°è¿‡" +"ç«ç¾ï¼Œå¯èƒ½ä¸ä¼šéœ€è¦ä»–们。" + +#: data/gui/healthup.xml +msgid "" +"You have reached the tech level which enables you to build health centres. " +"Heath centres reduce the number of people killed by pollution and increase " +"overall productivity." +msgstr "" +"您的科技程度已ç»å…许建造医疗中心。医疗中心å¯ä»¥å¸®åŠ©äººå£å› æ±¡æŸ“问题而å‡å°‘,并æ" +"高综åˆç”Ÿäº§åŠ›ã€‚" + +#: data/gui/hvindustryup.xml +msgid "" +"You have reached the tech level which enables you to build heavy industry " +"(steel works). Heavy industry produces steel. " +msgstr "您的科技程度已ç»å…许建造é‡å·¥ä¸šï¼ˆé’¢é“厂)。é‡å·¥ä¸šç”Ÿäº§é’¢é“。" + +#: data/gui/ltindustryup.xml +msgid "" +"You have reached the tech level which enables you to build light industry. " +"Light industry produces goods. " +msgstr "您的科技程度已ç»å…许建造轻工业。轻工业生产物å“。" + +#: data/gui/millup.xml +msgid "" +"You have reached the tech level which enables you to build mills. Mills use " +"jobs and food to make goods. Watch out, they can use a lot of food! " +msgstr "" +"您的科技程度已ç»å…许建造磨åŠã€‚磨åŠç”¨å·¥ä½œå’Œé£Ÿç‰©åˆ¶é€ ç‰©å“。å°å¿ƒï¼Œä»–们会用掉很多" +"食物ï¼" + +#: data/gui/mod_wind_up.xml +msgid "" +"You have reached the tech level which enables you to build modern, more " +"efficient, windmills. " +msgstr "您的科技程度已ç»å…许建造现代,更高效的风车。" + +#: data/gui/parkup.xml +msgid "" +"You have reached the tech level which enables you to build parks. Parks are " +"used to absorb pollution. " +msgstr "您的科技程度已ç»å…许建造公园。公园用æ¥å¸æ”¶æ±¡æŸ“。" + +#: data/gui/potteryup.xml +msgid "" +"You have reached the tech level which enables you to build potteries. " +"Potteries use jobs and ore to make goods. (You need ore mines to get ore) " +msgstr "" +"您的科技程度已ç»å…许建造陶器厂。陶器厂用工作和矿石制造物å“。(您需è¦æœ‰çŸ¿å±±æ¥" +"获得矿石)" + +#: data/gui/railwayup.xml +msgid "You have reached the tech level which enables you to build railways. " +msgstr "您的科技程度已ç»å…许建造é“路。" + +#: data/gui/riverup.xml +msgid "You have reached the tech level which enables you to build rivers. " +msgstr "您的科技程度已ç»å…许建造河æµã€‚" + +#: data/gui/roadup.xml +msgid "" +"You have reached the tech level which enables you to build roads. See the " +"help screen for more information." +msgstr "您的科技程度已ç»å…许建造é“路。查看帮助å±å¹•äº†è§£æ›´å¤šä¿¡æ¯ã€‚" + +#: data/gui/rocketup.xml +msgid "" +"You have reached the tech level which enables you to build rocket launch " +"pads. Rockets enable you to evacuate your population and is a way to 'win' " +"the game." +msgstr "" +"您的科技程度已ç»å…许建造ç«ç®­å‘å°„å°ã€‚ç«ç®­å¯ä»¥å¸®åŠ©è½¬ç§»äººå£ï¼Œå¹¶å–得游æˆèƒœåˆ©ã€‚" + +#: data/gui/schoolup.xml +msgid "" +"You have reached the tech level which enables you to build schools. Schools " +"use jobs and goods to increase tech level. " +msgstr "您的科技程度已ç»å…许建造学校。学校用工作和物å“æ¥æ高科技程度。" + +#: data/gui/solarpowerup.xml +msgid "" +"You have reached the tech level which enables you to build solar power " +"stations. " +msgstr "您的科技程度已ç»å…许建造太阳能å‘电站。" + +#: data/gui/universityup.xml +msgid "" +"You have reached the tech level which enables you to build universities. " +"Universities produces PhDs, which produce more technology. " +msgstr "您的科技程度已ç»å…许建造大学。大学培养åšå£«ï¼Œä»–们带æ¥æ›´å¤šç§‘技。" + +#: data/gui/windmillup.xml +msgid "You have reached the tech level which enables you to build windmills. " +msgstr "您的科技程度已ç»å…许建造风车。" + +#: data/gui/coalmineup.xml +msgid "" +"You have reached the tech level which enables you to dig deep coal mines." +msgstr "您的科技程度已ç»å…许建造煤矿。" + +#: data/gui/recycleup.xml +msgid "" +"You have reached the tech level which enables you to recycling centres. " +"Recycling centres recycle used goods back into ore. " +msgstr "您的科技程度已ç»å…许建造回收中心。回收中心回收旧物到矿山。" + +#: data/gui/sustain.xml data/gui/launch-gone.xml +msgid "You have won the game." +msgstr "您已å–得胜利。" + +#: data/gui/allgone.xml +msgid "You should start a new career elsewhere." +msgstr "您å¯ä»¥åœ¨å…¶ä»–地方开始新的事业。" + +#: data/gui/cricketup.xml +msgid "" +"Your people have invented basketball. Basketball Courts use a few jobs and " +"goods and make people in the surrounding areas (about 10 units in each " +"direction) happier." +msgstr "" +"您的人们已å‘明篮çƒã€‚篮çƒåœºéœ€è¦ä¸€äº›å·¥ä½œå’Œç‰©å“,并让附近(大概方圆å个å•ä½ï¼‰çš„" +"人们更加快ä¹ã€‚" + +#: data/gui/launch-fail.xml +msgid "" +"Your rocket crashed shortly after launch. People no longer trust the " +"technology for evacuation. You must launch five more unmanned rockets to " +"restore confidence." +msgstr "" +"您的ç«ç®­åœ¨å‘å°„ä¸ä¹…åŽå åœ°ã€‚转移之åŽçš„人们ä¸å†ç›¸ä¿¡ç§‘技。您必须å‘射五个以上无人" +"ç«ç®­æ¥é‡å»ºä¿¡å¿ƒã€‚" + +#: data/gui/minimap.xml +msgid "[+] Zoom in view so that less buildings but more details are visible" +msgstr "[+] 放大å¯çœ‹åˆ°æ›´å¤šç»†èŠ‚和更少的建筑" + +#: data/gui/minimap.xml +msgid "[-] Zoom out" +msgstr "[-] 缩å°" + +#: data/gui/minimap.xml +msgid "[F1] Press this button to get help" +msgstr "[F1] 按此按钮获得帮助" + +#: data/gui/minimap.xml +msgid "[h] Hide high buildings. " +msgstr "[h] éšè—高楼。" + +#: data/gui/minimap.xml +msgid "[v] Cycle through MiniMap overlay modes. " +msgstr "[v] 在迷你地图å åŠ æ¨¡å¼é—´è½¬æ¢ã€‚" + +#: data/gui/savegame.xml +msgid "save to selected slot" +msgstr "ä¿å­˜è‡³æ‰€é€‰ä½ç½®" diff -Nru lincity-ng-2.0/data/locale/pt_BR.po lincity-ng-2.9~git20150314/data/locale/pt_BR.po --- lincity-ng-2.0/data/locale/pt_BR.po 2009-01-25 20:21:19.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/pt_BR.po 2015-05-05 16:32:50.000000000 +0000 @@ -8,8 +8,8 @@ msgstr "" "Project-Id-Version: lincity-ng 1.1.0rc2\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-02-24 21:11+0100\n" -"PO-Revision-Date: 2009-01-21 21:01+0100\n" +"POT-Creation-Date: 2009-01-26 22:37+0100\n" +"PO-Revision-Date: 2009-01-27 22:24+0100\n" "Last-Translator: Nilo Menezes <nilo.menezes@gmail.com>\n" "Language-Team: Portuguese/Brazil <gnome-l10n-br@listas.cipsga.org.br>\n" "MIME-Version: 1.0\n" @@ -56,6 +56,8 @@ #: src/lincity-ng/ButtonPanel.cpp:245 #: src/lincity-ng/ButtonPanel.cpp:288 +#: src/lincity-ng/ButtonPanel.cpp:416 +#: src/lincity-ng/ButtonPanel.cpp:439 #, c-format msgid "%s (Techlevel %.1f required.)" msgstr "%s (Nível Tecno. %.1f requerido.)" @@ -69,122 +71,193 @@ msgid "Launchsite" msgstr "Base de lançamento" -#: src/lincity-ng/Dialog.cpp:343 +#: src/lincity-ng/Dialog.cpp:372 msgid "----- IN TEST MODE -------" msgstr "----- EM MODO DE TESTE -------" -#: src/lincity-ng/Dialog.cpp:345 +#: src/lincity-ng/Dialog.cpp:374 #, c-format msgid "Game statistics from LinCity-NG Version %s" msgstr "Estatísticas de jogo do LinCity-NG Versão %s" -#: src/lincity-ng/Dialog.cpp:348 +#: src/lincity-ng/Dialog.cpp:377 #, c-format msgid "Initial loaded scene - %s" msgstr "Cena inicial aberta - %s" -#: src/lincity-ng/Dialog.cpp:352 +#: src/lincity-ng/Dialog.cpp:381 #, c-format msgid "Economy is sustainable" msgstr "A economia é sustentável" -#: src/lincity-ng/Dialog.cpp:355 +#: src/lincity-ng/Dialog.cpp:384 #, c-format msgid "Population %d of which %d are not housed." msgstr "A população é de %d dos quais %d são sem teto." -#: src/lincity-ng/Dialog.cpp:359 +#: src/lincity-ng/Dialog.cpp:388 #, c-format msgid "Max population %d Number evacuated %d Total births %d" msgstr "População máxima %d Número de evacuados %d Total de nascimentos %d" -#: src/lincity-ng/Dialog.cpp:363 +#: src/lincity-ng/Dialog.cpp:392 #, c-format msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" msgstr "Data %s %04d Dinheiro %8d Nível Tecnológico %5.1f (%5.1f)" -#: src/lincity-ng/Dialog.cpp:369 +#: src/lincity-ng/Dialog.cpp:398 #, c-format -msgid ".Deaths by starvation %7d History %8.3f" -msgstr ".Mortos pela fome %7d Histórico %8.3f" +msgid "Deaths by starvation %7d History %8.3f" +msgstr "Mortes por fome %7d Histórico %8.3f" -#: src/lincity-ng/Dialog.cpp:373 +#: src/lincity-ng/Dialog.cpp:402 #, c-format msgid "Deaths from pollution %7d History %8.3f" msgstr "Mortos pela poluição %7d Histórico %8.3f" -#: src/lincity-ng/Dialog.cpp:376 +#: src/lincity-ng/Dialog.cpp:405 #, c-format msgid "Years of unemployment %7d History %8.3f" msgstr "Anos de desemprego %7d Histórico %8.3f" -#: src/lincity-ng/Dialog.cpp:379 +#: src/lincity-ng/Dialog.cpp:408 #, c-format msgid "Rockets launched %2d Successful launches %2d" msgstr "Foguetes lançados %2d Lançamentos bem sucedidos %2d" -#: src/lincity-ng/Dialog.cpp:388 -#, c-format -msgid ". Residences %4d Markets %4d Farms %4d" -msgstr ". Residências %4d Mercados %4d Fazendas %4d" +#: src/lincity-ng/Dialog.cpp:417 +msgid "Residences" +msgstr "Residências" + +#: src/lincity-ng/Dialog.cpp:424 +msgid "Markets" +msgstr "Mercados" + +#: src/lincity-ng/Dialog.cpp:425 +msgid "Farms" +msgstr "Fazendas" + +#: src/lincity-ng/Dialog.cpp:427 +msgid "Water wells" +msgstr "Poços" + +#: src/lincity-ng/Dialog.cpp:435 +msgid "Monuments" +msgstr "Monumentos" -#: src/lincity-ng/Dialog.cpp:398 -#, c-format -msgid ". Water wells %4d" -msgstr ". Moinhos %4d" +#: src/lincity-ng/Dialog.cpp:436 +#: src/lincity-ng/MpsInterface.cpp:509 +msgid "Schools" +msgstr "Escolas" -#: src/lincity-ng/Dialog.cpp:400 -#, c-format -msgid ". Monuments %4d Schools %4d Universities %4d" -msgstr ". Monumentos %4d Escolas %4d Universidades %4d" +#: src/lincity-ng/Dialog.cpp:437 +msgid "Universities" +msgstr "Universidades" -#: src/lincity-ng/Dialog.cpp:404 -#, c-format -msgid ".Fire stations %4d Parks %4d Sports fields %4d" -msgstr ".Bombeiros %4d Parques %4d Quadras de Esporte %4d" +#: src/lincity-ng/Dialog.cpp:439 +msgid "Fire stations" +msgstr "Corpo de Bombeiros" -#: src/lincity-ng/Dialog.cpp:408 -#, c-format -msgid "Health centres %4d Tips %4d Shanties %4d" -msgstr "Centros de saúde %4d Aterros %4d Favelas %4d" +#: src/lincity-ng/Dialog.cpp:440 +msgid "Parks" +msgstr "Parques" + +#: src/lincity-ng/Dialog.cpp:441 +msgid "Sports fields" +msgstr "Quadras de esporte" + +#: src/lincity-ng/Dialog.cpp:443 +msgid "Health centres" +msgstr "Centros de saúde" + +#: src/lincity-ng/Dialog.cpp:444 +msgid "Tips" +msgstr "Aterros" -#: src/lincity-ng/Dialog.cpp:414 -#, c-format -msgid ". Windmills %4d Coal powers %4d Solar powers %4d" -msgstr ". Moinhos de vento %4d Usinas de carvão %4d Usinas solares %4d" +#: src/lincity-ng/Dialog.cpp:445 +#: src/lincity-ng/MpsInterface.cpp:544 +msgid "Shanties" +msgstr "Favelados" -#: src/lincity-ng/Dialog.cpp:419 -#, c-format -msgid ". Substations %4d Power lines %4d Ports %4d" -msgstr ". Sub-estações %4d Linhas de transmissão %4d Portos %4d" +#: src/lincity-ng/Dialog.cpp:451 +msgid "Windmills" +msgstr "Moinhos de vento" + +#: src/lincity-ng/Dialog.cpp:452 +msgid "Coal powers" +msgstr "EE Carvão" -#: src/lincity-ng/Dialog.cpp:423 -#, c-format -msgid ". Tracks %4d Roads %4d Rail %4d" -msgstr ". Pistas %4d Estradas %4d Trilhos %4d" +#: src/lincity-ng/Dialog.cpp:453 +msgid "Solar powers" +msgstr "EE Solar" -#: src/lincity-ng/Dialog.cpp:429 -#, c-format -msgid ". Potteries %4d Blacksmiths %4d Mills %4d" -msgstr ". Olarias %4d Ferreiros %4d Moinhos %4d" +#: src/lincity-ng/Dialog.cpp:455 +msgid "Substations" +msgstr "Sub-estações" + +#: src/lincity-ng/Dialog.cpp:456 +msgid "Power lines" +msgstr "Linhas de transmissão" + +#: src/lincity-ng/Dialog.cpp:457 +msgid "Ports" +msgstr "Portos" + +#: src/lincity-ng/Dialog.cpp:459 +msgid "Tracks" +msgstr "Trilhas" + +#: src/lincity-ng/Dialog.cpp:460 +msgid "Roads" +msgstr "Estradas" -#: src/lincity-ng/Dialog.cpp:433 -#, c-format -msgid ". Light inds %4d Heavy inds %4d Recyclers %4d" -msgstr ". Indústias lv %4d Indústrias pes %4d Centros de reciclagem %4d" +#: src/lincity-ng/Dialog.cpp:461 +msgid "Rail" +msgstr "Trilho" -#: src/lincity-ng/Dialog.cpp:437 -#, c-format -msgid ". Coal mines %4d Ore mines %4d Communes %4d" -msgstr ". Minas de carvão %4d Minas de minério %4d Comunas %4d" +#: src/lincity-ng/Dialog.cpp:467 +msgid "Potteries" +msgstr "Olarias" + +#: src/lincity-ng/Dialog.cpp:468 +msgid "Blacksmiths" +msgstr "Ferreiros" + +#: src/lincity-ng/Dialog.cpp:469 +msgid "Mills" +msgstr "Moinhos" + +#: src/lincity-ng/Dialog.cpp:471 +msgid "Light inds" +msgstr "Ind. Leve" + +#: src/lincity-ng/Dialog.cpp:472 +msgid "Heavy inds" +msgstr "Ind. Pesada" + +#: src/lincity-ng/Dialog.cpp:473 +msgid "Recyclers" +msgstr "Centros de Reciclagem" + +#: src/lincity-ng/Dialog.cpp:475 +msgid "Coal mines" +msgstr "Minas de carvão" + +#: src/lincity-ng/Dialog.cpp:476 +msgid "Ore mines" +msgstr "Minas de minério" + +#: src/lincity-ng/Dialog.cpp:477 +msgid "Communes" +msgstr "Comunas" -#: src/lincity-ng/Dialog.cpp:594 +#: src/lincity-ng/Dialog.cpp:632 #: src/lincity/lintypes.cpp:88 -#: src/lincity/modules/market.cpp:1001 +#: src/lincity/modules/market.cpp:1011 msgid "Market" msgstr "Mercado" -#: src/lincity-ng/Dialog.cpp:648 +#: src/lincity-ng/Dialog.cpp:686 #: src/lincity/lintypes.cpp:209 #: src/lincity/modules/port.cpp:281 msgid "Port" @@ -192,15 +265,15 @@ #: src/lincity-ng/EconomyGraph.cpp:124 msgid "Mining" -msgstr "Mineração" +msgstr "Miner." #: src/lincity-ng/EconomyGraph.cpp:126 msgid "Trade" -msgstr "Comércio" +msgstr "Comér." #: src/lincity-ng/EconomyGraph.cpp:128 msgid "Money" -msgstr "Dinheiro" +msgstr "Dinhe." #: src/lincity-ng/EconomyGraph.cpp:130 msgid "Popul." @@ -211,7 +284,7 @@ msgstr "Tecn." #: src/lincity-ng/EconomyGraph.cpp:134 -#: src/lincity-ng/MpsInterface.cpp:382 +#: src/lincity-ng/MpsInterface.cpp:389 #: src/lincity/lintypes.cpp:399 #: src/lincity/modules/residence.cpp:283 msgid "Fire" @@ -273,64 +346,67 @@ msgid "Minimap: traffic density" msgstr "Minimapa: densidade do tráfego" -#: src/lincity-ng/GameView.cpp:1593 +#: src/lincity-ng/GameView.cpp:1638 msgid "Estimated Bulldoze Cost: " msgstr "Custo Estimado de Demolição:" -#: src/lincity-ng/GameView.cpp:1595 +#: src/lincity-ng/GameView.cpp:1640 msgid "Bulldoze Cost: " msgstr "Custo de Demolição:" -#: src/lincity-ng/GameView.cpp:1598 -#: src/lincity-ng/GameView.cpp:1629 +#: src/lincity-ng/GameView.cpp:1643 +#: src/lincity-ng/GameView.cpp:1656 +#: src/lincity-ng/GameView.cpp:1687 #: src/lincity-ng/ScreenInterface.cpp:274 msgid "$" msgstr "$" -#: src/lincity-ng/GameView.cpp:1600 +#: src/lincity-ng/GameView.cpp:1645 +#: src/lincity-ng/GameView.cpp:1658 msgid "n/a" msgstr "n/d" -#: src/lincity-ng/GameView.cpp:1618 +#: src/lincity-ng/GameView.cpp:1654 +#: src/lincity-ng/GameView.cpp:1687 +msgid ": Cost to build " +msgstr ": Custo de construção " + +#: src/lincity-ng/GameView.cpp:1676 msgid "Query Tool: Show information about selected building." msgstr "Ferr. de Pesquisa: Exibe informações sobre a construção selecionada." -#: src/lincity-ng/GameView.cpp:1622 +#: src/lincity-ng/GameView.cpp:1680 msgid "Bulldozer: remove building -price varies-" msgstr "Niveladora: remover construção -preço variável-" -#: src/lincity-ng/GameView.cpp:1629 -msgid ": Cost to build " -msgstr ": Custo de construção " - -#: src/lincity-ng/GameView.cpp:1630 -#: src/lincity-ng/GameView.cpp:1633 +#: src/lincity-ng/GameView.cpp:1688 +#: src/lincity-ng/GameView.cpp:1691 msgid "$." msgstr "$." -#: src/lincity-ng/GameView.cpp:1630 +#: src/lincity-ng/GameView.cpp:1688 msgid ", to bulldoze " msgstr ", para demolir" -#: src/lincity-ng/GameView.cpp:1632 +#: src/lincity-ng/GameView.cpp:1690 msgid " To build " msgstr " Para construir " -#: src/lincity-ng/GameView.cpp:1632 +#: src/lincity-ng/GameView.cpp:1690 msgid " of them " msgstr " deles " -#: src/lincity-ng/GameView.cpp:1633 +#: src/lincity-ng/GameView.cpp:1691 msgid "will cost about " msgstr "custará em torno de " #: src/lincity-ng/MainMenu.cpp:141 msgid "good_times" -msgstr "bons_tempos" +msgstr "Bons tempos" #: src/lincity-ng/MainMenu.cpp:142 msgid "bad_times" -msgstr "tempos_ruins" +msgstr "Tempo ruim" #: src/lincity-ng/MainMenu.cpp:143 msgid "Beach" @@ -338,127 +414,127 @@ #: src/lincity-ng/MainMenu.cpp:144 msgid "extreme_arid" -msgstr "árido_extremo" +msgstr "Extremamente Ãrido" #: src/lincity-ng/MainMenu.cpp:145 msgid "extreme_wetland" -msgstr "extremo_pântano" +msgstr "Pantanoso" -#: src/lincity-ng/MainMenu.cpp:212 +#: src/lincity-ng/MainMenu.cpp:204 msgid "empty" msgstr "vazio" #: src/lincity-ng/MpsInterface.cpp:227 -msgid "build something here" -msgstr "contruir algo aqui" - -#: src/lincity-ng/MpsInterface.cpp:229 msgid "no further information available" msgstr "sem mais informações disponíveis" -#: src/lincity-ng/MpsInterface.cpp:380 +#: src/lincity-ng/MpsInterface.cpp:230 +msgid "build something here" +msgstr "construir algo aqui" + +#: src/lincity-ng/MpsInterface.cpp:387 msgid "Coverage" msgstr "Cobertura" -#: src/lincity-ng/MpsInterface.cpp:381 -#: src/lincity-ng/MpsInterface.cpp:384 -#: src/lincity-ng/MpsInterface.cpp:387 -#: src/lincity/modules/commune.cpp:179 -#: src/lincity/modules/commune.cpp:181 -#: src/lincity/modules/commune.cpp:183 -#: src/lincity/modules/commune.cpp:185 -#: src/lincity/modules/water.cpp:20 +#: src/lincity-ng/MpsInterface.cpp:388 +#: src/lincity-ng/MpsInterface.cpp:391 +#: src/lincity-ng/MpsInterface.cpp:394 +#: src/lincity/modules/commune.cpp:180 +#: src/lincity/modules/commune.cpp:182 +#: src/lincity/modules/commune.cpp:184 +#: src/lincity/modules/commune.cpp:186 +#: src/lincity/modules/water.cpp:23 msgid "No" msgstr "Não" -#: src/lincity-ng/MpsInterface.cpp:381 -#: src/lincity-ng/MpsInterface.cpp:384 -#: src/lincity-ng/MpsInterface.cpp:387 -#: src/lincity/modules/commune.cpp:179 -#: src/lincity/modules/commune.cpp:181 -#: src/lincity/modules/commune.cpp:183 -#: src/lincity/modules/commune.cpp:185 -#: src/lincity/modules/water.cpp:20 +#: src/lincity-ng/MpsInterface.cpp:388 +#: src/lincity-ng/MpsInterface.cpp:391 +#: src/lincity-ng/MpsInterface.cpp:394 +#: src/lincity/modules/commune.cpp:180 +#: src/lincity/modules/commune.cpp:182 +#: src/lincity/modules/commune.cpp:184 +#: src/lincity/modules/commune.cpp:186 +#: src/lincity/modules/water.cpp:23 #: src/lincity/modules/waterwell.cpp:62 msgid "Yes" msgstr "Sim" -#: src/lincity-ng/MpsInterface.cpp:385 +#: src/lincity-ng/MpsInterface.cpp:392 msgid "Health" msgstr "Saúde" -#: src/lincity-ng/MpsInterface.cpp:388 -#: src/lincity-ng/MpsInterface.cpp:516 +#: src/lincity-ng/MpsInterface.cpp:395 +#: src/lincity-ng/MpsInterface.cpp:523 #: src/lincity/modules/residence.cpp:286 msgid "Sport" msgstr "Esporte" -#: src/lincity-ng/MpsInterface.cpp:390 +#: src/lincity-ng/MpsInterface.cpp:397 #: src/lincity/modules/residence.cpp:288 #: src/lincity/modules/waterwell.cpp:59 msgid "Pollution" msgstr "Poluição" -#: src/lincity-ng/MpsInterface.cpp:393 +#: src/lincity-ng/MpsInterface.cpp:400 msgid "clear" msgstr "limpo" -#: src/lincity-ng/MpsInterface.cpp:395 +#: src/lincity-ng/MpsInterface.cpp:402 #: src/lincity/modules/residence.cpp:276 msgid "good" msgstr "bom" -#: src/lincity-ng/MpsInterface.cpp:397 +#: src/lincity-ng/MpsInterface.cpp:404 msgid "fair" msgstr "razoável" -#: src/lincity-ng/MpsInterface.cpp:399 +#: src/lincity-ng/MpsInterface.cpp:406 msgid "smelly" msgstr "fedorento" -#: src/lincity-ng/MpsInterface.cpp:401 +#: src/lincity-ng/MpsInterface.cpp:408 msgid "smokey" msgstr "esfumaçado" -#: src/lincity-ng/MpsInterface.cpp:403 +#: src/lincity-ng/MpsInterface.cpp:410 msgid "smoggy" msgstr "poluído" -#: src/lincity-ng/MpsInterface.cpp:405 +#: src/lincity-ng/MpsInterface.cpp:412 msgid "bad" msgstr "mau" -#: src/lincity-ng/MpsInterface.cpp:407 +#: src/lincity-ng/MpsInterface.cpp:414 msgid "very bad" msgstr "muito mau" -#: src/lincity-ng/MpsInterface.cpp:409 +#: src/lincity-ng/MpsInterface.cpp:416 msgid "death!" msgstr "morte!" -#: src/lincity-ng/MpsInterface.cpp:414 +#: src/lincity-ng/MpsInterface.cpp:421 msgid "Bulldoze Cost" msgstr "Custo de demolição" -#: src/lincity-ng/MpsInterface.cpp:420 +#: src/lincity-ng/MpsInterface.cpp:427 msgid "N/A" msgstr "N/D" -#: src/lincity-ng/MpsInterface.cpp:438 +#: src/lincity-ng/MpsInterface.cpp:445 msgid "Tax Income" msgstr "Receita de Impostos" -#: src/lincity-ng/MpsInterface.cpp:442 +#: src/lincity-ng/MpsInterface.cpp:449 msgid "Income" msgstr "Receita" -#: src/lincity-ng/MpsInterface.cpp:446 +#: src/lincity-ng/MpsInterface.cpp:453 #: src/lincity/modules/blacksmith.cpp:98 #: src/lincity/modules/coal_power.cpp:97 -#: src/lincity/modules/commune.cpp:180 +#: src/lincity/modules/commune.cpp:181 #: src/lincity/modules/heavy_industry.cpp:275 #: src/lincity/modules/heavy_industry.cpp:287 -#: src/lincity/modules/market.cpp:1007 +#: src/lincity/modules/market.cpp:1017 #: src/lincity/modules/mill.cpp:101 #: src/lincity/modules/port.cpp:290 #: src/lincity/modules/pottery.cpp:113 @@ -468,12 +544,12 @@ msgid "Coal" msgstr "Carvão" -#: src/lincity-ng/MpsInterface.cpp:450 +#: src/lincity-ng/MpsInterface.cpp:457 #: src/lincity/modules/blacksmith.cpp:97 #: src/lincity/modules/cricket.cpp:96 #: src/lincity/modules/firestation.cpp:113 #: src/lincity/modules/health_centre.cpp:62 -#: src/lincity/modules/market.cpp:1008 +#: src/lincity/modules/market.cpp:1018 #: src/lincity/modules/mill.cpp:99 #: src/lincity/modules/port.cpp:298 #: src/lincity/modules/pottery.cpp:111 @@ -486,124 +562,116 @@ msgid "Goods" msgstr "Bens" -#: src/lincity-ng/MpsInterface.cpp:454 +#: src/lincity-ng/MpsInterface.cpp:461 msgid "Export" msgstr "Exportar" -#: src/lincity-ng/MpsInterface.cpp:458 +#: src/lincity-ng/MpsInterface.cpp:465 msgid "Expenses" msgstr "Gastos" -#: src/lincity-ng/MpsInterface.cpp:462 +#: src/lincity-ng/MpsInterface.cpp:469 msgid "Unemp." msgstr "Desemp." -#: src/lincity-ng/MpsInterface.cpp:466 +#: src/lincity-ng/MpsInterface.cpp:473 msgid "Transport" msgstr "Transporte" -#: src/lincity-ng/MpsInterface.cpp:470 +#: src/lincity-ng/MpsInterface.cpp:477 msgid "Imports" msgstr "Importações" -#: src/lincity-ng/MpsInterface.cpp:474 +#: src/lincity-ng/MpsInterface.cpp:481 msgid "Others" msgstr "Outros" -#: src/lincity-ng/MpsInterface.cpp:479 +#: src/lincity-ng/MpsInterface.cpp:486 msgid "Net" msgstr "Líquido" -#: src/lincity-ng/MpsInterface.cpp:491 +#: src/lincity-ng/MpsInterface.cpp:498 msgid "Other Costs" msgstr "Outros Custos" -#: src/lincity-ng/MpsInterface.cpp:496 +#: src/lincity-ng/MpsInterface.cpp:503 msgid "For year" msgstr "Por ano" -#: src/lincity-ng/MpsInterface.cpp:500 +#: src/lincity-ng/MpsInterface.cpp:507 msgid "Interest" msgstr "Juros" -#: src/lincity-ng/MpsInterface.cpp:502 -msgid "Schools" -msgstr "Escolas" - -#: src/lincity-ng/MpsInterface.cpp:504 +#: src/lincity-ng/MpsInterface.cpp:511 msgid "Univers." msgstr "Universidades" -#: src/lincity-ng/MpsInterface.cpp:506 +#: src/lincity-ng/MpsInterface.cpp:513 msgid "Deaths" msgstr "Mortes" -#: src/lincity-ng/MpsInterface.cpp:508 +#: src/lincity-ng/MpsInterface.cpp:515 #: src/lincity/lintypes.cpp:286 #: src/lincity/modules/windmill.cpp:74 msgid "Windmill" msgstr "Moinho de vento" -#: src/lincity-ng/MpsInterface.cpp:510 +#: src/lincity-ng/MpsInterface.cpp:517 msgid "Hospital" msgstr "Hospital" -#: src/lincity-ng/MpsInterface.cpp:512 +#: src/lincity-ng/MpsInterface.cpp:519 msgid "Rockets" msgstr "Foguetes" -#: src/lincity-ng/MpsInterface.cpp:514 +#: src/lincity-ng/MpsInterface.cpp:521 msgid "Fire Stn" msgstr "Bombeiro" -#: src/lincity-ng/MpsInterface.cpp:518 +#: src/lincity-ng/MpsInterface.cpp:525 #: src/lincity/lintypes.cpp:242 msgid "Recycle" msgstr "Reciclagem" -#: src/lincity-ng/MpsInterface.cpp:532 +#: src/lincity-ng/MpsInterface.cpp:539 msgid "Population" msgstr "População" -#: src/lincity-ng/MpsInterface.cpp:534 +#: src/lincity-ng/MpsInterface.cpp:541 #: src/lincity/modules/port.cpp:306 msgid "Total" msgstr "Total" -#: src/lincity-ng/MpsInterface.cpp:535 +#: src/lincity-ng/MpsInterface.cpp:542 msgid "Housed" msgstr "Com casa" -#: src/lincity-ng/MpsInterface.cpp:536 +#: src/lincity-ng/MpsInterface.cpp:543 msgid "Homeless" msgstr "Desabrigados" -#: src/lincity-ng/MpsInterface.cpp:537 -msgid "Shanties" -msgstr "Favelados" - -#: src/lincity-ng/MpsInterface.cpp:538 +#: src/lincity-ng/MpsInterface.cpp:545 msgid "Unn Dths" msgstr "Des.Mortos" -#: src/lincity-ng/MpsInterface.cpp:539 +#: src/lincity-ng/MpsInterface.cpp:546 msgid "Unemployment" msgstr "Desempregados" -#: src/lincity-ng/MpsInterface.cpp:540 +#: src/lincity-ng/MpsInterface.cpp:547 msgid "Claims" msgstr "Reclamações" -#: src/lincity-ng/MpsInterface.cpp:541 -#: src/lincity-ng/MpsInterface.cpp:546 +#: src/lincity-ng/MpsInterface.cpp:548 +#: src/lincity-ng/MpsInterface.cpp:553 msgid "Rate" msgstr "Taxa" -#: src/lincity-ng/MpsInterface.cpp:543 +#: src/lincity-ng/MpsInterface.cpp:550 msgid "Starvation" msgstr "Fome" -#: src/lincity-ng/MpsInterface.cpp:544 +#: src/lincity-ng/MpsInterface.cpp:551 msgid "Cases" msgstr "Acontecimentos" @@ -647,119 +715,119 @@ msgid "ERROR: group does not exist. This should not happen! Please consider filling a bug report to lincity-ng team, with the saved game and what you did :-) " msgstr "Erro: grupo não existe. Isto não deveria ocorrer! Por favor, considere preencher um relatório de bug para o time do lincity-ng, com o arquivo do jogo salvo e uma descrição do que você fez :-)" -#: src/lincity/engine.cpp:565 +#: src/lincity/engine.cpp:579 msgid "It's at a power line." msgstr "Isto é uma linha de transmissão de energia." -#: src/lincity/engine.cpp:567 +#: src/lincity/engine.cpp:581 msgid "It's at a solar power station." msgstr "Esta é uma usina de energia solar." -#: src/lincity/engine.cpp:569 +#: src/lincity/engine.cpp:583 msgid "It's at a substation." msgstr "Isto é uma sub-estação." -#: src/lincity/engine.cpp:571 +#: src/lincity/engine.cpp:585 msgid "It's at a residential area." msgstr "Isto é uma área residencial." -#: src/lincity/engine.cpp:573 +#: src/lincity/engine.cpp:587 msgid "It's at a farm." msgstr "Isto é uma fazenda." -#: src/lincity/engine.cpp:575 +#: src/lincity/engine.cpp:589 msgid "It's at a market." msgstr "Isto é um mercado." -#: src/lincity/engine.cpp:577 +#: src/lincity/engine.cpp:591 msgid "It's at a track." msgstr "Isto é uma pista." -#: src/lincity/engine.cpp:579 +#: src/lincity/engine.cpp:593 msgid "It's at a coal mine." msgstr "Isto é uma mina de carvão." -#: src/lincity/engine.cpp:581 +#: src/lincity/engine.cpp:595 msgid "It's at a railway." msgstr "Isto é uma via férrea." -#: src/lincity/engine.cpp:583 +#: src/lincity/engine.cpp:597 msgid "It's at a coal power station." msgstr "Isto é uma usina de força a carvão." -#: src/lincity/engine.cpp:585 +#: src/lincity/engine.cpp:599 msgid "It's at a road." msgstr "Isto é uma estrada." -#: src/lincity/engine.cpp:587 +#: src/lincity/engine.cpp:601 msgid "It's at light industry." msgstr "Isto é uma indústria leve." -#: src/lincity/engine.cpp:589 +#: src/lincity/engine.cpp:603 msgid "It's at a university." msgstr "Isto é uma universidade." -#: src/lincity/engine.cpp:591 +#: src/lincity/engine.cpp:605 msgid "It's at a commune." msgstr "Isto é uma comuna." -#: src/lincity/engine.cpp:593 +#: src/lincity/engine.cpp:607 msgid "It's at a tip." msgstr "Isto é um aterro." -#: src/lincity/engine.cpp:595 +#: src/lincity/engine.cpp:609 msgid "It's at a port." msgstr "Isto é um porto." -#: src/lincity/engine.cpp:597 +#: src/lincity/engine.cpp:611 msgid "It's at a steel works." msgstr "Isto é uma oficina de aço." -#: src/lincity/engine.cpp:599 +#: src/lincity/engine.cpp:613 msgid "It's at a recycle centre." msgstr "Isto é um centro de reciclagem." -#: src/lincity/engine.cpp:601 +#: src/lincity/engine.cpp:615 msgid "It's at a health centre." msgstr "Isto é um centro de saúde." -#: src/lincity/engine.cpp:603 +#: src/lincity/engine.cpp:617 msgid "It's at a rocket site." msgstr "Isto é uma área de lançamento de foguetes." -#: src/lincity/engine.cpp:605 +#: src/lincity/engine.cpp:619 msgid "It's at a windmill." msgstr "Isto é um moinho de vento." -#: src/lincity/engine.cpp:607 +#: src/lincity/engine.cpp:621 msgid "It's at a school." msgstr "Isto é uma escola." -#: src/lincity/engine.cpp:609 +#: src/lincity/engine.cpp:623 msgid "It's at a blacksmith." msgstr "Isto é um ferreiro." -#: src/lincity/engine.cpp:611 +#: src/lincity/engine.cpp:625 msgid "It's at a mill." msgstr "Isto é um moinho." -#: src/lincity/engine.cpp:613 +#: src/lincity/engine.cpp:627 msgid "It's at a pottery." msgstr "Isto é uma olaria." -#: src/lincity/engine.cpp:615 +#: src/lincity/engine.cpp:629 msgid "It's at a fire station!!!." msgstr "Isto é um corpo de bombeiros!!!" -#: src/lincity/engine.cpp:617 +#: src/lincity/engine.cpp:631 msgid "It's at a sports field!!!." msgstr "Isto é uma quadra de esportes!!!" -#: src/lincity/engine.cpp:619 +#: src/lincity/engine.cpp:633 msgid "It's at a shanty town." msgstr "Isto é uma favela." -#: src/lincity/engine.cpp:621 +#: src/lincity/engine.cpp:635 msgid "UNKNOWN!" msgstr "DESCONHECIDO!" @@ -857,7 +925,6 @@ msgstr "Fazenda" #: src/lincity/lintypes.cpp:99 -#: src/lincity/modules/track.cpp:33 msgid "Track" msgstr "Pista" @@ -874,7 +941,6 @@ msgstr "EE a Carvão" #: src/lincity/lintypes.cpp:143 -#: src/lincity/modules/road.cpp:42 msgid "Road" msgstr "Estrada" @@ -888,7 +954,7 @@ msgstr "Universidade" #: src/lincity/lintypes.cpp:176 -#: src/lincity/modules/commune.cpp:174 +#: src/lincity/modules/commune.cpp:175 msgid "Commune" msgstr "Comuna" @@ -910,7 +976,7 @@ #: src/lincity/lintypes.cpp:253 #: src/lincity/modules/residence.cpp:264 -#: src/lincity/modules/water.cpp:17 +#: src/lincity/modules/water.cpp:20 msgid "Water" msgstr "Ãgua" @@ -1007,16 +1073,28 @@ msgid "Forest" msgstr "Floresta" -#: src/lincity/loadsave.cpp:129 +#: src/lincity/lintypes.cpp:540 +msgid "Track Bridge" +msgstr "Ponte de trilha" + +#: src/lincity/lintypes.cpp:552 +msgid "Road Bridge" +msgstr "Ponte de estrada" + +#: src/lincity/lintypes.cpp:564 +msgid "Rail Bridge" +msgstr "Ponte férrea" + +#: src/lincity/loadsave.cpp:130 #, c-format msgid "Save file <%s> - " msgstr "Salvar arquivo <%s> - " -#: src/lincity/loadsave.cpp:130 +#: src/lincity/loadsave.cpp:131 msgid "Can't open save file!" msgstr "Não posso abrir o arquivo salvo!" -#: src/lincity/loadsave.cpp:292 +#: src/lincity/loadsave.cpp:293 #: src/lincity/old_ldsvguts.cpp:130 #, c-format msgid "Can't open <%s> (gzipped)" @@ -1065,7 +1143,7 @@ #: src/lincity/modules/cricket.cpp:95 #: src/lincity/modules/firestation.cpp:112 #: src/lincity/modules/health_centre.cpp:61 -#: src/lincity/modules/market.cpp:1006 +#: src/lincity/modules/market.cpp:1016 #: src/lincity/modules/pottery.cpp:110 #: src/lincity/modules/rail.cpp:51 #: src/lincity/modules/road.cpp:46 @@ -1079,7 +1157,7 @@ msgstr "Empregos" #: src/lincity/modules/coal_power.cpp:99 -#: src/lincity/modules/organic_farm.cpp:212 +#: src/lincity/modules/organic_farm.cpp:218 #: src/lincity/modules/recycle.cpp:142 #: src/lincity/modules/solar_power.cpp:58 #: src/lincity/modules/windmill.cpp:75 @@ -1099,13 +1177,13 @@ msgstr "Mina de Carvão" #: src/lincity/modules/coalmine.cpp:158 -#: src/lincity/modules/oremine.cpp:164 +#: src/lincity/modules/oremine.cpp:165 msgid "Stock" msgstr "Estoque" #: src/lincity/modules/coalmine.cpp:160 #: src/lincity/modules/coalmine.cpp:162 -#: src/lincity/modules/oremine.cpp:167 +#: src/lincity/modules/oremine.cpp:168 msgid "Reserve" msgstr "Reserva" @@ -1113,14 +1191,14 @@ msgid "EMPTY" msgstr "VAZIO" -#: src/lincity/modules/commune.cpp:177 +#: src/lincity/modules/commune.cpp:178 msgid "Activity" msgstr "Atividade" -#: src/lincity/modules/commune.cpp:182 +#: src/lincity/modules/commune.cpp:183 #: src/lincity/modules/heavy_industry.cpp:286 #: src/lincity/modules/light_industry.cpp:284 -#: src/lincity/modules/market.cpp:1009 +#: src/lincity/modules/market.cpp:1019 #: src/lincity/modules/port.cpp:294 #: src/lincity/modules/pottery.cpp:112 #: src/lincity/modules/rail.cpp:54 @@ -1130,9 +1208,9 @@ msgid "Ore" msgstr "Minério" -#: src/lincity/modules/commune.cpp:184 +#: src/lincity/modules/commune.cpp:185 #: src/lincity/modules/light_industry.cpp:285 -#: src/lincity/modules/market.cpp:1010 +#: src/lincity/modules/market.cpp:1020 #: src/lincity/modules/port.cpp:302 #: src/lincity/modules/rail.cpp:55 #: src/lincity/modules/road.cpp:50 @@ -1141,8 +1219,8 @@ msgid "Steel" msgstr "Aço" -#: src/lincity/modules/commune.cpp:186 -#: src/lincity/modules/market.cpp:1011 +#: src/lincity/modules/commune.cpp:187 +#: src/lincity/modules/market.cpp:1021 #: src/lincity/modules/rail.cpp:56 #: src/lincity/modules/recycle.cpp:146 #: src/lincity/modules/road.cpp:51 @@ -1168,7 +1246,7 @@ #: src/lincity/modules/heavy_industry.cpp:280 #: src/lincity/modules/light_industry.cpp:281 -#: src/lincity/modules/organic_farm.cpp:211 +#: src/lincity/modules/organic_farm.cpp:217 #: src/lincity/modules/recycle.cpp:139 #: src/lincity/modules/residence.cpp:263 #: src/lincity/modules/residence.cpp:267 @@ -1182,7 +1260,7 @@ #: src/lincity/modules/heavy_industry.cpp:283 #: src/lincity/modules/light_industry.cpp:282 -#: src/lincity/modules/organic_farm.cpp:211 +#: src/lincity/modules/organic_farm.cpp:217 #: src/lincity/modules/recycle.cpp:140 #: src/lincity/modules/residence.cpp:271 msgid "Power" @@ -1198,7 +1276,7 @@ msgstr "Indústria Leve" #: src/lincity/modules/light_industry.cpp:281 -#: src/lincity/modules/organic_farm.cpp:211 +#: src/lincity/modules/organic_farm.cpp:217 #: src/lincity/modules/recycle.cpp:139 #: src/lincity/modules/residence.cpp:263 #: src/lincity/modules/residence.cpp:267 @@ -1210,7 +1288,7 @@ msgid "YES" msgstr "SIM" -#: src/lincity/modules/market.cpp:1005 +#: src/lincity/modules/market.cpp:1015 #: src/lincity/modules/mill.cpp:100 #: src/lincity/modules/port.cpp:286 #: src/lincity/modules/rail.cpp:50 @@ -1232,31 +1310,31 @@ msgid "% Complete" msgstr "% Completo" -#: src/lincity/modules/oremine.cpp:161 +#: src/lincity/modules/oremine.cpp:162 msgid "Ore Mine" msgstr "Mina de Minério" -#: src/lincity/modules/organic_farm.cpp:208 +#: src/lincity/modules/organic_farm.cpp:214 msgid "Organic Farm" msgstr "Fazenda Orgânica" -#: src/lincity/modules/organic_farm.cpp:213 +#: src/lincity/modules/organic_farm.cpp:219 msgid "Prod" msgstr "Prod" -#: src/lincity/modules/organic_farm.cpp:218 +#: src/lincity/modules/organic_farm.cpp:224 msgid "Debug info" msgstr "Informação de debug" -#: src/lincity/modules/organic_farm.cpp:219 +#: src/lincity/modules/organic_farm.cpp:225 msgid "max with power&water" msgstr "máximo com energia e água" -#: src/lincity/modules/organic_farm.cpp:220 +#: src/lincity/modules/organic_farm.cpp:226 msgid "N tiles with water" msgstr "N quadradinhos com água" -#: src/lincity/modules/organic_farm.cpp:221 +#: src/lincity/modules/organic_farm.cpp:227 msgid "Current production" msgstr "Produção Atual" @@ -1264,10 +1342,6 @@ msgid "Power Line" msgstr "Linha de Transmissão" -#: src/lincity/modules/rail.cpp:47 -msgid "Rail" -msgstr "Trilho" - #: src/lincity/modules/recycle.cpp:134 msgid "Recycling Center" msgstr "Centro de Reciclagem" @@ -1366,7 +1440,7 @@ msgid "Tech Produced" msgstr "Tecnologia Produzida" -#: src/lincity/modules/water.cpp:21 +#: src/lincity/modules/water.cpp:24 msgid "Navigable" msgstr "Navegável" @@ -1390,32 +1464,58 @@ msgid "Loading scene" msgstr "Abrindo a cena" -#: src/lincity/power.cpp:271 +#: src/lincity/power.cpp:298 msgid "You have too many power grids. Join some of them" msgstr "Você possui muitas malhas de transmissão de energia. Junte algumas delas" -#: src/lincity/simulate.cpp:80 +#: src/lincity/simulate.cpp:81 msgid "Upgrading from old game. You have 10 years to build water wells where needed. After, starvation will occur! You should check starvation minimap, and read waterwell help page :-)" msgstr "Atualizando do jogo antigo. Você tem 10 anos para construir poços onde for preciso. Depois disso, escassez irá ocorrer! Você deve verificar o mini-mapa de escassez e ler a página de ajuda sobre poços." -#~ msgid "Saving scene" -#~ msgstr "Salvando cena" -#~ msgid "Solar" -#~ msgstr "Solar" -#~ msgid "Light" -#~ msgstr "Leve" -#~ msgid "Power Station" -#~ msgstr "Estação de Energia" -#~ msgid "Output" -#~ msgstr "Saída" -#~ msgid "Industry" -#~ msgstr "Indústria" -#~ msgid "Heavy" -#~ msgstr "Pesada" -#~ msgid "Center" -#~ msgstr "Centro" -#~ msgid "Recycling" -#~ msgstr "Reciclagem" #~ msgid "NO " #~ msgstr "NÃO " +#~ msgid "Recycling" +#~ msgstr "Reciclagem" +#~ msgid "Center" +#~ msgstr "Centro" +#~ msgid "Heavy" +#~ msgstr "Pesada" +#~ msgid "Industry" +#~ msgstr "Indústria" +#~ msgid "Output" +#~ msgstr "Saída" +#~ msgid "Power Station" +#~ msgstr "Estação de Energia" +#~ msgid "Light" +#~ msgstr "Leve" +#~ msgid "Solar" +#~ msgstr "Solar" +#~ msgid "Saving scene" +#~ msgstr "Salvando cena" +#~ msgid ". Coal mines %4d Ore mines %4d Communes %4d" +#~ msgstr ". Minas de carvão %4d Minas de minério %4d Comunas %4d" +#~ msgid ". Light inds %4d Heavy inds %4d Recyclers %4d" +#~ msgstr "" +#~ ". Indústias lv %4d Indústrias pes %4d Centros de reciclagem %4d" +#~ msgid ". Potteries %4d Blacksmiths %4d Mills %4d" +#~ msgstr ". Olarias %4d Ferreiros %4d Moinhos %4d" +#~ msgid ". Tracks %4d Roads %4d Rail %4d" +#~ msgstr ". Pistas %4d Estradas %4d Trilhos %4d" +#~ msgid ". Substations %4d Power lines %4d Ports %4d" +#~ msgstr ". Sub-estações %4d Linhas de transmissão %4d Portos %4d" +#~ msgid ". Windmills %4d Coal powers %4d Solar powers %4d" +#~ msgstr "" +#~ ". Moinhos de vento %4d Usinas de carvão %4d Usinas solares %4d" +#~ msgid "Health centres %4d Tips %4d Shanties %4d" +#~ msgstr "Centros de saúde %4d Aterros %4d Favelas %4d" +#~ msgid ".Fire stations %4d Parks %4d Sports fields %4d" +#~ msgstr ".Bombeiros %4d Parques %4d Quadras de Esporte %4d" +#~ msgid ". Monuments %4d Schools %4d Universities %4d" +#~ msgstr ". Monumentos %4d Escolas %4d Universidades %4d" +#~ msgid ". Water wells %4d" +#~ msgstr ". Moinhos %4d" +#~ msgid ". Residences %4d Markets %4d Farms %4d" +#~ msgstr ". Residências %4d Mercados %4d Fazendas %4d" +#~ msgid ".Deaths by starvation %7d History %8.3f" +#~ msgstr ".Mortos pela fome %7d Histórico %8.3f" diff -Nru lincity-ng-2.0/data/locale/ru.po lincity-ng-2.9~git20150314/data/locale/ru.po --- lincity-ng-2.0/data/locale/ru.po 2009-01-25 20:21:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/ru.po 2015-05-05 16:32:50.000000000 +0000 @@ -2,1335 +2,1294 @@ # This file is distributed under the same license as the lincity-ng package. # Copyright (C) 2007 Leonid Myravjev <asm@asm.pp.ru>. # -#, fuzzy msgid "" msgstr "" "Project-Id-Version: ru\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-02-24 21:11+0100\n" -"PO-Revision-Date: 2008-12-23 14:25+0300\n" +"POT-Creation-Date: 2014-02-16 10:03+0400\n" +"PO-Revision-Date: 2014-02-16 10:36+0300\n" "Last-Translator: _D-1337r! <d1337r@gmail.com>\n" "Language-Team: ASM <asm@asm.pp.ru>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.5\n" -#: src/lincity/loadsave.cpp:129 -#, c-format -msgid "Save file <%s> - " -msgstr "Сохранить в <%s> - " +#: src/lincity/lclib.cpp:15 +msgid "Jan" +msgstr "Янв" -#: src/lincity/loadsave.cpp:130 -msgid "Can't open save file!" -msgstr "Ðе могу открыть файл!" +#: src/lincity/lclib.cpp:15 +msgid "Feb" +msgstr "Фев" + +#: src/lincity/lclib.cpp:15 +msgid "Mar" +msgstr "Мар" + +#: src/lincity/lclib.cpp:15 +msgid "Apr" +msgstr "Ðпр" + +#: src/lincity/lclib.cpp:16 +msgid "May" +msgstr "Май" + +#: src/lincity/lclib.cpp:16 +msgid "Jun" +msgstr "Июн" + +#: src/lincity/lclib.cpp:16 +msgid "Jul" +msgstr "Июл" + +#: src/lincity/lclib.cpp:16 +msgid "Aug" +msgstr "Ðвг" + +#: src/lincity/lclib.cpp:17 +msgid "Sep" +msgstr "Снт" + +#: src/lincity/lclib.cpp:17 +msgid "Oct" +msgstr "Окт" -#: src/lincity/loadsave.cpp:292 src/lincity/old_ldsvguts.cpp:130 -#, c-format -msgid "Can't open <%s> (gzipped)" -msgstr "Ðе могу открыть <%s> (Ñжат gzip)" +#: src/lincity/lclib.cpp:17 +msgid "Nov" +msgstr "ÐоÑ" -#: src/lincity/fileutil.cpp:233 src/lincity/fileutil.cpp:277 +#: src/lincity/lclib.cpp:17 +msgid "Dec" +msgstr "Дек" + +#: src/lincity/fileutil.cpp:201 src/lincity/fileutil.cpp:245 msgid "Error. Can't find LINCITY_HOME" msgstr "Ошибка, не могу найти LINCITY_HOME" -#: src/lincity/fileutil.cpp:463 +#: src/lincity/fileutil.cpp:431 msgid "Error verifying package. Can't find colour.pal." msgstr "Проверка пакета не удачна. Ðе могу найти colour.pal" -#: src/lincity/fileutil.cpp:476 src/lincity/fileutil.cpp:484 -#, c-format -msgid "Couldn't create the save directory '%s'\n" +#: src/lincity/fileutil.cpp:444 src/lincity/fileutil.cpp:454 +#, fuzzy +msgid "Couldn't create the save directory" msgstr "Ðе могу Ñоздать директорию Ð´Ð»Ñ ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ '%s'\n" -#: src/lincity/fileutil.cpp:501 -#, c-format +#: src/lincity/fileutil.cpp:450 +msgid "Failed to chown" +msgstr "" + +#: src/lincity/fileutil.cpp:471 msgid "Out of memory: malloc failure\n" msgstr "Оперативной памÑти не хватает!!!\n" -#: src/lincity/old_ldsvguts.cpp:162 -msgid "Loading scene" -msgstr "Загрузка меÑтноÑти" +#: src/lincity/engine.cpp:62 +msgid "You just spent all your money." +msgstr "Ð’Ñ‹ потратили вÑе деньги." + +#: src/lincity/engine.cpp:76 +msgid "" +"ERROR: group does not exist. This should not happen! Please consider filling " +"a bug report to lincity-ng team, with the saved game and what you did :-) " +msgstr "" +"ОШИБКÐ: группы не ÑущеÑтвует. Это не Ñтрашно! ПожалуйÑта напишите отчет об " +"ошибки Ñ Ñохранённой игрой и напишите то, что вы Ñделали :-) " + +#: src/lincity/engine.cpp:182 +msgid "ups, Bulldozer found a dangling reportingConstruction" +msgstr "упÑ, бульдозер нашёл повиÑшее в процеÑÑе поÑтройки здание" -#: src/lincity/simulate.cpp:80 +#: src/lincity/engine.cpp:316 +msgid "UNKNOWN!" +msgstr "ÐЕ ИЗВЕСТÐО!" + +#: src/lincity/UserOperation.cpp:13 +msgid "query" +msgstr "КурÑор" + +#: src/lincity/UserOperation.cpp:81 +msgid "Query Tool" +msgstr "КурÑор" + +#: src/lincity/UserOperation.cpp:86 +#, fuzzy +msgid ": 50 tenants, low birthrate, high deathrate" +msgstr ": 50 жителей, Ð½Ð¸Ð·ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." + +#: src/lincity/UserOperation.cpp:87 +#, fuzzy +msgid ": 100 tenants, high birthrate, low deathrate" +msgstr ": 100 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, Ð½Ð¸Ð·ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." + +#: src/lincity/UserOperation.cpp:88 +#, fuzzy +msgid ": 200 tenants, high birthrate, high deathrate" +msgstr ": 200 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." + +#: src/lincity/UserOperation.cpp:89 +#, fuzzy +msgid ": 100 tenants, low birthrate, high deathrate" +msgstr ": 100 жителей, Ð½Ð¸Ð·ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." + +#: src/lincity/UserOperation.cpp:90 +#, fuzzy +msgid ": 200 tenants, high birthrate, low deathrate" +msgstr ": 200 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, Ð½Ð¸Ð·ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." + +#: src/lincity/UserOperation.cpp:91 +#, fuzzy +msgid ": 400 tenants, high birthrate, high deathrate" +msgstr ": 400 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." + +#: src/lincity/UserOperation.cpp:95 +msgid "Bulldozer" +msgstr "Бульдозер" + +#: src/lincity/UserOperation.cpp:97 +msgid "Evacuate" +msgstr "ОчиÑтка" + +#: src/lincity/UserOperation.cpp:99 src/lincity/lintypes.cpp:392 +#: src/lincity/lintypes.cpp:1737 src/lincity-ng/GameView.cpp:1612 +msgid "Water" +msgstr "Вода" + +#: src/lincity/UserOperation.cpp:104 +#, fuzzy +msgid "Click right for help." +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши Ð´Ð»Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰Ð¸." + +#: src/lincity/loadsave.cpp:148 +#, fuzzy +msgid "Save file" +msgstr "Сохранить в <%s> - " + +#: src/lincity/loadsave.cpp:149 +msgid "Can't open save file!" +msgstr "Ðе могу открыть файл!" + +#: src/lincity/loadsave.cpp:335 src/lincity/old_ldsvguts.cpp:133 +#, fuzzy +msgid "Can't open" +msgstr "Ðе могу открыть файл!" + +#: src/lincity/loadsave.cpp:335 src/lincity/old_ldsvguts.cpp:133 +msgid "gzipped" +msgstr "Сжато" + +#: src/lincity/simulate.cpp:92 msgid "" "Upgrading from old game. You have 10 years to build water wells where " "needed. After, starvation will occur! You should check starvation minimap, " "and read waterwell help page :-)" msgstr "" -"Обновление из Ñтарой игры. У Ð²Ð°Ñ ÐµÑÑ‚ÑŒ 10 лет на то, что бы поÑтроить водÑные " -"мельницы. ПоÑле Ñтого начнетÑÑ Ð³Ð¾Ð»Ð¾Ð´! Ð’Ñ‹ должны проверить зону Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð½Ð° " +"Обновление из Ñтарой игры. У Ð²Ð°Ñ ÐµÑÑ‚ÑŒ 10 лет на то, что бы поÑтроить Ñкважины. " +"ПоÑле Ñтого начнетÑÑ Ð³Ð¾Ð»Ð¾Ð´! Ð’Ñ‹ должны проверить зону Ð³Ð¾Ð»Ð¾Ð´Ð°Ð½Ð¸Ñ Ð½Ð° " "миникарте. Так же прочеÑÑ‚ÑŒ Ñтраничку Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ :-)" -#: src/lincity/power.cpp:271 -msgid "You have too many power grids. Join some of them" -msgstr "Слишком много проводов. СоединÑйтеÑÑŒ Ñ ÑущеÑтвующими" +#: src/lincity/lintypes.cpp:383 +msgid "Food" +msgstr "Еда" + +#: src/lincity/lintypes.cpp:384 +msgid "Jobs" +msgstr "Работа" + +#: src/lincity/lintypes.cpp:385 +msgid "Coal" +msgstr "Уголь" -#: src/lincity/engine.cpp:149 +#: src/lincity/lintypes.cpp:386 +msgid "Goods" +msgstr "Товары" + +#: src/lincity/lintypes.cpp:387 +msgid "Ore" +msgstr "Руда" + +#: src/lincity/lintypes.cpp:388 +msgid "Steel" +msgstr "Сталь" + +#: src/lincity/lintypes.cpp:389 src/lincity/modules/tip.cpp:81 +msgid "Waste" +msgstr "МуÑор" + +#: src/lincity/lintypes.cpp:390 +msgid "kWh" +msgstr "кВт⋅ч" + +#: src/lincity/lintypes.cpp:391 +msgid "MWh" +msgstr "МВт⋅ч" + +#: src/lincity/lintypes.cpp:1365 +msgid "Not enough students, build more schools." +msgstr "ÐедоÑтаточно абитуриентов, поÑтройте больше школ." + +#: src/lincity/lintypes.cpp:1394 msgid "Port must be connected to river all along right side." msgstr "Порты должны ÑоединÑÑ‚ÑŒÑÑ Ñ Ñ€ÐµÐºÐ¾Ð¹, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¿Ñ€Ð¾Ñ‚ÐµÐºÐ°ÐµÑ‚ Ñправа." -#: src/lincity/engine.cpp:161 +#: src/lincity/lintypes.cpp:1410 msgid "You can't build a water well here: it is all desert." -msgstr "Ð’Ñ‹ не можете поÑтроить колодец: Ñто пуÑтынÑ." - -#: src/lincity/engine.cpp:175 -msgid "You can't build a tip here: this area was once a landfill" -msgstr "Ð’Ñ‹ не можете Ñделать Ñвалку: меÑто забито муÑором" +msgstr "Ð’Ñ‹ не можете поÑтроить Ñкважину: Ñто пуÑтынÑ." -#: src/lincity/engine.cpp:190 -msgid "You can't build a mine here: This area was once a landfill" -msgstr "Ð’Ñ‹ не можете поÑтроить шахту: Ñто меÑто забито хламом" - -#: src/lincity/engine.cpp:201 +#: src/lincity/lintypes.cpp:1429 msgid "You can't build a mine here: there is no ore left at this site" msgstr "ÐÐµÐ»ÑŒÐ·Ñ Ð¿Ð¾Ñтроить шахту: здеÑÑŒ руды нет" -#: src/lincity/engine.cpp:211 +#: src/lincity/lintypes.cpp:1440 msgid "You can't build a park here: it is a desert, parks need water" msgstr "ÐÐµÐ»ÑŒÐ·Ñ Ð¿Ð¾Ñтроить парк: Ñто пуÑтынÑ, парку нужна вода" -#: src/lincity/engine.cpp:226 -msgid "Too many substations + windmills. You cannot build one more" -msgstr "" -"Слишком много подÑтанций и ветрÑных мельниц. Ð’Ñ‹ не можете их больше Ñтроить" - -#: src/lincity/engine.cpp:235 -msgid "Too many markets. You cannot build one more" -msgstr "Слишком много магазинов. Больше Ñтроить нельзÑ" - -#: src/lincity/engine.cpp:259 -msgid "" -"ERROR: group does not exist. This should not happen! Please consider filling " -"a bug report to lincity-ng team, with the saved game and what you did :-) " -msgstr "" -"ОШИБКÐ: группы не ÑущеÑтвует. Это не Ñтрашно! ПожалуйÑта напишите отчет об " -"ошибки Ñ Ñохранённой игрой и напишите то, что вы Ñделали :-) " - -#: src/lincity/engine.cpp:565 -msgid "It's at a power line." -msgstr "Это ÑлектролиниÑ." - -#: src/lincity/engine.cpp:567 -msgid "It's at a solar power station." -msgstr "Это ÑÐ¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ." - -#: src/lincity/engine.cpp:569 -msgid "It's at a substation." -msgstr "Это подÑтанциÑ." - -#: src/lincity/engine.cpp:571 -msgid "It's at a residential area." -msgstr "Это резиденциÑ." - -#: src/lincity/engine.cpp:573 -msgid "It's at a farm." -msgstr "Это ферма." - -#: src/lincity/engine.cpp:575 -msgid "It's at a market." -msgstr "Это магазин." - -#: src/lincity/engine.cpp:577 -msgid "It's at a track." -msgstr "Это грунтовка." - -#: src/lincity/engine.cpp:579 -msgid "It's at a coal mine." -msgstr "Это угольный рудник." - -#: src/lincity/engine.cpp:581 -msgid "It's at a railway." -msgstr "Это Ð¶ÐµÐ»ÐµÐ·Ð½Ð°Ñ Ð´Ð¾Ñ€Ð¾Ð³Ð°." - -#: src/lincity/engine.cpp:583 -msgid "It's at a coal power station." -msgstr "Это ÑƒÐ³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ." - -#: src/lincity/engine.cpp:585 -msgid "It's at a road." -msgstr "Это дорога." - -#: src/lincity/engine.cpp:587 -msgid "It's at light industry." -msgstr "Это Ð»ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ." - -#: src/lincity/engine.cpp:589 -msgid "It's at a university." -msgstr "Это универÑитет." - -#: src/lincity/engine.cpp:591 -msgid "It's at a commune." -msgstr "Это коммуна." - -#: src/lincity/engine.cpp:593 -msgid "It's at a tip." -msgstr "Это помойка." - -#: src/lincity/engine.cpp:595 -msgid "It's at a port." -msgstr "Это порт." - -#: src/lincity/engine.cpp:597 -msgid "It's at a steel works." -msgstr "Это Ñ‚ÑÐ¶Ñ‘Ð»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ." - -#: src/lincity/engine.cpp:599 -msgid "It's at a recycle centre." -msgstr "Это центр переработки." - -#: src/lincity/engine.cpp:601 -msgid "It's at a health centre." -msgstr "Это больница." - -#: src/lincity/engine.cpp:603 -msgid "It's at a rocket site." -msgstr "Это Ñ€Ð°ÐºÐµÑ‚Ð½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°." - -#: src/lincity/engine.cpp:605 -msgid "It's at a windmill." -msgstr "Это ветрÑÐ½Ð°Ñ Ð¼ÐµÐ»ÑŒÐ½Ð¸Ñ†Ð°." - -#: src/lincity/engine.cpp:607 -msgid "It's at a school." -msgstr "Это школа." - -#: src/lincity/engine.cpp:609 -msgid "It's at a blacksmith." -msgstr "Это кузница. " - -#: src/lincity/engine.cpp:611 -msgid "It's at a mill." -msgstr "Это мельница." - -#: src/lincity/engine.cpp:613 -msgid "It's at a pottery." -msgstr "Это гончарнаÑ." - -#: src/lincity/engine.cpp:615 -msgid "It's at a fire station!!!." -msgstr "Это Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ." - -#: src/lincity/engine.cpp:617 -msgid "It's at a sports field!!!." -msgstr "Это ÑÐ¿Ð¾Ñ€Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð·Ð¾Ð½Ð°." - -#: src/lincity/engine.cpp:619 -msgid "It's at a shanty town." -msgstr "Это Ñ…Ð¸Ð±Ð°Ñ€Ð½Ð°Ñ Ð¿Ð¾Ñтройка." - -#: src/lincity/engine.cpp:621 -msgid "UNKNOWN!" -msgstr "ÐЕ ИЗВЕСТÐО!" +#: src/lincity/lintypes.cpp:1457 +msgid "You cannot build this item on credit!" +msgstr "Это Ð½ÐµÐ»ÑŒÐ·Ñ Ñтроить в кредит!" -#: src/lincity/lintypes.cpp:21 +#: src/lincity/lintypes.cpp:1503 msgid "Empty" msgstr "ПуÑто" -#: src/lincity/lintypes.cpp:33 +#: src/lincity/lintypes.cpp:1516 src/lincity/modules/power_line.cpp:12 msgid "Power line" msgstr "ЭлектролиниÑ" -#: src/lincity/lintypes.cpp:44 +#: src/lincity/lintypes.cpp:1528 msgid "Solar PS" msgstr "Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ Ð­Ð¡" -#: src/lincity/lintypes.cpp:55 src/lincity/modules/substation.cpp:93 +#: src/lincity/lintypes.cpp:1539 msgid "Substation" msgstr "ПодÑтанциÑ" -#: src/lincity/lintypes.cpp:66 +#: src/lincity/lintypes.cpp:1550 msgid "Residential LL" -msgstr "Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ ÐÐ" +msgstr "Жилой дом ÐÐ" -#: src/lincity/lintypes.cpp:77 +#: src/lincity/lintypes.cpp:1561 src/lincity/modules/organic_farm.cpp:12 msgid "Farm" msgstr "Ферма" -#: src/lincity-ng/Dialog.cpp:594 src/lincity/lintypes.cpp:88 -#: src/lincity/modules/market.cpp:1001 +#: src/lincity/lintypes.cpp:1572 src/lincity/modules/market.cpp:12 +#: src/lincity-ng/Dialog.cpp:623 msgid "Market" msgstr "Магазин" -#: src/lincity/lintypes.cpp:99 src/lincity/modules/track.cpp:33 +#: src/lincity/lintypes.cpp:1583 src/lincity/modules/track_road_rail.cpp:14 msgid "Track" msgstr "Грунтовка" -#: src/lincity/lintypes.cpp:110 +#: src/lincity/lintypes.cpp:1594 msgid "Coalmine" msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°" -#: src/lincity/lintypes.cpp:121 +#: src/lincity/lintypes.cpp:1605 msgid "Railway" msgstr "РельÑÑ‹" -#: src/lincity/lintypes.cpp:132 +#: src/lincity/lintypes.cpp:1616 msgid "Coal PS" msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ Ð­Ð¡" -#: src/lincity/lintypes.cpp:143 src/lincity/modules/road.cpp:42 +#: src/lincity/lintypes.cpp:1627 src/lincity/modules/track_road_rail.cpp:44 msgid "Road" msgstr "Дорога" -#: src/lincity/lintypes.cpp:154 +#: src/lincity/lintypes.cpp:1638 msgid "Lt. Industry" -msgstr "Лег. ИндуÑтриÑ" +msgstr "Лег. Пром." -#: src/lincity/lintypes.cpp:165 src/lincity/modules/university.cpp:59 +#: src/lincity/lintypes.cpp:1649 src/lincity/modules/university.cpp:12 msgid "University" msgstr "УниверÑитет" -#: src/lincity/lintypes.cpp:176 src/lincity/modules/commune.cpp:174 +#: src/lincity/lintypes.cpp:1660 msgid "Commune" msgstr "Коммуна" -#: src/lincity/lintypes.cpp:187 +#: src/lincity/lintypes.cpp:1671 msgid "Ore mine" msgstr "Шахта руды" -#: src/lincity/lintypes.cpp:198 +#: src/lincity/lintypes.cpp:1682 msgid "Rubbish tip" -msgstr "Помойка" +msgstr "Свалка" -#: src/lincity-ng/Dialog.cpp:648 src/lincity/lintypes.cpp:209 -#: src/lincity/modules/port.cpp:281 +#: src/lincity/lintypes.cpp:1693 src/lincity/modules/port.cpp:14 +#: src/lincity-ng/Dialog.cpp:684 msgid "Port" msgstr "ЭкÑпр" -#: src/lincity/lintypes.cpp:220 +#: src/lincity/lintypes.cpp:1704 msgid "Hv. Industry" -msgstr "ТÑж. ИндуÑтриÑ" +msgstr "ТÑж. Пром." -#: src/lincity/lintypes.cpp:231 +#: src/lincity/lintypes.cpp:1715 src/lincity/modules/parkland.cpp:13 msgid "Park" msgstr "Парк" -#: src/lincity-ng/MpsInterface.cpp:518 src/lincity/lintypes.cpp:242 +#: src/lincity/lintypes.cpp:1726 src/lincity-ng/MpsInterface.cpp:516 msgid "Recycle" -msgstr "Корзина" +msgstr "Переработка" -#: src/lincity/lintypes.cpp:253 src/lincity/modules/residence.cpp:264 -#: src/lincity/modules/water.cpp:17 -msgid "Water" -msgstr "Вода" - -#: src/lincity/lintypes.cpp:264 +#: src/lincity/lintypes.cpp:1748 msgid "Health centre" -msgstr "Мед чаÑÑ‚ÑŒ" +msgstr "Больница" -#: src/lincity/lintypes.cpp:275 +#: src/lincity/lintypes.cpp:1759 msgid "Rocket pad" msgstr "Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ ÑƒÑтановка" -#: src/lincity-ng/MpsInterface.cpp:508 src/lincity/lintypes.cpp:286 -#: src/lincity/modules/windmill.cpp:74 +#: src/lincity/lintypes.cpp:1770 src/lincity/modules/windmill.cpp:12 +#: src/lincity-ng/MpsInterface.cpp:506 msgid "Windmill" -msgstr "ВетрÑные мельницы" +msgstr "Ветрогенераторы" -#: src/lincity/lintypes.cpp:297 src/lincity/modules/monument.cpp:51 +#: src/lincity/lintypes.cpp:1781 src/lincity/modules/monument.cpp:14 msgid "Monument" msgstr "Монумент" -#: src/lincity/lintypes.cpp:308 src/lincity/modules/school.cpp:43 +#: src/lincity/lintypes.cpp:1792 msgid "School" msgstr "Школа" -#: src/lincity/lintypes.cpp:319 src/lincity/modules/blacksmith.cpp:91 +#: src/lincity/lintypes.cpp:1803 src/lincity/modules/blacksmith.cpp:11 msgid "Blacksmith" msgstr "Кузница " -#: src/lincity/lintypes.cpp:330 +#: src/lincity/lintypes.cpp:1814 msgid "Mill" -msgstr "Мельница" +msgstr "ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°" -#: src/lincity/lintypes.cpp:341 src/lincity/modules/pottery.cpp:105 +#: src/lincity/lintypes.cpp:1825 src/lincity/modules/pottery.cpp:11 msgid "Pottery" msgstr "Гончарные изделиÑ" -#: src/lincity/lintypes.cpp:352 +#: src/lincity/lintypes.cpp:1836 msgid "Fire sta'n" msgstr "ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ" -#: src/lincity/lintypes.cpp:363 src/lincity/modules/cricket.cpp:92 +#: src/lincity/lintypes.cpp:1847 msgid "Sports field" msgstr "Спорт площадка" -#: src/lincity/lintypes.cpp:375 +#: src/lincity/lintypes.cpp:1859 msgid "Burnt" msgstr "Пожар" -#: src/lincity/lintypes.cpp:387 +#: src/lincity/lintypes.cpp:1871 msgid "Shanty town" msgstr "Хибарка " -#: src/lincity-ng/EconomyGraph.cpp:134 src/lincity-ng/MpsInterface.cpp:382 -#: src/lincity/lintypes.cpp:399 src/lincity/modules/residence.cpp:283 +#: src/lincity/lintypes.cpp:1883 src/lincity/modules/fire.cpp:13 +#: src/lincity-ng/EconomyGraph.cpp:135 msgid "Fire" msgstr "Огонь" -#: src/lincity/lintypes.cpp:411 +#: src/lincity/lintypes.cpp:1895 msgid "Used" msgstr "ИÑпользовать" -#: src/lincity/lintypes.cpp:422 +#: src/lincity/lintypes.cpp:1906 msgid "Residential ML" -msgstr "Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ Ð¡Ð" +msgstr "Жилой дом СÐ" -#: src/lincity/lintypes.cpp:433 +#: src/lincity/lintypes.cpp:1917 msgid "Residential HL" -msgstr "Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ Ð’Ð" +msgstr "Жилой дом Ð’Ð" -#: src/lincity/lintypes.cpp:444 +#: src/lincity/lintypes.cpp:1928 msgid "Residential LH" -msgstr "Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ Ð›Ð’" +msgstr "Жилой дом ÐÐ’" -#: src/lincity/lintypes.cpp:455 +#: src/lincity/lintypes.cpp:1939 msgid "Residential MH" -msgstr "Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ Ð¡Ð’" +msgstr "Жилой дом СВ" -#: src/lincity/lintypes.cpp:466 +#: src/lincity/lintypes.cpp:1950 msgid "Residential HH" -msgstr "Ð ÐµÐ·Ð¸Ð´ÐµÐ½Ñ†Ð¸Ñ Ð’Ð’" +msgstr "Жилой дом Ð’Ð’" -#: src/lincity/lintypes.cpp:477 +#: src/lincity/lintypes.cpp:1961 msgid "Water well" -msgstr "Колодец" +msgstr "Скважина" -#: src/lincity/lintypes.cpp:489 +#: src/lincity/lintypes.cpp:1973 msgid "Desert" msgstr "ПуÑтынÑ" -#: src/lincity/lintypes.cpp:501 +#: src/lincity/lintypes.cpp:1985 msgid "Tree" msgstr "Дерево" -#: src/lincity/lintypes.cpp:514 +#: src/lincity/lintypes.cpp:1998 msgid "Trees" msgstr "ДеревьÑ" -#: src/lincity/lintypes.cpp:527 +#: src/lincity/lintypes.cpp:2011 src/lincity/modules/commune.cpp:11 msgid "Forest" -msgstr "ЛеÑ" +msgstr "Коммуна" -#: src/lincity/lintypes.cpp:540 +#: src/lincity/lintypes.cpp:2024 src/lincity/modules/track_road_rail.cpp:29 msgid "Track Bridge" msgstr "Грунтовка" -#: src/lincity/lintypes.cpp:552 +#: src/lincity/lintypes.cpp:2036 src/lincity/modules/track_road_rail.cpp:58 msgid "Road Bridge" msgstr "ÐÑфальт" -#: src/lincity/lintypes.cpp:564 +#: src/lincity/lintypes.cpp:2048 src/lincity/modules/track_road_rail.cpp:88 msgid "Rail Bridge" msgstr "РельÑÑ‹" -#: src/lincity/lclib.cpp:15 -msgid "Jan" -msgstr "Янв" - -#: src/lincity/lclib.cpp:15 -msgid "Feb" -msgstr "Фев" +#: src/lincity/lintypes.cpp:2060 src/lincity/modules/windpower.cpp:11 +#, fuzzy +msgid "Wind Power" +msgstr "ВетрÑк продв." -#: src/lincity/lclib.cpp:15 -msgid "Mar" -msgstr "Мар" +#: src/lincity/old_ldsvguts.cpp:164 +msgid "Loading scene" +msgstr "Загрузка меÑтноÑти" -#: src/lincity/lclib.cpp:15 -msgid "Apr" -msgstr "Ðпр" +#: src/lincity/modules/health_centre.cpp:12 +msgid "Health Centre" +msgstr "Больница" -#: src/lincity/lclib.cpp:16 -msgid "May" -msgstr "Май" +#: src/lincity/modules/health_centre.cpp:78 +#: src/lincity/modules/waterwell.cpp:64 src/lincity/modules/coal_power.cpp:106 +#: src/lincity/modules/windpower.cpp:74 src/lincity/modules/university.cpp:57 +#: src/lincity/modules/solar_power.cpp:56 src/lincity/modules/market.cpp:186 +#: src/lincity/modules/school.cpp:88 src/lincity/modules/coalmine.cpp:120 +#: src/lincity/modules/rocket_pad.cpp:218 src/lincity/modules/recycle.cpp:71 +#: src/lincity/modules/port.cpp:113 src/lincity/modules/mill.cpp:70 +#: src/lincity/modules/substation.cpp:64 src/lincity/modules/commune.cpp:138 +#: src/lincity/modules/blacksmith.cpp:81 +#: src/lincity/modules/light_industry.cpp:132 +#: src/lincity/modules/cricket.cpp:90 src/lincity/modules/pottery.cpp:76 +#: src/lincity/modules/windmill.cpp:65 src/lincity/modules/tip.cpp:80 +#: src/lincity/modules/firestation.cpp:93 +#: src/lincity/modules/heavy_industry.cpp:136 +#: src/lincity/modules/monument.cpp:103 src/lincity/modules/oremine.cpp:168 +#: src/lincity/modules/organic_farm.cpp:113 +msgid "busy" +msgstr "ЗанÑтоÑÑ‚ÑŒ" + +#: src/lincity/modules/health_centre.cpp:81 +#: src/lincity/modules/waterwell.cpp:66 src/lincity/modules/cricket.cpp:93 +#: src/lincity/modules/firestation.cpp:96 src/lincity-ng/MpsInterface.cpp:344 +#: src/lincity-ng/MpsInterface.cpp:360 src/lincity-ng/MpsInterface.cpp:363 +#: src/lincity-ng/MpsInterface.cpp:366 src/lincity-ng/MpsInterface.cpp:369 +msgid "Yes" +msgstr "Да" -#: src/lincity/lclib.cpp:16 -msgid "Jun" -msgstr "Июн" +#: src/lincity/modules/health_centre.cpp:81 +#: src/lincity/modules/waterwell.cpp:66 src/lincity/modules/cricket.cpp:93 +#: src/lincity/modules/firestation.cpp:96 src/lincity-ng/MpsInterface.cpp:344 +#: src/lincity-ng/MpsInterface.cpp:360 src/lincity-ng/MpsInterface.cpp:363 +#: src/lincity-ng/MpsInterface.cpp:366 src/lincity-ng/MpsInterface.cpp:369 +msgid "No" +msgstr "Ðет" -#: src/lincity/lclib.cpp:16 -msgid "Jul" -msgstr "Июл" +#: src/lincity/modules/health_centre.cpp:82 +#: src/lincity-ng/MpsInterface.cpp:364 +#, fuzzy +msgid "Health Care" +msgstr "Здравоохранение" -#: src/lincity/lclib.cpp:16 -msgid "Aug" -msgstr "Ðвг" +#: src/lincity/modules/waterwell.cpp:23 +#, fuzzy +msgid "Water tower" +msgstr "Скважина" -#: src/lincity/lclib.cpp:17 -msgid "Sep" -msgstr "Снт" +#: src/lincity/modules/waterwell.cpp:63 src/lincity/modules/commune.cpp:137 +#: src/lincity/modules/organic_farm.cpp:111 +msgid "Fertility" +msgstr "Плодородие" + +#: src/lincity/modules/waterwell.cpp:65 src/lincity/modules/parkland.cpp:56 +#: src/lincity/modules/shanty.cpp:180 src/lincity/modules/fire.cpp:112 +#: src/lincity-ng/MpsInterface.cpp:391 +#, fuzzy +msgid "Air Pollution" +msgstr "ЗагрÑзн." -#: src/lincity/lclib.cpp:17 -msgid "Oct" -msgstr "Окт" +#: src/lincity/modules/waterwell.cpp:67 +msgid "Drinkable" +msgstr "Годна Ð´Ð»Ñ Ð¿Ð¸Ñ‚ÑŒÑ" -#: src/lincity/lclib.cpp:17 -msgid "Nov" -msgstr "ÐоÑ" +#: src/lincity/modules/coal_power.cpp:12 +msgid "Coal Power Station" +msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ" -#: src/lincity/lclib.cpp:17 -msgid "Dec" -msgstr "Дек" +#: src/lincity/modules/coal_power.cpp:107 src/lincity/modules/windpower.cpp:75 +#: src/lincity/modules/solar_power.cpp:57 +#: src/lincity/modules/rocket_pad.cpp:219 src/lincity/modules/recycle.cpp:68 +#: src/lincity/modules/light_industry.cpp:133 +#: src/lincity/modules/windmill.cpp:66 +#: src/lincity/modules/heavy_industry.cpp:137 +#: src/lincity/modules/organic_farm.cpp:112 +msgid "Tech" +msgstr "Ðаука" -#: src/lincity/modules/waterwell.cpp:56 -msgid "Water_well" -msgstr "Колодец" +#: src/lincity/modules/coal_power.cpp:108 src/lincity/modules/windpower.cpp:76 +#: src/lincity/modules/solar_power.cpp:58 src/lincity/modules/windmill.cpp:67 +#: src/lincity/modules/organic_farm.cpp:114 +msgid "Output" +msgstr "ЭкÑпорт" -#: src/lincity-ng/MpsInterface.cpp:390 src/lincity/modules/residence.cpp:288 -#: src/lincity/modules/waterwell.cpp:59 -msgid "Pollution" -msgstr "ЗагрÑзнение" +#: src/lincity/modules/university.cpp:58 +#, fuzzy +msgid "Tech researched" +msgstr "Ðаучные иÑÑл." -#: src/lincity-ng/MpsInterface.cpp:381 src/lincity-ng/MpsInterface.cpp:384 -#: src/lincity-ng/MpsInterface.cpp:387 src/lincity/modules/commune.cpp:179 -#: src/lincity/modules/commune.cpp:181 src/lincity/modules/commune.cpp:183 -#: src/lincity/modules/commune.cpp:185 src/lincity/modules/water.cpp:20 -#: src/lincity/modules/waterwell.cpp:62 -msgid "Yes" -msgstr "Да" +#: src/lincity/modules/solar_power.cpp:14 +#, fuzzy +msgid "Solar Power Plant" +msgstr "Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ" -#: src/lincity/modules/waterwell.cpp:63 -msgid "Drinkable" -msgstr "Годна Ð´Ð»Ñ Ð¿Ð¸Ñ‚ÑŒÑ" +#: src/lincity/modules/school.cpp:13 +msgid "Elementary School" +msgstr "Школа" -#: src/lincity/modules/health_centre.cpp:58 -msgid "Health Centre" -msgstr "Больница" +#: src/lincity/modules/school.cpp:89 +#, fuzzy +msgid "Lessons learned" +msgstr "Уроков преподано" -#: src/lincity/modules/blacksmith.cpp:96 src/lincity/modules/cricket.cpp:94 -#: src/lincity/modules/firestation.cpp:111 -#: src/lincity/modules/health_centre.cpp:60 src/lincity/modules/mill.cpp:98 -#: src/lincity/modules/pottery.cpp:109 src/lincity/modules/recycle.cpp:144 -#: src/lincity/modules/rocket_pad.cpp:194 src/lincity/modules/school.cpp:48 -#: src/lincity/modules/university.cpp:65 -msgid "Inventory" -msgstr "Инвентарь" - -#: src/lincity/modules/coal_power.cpp:98 src/lincity/modules/coalmine.cpp:155 -#: src/lincity/modules/cricket.cpp:95 src/lincity/modules/firestation.cpp:112 -#: src/lincity/modules/health_centre.cpp:61 -#: src/lincity/modules/market.cpp:1006 src/lincity/modules/pottery.cpp:110 -#: src/lincity/modules/rail.cpp:51 src/lincity/modules/road.cpp:46 -#: src/lincity/modules/rocket_pad.cpp:195 src/lincity/modules/school.cpp:49 -#: src/lincity/modules/solar_power.cpp:45 src/lincity/modules/track.cpp:37 -#: src/lincity/modules/university.cpp:66 src/lincity/modules/windmill.cpp:76 -msgid "Jobs" -msgstr "Работа" +#: src/lincity/modules/power_line.cpp:62 +msgid "usage" +msgstr "ИÑпользование" -#: src/lincity-ng/MpsInterface.cpp:450 src/lincity/modules/blacksmith.cpp:97 -#: src/lincity/modules/cricket.cpp:96 src/lincity/modules/firestation.cpp:113 -#: src/lincity/modules/health_centre.cpp:62 -#: src/lincity/modules/market.cpp:1008 src/lincity/modules/mill.cpp:99 -#: src/lincity/modules/port.cpp:298 src/lincity/modules/pottery.cpp:111 -#: src/lincity/modules/rail.cpp:53 src/lincity/modules/road.cpp:48 -#: src/lincity/modules/rocket_pad.cpp:196 src/lincity/modules/school.cpp:50 -#: src/lincity/modules/track.cpp:39 src/lincity/modules/university.cpp:67 -msgid "Goods" -msgstr "Товары" +#: src/lincity/modules/track_road_rail.cpp:74 src/lincity-ng/Dialog.cpp:456 +msgid "Rail" +msgstr "РельÑÑ‹" -#: src/lincity/modules/rocket_pad.cpp:188 -msgid "Rocket Pad" -msgstr "Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° " +#: src/lincity/modules/track_road_rail.cpp:196 +msgid "Traffic" +msgstr "Трафик" -#: src/lincity/modules/rocket_pad.cpp:191 -msgid "Completion" -msgstr "Завершено" +#: src/lincity/modules/track_road_rail.cpp:201 +#, fuzzy +msgid "Commodities" +msgstr "Коммуна" -#: src/lincity/modules/commune.cpp:184 -#: src/lincity/modules/light_industry.cpp:285 -#: src/lincity/modules/market.cpp:1010 src/lincity/modules/port.cpp:302 -#: src/lincity/modules/rail.cpp:55 src/lincity/modules/road.cpp:50 -#: src/lincity/modules/rocket_pad.cpp:197 src/lincity/modules/track.cpp:41 -msgid "Steel" -msgstr "Сталь" +#: src/lincity/modules/coalmine.cpp:13 +msgid "Coal Mine" +msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°" -#: src/lincity/modules/coal_power.cpp:99 -#: src/lincity/modules/organic_farm.cpp:212 -#: src/lincity/modules/recycle.cpp:142 src/lincity/modules/solar_power.cpp:58 -#: src/lincity/modules/windmill.cpp:75 -msgid "Tech" -msgstr "Ðаука" +#: src/lincity/modules/coalmine.cpp:121 src/lincity/modules/oremine.cpp:169 +msgid "Deposits" +msgstr "Склад" -#: src/lincity/modules/windmill.cpp:80 -msgid "Local Status" -msgstr "Локальный ÑтатуÑ" - -#: src/lincity/modules/windmill.cpp:83 -msgid "Prod." -msgstr "Прод." - -#: src/lincity/modules/substation.cpp:110 src/lincity/modules/windmill.cpp:86 -#: src/lincity/modules/windmill.cpp:98 -msgid "Demand" -msgstr "ПотребноÑÑ‚ÑŒ" - -#: src/lincity/modules/substation.cpp:101 src/lincity/modules/windmill.cpp:89 -msgid "Grid Status" -msgstr "ЭнергоÑтатуÑ" - -#: src/lincity/modules/windmill.cpp:92 src/lincity/modules/substation.cpp:104 -msgid "T. Cap." -msgstr "МакÑ. Ñн." - -#: src/lincity/modules/windmill.cpp:95 src/lincity/modules/substation.cpp:107 -msgid "A. Cap." -msgstr "Полез. Ñн." - -#: src/lincity/modules/coal_power.cpp:100 -#: src/lincity/modules/power_line.cpp:49 -#: src/lincity/modules/solar_power.cpp:59 -#: src/lincity/modules/substation.cpp:113 src/lincity/modules/windmill.cpp:99 -msgid "Grid ID" -msgstr "Энерго ID" - -#: src/lincity-ng/MpsInterface.cpp:381 src/lincity-ng/MpsInterface.cpp:384 -#: src/lincity-ng/MpsInterface.cpp:387 src/lincity/modules/commune.cpp:179 -#: src/lincity/modules/commune.cpp:181 src/lincity/modules/commune.cpp:183 -#: src/lincity/modules/commune.cpp:185 src/lincity/modules/water.cpp:20 -msgid "No" -msgstr "Ðет" +#: src/lincity/modules/rocket_pad.cpp:17 +msgid "Rocket Pad" +msgstr "Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ° " -#: src/lincity/modules/water.cpp:21 -msgid "Navigable" -msgstr "ÐавигациÑ" +#: src/lincity/modules/rocket_pad.cpp:220 +msgid "Overall Progress" +msgstr "Общий прогреÑÑ" + +#: src/lincity/modules/rocket_pad.cpp:221 +msgid "Next Step" +msgstr "Следующий шаг" -#: src/lincity/modules/recycle.cpp:134 -msgid "Recycling Center" +#: src/lincity/modules/recycle.cpp:12 +#, fuzzy +msgid "Recycling Centre" msgstr "Центр переработки" -#: src/lincity/modules/blacksmith.cpp:94 -#: src/lincity/modules/heavy_industry.cpp:288 -#: src/lincity/modules/light_industry.cpp:278 src/lincity/modules/mill.cpp:96 -#: src/lincity/modules/pottery.cpp:107 src/lincity/modules/recycle.cpp:137 -#: src/lincity/modules/school.cpp:52 src/lincity/modules/university.cpp:68 -msgid "Capacity" -msgstr "Выгода" - -#: src/lincity/modules/light_industry.cpp:281 -#: src/lincity/modules/organic_farm.cpp:211 -#: src/lincity/modules/recycle.cpp:139 src/lincity/modules/residence.cpp:263 -#: src/lincity/modules/residence.cpp:267 src/lincity/modules/residence.cpp:270 -#: src/lincity/modules/residence.cpp:273 src/lincity/modules/residence.cpp:279 -#: src/lincity/modules/residence.cpp:282 src/lincity/modules/residence.cpp:285 -msgid "YES" -msgstr "ДÐ" - -#: src/lincity/modules/heavy_industry.cpp:280 -#: src/lincity/modules/light_industry.cpp:281 -#: src/lincity/modules/organic_farm.cpp:211 -#: src/lincity/modules/recycle.cpp:139 src/lincity/modules/residence.cpp:263 -#: src/lincity/modules/residence.cpp:267 src/lincity/modules/residence.cpp:270 -#: src/lincity/modules/residence.cpp:273 src/lincity/modules/residence.cpp:279 -#: src/lincity/modules/residence.cpp:282 src/lincity/modules/residence.cpp:285 -msgid "NO" -msgstr "ÐЕТ" - -#: src/lincity/modules/heavy_industry.cpp:283 -#: src/lincity/modules/light_industry.cpp:282 -#: src/lincity/modules/organic_farm.cpp:211 -#: src/lincity/modules/recycle.cpp:140 src/lincity/modules/residence.cpp:271 -msgid "Power" -msgstr "ЭнергиÑ" - -#: src/lincity/modules/commune.cpp:182 -#: src/lincity/modules/heavy_industry.cpp:286 -#: src/lincity/modules/light_industry.cpp:284 -#: src/lincity/modules/market.cpp:1009 src/lincity/modules/port.cpp:294 -#: src/lincity/modules/pottery.cpp:112 src/lincity/modules/rail.cpp:54 -#: src/lincity/modules/recycle.cpp:145 src/lincity/modules/road.cpp:49 -#: src/lincity/modules/track.cpp:40 -msgid "Ore" -msgstr "Руда" +#: src/lincity/modules/recycle.cpp:69 +msgid "Efficiency Ore" +msgstr "ЭффективноÑÑ‚ÑŒ руды" + +#: src/lincity/modules/recycle.cpp:70 +msgid "Efficiency Steel" +msgstr "ЭффективноÑÑ‚ÑŒ Ñтали" -#: src/lincity/modules/commune.cpp:186 src/lincity/modules/market.cpp:1011 -#: src/lincity/modules/rail.cpp:56 src/lincity/modules/recycle.cpp:146 -#: src/lincity/modules/road.cpp:51 src/lincity/modules/track.cpp:42 -msgid "Waste" -msgstr "МуÑор" - -#: src/lincity/modules/coalmine.cpp:151 -msgid "Coal Mine" -msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°" - -#: src/lincity/modules/coalmine.cpp:158 src/lincity/modules/oremine.cpp:164 -msgid "Stock" -msgstr "Ðа Ñкладе" - -#: src/lincity/modules/coalmine.cpp:160 src/lincity/modules/coalmine.cpp:162 -#: src/lincity/modules/oremine.cpp:167 -msgid "Reserve" -msgstr "Резервы" - -#: src/lincity/modules/coalmine.cpp:162 -msgid "EMPTY" -msgstr "ПУСТО" +#: src/lincity/modules/port.cpp:114 src/lincity-ng/MpsInterface.cpp:452 +msgid "Export" +msgstr "ЭкÑпорт" -#: src/lincity/modules/residence.cpp:255 -msgid "Residence" -msgstr "РезиденциÑ" +#: src/lincity/modules/port.cpp:115 +#, fuzzy +msgid "Import" +msgstr "Импорт" -#: src/lincity/modules/residence.cpp:259 -msgid "People" -msgstr "Человек" +#: src/lincity/modules/port.cpp:116 +msgid "Culture exchanged" +msgstr "Культурный обмен" -#: src/lincity/modules/residence.cpp:268 -msgid "Fed" -msgstr "Питание" +#: src/lincity/modules/mill.cpp:12 +msgid "Textile Mill" +msgstr "ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°" -#: src/lincity/modules/residence.cpp:274 -msgid "Employed" -msgstr "Работают?" +#: src/lincity/modules/substation.cpp:12 +#, fuzzy +msgid "Power Substation" +msgstr "ЭлектроподÑтанциÑ" -#: src/lincity-ng/MpsInterface.cpp:395 src/lincity/modules/residence.cpp:276 -msgid "good" -msgstr "хорошо" +#: src/lincity/modules/commune.cpp:139 +msgid "Pollution" +msgstr "ЗагрÑзнение" -#: src/lincity/modules/residence.cpp:276 -msgid "poor" -msgstr "плохо" +#: src/lincity/modules/commune.cpp:141 +msgid "lazy months" +msgstr "ПроÑÑ‚. меÑ." -#: src/lincity/modules/residence.cpp:277 -msgid "Job" -msgstr "Работа" +#: src/lincity/modules/light_industry.cpp:13 +msgid "Light Industry" +msgstr "Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ" -#: src/lincity/modules/residence.cpp:280 -msgid "Health Cvr" -msgstr "Больница" +#: src/lincity/modules/cricket.cpp:13 +msgid "Basketball court" +msgstr "БаÑÐºÐµÑ‚Ð±Ð¾Ð»ÑŒÐ½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°" -#: src/lincity-ng/MpsInterface.cpp:388 src/lincity-ng/MpsInterface.cpp:516 -#: src/lincity/modules/residence.cpp:286 -msgid "Sport" +#: src/lincity/modules/cricket.cpp:94 +msgid "Public sports" msgstr "Спорт" -#: src/lincity/modules/monument.cpp:57 -msgid "Wisdom Bestowed" -msgstr "Мудрое Вознаграждение" - -#: src/lincity/modules/monument.cpp:61 -#, c-format -msgid "% Complete" -msgstr "% Завершено" - -#: src/lincity/modules/heavy_industry.cpp:270 -msgid "Heavy Industry" -msgstr "ТÑÐ¶ÐµÐ»Ð°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ" - -#: src/lincity-ng/MpsInterface.cpp:446 src/lincity/modules/blacksmith.cpp:98 -#: src/lincity/modules/coal_power.cpp:97 src/lincity/modules/commune.cpp:180 -#: src/lincity/modules/heavy_industry.cpp:275 -#: src/lincity/modules/heavy_industry.cpp:287 -#: src/lincity/modules/market.cpp:1007 src/lincity/modules/mill.cpp:101 -#: src/lincity/modules/port.cpp:290 src/lincity/modules/pottery.cpp:113 -#: src/lincity/modules/rail.cpp:52 src/lincity/modules/road.cpp:47 -#: src/lincity/modules/track.cpp:38 -msgid "Coal" -msgstr "Уголь" +#: src/lincity/modules/residence.cpp:15 src/lincity/modules/residence.cpp:29 +#: src/lincity/modules/residence.cpp:43 src/lincity/modules/residence.cpp:57 +#: src/lincity/modules/residence.cpp:71 src/lincity/modules/residence.cpp:85 +msgid "Residence" +msgstr "Жилой дом" -#: src/lincity/modules/heavy_industry.cpp:277 -msgid "Grid" -msgstr "ЭнергоÑиÑтема" - -#: src/lincity/modules/heavy_industry.cpp:285 -#: src/lincity/modules/light_industry.cpp:283 -msgid "Store" -msgstr "Склад" +#: src/lincity/modules/residence.cpp:349 +msgid "Tenants" +msgstr "Жители" -#: src/lincity/modules/market.cpp:1005 src/lincity/modules/mill.cpp:100 -#: src/lincity/modules/port.cpp:286 src/lincity/modules/rail.cpp:50 -#: src/lincity/modules/road.cpp:45 src/lincity/modules/track.cpp:36 -msgid "Food" -msgstr "Еда" +#: src/lincity/modules/residence.cpp:350 +#, fuzzy +msgid "Desireability" +msgstr "ПривлекательноÑÑ‚ÑŒ" -#: src/lincity-ng/MpsInterface.cpp:534 src/lincity/modules/port.cpp:306 -msgid "Total" -msgstr "Итого" +#: src/lincity/modules/residence.cpp:351 +msgid "Births per year" +msgstr "Рождении в год" + +#: src/lincity/modules/residence.cpp:352 +msgid "Death per year" +msgstr "Смертей в году" + +#: src/lincity/modules/residence.cpp:353 +msgid "Unnat. mortality" +msgstr "Погибшие" + +#: src/lincity/modules/parkland.cpp:27 +msgid "Park (Pond)" +msgstr "Парк (пруд)" -#: src/lincity/modules/coal_power.cpp:84 -msgid "Coal Power Station" -msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑлектроÑтанциÑ" +#: src/lincity/modules/tip.cpp:12 +#, fuzzy +msgid "Land Fill" +msgstr "Свалка" -#: src/lincity/modules/coal_power.cpp:88 -#: src/lincity/modules/solar_power.cpp:49 -msgid "Max Output" -msgstr "ÐœÐ°ÐºÑ ÑкÑпорт" - -#: src/lincity/modules/coal_power.cpp:93 -#: src/lincity/modules/solar_power.cpp:54 -msgid "Current Output" -msgstr "Выборочный ÑкÑпорт" - -#: src/lincity/modules/substation.cpp:97 -msgid "Local Demand" -msgstr "Локальное требование" +#: src/lincity/modules/tip.cpp:82 +#, fuzzy +msgid "Filled" +msgstr "Заполнено" -#: src/lincity/modules/mill.cpp:94 -msgid "Textile Mill" -msgstr "ТекÑÑ‚Ð¸Ð»ÑŒÐ½Ð°Ñ Ñ„Ð°Ð±Ñ€Ð¸ÐºÐ°" +#: src/lincity/modules/firestation.cpp:14 +msgid "Fire Station" +msgstr "ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ" -#: src/lincity/modules/oremine.cpp:161 -msgid "Ore Mine" -msgstr "Шахта руды" +#: src/lincity/modules/firestation.cpp:97 src/lincity-ng/MpsInterface.cpp:361 +#, fuzzy +msgid "Fire Protection" +msgstr "ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ" -#: src/lincity/modules/power_line.cpp:46 -msgid "Power Line" -msgstr "ЭлектролиниÑ" +#: src/lincity/modules/shanty.cpp:15 +#, fuzzy +msgid "Shanty Town" +msgstr "Хибарка " -#: src/lincity/modules/light_industry.cpp:275 -msgid "Light Industry" -msgstr "Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´ÑƒÑтриÑ" +#: src/lincity/modules/heavy_industry.cpp:14 +#, fuzzy +msgid "Steel Works" +msgstr "Сталь" -#: src/lincity/modules/university.cpp:61 -msgid "Tech Produced" -msgstr "ТехничеÑкий Продукт" - -#: src/lincity/modules/tip.cpp:100 -msgid "Landfill" -msgstr "Хлам" - -#: src/lincity/modules/tip.cpp:103 -msgid "Last Month" -msgstr "ПоÑледний меÑÑц" - -#: src/lincity/modules/tip.cpp:104 -msgid "Tons" -msgstr "Тонн" - -#: src/lincity/modules/tip.cpp:105 -msgid "Percent" -msgstr "Процент" - -#: src/lincity/modules/tip.cpp:107 -#, c-format -msgid "% Filled" -msgstr "% ÐктивноÑÑ‚ÑŒ" - -#: src/lincity/modules/commune.cpp:177 -msgid "Activity" -msgstr "ÐктивноÑÑ‚ÑŒ" +#: src/lincity/modules/monument.cpp:99 +#, fuzzy +msgid "Wisdom bestowed" +msgstr "Монумент" -#: src/lincity/modules/firestation.cpp:109 -msgid "Fire Station" -msgstr "ÐŸÐ¾Ð¶Ð°Ñ€Ð½Ð°Ñ ÑтанциÑ" +#: src/lincity/modules/monument.cpp:107 +msgid "Completion" +msgstr "Завершено" -#: src/lincity/modules/organic_farm.cpp:208 -msgid "Organic Farm" -msgstr "ОрганичеÑÐºÐ°Ñ Ñ„ÐµÑ€Ð¼Ð°" - -#: src/lincity/modules/organic_farm.cpp:213 -msgid "Prod" -msgstr "Продукт" - -#: src/lincity/modules/organic_farm.cpp:218 -msgid "Debug info" -msgstr "ÐžÑ‚Ð»Ð°Ð´Ð¾Ñ‡Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ" - -#: src/lincity/modules/organic_farm.cpp:219 -msgid "max with power&water" -msgstr "МакÑимум Ñ ÑлектричеÑком и водой" - -#: src/lincity/modules/organic_farm.cpp:220 -msgid "N tiles with water" -msgstr "N клеток Ñ Ð²Ð¾Ð´Ð¾Ð¹" +#: src/lincity/modules/fire.cpp:114 +msgid "burnt down" +msgstr "выгорел" -#: src/lincity/modules/organic_farm.cpp:227 -#: src/lincity/modules/organic_farm.cpp:221 +#: src/lincity/modules/fire.cpp:116 #, fuzzy -msgid "Current production" -msgstr "Выборочный ÑкÑпорт" +msgid "degraded" +msgstr "пониженный" -#: src/lincity/modules/school.cpp:45 -msgid "Lessons Learned" -msgstr "Уроков преподано" +#: src/lincity/modules/oremine.cpp:15 +msgid "Ore Mine" +msgstr "Шахта руды" -#: src/lincity/modules/solar_power.cpp:43 -msgid "Solar power station" -msgstr "Ð¡Ð¾Ð»Ð½ÐµÑ‡Ð½Ð°Ñ ÑлектроÑтанциÑ" +#: src/lincity/modules/water.cpp:22 src/lincity-ng/MpsInterface.cpp:349 +msgid "Lake" +msgstr "Озеро" + +#: src/lincity/modules/water.cpp:24 src/lincity-ng/MpsInterface.cpp:351 +#, fuzzy +msgid "River" +msgstr "Река" -#: src/lincity-ng/Dialog.cpp:174 +#: src/lincity/modules/water.cpp:26 src/lincity-ng/MpsInterface.cpp:353 +msgid "Pond" +msgstr "Пруд" + +#: src/lincity-ng/Dialog.cpp:175 msgid "Launchsite" msgstr "Ð Ð°ÐºÐµÑ‚Ð½Ð°Ñ Ð¿Ð»Ð¾Ñ‰Ð°Ð´ÐºÐ°" -#: src/lincity-ng/Dialog.cpp:343 +#: src/lincity-ng/Dialog.cpp:371 msgid "----- IN TEST MODE -------" msgstr "----- Ð’ ТЕСТОВОМ РЕЖИМЕ -------" -#: src/lincity-ng/Dialog.cpp:345 -#, c-format -msgid "Game statistics from LinCity-NG Version %s" -msgstr "СтатиÑтика игры LinCity-NG ВерÑии %s" - -#: src/lincity-ng/Dialog.cpp:348 -#, c-format -msgid "Initial loaded scene - %s" -msgstr "Загружена карта - %s" +#: src/lincity-ng/Dialog.cpp:373 +#, fuzzy +msgid "Game statistics from LinCity-NG Version" +msgstr "СтатиÑтика игры из LinCity-NG верÑии" -#: src/lincity-ng/Dialog.cpp:352 -#, c-format +#: src/lincity-ng/Dialog.cpp:376 +#, fuzzy +msgid "Initial loaded scene" +msgstr "Загрузка начальной Ñцены" + +#: src/lincity-ng/Dialog.cpp:380 msgid "Economy is sustainable" msgstr "Экономика Ñтабилизирована" -#: src/lincity-ng/Dialog.cpp:355 -#, c-format -msgid "Population %d of which %d are not housed." -msgstr "ÐаÑеление %d из них %d бездомные." - -#: src/lincity-ng/Dialog.cpp:359 -#, c-format -msgid "Max population %d Number evacuated %d Total births %d" -msgstr "" -"МакÑимальное наÑеление %d, кол-во Ñвакуированных %d, кол-во рождении %d" +#: src/lincity-ng/Dialog.cpp:384 src/lincity-ng/MpsInterface.cpp:530 +msgid "Population" +msgstr "ÐаÑеление" -#: src/lincity-ng/Dialog.cpp:363 -#, c-format -msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" -msgstr "Дата %s %04d Деньги %8d Уровень Ð¾Ð±ÑƒÑ‡ÐµÐ½Ð¸Ñ %5.1f (%5.1f)" - -#: src/lincity-ng/Dialog.cpp:398 -#, c-format -msgid "Deaths by starvation %7d History %8.3f" -msgstr "Погибло от голода %7d ИÑÑ‚Ð¾Ñ€Ð¸Ñ %8.3f" +#: src/lincity-ng/Dialog.cpp:384 +msgid "of which" +msgstr "из которых" + +#: src/lincity-ng/Dialog.cpp:384 +msgid "are not housed" +msgstr "без дома" -#: src/lincity-ng/Dialog.cpp:373 -#, c-format -msgid "Deaths from pollution %7d History %8.3f" -msgstr "Погибло от загрÑÐ·Ð½ÐµÐ½Ð¸Ñ %7d ИÑÑ‚Ð¾Ñ€Ð¸Ñ %8.3f" +#: src/lincity-ng/Dialog.cpp:387 +#, fuzzy +msgid "Max population" +msgstr "МакÑимум жителей" -#: src/lincity-ng/Dialog.cpp:376 -#, c-format -msgid "Years of unemployment %7d History %8.3f" -msgstr "Лет без работы %7d ИÑÑ‚Ð¾Ñ€Ð¸Ñ %8.3f" - -#: src/lincity-ng/Dialog.cpp:379 -#, c-format -msgid "Rockets launched %2d Successful launches %2d" -msgstr "Запущенно ракет %2d из них удачно %2d" +#: src/lincity-ng/Dialog.cpp:387 +msgid "Number evacuated" +msgstr "Эвакуированных" + +#: src/lincity-ng/Dialog.cpp:387 +msgid "Total births" +msgstr "Итого рождений" + +#: src/lincity-ng/Dialog.cpp:390 +msgid "Date" +msgstr "Дата" + +#: src/lincity-ng/Dialog.cpp:391 src/lincity-ng/EconomyGraph.cpp:129 +msgid "Money" +msgstr "Денег" + +#: src/lincity-ng/Dialog.cpp:391 +msgid "Tech-level" +msgstr "Ðаука" + +#: src/lincity-ng/Dialog.cpp:396 +#, fuzzy +msgid "Deaths by starvation" +msgstr "Смертей от голода" + +#: src/lincity-ng/Dialog.cpp:397 src/lincity-ng/Dialog.cpp:401 +#: src/lincity-ng/Dialog.cpp:405 +msgid "History" +msgstr "ИÑториÑ" + +#: src/lincity-ng/Dialog.cpp:400 +#, fuzzy +msgid "Deaths from pollution" +msgstr "Смертей от загрÑзнениÑ" + +#: src/lincity-ng/Dialog.cpp:404 +#, fuzzy +msgid "Years of unemployment" +msgstr "Годов безработицы" + +#: src/lincity-ng/Dialog.cpp:408 +#, fuzzy +msgid "Rockets launched" +msgstr "Ракет запущено" + +#: src/lincity-ng/Dialog.cpp:409 +msgid "Successful launches" +msgstr "УÑпешно" #: src/lincity-ng/Dialog.cpp:417 msgid "Residences" -msgstr "Резиденции" +msgstr "Жилые дома" -#: src/lincity-ng/Dialog.cpp:424 +#: src/lincity-ng/Dialog.cpp:419 msgid "Markets" msgstr "Магазины" -#: src/lincity-ng/Dialog.cpp:425 +#: src/lincity-ng/Dialog.cpp:420 msgid "Farms" msgstr "Фермы" -#: src/lincity-ng/Dialog.cpp:427 +#: src/lincity-ng/Dialog.cpp:422 msgid "Water wells" -msgstr "Колодцы" +msgstr "Скважины" -#: src/lincity-ng/Dialog.cpp:435 +#: src/lincity-ng/Dialog.cpp:423 +#, fuzzy +msgid "Wind powers" +msgstr "Ветрогенераторы" + +#: src/lincity-ng/Dialog.cpp:430 msgid "Monuments" msgstr "Монументы" -#: src/lincity-ng/MpsInterface.cpp:502 +#: src/lincity-ng/Dialog.cpp:431 src/lincity-ng/MpsInterface.cpp:500 msgid "Schools" msgstr "Школы" -#: src/lincity-ng/Dialog.cpp:437 +#: src/lincity-ng/Dialog.cpp:432 msgid "Universities" msgstr "УниверÑитеты" -#: src/lincity-ng/Dialog.cpp:439 +#: src/lincity-ng/Dialog.cpp:434 msgid "Fire stations" msgstr "Пожарные Ñтанции" -#: src/lincity-ng/Dialog.cpp:440 +#: src/lincity-ng/Dialog.cpp:435 msgid "Parks" msgstr "Парки" -#: src/lincity-ng/Dialog.cpp:441 +#: src/lincity-ng/Dialog.cpp:436 msgid "Sports fields" msgstr "Спортплощадки" -#: src/lincity-ng/Dialog.cpp:443 +#: src/lincity-ng/Dialog.cpp:438 msgid "Health centres" msgstr "Больницы" -#: src/lincity-ng/Dialog.cpp:444 +#: src/lincity-ng/Dialog.cpp:439 msgid "Tips" -msgstr "Помойки" +msgstr "Свалки" -#: src/lincity-ng/MpsInterface.cpp:537 +#: src/lincity-ng/Dialog.cpp:440 src/lincity-ng/MpsInterface.cpp:535 msgid "Shanties" -msgstr "Хибара" +msgstr "Хибары" -#: src/lincity-ng/Dialog.cpp:451 +#: src/lincity-ng/Dialog.cpp:446 msgid "Windmills" -msgstr "Мельницы" +msgstr "Ветрогенераторы" -#: src/lincity-ng/Dialog.cpp:452 +#: src/lincity-ng/Dialog.cpp:447 msgid "Coal powers" -msgstr "Угольные Ñл" +msgstr "Угольные Ñл." -#: src/lincity-ng/Dialog.cpp:453 +#: src/lincity-ng/Dialog.cpp:448 msgid "Solar powers" -msgstr "Солнечные Ñл" +msgstr "Солнечные Ñл." -#: src/lincity-ng/Dialog.cpp:455 +#: src/lincity-ng/Dialog.cpp:450 msgid "Substations" msgstr "ПодÑтанции" -#: src/lincity-ng/Dialog.cpp:456 +#: src/lincity-ng/Dialog.cpp:451 msgid "Power lines" msgstr "Электролинии" -#: src/lincity-ng/Dialog.cpp:457 +#: src/lincity-ng/Dialog.cpp:452 msgid "Ports" msgstr "Порты" -#: src/lincity-ng/Dialog.cpp:459 +#: src/lincity-ng/Dialog.cpp:454 msgid "Tracks" msgstr "Грунтовки" -#: src/lincity-ng/Dialog.cpp:460 +#: src/lincity-ng/Dialog.cpp:455 msgid "Roads" msgstr "Дороги" -#: src/lincity/modules/rail.cpp:47 -msgid "Rail" -msgstr "РельÑÑ‹" - -#: src/lincity-ng/Dialog.cpp:467 +#: src/lincity-ng/Dialog.cpp:462 msgid "Potteries" msgstr "Гончарные" -#: src/lincity-ng/Dialog.cpp:468 +#: src/lincity-ng/Dialog.cpp:463 msgid "Blacksmiths" -msgstr "КузнечнаÑ" +msgstr "Кузницы" -#: src/lincity-ng/Dialog.cpp:469 +#: src/lincity-ng/Dialog.cpp:464 msgid "Mills" -msgstr "Мельница" +msgstr "ТекÑтильные фабрики" -#: src/lincity-ng/Dialog.cpp:471 +#: src/lincity-ng/Dialog.cpp:466 msgid "Light inds" -msgstr "Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´-иÑ" +msgstr "Ð›ÐµÐ³ÐºÐ°Ñ Ð¿Ñ€Ð¾Ð¼." -#: src/lincity-ng/Dialog.cpp:472 +#: src/lincity-ng/Dialog.cpp:467 msgid "Heavy inds" -msgstr "ТÑÐ¶ÐµÐ»Ð°Ñ Ð¸Ð½Ð´-иÑ" +msgstr "ТÑÐ¶ÐµÐ»Ð°Ñ Ð¿Ñ€Ð¾Ð¼." -#: src/lincity-ng/Dialog.cpp:473 +#: src/lincity-ng/Dialog.cpp:468 msgid "Recyclers" -msgstr "Переработки" +msgstr "Переработка" -#: src/lincity-ng/Dialog.cpp:475 +#: src/lincity-ng/Dialog.cpp:470 msgid "Coal mines" -msgstr "Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð°" +msgstr "Угольные шахты" -#: src/lincity-ng/Dialog.cpp:476 +#: src/lincity-ng/Dialog.cpp:471 msgid "Ore mines" -msgstr "Шахта руды" +msgstr "Шахты руды" -#: src/lincity-ng/Dialog.cpp:477 -msgid "Communes" -msgstr "Коммуна" +#: src/lincity-ng/Dialog.cpp:472 +#, fuzzy +msgid "Forests" +msgstr "Коммуны" -#: src/lincity-ng/GameView.cpp:239 +#: src/lincity-ng/GameView.cpp:248 msgid "Minimap: outline map" -msgstr "Мини-карта: поÑтройки" +msgstr "Миникарта: поÑтройки" -#: src/lincity-ng/GameView.cpp:242 +#: src/lincity-ng/GameView.cpp:251 msgid "Minimap: unemployment" -msgstr "Мини-карта: работа" +msgstr "Миникарта: работа" -#: src/lincity-ng/GameView.cpp:245 +#: src/lincity-ng/GameView.cpp:254 msgid "Minimap: pollution" -msgstr "Мини-карта: загрÑзнениÑ" +msgstr "Миникарта: загрÑзнениÑ" -#: src/lincity-ng/GameView.cpp:248 +#: src/lincity-ng/GameView.cpp:257 msgid "Minimap: nourishments" -msgstr "Мини-карта: реÑурÑÑ‹" +msgstr "Миникарта: реÑурÑÑ‹" -#: src/lincity-ng/GameView.cpp:251 +#: src/lincity-ng/GameView.cpp:260 msgid "Minimap: power supply" -msgstr "Мини-карта: Ñлектропитание" +msgstr "Миникарта: Ñлектропитание" -#: src/lincity-ng/GameView.cpp:254 +#: src/lincity-ng/GameView.cpp:263 msgid "Minimap: firedepartment cover" -msgstr "Мини-карта: Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ Ð¾Ñ…Ñ€Ð°Ð½Ð°" +msgstr "Миникарта: Ð¿Ð¾Ð¶Ð°Ñ€Ð½Ð°Ñ Ð¾Ñ…Ñ€Ð°Ð½Ð°" -#: src/lincity-ng/GameView.cpp:257 +#: src/lincity-ng/GameView.cpp:266 msgid "Minimap: sport cover" -msgstr "Мини-карта: Ñпорт" +msgstr "Миникарта: Ñпорт" -#: src/lincity-ng/GameView.cpp:260 +#: src/lincity-ng/GameView.cpp:269 msgid "Minimap: medical care" -msgstr "Мини-карта: медицина" +msgstr "Миникарта: медицина" -#: src/lincity-ng/GameView.cpp:263 -msgid "Minimap: coal depots" -msgstr "Мини-карта: угольные меÑта" +#: src/lincity-ng/GameView.cpp:272 +#, fuzzy +msgid "Minimap: coal deposits" +msgstr "Миникарта: угольные меÑторождениÑ" -#: src/lincity-ng/GameView.cpp:266 -msgid "Minimap: traffic density" -msgstr "Мини-карта: трафик" +#: src/lincity-ng/GameView.cpp:276 +#, fuzzy +msgid "Minimap: traffic density:" +msgstr "Миникарта: трафик:" -#: src/lincity-ng/GameView.cpp:1593 +#: src/lincity-ng/GameView.cpp:283 +#, fuzzy +msgid "Minimap: commodities:" +msgstr "Миникарта: потребление:" + +#: src/lincity-ng/GameView.cpp:1553 msgid "Estimated Bulldoze Cost: " msgstr "РаÑÑ‡ÐµÑ‚Ð½Ð°Ñ Ñ†ÐµÐ½Ð° ÑноÑа: " -#: src/lincity-ng/GameView.cpp:1595 +#: src/lincity-ng/GameView.cpp:1555 msgid "Bulldoze Cost: " msgstr "Ð¡Ð½Ð¾Ñ Ñтоит: " -#: src/lincity-ng/GameView.cpp:1598 src/lincity-ng/GameView.cpp:1629 -#: src/lincity-ng/ScreenInterface.cpp:274 +#: src/lincity-ng/GameView.cpp:1558 src/lincity-ng/GameView.cpp:1570 +#: src/lincity-ng/GameView.cpp:1599 src/lincity-ng/GameView.cpp:1600 +#: src/lincity-ng/GameView.cpp:1603 src/lincity-ng/GameView.cpp:1612 +#: src/lincity-ng/GameView.cpp:1613 src/lincity-ng/ScreenInterface.cpp:240 msgid "$" -msgstr " руб" +msgstr "руб." -#: src/lincity-ng/GameView.cpp:1600 +#: src/lincity-ng/GameView.cpp:1560 src/lincity-ng/GameView.cpp:1572 msgid "n/a" msgstr "н/д" -#: src/lincity-ng/GameView.cpp:1629 +#: src/lincity-ng/GameView.cpp:1568 src/lincity-ng/GameView.cpp:1599 +#: src/lincity-ng/GameView.cpp:1612 msgid ": Cost to build " msgstr ": СтоимоÑÑ‚ÑŒ поÑтройки " -#: src/lincity-ng/GameView.cpp:1618 +#: src/lincity-ng/GameView.cpp:1590 msgid "Query Tool: Show information about selected building." msgstr "КурÑор: Показать информацию о выбранных поÑтройках. " -#: src/lincity-ng/GameView.cpp:1622 +#: src/lincity-ng/GameView.cpp:1594 msgid "Bulldozer: remove building -price varies-" msgstr "Бульдозер: удалить Ð·Ð´Ð°Ð½Ð¸Ñ -цена варьирует-" -#: src/lincity-ng/GameView.cpp:1630 +#: src/lincity-ng/GameView.cpp:1600 src/lincity-ng/GameView.cpp:1613 msgid ", to bulldoze " msgstr ", ÑƒÐ½Ð¸Ñ‡Ñ‚Ð¾Ð¶ÐµÐ½Ð¸Ñ - " -#: src/lincity-ng/GameView.cpp:1630 src/lincity-ng/GameView.cpp:1633 -msgid "$." -msgstr " руб." - -#: src/lincity-ng/GameView.cpp:1632 +#: src/lincity-ng/GameView.cpp:1602 msgid " To build " msgstr " Строить " -#: src/lincity-ng/GameView.cpp:1632 +#: src/lincity-ng/GameView.cpp:1602 msgid " of them " msgstr " из " -#: src/lincity-ng/GameView.cpp:1633 +#: src/lincity-ng/GameView.cpp:1603 msgid "will cost about " msgstr "будет Ñтоить " -#: src/lincity-ng/MainMenu.cpp:141 -msgid "good_times" -msgstr "Хорошие времена" - -#: src/lincity-ng/MainMenu.cpp:142 -msgid "bad_times" -msgstr "Плохие времена" - -#: src/lincity-ng/MainMenu.cpp:143 -#, fuzzy -msgid "Beach" -msgstr "ПлÑж" - -#: src/lincity-ng/MainMenu.cpp:144 -msgid "extreme_arid" -msgstr "ЗаÑуха" - -#: src/lincity-ng/MainMenu.cpp:145 -msgid "extreme_wetland" -msgstr "Ðаводнение" - -#: src/lincity-ng/MainMenu.cpp:212 -msgid "empty" -msgstr "пуÑто" +#: src/lincity-ng/GameView.cpp:1608 +msgid "Evacuation of commodities is for free." +msgstr "ОпуÑтошение объектов беÑплатно" -#: src/lincity-ng/MpsInterface.cpp:229 +#: src/lincity-ng/MpsInterface.cpp:130 msgid "no further information available" msgstr "нет информации" -#: src/lincity-ng/MpsInterface.cpp:227 +#: src/lincity-ng/MpsInterface.cpp:134 msgid "build something here" msgstr "тут можно Ñтроить" -#: src/lincity-ng/MpsInterface.cpp:380 -msgid "Coverage" -msgstr "Зона дейÑтвиÑ" +#: src/lincity-ng/MpsInterface.cpp:345 +msgid "Fertile" +msgstr "Плодородный" + +#: src/lincity-ng/MpsInterface.cpp:367 +msgid "Public Sports" +msgstr "Публичный Ñпорт" -#: src/lincity-ng/MpsInterface.cpp:385 -msgid "Health" -msgstr "Здоровье" +#: src/lincity-ng/MpsInterface.cpp:370 +#, fuzzy +msgid "Market Range" +msgstr "Магазин" -#: src/lincity-ng/MpsInterface.cpp:393 +#: src/lincity-ng/MpsInterface.cpp:373 msgid "clear" msgstr "чиÑто" -#: src/lincity-ng/MpsInterface.cpp:397 +#: src/lincity-ng/MpsInterface.cpp:375 +msgid "good" +msgstr "хорошо" + +#: src/lincity-ng/MpsInterface.cpp:377 msgid "fair" msgstr "удовл." -#: src/lincity-ng/MpsInterface.cpp:399 +#: src/lincity-ng/MpsInterface.cpp:379 msgid "smelly" msgstr "пахнет" -#: src/lincity-ng/MpsInterface.cpp:401 +#: src/lincity-ng/MpsInterface.cpp:381 msgid "smokey" msgstr "дым" -#: src/lincity-ng/MpsInterface.cpp:403 +#: src/lincity-ng/MpsInterface.cpp:383 msgid "smoggy" msgstr "Ñмог" -#: src/lincity-ng/MpsInterface.cpp:405 +#: src/lincity-ng/MpsInterface.cpp:385 msgid "bad" msgstr "плохо" -#: src/lincity-ng/MpsInterface.cpp:407 +#: src/lincity-ng/MpsInterface.cpp:387 msgid "very bad" msgstr "очень плохо" -#: src/lincity-ng/MpsInterface.cpp:409 +#: src/lincity-ng/MpsInterface.cpp:389 msgid "death!" msgstr "Смерть!" -#: src/lincity-ng/MpsInterface.cpp:414 -msgid "Bulldoze Cost" -msgstr "СтоимоÑÑ‚ÑŒ УничтожениÑ" +#: src/lincity-ng/MpsInterface.cpp:395 src/lincity-ng/MpsInterface.cpp:400 +#: src/lincity-ng/MpsInterface.cpp:402 +#, fuzzy +msgid "Bull. Cost" +msgstr "СтоимоÑÑ‚ÑŒ" -#: src/lincity-ng/MpsInterface.cpp:420 +#: src/lincity-ng/MpsInterface.cpp:400 msgid "N/A" msgstr "Ð/Д" -#: src/lincity-ng/MpsInterface.cpp:438 +#: src/lincity-ng/MpsInterface.cpp:404 +#, fuzzy +msgid "Ore Reserve" +msgstr "Ð—Ð°Ð¿Ð°Ñ Ñ€ÑƒÐ´Ñ‹" + +#: src/lincity-ng/MpsInterface.cpp:405 +#, fuzzy +msgid "Coal Reserve" +msgstr "Ð—Ð°Ð¿Ð°Ñ ÑƒÐ³Ð»Ñ" + +#: src/lincity-ng/MpsInterface.cpp:406 +msgid "ground level" +msgstr "уровень" + +#: src/lincity-ng/MpsInterface.cpp:416 +msgid "saddle point" +msgstr "" + +#: src/lincity-ng/MpsInterface.cpp:418 +msgid "minimum" +msgstr "минимум" + +#: src/lincity-ng/MpsInterface.cpp:420 +msgid "maximum" +msgstr "макÑимум" + +#: src/lincity-ng/MpsInterface.cpp:422 +msgid "lowest edge" +msgstr "наименьший" + +#: src/lincity-ng/MpsInterface.cpp:436 msgid "Tax Income" -msgstr "Доход" +msgstr "Доход/РаÑход" -#: src/lincity-ng/MpsInterface.cpp:442 +#: src/lincity-ng/MpsInterface.cpp:440 msgid "Income" msgstr "Доход" -#: src/lincity-ng/MpsInterface.cpp:454 -msgid "Export" -msgstr "ЭкÑпорт" - -#: src/lincity-ng/MpsInterface.cpp:458 +#: src/lincity-ng/MpsInterface.cpp:456 msgid "Expenses" msgstr "Затраты" -#: src/lincity-ng/MpsInterface.cpp:462 +#: src/lincity-ng/MpsInterface.cpp:460 msgid "Unemp." msgstr "Безработица" -#: src/lincity-ng/MpsInterface.cpp:466 +#: src/lincity-ng/MpsInterface.cpp:464 msgid "Transport" msgstr "ТранÑпорт" -#: src/lincity-ng/MpsInterface.cpp:470 +#: src/lincity-ng/MpsInterface.cpp:468 msgid "Imports" msgstr "Импорт" -#: src/lincity-ng/MpsInterface.cpp:474 +#: src/lincity-ng/MpsInterface.cpp:472 msgid "Others" msgstr "Другое" -#: src/lincity-ng/MpsInterface.cpp:479 +#: src/lincity-ng/MpsInterface.cpp:477 msgid "Net" msgstr "БаланÑ" -#: src/lincity-ng/MpsInterface.cpp:491 +#: src/lincity-ng/MpsInterface.cpp:489 msgid "Other Costs" msgstr "Другие затраты" -#: src/lincity-ng/MpsInterface.cpp:496 +#: src/lincity-ng/MpsInterface.cpp:494 msgid "For year" msgstr "За год" -#: src/lincity-ng/MpsInterface.cpp:500 +#: src/lincity-ng/MpsInterface.cpp:498 msgid "Interest" msgstr "Заём" -#: src/lincity-ng/MpsInterface.cpp:504 +#: src/lincity-ng/MpsInterface.cpp:502 msgid "Univers." -msgstr "УниверÑитеты." +msgstr "УниверÑитеты" -#: src/lincity-ng/MpsInterface.cpp:506 +#: src/lincity-ng/MpsInterface.cpp:504 msgid "Deaths" msgstr "Смерти" -#: src/lincity-ng/MpsInterface.cpp:510 +#: src/lincity-ng/MpsInterface.cpp:508 msgid "Hospital" -msgstr "ГоÑпиталь" +msgstr "Больницы" -#: src/lincity-ng/MpsInterface.cpp:512 +#: src/lincity-ng/MpsInterface.cpp:510 msgid "Rockets" msgstr "Ракеты" -#: src/lincity-ng/MpsInterface.cpp:514 +#: src/lincity-ng/MpsInterface.cpp:512 msgid "Fire Stn" msgstr "Пожарные ÑÑ‚" +#: src/lincity-ng/MpsInterface.cpp:514 +msgid "Sport" +msgstr "Спорт" + #: src/lincity-ng/MpsInterface.cpp:532 -msgid "Population" -msgstr "ÐаÑеление" +msgid "Total" +msgstr "Итого" -#: src/lincity-ng/MpsInterface.cpp:535 +#: src/lincity-ng/MpsInterface.cpp:533 msgid "Housed" msgstr "Дома" -#: src/lincity-ng/MpsInterface.cpp:536 +#: src/lincity-ng/MpsInterface.cpp:534 msgid "Homeless" msgstr "Бездомные" -#: src/lincity-ng/MpsInterface.cpp:538 -msgid "Unn Dths" -msgstr "Смерти" +#: src/lincity-ng/MpsInterface.cpp:536 +#, fuzzy +msgid "Unnat. Deaths" +msgstr "Погибшие" -#: src/lincity-ng/MpsInterface.cpp:539 +#: src/lincity-ng/MpsInterface.cpp:537 msgid "Unemployment" msgstr "Безработица" -#: src/lincity-ng/MpsInterface.cpp:540 -msgid "Claims" -msgstr "По болезни" - -#: src/lincity-ng/MpsInterface.cpp:541 src/lincity-ng/MpsInterface.cpp:546 -msgid "Rate" -msgstr "Процент" - -#: src/lincity-ng/MpsInterface.cpp:543 +#: src/lincity-ng/MpsInterface.cpp:541 msgid "Starvation" msgstr "Голодание" -#: src/lincity-ng/MpsInterface.cpp:544 -msgid "Cases" -msgstr "Смерти" +#: src/lincity-ng/MpsInterface.cpp:542 +msgid "Monthly Births" +msgstr "Рожд. меÑ." -#: src/lincity-ng/EconomyGraph.cpp:124 +#: src/lincity-ng/MpsInterface.cpp:543 +msgid "Monthly Deaths" +msgstr "Смерт. меÑ." + +#: src/lincity-ng/ScreenInterface.cpp:229 +#, fuzzy +msgid "M" +msgstr "млн." + +#: src/lincity-ng/ScreenInterface.cpp:242 +msgid "k" +msgstr "Ñ‚Ñ‹Ñ." + +#: src/lincity-ng/EconomyGraph.cpp:125 msgid "Mining" -msgstr "Рудн" +msgstr "Доб" -#: src/lincity-ng/EconomyGraph.cpp:126 +#: src/lincity-ng/EconomyGraph.cpp:127 msgid "Trade" -msgstr "РемÑл" +msgstr "Торг" -#: src/lincity-ng/EconomyGraph.cpp:128 -msgid "Money" -msgstr "Денг" - -#: src/lincity-ng/EconomyGraph.cpp:130 +#: src/lincity-ng/EconomyGraph.cpp:131 msgid "Popul." msgstr "ÐаÑел" -#: src/lincity-ng/EconomyGraph.cpp:132 +#: src/lincity-ng/EconomyGraph.cpp:133 msgid "Techn." msgstr "Ðаука" -#: src/lincity-ng/EconomyGraph.cpp:137 +#: src/lincity-ng/EconomyGraph.cpp:138 msgid "Economy Overview:" -msgstr "Эконом развитие: " +msgstr "ЭкономичеÑкое развитие: " -#: src/lincity-ng/EconomyGraph.cpp:140 +#: src/lincity-ng/EconomyGraph.cpp:141 msgid "Sustainability:" msgstr "Поддержка: " -#: src/lincity-ng/EconomyGraph.cpp:143 +#: src/lincity-ng/EconomyGraph.cpp:144 msgid "Frames per Second:" msgstr "Кадров в Ñекунду" @@ -1338,151 +1297,57 @@ msgid "You lose." msgstr "Ð’Ñ‹ проиграли." -#: src/lincity-ng/ButtonPanel.cpp:200 -msgid "Query Tool" -msgstr "КурÑор" - -#: src/lincity-ng/ButtonPanel.cpp:201 -msgid "Bulldozer" -msgstr "Бульдозер" - -#: src/lincity-ng/ButtonPanel.cpp:203 -msgid "Residential: 50 denizens, low birthrate, high deathrate" -msgstr "РезиденциÑ: 50 жителей, Ð½Ð¸Ð·ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." - -#: src/lincity-ng/ButtonPanel.cpp:204 -msgid "Residential: 100 denizens, high birthrate, low deathrate" -msgstr "РезиденциÑ: 100 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, Ð½Ð¸Ð·ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." - -#: src/lincity-ng/ButtonPanel.cpp:205 -msgid "Residential: 200 denizens, high birthrate, high deathrate" -msgstr "РезиденциÑ: 200 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." - -#: src/lincity-ng/ButtonPanel.cpp:206 -msgid "Residential: 100 denizens, low birthrate, high deathrate" -msgstr "РезиденциÑ: 100 жителей, Ð½Ð¸Ð·ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." - -#: src/lincity-ng/ButtonPanel.cpp:207 -msgid "Residential: 200 denizens, high birthrate, low deathrate" -msgstr "РезиденциÑ: 200 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, Ð½Ð¸Ð·ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." - -#: src/lincity-ng/ButtonPanel.cpp:208 -msgid "Residential: 400 denizens, high birthrate, high deathrate" -msgstr "РезиденциÑ: 400 жителей, выÑÐ¾ÐºÐ°Ñ Ñ€Ð¾Ð¶Ð´Ð°ÐµÐ¼Ð¾ÑÑ‚ÑŒ, выÑÐ¾ÐºÐ°Ñ ÑмертноÑÑ‚ÑŒ." - -#: src/lincity-ng/ButtonPanel.cpp:217 -msgid " [Click right for help.]" -msgstr " [ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ° мыши Ð´Ð»Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰Ð¸.]" - -#: src/lincity-ng/ButtonPanel.cpp:245 src/lincity-ng/ButtonPanel.cpp:288 -#, c-format -msgid "%s (Techlevel %.1f required.)" -msgstr "%s (Ðеобходим %.1f научный уровень.)" - -#: src/lincity-ng/ButtonPanel.cpp:254 -#, c-format -msgid "%s is disabled (loaded old game)." -msgstr "%s выключено (загрузка Ñтарой игры)." - -#: src/lincity-ng/ScreenInterface.cpp:263 -msgid "MM" -msgstr "ММ" - -#: src/lincity-ng/Dialog.cpp:369 -#, c-format -msgid ".Deaths by starvation %7d History %8.3f" -msgstr "Погибло от голода %7d ИÑÑ‚Ð¾Ñ€Ð¸Ñ %8.3f" - -#: src/lincity-ng/Dialog.cpp:388 -#, c-format -msgid ". Residences %4d Markets %4d Farms %4d" -msgstr " Резиденции %4d Магазины %4d Фермы %4d" - -#: src/lincity-ng/Dialog.cpp:398 -#, c-format -msgid ". Water wells %4d" -msgstr " Колодцы %4d" - -#: src/lincity-ng/Dialog.cpp:400 -#, c-format -msgid ". Monuments %4d Schools %4d Universities %4d" -msgstr " Монументы %4d Школы %4d УниверÑитеты %4d" - -#: src/lincity-ng/Dialog.cpp:404 -#, c-format -msgid ".Fire stations %4d Parks %4d Sports fields %4d" -msgstr " Пожарные Ñтанции %4d Парки %4d Спортплощадки %4d" - -#: src/lincity-ng/Dialog.cpp:408 -#, c-format -msgid "Health centres %4d Tips %4d Shanties %4d" -msgstr " Больницы %4d Помойки %4d Хибары %4d" - -#: src/lincity-ng/Dialog.cpp:414 -#, c-format -msgid ". Windmills %4d Coal powers %4d Solar powers %4d" -msgstr " Мельницы %4d Угольные Ñл %4d Солнечные Ñл %4d" - -#: src/lincity-ng/Dialog.cpp:419 -#, c-format -msgid ". Substations %4d Power lines %4d Ports %4d" -msgstr " ПодÑтанции %4d Электролинии %4d Порты %4d" - -#: src/lincity-ng/Dialog.cpp:423 -#, c-format -msgid ". Tracks %4d Roads %4d Rail %4d" -msgstr " Грунтовки %4d Дороги %4d Ð ÐµÐ»ÑŒÑ %4d" - -#: src/lincity-ng/Dialog.cpp:429 -#, c-format -msgid ". Potteries %4d Blacksmiths %4d Mills %4d" -msgstr " Ð“Ð¾Ð½Ñ‡Ð°Ñ€Ð½Ð°Ñ %4d ÐšÑƒÐ·Ð½ÐµÑ‡Ð½Ð°Ñ %4d Мельница %4d" - -#: src/lincity-ng/Dialog.cpp:433 -#, c-format -msgid ". Light inds %4d Heavy inds %4d Recyclers %4d" -msgstr " Ð›ÐµÐ³ÐºÐ°Ñ Ð¸Ð½Ð´-Ð¸Ñ %4d ТÑÐ¶ÐµÐ»Ð°Ñ Ð¸Ð½Ð´-Ð¸Ñ %4d Переработка %4d" - -#: src/lincity-ng/Dialog.cpp:437 -#, c-format -msgid ". Coal mines %4d Ore mines %4d Communes %4d" -msgstr " Ð£Ð³Ð¾Ð»ÑŒÐ½Ð°Ñ ÑˆÐ°Ñ…Ñ‚Ð° %4d Шахта руды %4d Община %4d" - -#: src/lincity/modules/monument.cpp:61 -#, c-format -msgid "%% Complete" -msgstr "%% Завершено" - -# My adds +#: src/lincity-ng/MainMenu.cpp:111 msgid "Rocket_98" msgstr "Ракета 98" -#~ msgid "NO " -#~ msgstr "ÐЕТ" - -#~ msgid "Recycling" -#~ msgstr "Переработка" +#: src/lincity-ng/MainMenu.cpp:112 +msgid "Beach" +msgstr "ПлÑж" -#~ msgid "Center" -#~ msgstr "Центр" +#: src/lincity-ng/MainMenu.cpp:113 +msgid "bad_times" +msgstr "Плохие времена" -#~ msgid "Heavy" -#~ msgstr "ТÑÐ¶ÐµÐ»Ð°Ñ " +#: src/lincity-ng/MainMenu.cpp:114 +msgid "extreme_arid" +msgstr "ЗаÑуха" -#~ msgid "Industry" -#~ msgstr "ИндуÑтриÑ" +#: src/lincity-ng/MainMenu.cpp:115 +msgid "extreme_wetland" +msgstr "Болото" -#~ msgid "Output" -#~ msgstr "ЭкÑпорт" +#: src/lincity-ng/MainMenu.cpp:116 +msgid "good_times" +msgstr "Хорошие времена" -#~ msgid "Power Station" -#~ msgstr "ЭлектричеÑÐºÐ°Ñ ÑтанциÑ" +#: src/lincity-ng/MainMenu.cpp:152 +msgid "river delta" +msgstr "Река" + +#: src/lincity-ng/MainMenu.cpp:156 +msgid "semi desert" +msgstr "ПолупуÑтыни" + +#: src/lincity-ng/MainMenu.cpp:160 +msgid "temperate" +msgstr "Умеренный" + +#: src/lincity-ng/MainMenu.cpp:164 +msgid "swamp" +msgstr "Болото" -#~ msgid "Light" -#~ msgstr "Свет" +#: src/lincity-ng/MainMenu.cpp:226 +msgid "empty" +msgstr "пуÑто" -#~ msgid "Solar" -#~ msgstr "Солнце" +#: src/lincity-ng/ButtonPanel.cpp:192 src/lincity-ng/ButtonPanel.cpp:230 +#: src/lincity-ng/ButtonPanel.cpp:363 src/lincity-ng/ButtonPanel.cpp:387 +#, fuzzy +msgid "Techlevel" +msgstr "Ðаука" -#~ msgid "Saving scene" -#~ msgstr "Сохранение меÑтноÑти" +#: src/lincity-ng/ButtonPanel.cpp:193 src/lincity-ng/ButtonPanel.cpp:231 +#: src/lincity-ng/ButtonPanel.cpp:364 src/lincity-ng/ButtonPanel.cpp:388 +msgid "required" +msgstr "требуетÑÑ" diff -Nru lincity-ng-2.0/data/locale/tr.po lincity-ng-2.9~git20150314/data/locale/tr.po --- lincity-ng-2.0/data/locale/tr.po 2009-01-25 20:21:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/tr.po 2015-05-05 16:32:50.000000000 +0000 @@ -1,1329 +1,1337 @@ # translation of tr.po to Türkçe # This file is distributed under the same license as the Lincity-NG # package. # 2007 benz <uyg01@hotmail.com> +# Volkan Gezer <volkangezer@gmail.com>, 2013. msgid "" msgstr "" "Project-Id-Version: tr\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2008-02-24 21:11+0100\n" -"PO-Revision-Date: 2007-12-16 22:10+0000\n" -"Last-Translator: benz\n" -"Language-Team: Türkçe benz\n" +"POT-Creation-Date: 2013-07-30 19:30+0200\n" +"PO-Revision-Date: 2013-07-30 20:36+0200\n" +"Last-Translator: Volkan Gezer <volkangezer@gmail.com>\n" +"Language-Team: Turkish <kde-l10n-tr@kde.org>\n" +"Language: tr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Lokalize 1.5\n" -#: src/lincity-ng/ButtonPanel.cpp:200 -msgid "Query Tool" -msgstr "Sorgu aracı" - -#: src/lincity-ng/ButtonPanel.cpp:201 -msgid "Bulldozer" -msgstr "Dozer" +#: src/lincity/loadsave.cpp:160 +#, c-format +msgid "Save file <%s> - " +msgstr "Kayıt dosyası <%s> - " -#: src/lincity-ng/ButtonPanel.cpp:203 -msgid "Residential: 50 denizens, low birthrate, high deathrate" -msgstr "YerleÅŸim: 50 vatandaÅŸ, düşük doÄŸum oranı,yüksek ölüm oranı" +#: src/lincity/loadsave.cpp:161 +msgid "Can't open save file!" +msgstr "Kayıt dosyası açılamadı!" -#: src/lincity-ng/ButtonPanel.cpp:204 -msgid "Residential: 100 denizens, high birthrate, low deathrate" -msgstr "YerleÅŸim: 100 vatandaÅŸ, yüksek doÄŸum oranı, düşük ölüm oranı" +#: src/lincity/loadsave.cpp:351 src/lincity/old_ldsvguts.cpp:132 +#, c-format +msgid "Can't open <%s> (gzipped)" +msgstr "Açılamıyor <%s> (gzip'li)" -#: src/lincity-ng/ButtonPanel.cpp:205 -msgid "Residential: 200 denizens, high birthrate, high deathrate" -msgstr "YerleÅŸim: 200 vatandaÅŸ, yüksek doÄŸum oranı, yüksek ölüm oranı" +#: src/lincity/old_ldsvguts.cpp:164 +msgid "Loading scene" +msgstr "Sahne yükleniyor" -#: src/lincity-ng/ButtonPanel.cpp:206 -msgid "Residential: 100 denizens, low birthrate, high deathrate" -msgstr "YerleÅŸim: 100 vatandaÅŸ, düşük doÄŸum oranı, yüksek ölüm oranı" +#: src/lincity/engine.cpp:86 +msgid "You just spent all your money." +msgstr "Tüm paranızı harcadınız." -#: src/lincity-ng/ButtonPanel.cpp:207 -msgid "Residential: 200 denizens, high birthrate, low deathrate" -msgstr "YerleÅŸim: 200 vatandaÅŸ, yüksek doÄŸum oranı, düşük ölüm oranı" +#: src/lincity/engine.cpp:158 +msgid "Port must be connected to river all along right side." +msgstr "Liman tüm saÄŸ taraf boyunca nehire baÄŸlı olmalıdır." -#: src/lincity-ng/ButtonPanel.cpp:208 -msgid "Residential: 400 denizens, high birthrate, high deathrate" -msgstr "YerleÅŸim: 400 vatandaÅŸ, yüksek doÄŸum oranı, yüksek ölüm oranı" +#: src/lincity/engine.cpp:171 +msgid "You can't build a water well here: it is all desert." +msgstr "Buraya bir su kuyusu inÅŸa edemezsiniz: tamamen çöl." -#: src/lincity-ng/ButtonPanel.cpp:217 -msgid " [Click right for help.]" -msgstr " [Yardım için saÄŸtık]" +#: src/lincity/engine.cpp:189 +msgid "You can't build a mine here: there is no ore left at this site" +msgstr "Buraya bir maden inÅŸa edemezsiniz: bu alanda hiçbir mineral kalmadı" -#: src/lincity-ng/ButtonPanel.cpp:245 src/lincity-ng/ButtonPanel.cpp:288 -#, c-format -msgid "%s (Techlevel %.1f required.)" +#: src/lincity/engine.cpp:200 +msgid "You can't build a park here: it is a desert, parks need water" msgstr "" +"Buraya bir park inÅŸa edemezsiniz: burası bir çöl ve parkların suya ihtiyacı " +"var" -#: src/lincity-ng/ButtonPanel.cpp:254 -#, c-format -msgid "%s is disabled (loaded old game)." +#: src/lincity/engine.cpp:237 +msgid "" +"ERROR: group does not exist. This should not happen! Please consider filling " +"a bug report to lincity-ng team, with the saved game and what you did :-) " msgstr "" +"HATA: grup mevcut deÄŸil. Bu olmamalıydı! Lütfen lincity-ng takımına bir hata " +"kaydı gönderin. Buna kayıtlı oyun ile ne yaptığınızı da yazın :-) " -#: src/lincity-ng/Dialog.cpp:174 -msgid "Launchsite" -msgstr "BaÅŸlamabölgesi" +#: src/lincity/engine.cpp:367 +msgid "ups, Bulldozer found a dangling reportingConstruction" +msgstr "olamaz. Buldozer asılı bir reportingConstruction buldu" -#: src/lincity-ng/Dialog.cpp:343 -msgid "----- IN TEST MODE -------" -msgstr "-----DENEME KONUMUNDA--------" +#: src/lincity/engine.cpp:516 +msgid "UNKNOWN!" +msgstr "BÄ°LÄ°NMÄ°YOR!" -#: src/lincity-ng/Dialog.cpp:345 -#, c-format -msgid "Game statistics from LinCity-NG Version %s" -msgstr "%s LinCity-NG'den oyun istatstikleri " +#: src/lincity/lintypes.cpp:809 +msgid "Empty" +msgstr "BoÅŸ" -#: src/lincity-ng/Dialog.cpp:348 -#, c-format -msgid "Initial loaded scene - %s" -msgstr "Önceden yüklenmiÅŸ sahne - %s" +#: src/lincity/lintypes.cpp:822 +msgid "Power line" +msgstr "Elektrik hattı" -#: src/lincity-ng/Dialog.cpp:352 -#, c-format -msgid "Economy is sustainable" -msgstr "Ekonomi sürdürübebilir" +#: src/lincity/lintypes.cpp:834 +msgid "Solar PS" +msgstr "GüneÅŸ Pan." -#: src/lincity-ng/Dialog.cpp:355 -#, c-format -msgid "Population %d of which %d are not housed." -msgstr "Nüfusun %d inde %d i ev sahibi edilmedi" +#: src/lincity/lintypes.cpp:845 +msgid "Substation" +msgstr "Trafo" -#: src/lincity-ng/Dialog.cpp:359 -#, c-format -msgid "Max population %d Number evacuated %d Total births %d" -msgstr "Enüst nüfus %d TahliyedilmiÅŸler sayısı %d Toplam doÄŸum %d" +#: src/lincity/lintypes.cpp:856 +msgid "Residential LL" +msgstr "YerleÅŸim DS" -#: src/lincity-ng/Dialog.cpp:363 -#, c-format -msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" -msgstr "Tarih%s %04d Para %8d Tek. seviyesi %5.1f (%5.1f)" +#: src/lincity/lintypes.cpp:867 +msgid "Farm" +msgstr "Çiftlik" -#: src/lincity-ng/Dialog.cpp:369 -#, c-format -msgid ".Deaths by starvation %7d History %8.3f" -msgstr "Açlık kaynaklı ölümler %7d Tarih %8.3f" +#: src/lincity/lintypes.cpp:878 src/lincity-ng/Dialog.cpp:636 +msgid "Market" +msgstr "Bakkal" -#: src/lincity-ng/Dialog.cpp:373 -#, c-format -msgid "Deaths from pollution %7d History %8.3f" -msgstr "Kirlilik kaynaklı ölümler %7d Tarih %8.3f" +#: src/lincity/lintypes.cpp:889 +msgid "Track" +msgstr "Tali Yol" -#: src/lincity-ng/Dialog.cpp:376 -#, c-format -msgid "Years of unemployment %7d History %8.3f" -msgstr "Ä°ÅŸsizlik yılları %7d Tarih %8.3f" +#: src/lincity/lintypes.cpp:900 +msgid "Coalmine" +msgstr "Kömür Madeni" -#: src/lincity-ng/Dialog.cpp:379 -#, c-format -msgid "Rockets launched %2d Successful launches %2d" -msgstr "Füze BaÅŸladı %2d BaÅŸarılı BaÅŸlangıçlar %2d" +#: src/lincity/lintypes.cpp:911 +msgid "Railway" +msgstr "Demiryolu" -#: src/lincity-ng/Dialog.cpp:388 -#, c-format -msgid ". Residences %4d Markets %4d Farms %4d" -msgstr " Konutlar %4d Bakkallar %4d Çiflikler %4d" +#: src/lincity/lintypes.cpp:922 +msgid "Coal PS" +msgstr "Termik Sant." -#: src/lincity-ng/Dialog.cpp:398 -#, c-format -msgid ". Water wells %4d" -msgstr "" +#: src/lincity/lintypes.cpp:933 +msgid "Road" +msgstr "Yol" -#: src/lincity-ng/Dialog.cpp:400 -#, c-format -msgid ". Monuments %4d Schools %4d Universities %4d" -msgstr " Anıtlar %4d Okullar %4d Ãœniversiteler %4d" +#: src/lincity/lintypes.cpp:944 +msgid "Lt. Industry" +msgstr "Hafif Sanayi" -#: src/lincity-ng/Dialog.cpp:404 -#, c-format -msgid ".Fire stations %4d Parks %4d Sports fields %4d" -msgstr " Ä°tfaiyeler %4d Millet Bahçeleri %4d Spor alanları %4d" +#: src/lincity/lintypes.cpp:955 +msgid "University" +msgstr "Ãœniversite" -#: src/lincity-ng/Dialog.cpp:408 -#, c-format -msgid "Health centres %4d Tips %4d Shanties %4d" -msgstr "Hastaneler %4d Çöplükler %4d Kulübeler %4d" +#: src/lincity/lintypes.cpp:966 +msgid "Commune" +msgstr "Komün" -#: src/lincity-ng/Dialog.cpp:414 -#, c-format -msgid ". Windmills %4d Coal powers %4d Solar powers %4d" -msgstr "" -" YeldeÄŸirmenleri %4d Kömürden Elektrik %4d GüneÅŸsel Elektrik %" -"4d" +#: src/lincity/lintypes.cpp:977 +msgid "Ore mine" +msgstr "Mineral Madeni" -#: src/lincity-ng/Dialog.cpp:419 -#, c-format -msgid ". Substations %4d Power lines %4d Ports %4d" -msgstr " Trafolar %4d Elektrik Hatları %4d Limanlar %4d" +#: src/lincity/lintypes.cpp:988 +msgid "Rubbish tip" +msgstr "Atıklık" -#: src/lincity-ng/Dialog.cpp:423 -#, c-format -msgid ". Tracks %4d Roads %4d Rail %4d" -msgstr " Tali Yollar %4d Yollar %4d Raylar %4d" +#: src/lincity/lintypes.cpp:999 src/lincity-ng/Dialog.cpp:697 +msgid "Port" +msgstr "Liman" -#: src/lincity-ng/Dialog.cpp:429 -#, c-format -msgid ". Potteries %4d Blacksmiths %4d Mills %4d" -msgstr " Çömlekçilikler %4d Demirciler %4d Fabrikalar %4d" +#: src/lincity/lintypes.cpp:1010 +msgid "Hv. Industry" +msgstr "Ağır Sanayi" -#: src/lincity-ng/Dialog.cpp:433 -#, c-format -msgid ". Light inds %4d Heavy inds %4d Recyclers %4d" -msgstr "" -" Hafif sanayiler %4d Ağır sanayiler%4d Geridönüştürücüler %4d" +#: src/lincity/lintypes.cpp:1021 +msgid "Park" +msgstr "Park" -#: src/lincity-ng/Dialog.cpp:437 -#, c-format -msgid ". Coal mines %4d Ore mines %4d Communes %4d" -msgstr " Kömür madenleri %4d Mineral madenleri %4d Komünler %4d" +#: src/lincity/lintypes.cpp:1032 src/lincity-ng/MpsInterface.cpp:517 +msgid "Recycle" +msgstr "Geridönüşüm" -#: src/lincity-ng/Dialog.cpp:594 src/lincity/lintypes.cpp:88 -#: src/lincity/modules/market.cpp:1001 -msgid "Market" -msgstr "Bakkal" +#: src/lincity/lintypes.cpp:1043 src/lincity/modules/water.cpp:20 +msgid "Water" +msgstr "Su" -#: src/lincity-ng/Dialog.cpp:648 src/lincity/lintypes.cpp:209 -#: src/lincity/modules/port.cpp:281 -msgid "Port" -msgstr "Liman" +#: src/lincity/lintypes.cpp:1054 +msgid "Health centre" +msgstr "SaÄŸlık. Merk." -#: src/lincity-ng/EconomyGraph.cpp:124 -msgid "Mining" -msgstr "Madencilik" +#: src/lincity/lintypes.cpp:1065 +msgid "Rocket pad" +msgstr "Füze rampası" -#: src/lincity-ng/EconomyGraph.cpp:126 -msgid "Trade" -msgstr "Ticaret" +#: src/lincity/lintypes.cpp:1076 src/lincity-ng/MpsInterface.cpp:507 +msgid "Windmill" +msgstr "Rüzgar deÄŸirmeni" -#: src/lincity-ng/EconomyGraph.cpp:128 -msgid "Money" -msgstr "Para" +#: src/lincity/lintypes.cpp:1087 +msgid "Monument" +msgstr "Anıt" -#: src/lincity-ng/EconomyGraph.cpp:130 -msgid "Popul." -msgstr "Nüfus" +#: src/lincity/lintypes.cpp:1098 +msgid "School" +msgstr "Okul" -#: src/lincity-ng/EconomyGraph.cpp:132 -msgid "Techn." -msgstr "Teknoloji" +#: src/lincity/lintypes.cpp:1109 +msgid "Blacksmith" +msgstr "Demirci" + +#: src/lincity/lintypes.cpp:1120 +msgid "Mill" +msgstr "DeÄŸirmen" + +#: src/lincity/lintypes.cpp:1131 +msgid "Pottery" +msgstr "Çömlekçi" + +#: src/lincity/lintypes.cpp:1142 +msgid "Fire sta'n" +msgstr "Ä°tfaiye" -#: src/lincity-ng/EconomyGraph.cpp:134 src/lincity-ng/MpsInterface.cpp:382 -#: src/lincity/lintypes.cpp:399 src/lincity/modules/residence.cpp:283 +#: src/lincity/lintypes.cpp:1153 +msgid "Sports field" +msgstr "Spor merkezi" + +#: src/lincity/lintypes.cpp:1165 +msgid "Burnt" +msgstr "Yanık" + +#: src/lincity/lintypes.cpp:1177 +msgid "Shanty town" +msgstr "Gecekondu semti" + +#: src/lincity/lintypes.cpp:1189 src/lincity-ng/EconomyGraph.cpp:135 msgid "Fire" msgstr "Ä°tfaiye" -#: src/lincity-ng/EconomyGraph.cpp:137 -msgid "Economy Overview:" -msgstr "Ekonomiye bakış:" +#: src/lincity/lintypes.cpp:1201 +msgid "Used" +msgstr "Kullanıldı" -#: src/lincity-ng/EconomyGraph.cpp:140 -msgid "Sustainability:" -msgstr "Sürdürülebilirlik:" +#: src/lincity/lintypes.cpp:1212 +msgid "Residential ML" +msgstr "YerleÅŸim OS" -#: src/lincity-ng/EconomyGraph.cpp:143 -msgid "Frames per Second:" -msgstr "Saniyedeki ilerleme:" +#: src/lincity/lintypes.cpp:1223 +msgid "Residential HL" +msgstr "YerleÅŸim YS" -#: src/lincity-ng/EconomyGraph.cpp:219 -msgid "You lose." -msgstr "Kaybettin." +#: src/lincity/lintypes.cpp:1234 +msgid "Residential LH" +msgstr "YerleÅŸim DY" -#: src/lincity-ng/GameView.cpp:239 -msgid "Minimap: outline map" -msgstr "Küçkhar.: kroki harita" +#: src/lincity/lintypes.cpp:1245 +msgid "Residential MH" +msgstr "YerleÅŸim OY" -#: src/lincity-ng/GameView.cpp:242 -msgid "Minimap: unemployment" -msgstr "Küçkhar.: Ä°ÅŸsizlik" +#: src/lincity/lintypes.cpp:1256 +msgid "Residential HH" +msgstr "YerleÅŸim YY" -#: src/lincity-ng/GameView.cpp:245 -msgid "Minimap: pollution" -msgstr "Küçkhar.: Kirlilik" +#: src/lincity/lintypes.cpp:1267 +msgid "Water well" +msgstr "Su kuyusu" -#: src/lincity-ng/GameView.cpp:248 -msgid "Minimap: nourishments" -msgstr "Küçkhar.: Beslenme" +#: src/lincity/lintypes.cpp:1279 +msgid "Desert" +msgstr "Çöl" -#: src/lincity-ng/GameView.cpp:251 -msgid "Minimap: power supply" -msgstr "Küçkhar.: Elektrik Kaynağı" +#: src/lincity/lintypes.cpp:1291 +msgid "Tree" +msgstr "AÄŸaç" -#: src/lincity-ng/GameView.cpp:254 -msgid "Minimap: firedepartment cover" -msgstr "Küçkhar.: Ä°tfaiye Alanı" +#: src/lincity/lintypes.cpp:1304 +msgid "Trees" +msgstr "AÄŸaçlar" -#: src/lincity-ng/GameView.cpp:257 -msgid "Minimap: sport cover" -msgstr "Küçkhar.: Spor Alanı" +#: src/lincity/lintypes.cpp:1317 +msgid "Forest" +msgstr "Orman" -#: src/lincity-ng/GameView.cpp:260 -msgid "Minimap: medical care" -msgstr "Küçkhar.: Hastane Alanı" +#: src/lincity/lintypes.cpp:1330 +msgid "Track Bridge" +msgstr "Tali Yol Köprüsü" + +#: src/lincity/lintypes.cpp:1342 +msgid "Road Bridge" +msgstr "Yol Köprüsü" + +#: src/lincity/lintypes.cpp:1354 +msgid "Rail Bridge" +msgstr "Ray Köprü" + +#: src/lincity/lintypes.cpp:1366 +msgid "Wind Power" +msgstr "Rüzgar Gücü" -#: src/lincity-ng/GameView.cpp:263 -msgid "Minimap: coal depots" -msgstr "Küçkhar.: Kömür Depoları" +#: src/lincity/lclib.cpp:15 +msgid "Jan" +msgstr "Ocak" -#: src/lincity-ng/GameView.cpp:266 -msgid "Minimap: traffic density" -msgstr "Küçkhar.: Trafik YoÄŸunluÄŸu" +#: src/lincity/lclib.cpp:15 +msgid "Feb" +msgstr "Åžub" -#: src/lincity-ng/GameView.cpp:1593 -msgid "Estimated Bulldoze Cost: " -msgstr "Tahmin edilen Yıkım Fiyatı: " +#: src/lincity/lclib.cpp:15 +msgid "Mar" +msgstr "Mart" -#: src/lincity-ng/GameView.cpp:1595 -msgid "Bulldoze Cost: " -msgstr "Yıkım Fiyatı: " +#: src/lincity/lclib.cpp:15 +msgid "Apr" +msgstr "Nis" -#: src/lincity-ng/GameView.cpp:1598 src/lincity-ng/GameView.cpp:1629 -#: src/lincity-ng/ScreenInterface.cpp:274 -msgid "$" -msgstr "YTL" +#: src/lincity/lclib.cpp:16 +msgid "May" +msgstr "May" -#: src/lincity-ng/GameView.cpp:1600 -msgid "n/a" -msgstr "n/a" +#: src/lincity/lclib.cpp:16 +msgid "Jun" +msgstr "Haz" -#: src/lincity-ng/GameView.cpp:1618 -msgid "Query Tool: Show information about selected building." -msgstr "Sorgu Aracı: Seçili yapının bilgisini göster." +#: src/lincity/lclib.cpp:16 +msgid "Jul" +msgstr "Tem" -#: src/lincity-ng/GameView.cpp:1622 -msgid "Bulldozer: remove building -price varies-" -msgstr "Dozer: Yapıyı yık -bedel deÄŸiÅŸir-" +#: src/lincity/lclib.cpp:16 +msgid "Aug" +msgstr "AÄŸu" -#: src/lincity-ng/GameView.cpp:1629 -msgid ": Cost to build " -msgstr ": Yapım Fiyatı" +#: src/lincity/lclib.cpp:17 +msgid "Sep" +msgstr "Eyl" -#: src/lincity-ng/GameView.cpp:1630 src/lincity-ng/GameView.cpp:1633 -msgid "$." -msgstr "YTL." +#: src/lincity/lclib.cpp:17 +msgid "Oct" +msgstr "Ekim" -#: src/lincity-ng/GameView.cpp:1630 -msgid ", to bulldoze " -msgstr ", yıkmak için" +#: src/lincity/lclib.cpp:17 +msgid "Nov" +msgstr "Kas" -#: src/lincity-ng/GameView.cpp:1632 -msgid " To build " -msgstr "Yapmak için" +#: src/lincity/lclib.cpp:17 +msgid "Dec" +msgstr "Ara" -#: src/lincity-ng/GameView.cpp:1632 -msgid " of them " -msgstr " hepsi " +#: src/lincity/fileutil.cpp:201 src/lincity/fileutil.cpp:245 +msgid "Error. Can't find LINCITY_HOME" +msgstr "Hata. LINCITY_HOME bulunamıyor" -#: src/lincity-ng/GameView.cpp:1633 -msgid "will cost about " -msgstr "fiyatlandırılacak" +#: src/lincity/fileutil.cpp:431 +msgid "Error verifying package. Can't find colour.pal." +msgstr "Paket doÄŸrulama hatası. colour.pal bulunamıyor." -#: src/lincity-ng/MainMenu.cpp:141 -msgid "good_times" -msgstr "" +#: src/lincity/fileutil.cpp:444 src/lincity/fileutil.cpp:454 +#, c-format +msgid "Couldn't create the save directory '%s'\n" +msgstr "'%s' kayıt dizini oluÅŸturulamadı\n" -#: src/lincity-ng/MainMenu.cpp:142 -msgid "bad_times" -msgstr "" +#: src/lincity/fileutil.cpp:450 +#, c-format +msgid "Failed to chown '%s'\n" +msgstr "chown '%s' baÅŸarısız\n" -#: src/lincity-ng/MainMenu.cpp:143 -#, fuzzy -msgid "Beach" -msgstr "Teknoloji" +#: src/lincity/fileutil.cpp:471 +msgid "Out of memory: malloc failure\n" +msgstr "Hafıza aşımı: malloc baÅŸarısız \n" -#: src/lincity-ng/MainMenu.cpp:144 -msgid "extreme_arid" +#: src/lincity/simulate.cpp:91 +msgid "" +"Upgrading from old game. You have 10 years to build water wells where " +"needed. After, starvation will occur! You should check starvation minimap, " +"and read waterwell help page :-)" msgstr "" +"Eski oyundan yükseltiliyor. GerektiÄŸi yerde su kuyusu yapmanız için 10 " +"yılınız var. Sonrasında açlık olacak! Açlığı küçük haritadan kontrol etmeli " +"ve su kuyusu yardım sayfasını okumalısınız :-)" + +#: src/lincity/modules/windpower.cpp:77 src/lincity/modules/mill.cpp:92 +#: src/lincity/modules/light_industry.cpp:213 +#: src/lincity/modules/recycle.cpp:95 src/lincity/modules/organic_farm.cpp:175 +#: src/lincity/modules/heavy_industry.cpp:268 +#: src/lincity/modules/coal_power.cpp:62 src/lincity/modules/substation.cpp:76 +#: src/lincity/modules/blacksmith.cpp:98 +#: src/lincity/modules/rocket_pad.cpp:224 src/lincity/modules/pottery.cpp:105 +#: src/lincity/modules/solar_power.cpp:53 src/lincity/modules/windmill.cpp:65 +msgid "busy" +msgstr "meÅŸgul" + +#: src/lincity/modules/windpower.cpp:78 +#: src/lincity/modules/light_industry.cpp:214 +#: src/lincity/modules/recycle.cpp:93 src/lincity/modules/organic_farm.cpp:174 +#: src/lincity/modules/heavy_industry.cpp:269 +#: src/lincity/modules/coal_power.cpp:63 +#: src/lincity/modules/rocket_pad.cpp:225 +#: src/lincity/modules/solar_power.cpp:54 src/lincity/modules/windmill.cpp:66 +msgid "Tech" +msgstr "Teknoloji" -#: src/lincity-ng/MainMenu.cpp:145 -msgid "extreme_wetland" -msgstr "" +#: src/lincity/modules/waterwell.cpp:66 +msgid "Pollution" +msgstr "Kirlilik" -#: src/lincity-ng/MainMenu.cpp:212 -msgid "empty" -msgstr "boÅŸ" +#: src/lincity/modules/waterwell.cpp:68 +msgid "Drinkable" +msgstr "İçilebilir" -#: src/lincity-ng/MpsInterface.cpp:227 -msgid "build something here" -msgstr "buraya birÅŸey yap" +#: src/lincity/modules/school.cpp:57 +msgid "Lessons learned" +msgstr "Öğrenilen dersler" -#: src/lincity-ng/MpsInterface.cpp:229 +#: src/lincity/modules/recycle.cpp:94 +msgid "Efficiency" +msgstr "Performans" + +#: src/lincity/modules/organic_farm.cpp:176 +msgid "Output" +msgstr "Çıktı" + +#: src/lincity/modules/residence.cpp:354 +msgid "People" +msgstr "Ä°nsan" + +#: src/lincity/modules/residence.cpp:355 +msgid "Desireability" +msgstr "Çekicilik" + +#: src/lincity/modules/residence.cpp:356 +msgid "Births per year" +msgstr "Yıl başına doÄŸum" + +#: src/lincity/modules/residence.cpp:357 +msgid "Death per year" +msgstr "Yıl başına ölüm" + +#: src/lincity/modules/residence.cpp:358 +msgid "Pol. mortality" +msgstr "Pol. ölüm oranı" + +#: src/lincity/modules/water.cpp:23 +msgid "River" +msgstr "Nehir" + +#: src/lincity/modules/water.cpp:23 +msgid "Lake" +msgstr "Göl" + +#: src/lincity/modules/tip.cpp:112 +msgid "Filled" +msgstr "DoldurulmuÅŸ" + +#: src/lincity/modules/university.cpp:58 +msgid "Tech researched" +msgstr "AraÅŸtırılan tekn." + +#: src/lincity-ng/MpsInterface.cpp:123 msgid "no further information available" -msgstr "ulaşılabilir ilave bilgi yok" +msgstr "ulaşılabilir ek bilgi yok" -#: src/lincity-ng/MpsInterface.cpp:380 -msgid "Coverage" -msgstr "Kapsam" +#: src/lincity-ng/MpsInterface.cpp:127 +msgid "build something here" +msgstr "buraya bir ÅŸey yapın" -#: src/lincity-ng/MpsInterface.cpp:381 src/lincity-ng/MpsInterface.cpp:384 -#: src/lincity-ng/MpsInterface.cpp:387 src/lincity/modules/commune.cpp:179 -#: src/lincity/modules/commune.cpp:181 src/lincity/modules/commune.cpp:183 -#: src/lincity/modules/commune.cpp:185 src/lincity/modules/water.cpp:20 -msgid "No" +#: src/lincity-ng/MpsInterface.cpp:340 +msgid "YES" +msgstr "Evet" + +#: src/lincity-ng/MpsInterface.cpp:340 +msgid "NO" msgstr "Hayır" -#: src/lincity-ng/MpsInterface.cpp:381 src/lincity-ng/MpsInterface.cpp:384 -#: src/lincity-ng/MpsInterface.cpp:387 src/lincity/modules/commune.cpp:179 -#: src/lincity/modules/commune.cpp:181 src/lincity/modules/commune.cpp:183 -#: src/lincity/modules/commune.cpp:185 src/lincity/modules/water.cpp:20 -#: src/lincity/modules/waterwell.cpp:62 +#: src/lincity-ng/MpsInterface.cpp:351 src/lincity-ng/MpsInterface.cpp:354 +#: src/lincity-ng/MpsInterface.cpp:357 src/lincity-ng/MpsInterface.cpp:360 msgid "Yes" msgstr "Evet" -#: src/lincity-ng/MpsInterface.cpp:385 -msgid "Health" -msgstr "SaÄŸlık" - -#: src/lincity-ng/MpsInterface.cpp:388 src/lincity-ng/MpsInterface.cpp:516 -#: src/lincity/modules/residence.cpp:286 -msgid "Sport" -msgstr "Spor" +#: src/lincity-ng/MpsInterface.cpp:351 src/lincity-ng/MpsInterface.cpp:354 +#: src/lincity-ng/MpsInterface.cpp:357 src/lincity-ng/MpsInterface.cpp:360 +msgid "No" +msgstr "Hayır" -#: src/lincity-ng/MpsInterface.cpp:390 src/lincity/modules/residence.cpp:288 -#: src/lincity/modules/waterwell.cpp:59 -msgid "Pollution" -msgstr "Kirlilik" +#: src/lincity-ng/MpsInterface.cpp:352 +msgid "Fire Protection" +msgstr "Yangın Koruma" + +#: src/lincity-ng/MpsInterface.cpp:355 +msgid "Health Service" +msgstr "SaÄŸlık Hizmeti" + +#: src/lincity-ng/MpsInterface.cpp:358 +msgid "Public Sports" +msgstr "Genel Spor" + +#: src/lincity-ng/MpsInterface.cpp:361 +msgid "Market Range" +msgstr "Bakkal Menzili" -#: src/lincity-ng/MpsInterface.cpp:393 +#: src/lincity-ng/MpsInterface.cpp:364 msgid "clear" msgstr "temiz" -#: src/lincity-ng/MpsInterface.cpp:395 src/lincity/modules/residence.cpp:276 +#: src/lincity-ng/MpsInterface.cpp:366 msgid "good" msgstr "iyi" -#: src/lincity-ng/MpsInterface.cpp:397 +#: src/lincity-ng/MpsInterface.cpp:368 msgid "fair" msgstr "açık" -#: src/lincity-ng/MpsInterface.cpp:399 +#: src/lincity-ng/MpsInterface.cpp:370 msgid "smelly" msgstr "pis kokmuÅŸ" -#: src/lincity-ng/MpsInterface.cpp:401 +#: src/lincity-ng/MpsInterface.cpp:372 msgid "smokey" msgstr "dumanlı" -#: src/lincity-ng/MpsInterface.cpp:403 +#: src/lincity-ng/MpsInterface.cpp:374 msgid "smoggy" msgstr "sisli" -#: src/lincity-ng/MpsInterface.cpp:405 +#: src/lincity-ng/MpsInterface.cpp:376 msgid "bad" msgstr "kötü" -#: src/lincity-ng/MpsInterface.cpp:407 +#: src/lincity-ng/MpsInterface.cpp:378 msgid "very bad" msgstr "çok kötü" -#: src/lincity-ng/MpsInterface.cpp:409 +#: src/lincity-ng/MpsInterface.cpp:380 msgid "death!" -msgstr "ÖLÃœM!" +msgstr "ölüm!" -#: src/lincity-ng/MpsInterface.cpp:414 -msgid "Bulldoze Cost" -msgstr "Yıkım fiyatı" - -#: src/lincity-ng/MpsInterface.cpp:420 -msgid "N/A" -msgstr "N/A" - -#: src/lincity-ng/MpsInterface.cpp:438 +#: src/lincity-ng/MpsInterface.cpp:437 msgid "Tax Income" -msgstr "Vergi gelirleri" +msgstr "Vergi Gelirleri" -#: src/lincity-ng/MpsInterface.cpp:442 +#: src/lincity-ng/MpsInterface.cpp:441 msgid "Income" msgstr "Gelir" -#: src/lincity-ng/MpsInterface.cpp:446 src/lincity/modules/blacksmith.cpp:98 -#: src/lincity/modules/coal_power.cpp:97 src/lincity/modules/commune.cpp:180 -#: src/lincity/modules/heavy_industry.cpp:275 -#: src/lincity/modules/heavy_industry.cpp:287 -#: src/lincity/modules/market.cpp:1007 src/lincity/modules/mill.cpp:101 -#: src/lincity/modules/port.cpp:290 src/lincity/modules/pottery.cpp:113 -#: src/lincity/modules/rail.cpp:52 src/lincity/modules/road.cpp:47 -#: src/lincity/modules/track.cpp:38 +#: src/lincity-ng/MpsInterface.cpp:445 msgid "Coal" msgstr "Kömür" -#: src/lincity-ng/MpsInterface.cpp:450 src/lincity/modules/blacksmith.cpp:97 -#: src/lincity/modules/cricket.cpp:96 src/lincity/modules/firestation.cpp:113 -#: src/lincity/modules/health_centre.cpp:62 -#: src/lincity/modules/market.cpp:1008 src/lincity/modules/mill.cpp:99 -#: src/lincity/modules/port.cpp:298 src/lincity/modules/pottery.cpp:111 -#: src/lincity/modules/rail.cpp:53 src/lincity/modules/road.cpp:48 -#: src/lincity/modules/rocket_pad.cpp:196 src/lincity/modules/school.cpp:50 -#: src/lincity/modules/track.cpp:39 src/lincity/modules/university.cpp:67 +#: src/lincity-ng/MpsInterface.cpp:449 msgid "Goods" msgstr "EÅŸya" -#: src/lincity-ng/MpsInterface.cpp:454 +#: src/lincity-ng/MpsInterface.cpp:453 msgid "Export" msgstr "Ä°hracat" -#: src/lincity-ng/MpsInterface.cpp:458 +#: src/lincity-ng/MpsInterface.cpp:457 msgid "Expenses" msgstr "Masraflar" -#: src/lincity-ng/MpsInterface.cpp:462 +#: src/lincity-ng/MpsInterface.cpp:461 msgid "Unemp." msgstr "Ä°ÅŸsizlik" -#: src/lincity-ng/MpsInterface.cpp:466 +#: src/lincity-ng/MpsInterface.cpp:465 msgid "Transport" msgstr "Ulaşım" -#: src/lincity-ng/MpsInterface.cpp:470 +#: src/lincity-ng/MpsInterface.cpp:469 msgid "Imports" -msgstr "Ä°thaller" +msgstr "Ä°thalat" + +#: src/lincity-ng/MpsInterface.cpp:473 +msgid "Others" +msgstr "DiÄŸerleri" + +#: src/lincity-ng/MpsInterface.cpp:478 +msgid "Net" +msgstr "AÄŸ" + +#: src/lincity-ng/MpsInterface.cpp:490 +msgid "Other Costs" +msgstr "DiÄŸer Maliyetler" + +#: src/lincity-ng/MpsInterface.cpp:495 +msgid "For year" +msgstr "Åžu yıl için" + +#: src/lincity-ng/MpsInterface.cpp:499 +msgid "Interest" +msgstr "Faiz" + +#: src/lincity-ng/MpsInterface.cpp:501 src/lincity-ng/Dialog.cpp:438 +msgid "Schools" +msgstr "Okullar" + +#: src/lincity-ng/MpsInterface.cpp:503 +msgid "Univers." +msgstr "Ãœnivers." + +#: src/lincity-ng/MpsInterface.cpp:505 +msgid "Deaths" +msgstr "Ölümler" + +#: src/lincity-ng/MpsInterface.cpp:509 +msgid "Hospital" +msgstr "Hastane" + +#: src/lincity-ng/MpsInterface.cpp:511 +msgid "Rockets" +msgstr "Füzeler" + +#: src/lincity-ng/MpsInterface.cpp:513 +msgid "Fire Stn" +msgstr "Ä°tfaiye" + +#: src/lincity-ng/MpsInterface.cpp:515 +msgid "Sport" +msgstr "Spor" + +#: src/lincity-ng/MpsInterface.cpp:531 +msgid "Population" +msgstr "Nüfus" + +#: src/lincity-ng/MpsInterface.cpp:533 +msgid "Total" +msgstr "Toplam" + +#: src/lincity-ng/MpsInterface.cpp:534 +msgid "Housed" +msgstr "Ev Sahibi" + +#: src/lincity-ng/MpsInterface.cpp:535 +msgid "Homeless" +msgstr "Evsiz" + +#: src/lincity-ng/MpsInterface.cpp:536 src/lincity-ng/Dialog.cpp:447 +msgid "Shanties" +msgstr "Kulübe" + +#: src/lincity-ng/MpsInterface.cpp:537 +msgid "Unn Dths" +msgstr "DoÄŸal Olmayan Ölümler" + +#: src/lincity-ng/MpsInterface.cpp:538 +msgid "Unemployment" +msgstr "Ä°ÅŸsizlik" + +#: src/lincity-ng/MpsInterface.cpp:539 +msgid "Claims" +msgstr "Alacaklılar" + +#: src/lincity-ng/MpsInterface.cpp:540 src/lincity-ng/MpsInterface.cpp:545 +msgid "Rate" +msgstr "Oran" + +#: src/lincity-ng/MpsInterface.cpp:542 +msgid "Starvation" +msgstr "Açlık" + +#: src/lincity-ng/MpsInterface.cpp:543 +msgid "Cases" +msgstr "Davalar" + +#: src/lincity-ng/EconomyGraph.cpp:125 +msgid "Mining" +msgstr "Madencilik" + +#: src/lincity-ng/EconomyGraph.cpp:127 +msgid "Trade" +msgstr "Ticaret" + +#: src/lincity-ng/EconomyGraph.cpp:129 +msgid "Money" +msgstr "Para" + +#: src/lincity-ng/EconomyGraph.cpp:131 +msgid "Popul." +msgstr "Nüfus" + +#: src/lincity-ng/EconomyGraph.cpp:133 +msgid "Techn." +msgstr "Teknoloji" + +#: src/lincity-ng/EconomyGraph.cpp:138 +msgid "Economy Overview:" +msgstr "Ekonomiye Bakış:" + +#: src/lincity-ng/EconomyGraph.cpp:141 +msgid "Sustainability:" +msgstr "Sürdürülebilirlik:" + +#: src/lincity-ng/EconomyGraph.cpp:144 +msgid "Frames per Second:" +msgstr "Saniyedeki Kare:" + +#: src/lincity-ng/EconomyGraph.cpp:219 +msgid "You lose." +msgstr "Kaybettiniz." + +#: src/lincity-ng/Dialog.cpp:175 +msgid "Launchsite" +msgstr "BaÅŸlamabölgesi" + +#: src/lincity-ng/Dialog.cpp:373 +msgid "----- IN TEST MODE -------" +msgstr "----- DENEME KÄ°PÄ°NDE -----" + +#: src/lincity-ng/Dialog.cpp:375 +#, c-format +msgid "Game statistics from LinCity-NG Version %s" +msgstr "LinCity-NG %s sürümünden oyun istatistikleri" + +#: src/lincity-ng/Dialog.cpp:378 +#, c-format +msgid "Initial loaded scene - %s" +msgstr "Önceden yüklenmiÅŸ sahne - %s" + +#: src/lincity-ng/Dialog.cpp:382 +msgid "Economy is sustainable" +msgstr "Ekonomi sürdürülebilir" + +#: src/lincity-ng/Dialog.cpp:385 +#, c-format +msgid "Population %d of which %d are not housed." +msgstr "Nüfusun %d/%d oranı ev sahibi edilmedi." + +#: src/lincity-ng/Dialog.cpp:389 +#, c-format +msgid "Max population %d Number evacuated %d Total births %d" +msgstr "Azami nüfus %d Tahliye edilmiÅŸ sayısı %d Toplam doÄŸum %d" + +#: src/lincity-ng/Dialog.cpp:393 +#, c-format +msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" +msgstr "Tarih %s %04d Para %8d Tek. seviyesi %5.1f (%5.1f)" + +#: src/lincity-ng/Dialog.cpp:399 +#, c-format +msgid "Deaths by starvation %7d History %8.3f" +msgstr "Açlık kaynaklı ölümler %7d Tarih %8.3f" + +#: src/lincity-ng/Dialog.cpp:403 +#, c-format +msgid "Deaths from pollution %7d History %8.3f" +msgstr "Kirlilik kaynaklı ölümler %7d Tarih %8.3f" + +#: src/lincity-ng/Dialog.cpp:406 +#, c-format +msgid "Years of unemployment %7d History %8.3f" +msgstr "Ä°ÅŸsizlik yılları %7d Tarih %8.3f" + +#: src/lincity-ng/Dialog.cpp:409 +#, c-format +msgid "Rockets launched %2d Successful launches %2d" +msgstr "Fırlatılan füzeler %2d BaÅŸarılı fırlatmalar %2d" + +#: src/lincity-ng/Dialog.cpp:418 +msgid "Residences" +msgstr "Konutlar" + +#: src/lincity-ng/Dialog.cpp:426 +msgid "Markets" +msgstr "Bakkallar" + +#: src/lincity-ng/Dialog.cpp:427 +msgid "Farms" +msgstr "Çiftlikler" + +#: src/lincity-ng/Dialog.cpp:429 +msgid "Water wells" +msgstr "Su kuyuları" + +#: src/lincity-ng/Dialog.cpp:430 +msgid "Wind powers" +msgstr "Rüzgar santralleri" + +#: src/lincity-ng/Dialog.cpp:437 +msgid "Monuments" +msgstr "Anıtlar" + +#: src/lincity-ng/Dialog.cpp:439 +msgid "Universities" +msgstr "Ãœniversiteler" + +#: src/lincity-ng/Dialog.cpp:441 +msgid "Fire stations" +msgstr "Ä°tfaiyeler" + +#: src/lincity-ng/Dialog.cpp:442 +msgid "Parks" +msgstr "Parklar" + +#: src/lincity-ng/Dialog.cpp:443 +msgid "Sports fields" +msgstr "Spor merkezleri" + +#: src/lincity-ng/Dialog.cpp:445 +msgid "Health centres" +msgstr "SaÄŸlık merkezleri" + +#: src/lincity-ng/Dialog.cpp:446 +msgid "Tips" +msgstr "Çöplükler" + +#: src/lincity-ng/Dialog.cpp:453 +msgid "Windmills" +msgstr "Rüzgar deÄŸirmenleri" + +#: src/lincity-ng/Dialog.cpp:454 +msgid "Coal powers" +msgstr "Termik santraller" + +#: src/lincity-ng/Dialog.cpp:455 +msgid "Solar powers" +msgstr "GüneÅŸ panelleri" + +#: src/lincity-ng/Dialog.cpp:457 +msgid "Substations" +msgstr "Trafolar" + +#: src/lincity-ng/Dialog.cpp:458 +msgid "Power lines" +msgstr "Elektrik hatları" + +#: src/lincity-ng/Dialog.cpp:459 +msgid "Ports" +msgstr "Limanlar" + +#: src/lincity-ng/Dialog.cpp:461 +msgid "Tracks" +msgstr "Tali yollar" + +#: src/lincity-ng/Dialog.cpp:462 +msgid "Roads" +msgstr "Yollar" + +#: src/lincity-ng/Dialog.cpp:463 +msgid "Rail" +msgstr "Ray" + +#: src/lincity-ng/Dialog.cpp:469 +msgid "Potteries" +msgstr "Çömlekçiler" + +#: src/lincity-ng/Dialog.cpp:470 +msgid "Blacksmiths" +msgstr "Demirciler" + +#: src/lincity-ng/Dialog.cpp:471 +msgid "Mills" +msgstr "DeÄŸirmenler" + +#: src/lincity-ng/Dialog.cpp:473 +msgid "Light inds" +msgstr "Hafif sanayiler" + +#: src/lincity-ng/Dialog.cpp:474 +msgid "Heavy inds" +msgstr "Ağır sanayiler" + +#: src/lincity-ng/Dialog.cpp:475 +msgid "Recyclers" +msgstr "Geridönüşümcüler" + +#: src/lincity-ng/Dialog.cpp:477 +msgid "Coal mines" +msgstr "Kömür madenleri" + +#: src/lincity-ng/Dialog.cpp:478 +msgid "Ore mines" +msgstr "Mineral madenleri" + +#: src/lincity-ng/Dialog.cpp:479 +msgid "Forests" +msgstr "Ormanlar" + +#: src/lincity-ng/ScreenInterface.cpp:234 +msgid "MM" +msgstr "AA" + +#: src/lincity-ng/ScreenInterface.cpp:245 src/lincity-ng/GameView.cpp:1784 +#: src/lincity-ng/GameView.cpp:1797 src/lincity-ng/GameView.cpp:1828 +msgid "$" +msgstr " TRY" + +#: src/lincity-ng/ButtonPanel.cpp:204 +msgid "Query Tool" +msgstr "Sorgu Aracı" + +#: src/lincity-ng/ButtonPanel.cpp:205 +msgid "Bulldozer" +msgstr "Dozer" + +#: src/lincity-ng/ButtonPanel.cpp:206 +msgid "Evacuate" +msgstr "Tahliye Et" + +#: src/lincity-ng/ButtonPanel.cpp:208 +msgid "Residential: 50 denizens, low birthrate, high deathrate" +msgstr "YerleÅŸim: 50 vatandaÅŸ, düşük doÄŸum oranı, yüksek ölüm oranı" + +#: src/lincity-ng/ButtonPanel.cpp:209 +msgid "Residential: 100 denizens, high birthrate, low deathrate" +msgstr "YerleÅŸim: 100 vatandaÅŸ, yüksek doÄŸum oranı, düşük ölüm oranı" + +#: src/lincity-ng/ButtonPanel.cpp:210 +msgid "Residential: 200 denizens, high birthrate, high deathrate" +msgstr "YerleÅŸim: 200 vatandaÅŸ, yüksek doÄŸum oranı, yüksek ölüm oranı" + +#: src/lincity-ng/ButtonPanel.cpp:211 +msgid "Residential: 100 denizens, low birthrate, high deathrate" +msgstr "YerleÅŸim: 100 vatandaÅŸ, düşük doÄŸum oranı, yüksek ölüm oranı" + +#: src/lincity-ng/ButtonPanel.cpp:212 +msgid "Residential: 200 denizens, high birthrate, low deathrate" +msgstr "YerleÅŸim: 200 vatandaÅŸ, yüksek doÄŸum oranı, düşük ölüm oranı" + +#: src/lincity-ng/ButtonPanel.cpp:213 +msgid "Residential: 400 denizens, high birthrate, high deathrate" +msgstr "YerleÅŸim: 400 vatandaÅŸ, yüksek doÄŸum oranı, yüksek ölüm oranı" + +#: src/lincity-ng/ButtonPanel.cpp:222 +msgid " [Click right for help.]" +msgstr " [Yardım için saÄŸ tıklayın.]" + +#: src/lincity-ng/ButtonPanel.cpp:250 src/lincity-ng/ButtonPanel.cpp:293 +#: src/lincity-ng/ButtonPanel.cpp:421 src/lincity-ng/ButtonPanel.cpp:444 +#, c-format +msgid "%s (Techlevel %.1f required.)" +msgstr "%s (Teknoloji seviyesi %.1f gerekli.)" + +#: src/lincity-ng/ButtonPanel.cpp:259 +#, c-format +msgid "%s is disabled (loaded old game)." +msgstr "%s devre dışı (eski oyun yüklenmiÅŸ)." + +#: src/lincity-ng/MainMenu.cpp:149 +msgid "random empty board" +msgstr "rastgele boÅŸ alan" + +#: src/lincity-ng/MainMenu.cpp:153 +msgid "random village" +msgstr "rastgele köy" -#: src/lincity-ng/MpsInterface.cpp:474 -msgid "Others" -msgstr "DiÄŸerleri" +#: src/lincity-ng/MainMenu.cpp:157 +msgid "village in semi desert" +msgstr "yarısı çöl köy" -#: src/lincity-ng/MpsInterface.cpp:479 -msgid "Net" -msgstr "Net" +#: src/lincity-ng/MainMenu.cpp:161 +msgid "village in temperate area" +msgstr "ılıman iklimde köy" -#: src/lincity-ng/MpsInterface.cpp:491 -msgid "Other Costs" -msgstr "DiÄŸer Maliyeler" +#: src/lincity-ng/MainMenu.cpp:165 +msgid "village in swamp" +msgstr "bataklıkta köy" -#: src/lincity-ng/MpsInterface.cpp:496 -msgid "For year" -msgstr "Åžu yıl için" +#: src/lincity-ng/MainMenu.cpp:170 +msgid "good_times" +msgstr "iyi_zamanlar" -#: src/lincity-ng/MpsInterface.cpp:500 -msgid "Interest" -msgstr "Faiz" +#: src/lincity-ng/MainMenu.cpp:171 +msgid "bad_times" +msgstr "kötü_zamanlar" -#: src/lincity-ng/MpsInterface.cpp:502 -msgid "Schools" -msgstr "Okullar" +#: src/lincity-ng/MainMenu.cpp:172 +msgid "Beach" +msgstr "Sahil" -#: src/lincity-ng/MpsInterface.cpp:504 -msgid "Univers." -msgstr "Ãœniversiteler" +#: src/lincity-ng/MainMenu.cpp:173 +msgid "extreme_arid" +msgstr "aşırı_kurak" -#: src/lincity-ng/MpsInterface.cpp:506 -msgid "Deaths" -msgstr "Ölümler" +#: src/lincity-ng/MainMenu.cpp:174 +msgid "extreme_wetland" +msgstr "aşırı_nemlizemin" -#: src/lincity-ng/MpsInterface.cpp:508 src/lincity/lintypes.cpp:286 -#: src/lincity/modules/windmill.cpp:74 -msgid "Windmill" -msgstr "YeldeÄŸirmeni" +#: src/lincity-ng/MainMenu.cpp:233 +msgid "empty" +msgstr "boÅŸ" -#: src/lincity-ng/MpsInterface.cpp:510 -msgid "Hospital" -msgstr "Hastane" +#: src/lincity-ng/GameView.cpp:260 +msgid "Minimap: outline map" +msgstr "Küçkhar.: kroki harita" -#: src/lincity-ng/MpsInterface.cpp:512 -msgid "Rockets" -msgstr "Füzeler" +#: src/lincity-ng/GameView.cpp:263 +msgid "Minimap: unemployment" +msgstr "Küçkhar.: iÅŸsizlik" -#: src/lincity-ng/MpsInterface.cpp:514 -msgid "Fire Stn" -msgstr "Ä°tfaiye" +#: src/lincity-ng/GameView.cpp:266 +msgid "Minimap: pollution" +msgstr "Küçkhar.: kirlilik" -#: src/lincity-ng/MpsInterface.cpp:518 src/lincity/lintypes.cpp:242 -msgid "Recycle" -msgstr "Geridönüşüm" +#: src/lincity-ng/GameView.cpp:269 +msgid "Minimap: nourishments" +msgstr "Küçkhar.: beslenme" -#: src/lincity-ng/MpsInterface.cpp:532 -msgid "Population" -msgstr "Nüfus" +#: src/lincity-ng/GameView.cpp:272 +msgid "Minimap: power supply" +msgstr "Küçkhar.: elektrik kaynağı" -#: src/lincity-ng/MpsInterface.cpp:534 src/lincity/modules/port.cpp:306 -msgid "Total" -msgstr "Toplam" +#: src/lincity-ng/GameView.cpp:275 +msgid "Minimap: firedepartment cover" +msgstr "Küçkhar.: itfaiye kapsamı" -#: src/lincity-ng/MpsInterface.cpp:535 -msgid "Housed" -msgstr "Ev sahibi" +#: src/lincity-ng/GameView.cpp:278 +msgid "Minimap: sport cover" +msgstr "Küçkhar.: spor kapsamı" -#: src/lincity-ng/MpsInterface.cpp:536 -msgid "Homeless" -msgstr "Evsiz" +#: src/lincity-ng/GameView.cpp:281 +msgid "Minimap: medical care" +msgstr "Küçkhar.: saÄŸlık hizm." -#: src/lincity-ng/MpsInterface.cpp:537 -msgid "Shanties" -msgstr "Kulübe" +#: src/lincity-ng/GameView.cpp:284 +msgid "Minimap: coal deposits" +msgstr "Küç. har.: kömür depoları" -#: src/lincity-ng/MpsInterface.cpp:538 -msgid "Unn Dths" -msgstr "DoÄŸal olmayan ölümler" +#: src/lincity-ng/GameView.cpp:1779 +msgid "Estimated Bulldoze Cost: " +msgstr "Tahmin Edilen Yıkım Fiyatı: " -#: src/lincity-ng/MpsInterface.cpp:539 -msgid "Unemployment" -msgstr "Ä°ÅŸsiz" +#: src/lincity-ng/GameView.cpp:1781 +msgid "Bulldoze Cost: " +msgstr "Yıkım Fiyatı: " -#: src/lincity-ng/MpsInterface.cpp:540 -msgid "Claims" -msgstr "Alacaklılar" +#: src/lincity-ng/GameView.cpp:1786 src/lincity-ng/GameView.cpp:1799 +msgid "n/a" +msgstr "n/a" -#: src/lincity-ng/MpsInterface.cpp:541 src/lincity-ng/MpsInterface.cpp:546 -msgid "Rate" -msgstr "Oran" +#: src/lincity-ng/GameView.cpp:1795 src/lincity-ng/GameView.cpp:1828 +msgid ": Cost to build " +msgstr ": Yapım fiyatı " -#: src/lincity-ng/MpsInterface.cpp:543 -msgid "Starvation" -msgstr "Açlık" +#: src/lincity-ng/GameView.cpp:1817 +msgid "Query Tool: Show information about selected building." +msgstr "Sorgu Aracı: Seçili yapının bilgisini göster." -#: src/lincity-ng/MpsInterface.cpp:544 -msgid "Cases" -msgstr "Davalar" +#: src/lincity-ng/GameView.cpp:1821 +msgid "Bulldozer: remove building -price varies-" +msgstr "Dozer: yapıyı yık -ücret deÄŸiÅŸir-" -#: src/lincity-ng/ScreenInterface.cpp:263 -msgid "MM" -msgstr "" +#: src/lincity-ng/GameView.cpp:1829 +msgid ", to bulldoze " +msgstr ", yıkmak için " -#: src/lincity/engine.cpp:149 -msgid "Port must be connected to river all along right side." -msgstr "" +#: src/lincity-ng/GameView.cpp:1829 src/lincity-ng/GameView.cpp:1832 +msgid "$." +msgstr " TRY." -#: src/lincity/engine.cpp:161 -#, fuzzy -msgid "You can't build a water well here: it is all desert." -msgstr "Buraya çöp dökemezsiniz" +#: src/lincity-ng/GameView.cpp:1831 +msgid " To build " +msgstr " Yapmak için " -#: src/lincity/engine.cpp:175 -#, fuzzy -msgid "You can't build a tip here: this area was once a landfill" -msgstr "Bu bölge atık için kullanıldı" - -#: src/lincity/engine.cpp:190 -#, fuzzy -msgid "You can't build a mine here: This area was once a landfill" -msgstr "Bu bölge atık için kullanıldı" +#: src/lincity-ng/GameView.cpp:1831 +msgid " of them " +msgstr " hepsi " -#: src/lincity/engine.cpp:201 -#, fuzzy -msgid "You can't build a mine here: there is no ore left at this site" -msgstr "Bu mevkide mineral madeni kalmadı" +#: src/lincity-ng/GameView.cpp:1832 +msgid "will cost about " +msgstr "fiyatlandırılacak " -#: src/lincity/engine.cpp:211 -msgid "You can't build a park here: it is a desert, parks need water" -msgstr "" +#~ msgid ". Residences %4d Markets %4d Farms %4d" +#~ msgstr ". Konutlar %4d Bakkallar %4d Çiftlikler %4d" -#: src/lincity/engine.cpp:226 -msgid "Too many substations + windmills. You cannot build one more" -msgstr "" +#~ msgid ". Water wells %4d" +#~ msgstr ". Su kuyuları %4d" -#: src/lincity/engine.cpp:235 -msgid "Too many markets. You cannot build one more" -msgstr "" +#~ msgid ". Monuments %4d Schools %4d Universities %4d" +#~ msgstr ". Anıtlar %4d Okullar %4d Ãœniversiteler %4d" -#: src/lincity/engine.cpp:259 -msgid "" -"ERROR: group does not exist. This should not happen! Please consider filling " -"a bug report to lincity-ng team, with the saved game and what you did :-) " -msgstr "" +#~ msgid ".Fire stations %4d Parks %4d Sports fields %4d" +#~ msgstr ".Ä°tfaiyeler %4d Parklar %4d Spor alanları %4d" -#: src/lincity/engine.cpp:565 -msgid "It's at a power line." -msgstr "Elektrik Hattında" - -#: src/lincity/engine.cpp:567 -msgid "It's at a solar power station." -msgstr "GüneÅŸsel Elektrik Ãœretecinde" - -#: src/lincity/engine.cpp:569 -msgid "It's at a substation." -msgstr "Trafoda " - -#: src/lincity/engine.cpp:571 -msgid "It's at a residential area." -msgstr "YerleÅŸim Bölgesinde" - -#: src/lincity/engine.cpp:573 -msgid "It's at a farm." -msgstr "Çiflikte" - -#: src/lincity/engine.cpp:575 -msgid "It's at a market." -msgstr "Bakkalda" - -#: src/lincity/engine.cpp:577 -msgid "It's at a track." -msgstr "Tali Yolda" - -#: src/lincity/engine.cpp:579 -msgid "It's at a coal mine." -msgstr "Kömür Madeninde" - -#: src/lincity/engine.cpp:581 -msgid "It's at a railway." -msgstr "Demiryolunda" - -#: src/lincity/engine.cpp:583 -msgid "It's at a coal power station." -msgstr "Kömürden Elektrik Ãœretecinde" - -#: src/lincity/engine.cpp:585 -msgid "It's at a road." -msgstr "Yol üzerinde" - -#: src/lincity/engine.cpp:587 -msgid "It's at light industry." -msgstr "Hafif sanayide" - -#: src/lincity/engine.cpp:589 -msgid "It's at a university." -msgstr "Ãœniversitede" - -#: src/lincity/engine.cpp:591 -msgid "It's at a commune." -msgstr "Komünde" - -#: src/lincity/engine.cpp:593 -msgid "It's at a tip." -msgstr "Çöplükte" - -#: src/lincity/engine.cpp:595 -msgid "It's at a port." -msgstr "Limanda" - -#: src/lincity/engine.cpp:597 -msgid "It's at a steel works." -msgstr "Çelik yapımında" - -#: src/lincity/engine.cpp:599 -msgid "It's at a recycle centre." -msgstr "Geridönüşüm merkezinde" - -#: src/lincity/engine.cpp:601 -msgid "It's at a health centre." -msgstr "Hastanede" - -#: src/lincity/engine.cpp:603 -msgid "It's at a rocket site." -msgstr "Füze Alanında" - -#: src/lincity/engine.cpp:605 -msgid "It's at a windmill." -msgstr "YeldeÄŸirmeninde" - -#: src/lincity/engine.cpp:607 -msgid "It's at a school." -msgstr "Okulda" - -#: src/lincity/engine.cpp:609 -msgid "It's at a blacksmith." -msgstr "Demircide" - -#: src/lincity/engine.cpp:611 -msgid "It's at a mill." -msgstr "Fabrikada" - -#: src/lincity/engine.cpp:613 -msgid "It's at a pottery." -msgstr "Çömlekçide" - -#: src/lincity/engine.cpp:615 -msgid "It's at a fire station!!!." -msgstr "Ä°tfaiyede!!!" - -#: src/lincity/engine.cpp:617 -msgid "It's at a sports field!!!." -msgstr "Spor sahasında" - -#: src/lincity/engine.cpp:619 -msgid "It's at a shanty town." -msgstr "Gecekondu semtinde" +#~ msgid "Health centres %4d Tips %4d Shanties %4d" +#~ msgstr "Hastaneler %4d Çöplükler %4d Kulübeler %4d" -#: src/lincity/engine.cpp:621 -msgid "UNKNOWN!" -msgstr "BÄ°LÄ°NMÄ°YOR!" +#~ msgid ". Windmills %4d Coal powers %4d Solar powers %4d" +#~ msgstr "" +#~ ". Rüzgar deÄŸirmenleri %4d Termik santral %4d GüneÅŸ paneli %4d" -#: src/lincity/fileutil.cpp:233 src/lincity/fileutil.cpp:277 -msgid "Error. Can't find LINCITY_HOME" -msgstr "Hata. LINCITY_HOME bulunamıyor" +#~ msgid ". Substations %4d Power lines %4d Ports %4d" +#~ msgstr ". Trafolar %4d Elektrik hatları %4d Limanlar %4d" -#: src/lincity/fileutil.cpp:463 -msgid "Error verifying package. Can't find colour.pal." -msgstr "Paket doÄŸrulama hatası. colour.pal bulunamıyor." +#~ msgid ". Tracks %4d Roads %4d Rail %4d" +#~ msgstr ". Tali Yollar %4d Yollar %4d Raylar %4d" -#: src/lincity/fileutil.cpp:476 src/lincity/fileutil.cpp:484 -#, c-format -msgid "Couldn't create the save directory '%s'\n" -msgstr "Kayıt dizini oluÅŸturulamadı '%s'\n" +#~ msgid ". Potteries %4d Blacksmiths %4d Mills %4d" +#~ msgstr ". Çömlekçiler %4d Demirciler %4d Fabrikalar %4d" -#: src/lincity/fileutil.cpp:501 -#, c-format -msgid "Out of memory: malloc failure\n" -msgstr "Hafıza aşımı: malloc failure \n" +#~ msgid ". Light inds %4d Heavy inds %4d Recyclers %4d" +#~ msgstr "" +#~ ". Hafif sanayiler %4d Ağır sanayiler %4d Dönüştürücüler %4d" -#: src/lincity/lclib.cpp:15 -msgid "Apr" -msgstr "Nis" +#~ msgid ". Coal mines %4d Ore mines %4d Communes %4d" +#~ msgstr "" +#~ ". Kömür madenleri %4d Mineral madenleri %4d Komünler %4d" -#: src/lincity/lclib.cpp:15 -msgid "Feb" -msgstr "Åžub" +#~ msgid "Minimap: traffic density" +#~ msgstr "Küçkhar.: trafik yoÄŸunluÄŸu" -#: src/lincity/lclib.cpp:15 -msgid "Jan" -msgstr "Ocak" +#~ msgid "Coverage" +#~ msgstr "Kapsam" -#: src/lincity/lclib.cpp:15 -msgid "Mar" -msgstr "Mart" +#~ msgid "Health" +#~ msgstr "SaÄŸlık" -#: src/lincity/lclib.cpp:16 -msgid "Aug" -msgstr "AÄŸu" +#~ msgid "Bulldoze Cost" +#~ msgstr "Yıkım Fiyatı" -#: src/lincity/lclib.cpp:16 -msgid "Jul" -msgstr "Tem" +#~ msgid "N/A" +#~ msgstr "N/A" -#: src/lincity/lclib.cpp:16 -msgid "Jun" -msgstr "Haz" +#~ msgid "You can't build a tip here: this area was once a landfill" +#~ msgstr "Buraya bir çöp inÅŸa edemezsiniz: bu alan önceden bir çöplüktü" -#: src/lincity/lclib.cpp:16 -msgid "May" -msgstr "May" +#~ msgid "You can't build a mine here: This area was once a landfill" +#~ msgstr "Buraya bir maden inÅŸa edemezsiniz: Bu alan önceden bir çöplüktü" -#: src/lincity/lclib.cpp:17 -msgid "Dec" -msgstr "Ara" +#~ msgid "Too many substations + windmills. You cannot build one more" +#~ msgstr "Çok fazla trafo + rüzgar deÄŸirmeni. Daha fazla yapamazsınız" -#: src/lincity/lclib.cpp:17 -msgid "Nov" -msgstr "Kas" +#~ msgid "Too many markets. You cannot build one more" +#~ msgstr "Çok sayıda market. Daha fazla yapamazsınız" -#: src/lincity/lclib.cpp:17 -msgid "Oct" -msgstr "Ekim" +#~ msgid "It's at a power line." +#~ msgstr "Elektrik hattında." -#: src/lincity/lclib.cpp:17 -msgid "Sep" -msgstr "Eyl" +#~ msgid "It's at a solar power station." +#~ msgstr "GüneÅŸ panelinde." -#: src/lincity/lintypes.cpp:21 -msgid "Empty" -msgstr "BoÅŸ" +#~ msgid "It's at a substation." +#~ msgstr "Trafoda." -#: src/lincity/lintypes.cpp:33 -msgid "Power line" -msgstr "Elektrik Hattı" +#~ msgid "It's at a residential area." +#~ msgstr "YerleÅŸim bölgesinde." -#: src/lincity/lintypes.cpp:44 -msgid "Solar PS" -msgstr "GüneÅŸsel Elk. Ãœre." +#~ msgid "It's at a farm." +#~ msgstr "Çiftlikte." -#: src/lincity/lintypes.cpp:55 src/lincity/modules/substation.cpp:93 -msgid "Substation" -msgstr "Trafo" +#~ msgid "It's at a market." +#~ msgstr "Bakkalda." -#: src/lincity/lintypes.cpp:66 -msgid "Residential LL" -msgstr "YerleÅŸim DS" +#~ msgid "It's at a track." +#~ msgstr "Tali yolda." -#: src/lincity/lintypes.cpp:77 -msgid "Farm" -msgstr "Çiflik" +#~ msgid "It's at a coal mine." +#~ msgstr "Kömür madeninde." -#: src/lincity/lintypes.cpp:99 src/lincity/modules/track.cpp:33 -msgid "Track" -msgstr "Tali Yol" +#~ msgid "It's at a railway." +#~ msgstr "Demiryolunda." -#: src/lincity/lintypes.cpp:110 -msgid "Coalmine" -msgstr "Kömür Madeni" +#~ msgid "It's at a coal power station." +#~ msgstr "Termik santralde." -#: src/lincity/lintypes.cpp:121 -msgid "Railway" -msgstr "Demiryolu" +#~ msgid "It's at a road." +#~ msgstr "Yol üzerinde." -#: src/lincity/lintypes.cpp:132 -msgid "Coal PS" -msgstr "Kömürden Elk. Ãœre." +#~ msgid "It's at light industry." +#~ msgstr "Hafif sanayide." -#: src/lincity/lintypes.cpp:143 src/lincity/modules/road.cpp:42 -msgid "Road" -msgstr "Yol" +#~ msgid "It's at a university." +#~ msgstr "Ãœniversitede." -#: src/lincity/lintypes.cpp:154 -msgid "Lt. Industry" -msgstr "Hafif Sanayi" +#~ msgid "It's at a commune." +#~ msgstr "Komünde." -#: src/lincity/lintypes.cpp:165 src/lincity/modules/university.cpp:59 -msgid "University" -msgstr "Ãœniversite" +#~ msgid "It's at a tip." +#~ msgstr "Çöplükte." -#: src/lincity/lintypes.cpp:176 src/lincity/modules/commune.cpp:174 -msgid "Commune" -msgstr "Komün" +#~ msgid "It's at a port." +#~ msgstr "Limanda." -#: src/lincity/lintypes.cpp:187 -msgid "Ore mine" -msgstr "Mineral Madeni" +#~ msgid "It's at a steel works." +#~ msgstr "Çelik yapımında." -#: src/lincity/lintypes.cpp:198 -msgid "Rubbish tip" -msgstr "Atıklık" +#~ msgid "It's at a recycle centre." +#~ msgstr "Geridönüşüm merkezinde." -#: src/lincity/lintypes.cpp:220 -msgid "Hv. Industry" -msgstr "Ağır Sanayi" +#~ msgid "It's at a health centre." +#~ msgstr "Hastanede." -#: src/lincity/lintypes.cpp:231 -msgid "Park" -msgstr "Millet Bahçesi" +#~ msgid "It's at a rocket site." +#~ msgstr "Füze alanında." -#: src/lincity/lintypes.cpp:253 src/lincity/modules/residence.cpp:264 -#: src/lincity/modules/water.cpp:17 -msgid "Water" -msgstr "Su" +#~ msgid "It's at a windmill." +#~ msgstr "Rüzgar deÄŸirmeninde." -#: src/lincity/lintypes.cpp:264 -msgid "Health centre" -msgstr "Hastane" +#~ msgid "It's at a school." +#~ msgstr "Okulda." -#: src/lincity/lintypes.cpp:275 -msgid "Rocket pad" -msgstr "Füze rampası" +#~ msgid "It's at a blacksmith." +#~ msgstr "Demircide." -#: src/lincity/lintypes.cpp:297 src/lincity/modules/monument.cpp:51 -msgid "Monument" -msgstr "Anıt" +#~ msgid "It's at a mill." +#~ msgstr "Fabrikada." -#: src/lincity/lintypes.cpp:308 src/lincity/modules/school.cpp:43 -msgid "School" -msgstr "Okul" +#~ msgid "It's at a pottery." +#~ msgstr "Çömlekçide." -#: src/lincity/lintypes.cpp:319 src/lincity/modules/blacksmith.cpp:91 -msgid "Blacksmith" -msgstr "Demirci" +#~ msgid "It's at a fire station!!!." +#~ msgstr "Ä°tfaiyede!!!." -#: src/lincity/lintypes.cpp:330 -msgid "Mill" -msgstr "Fabrika" +#~ msgid "It's at a sports field!!!." +#~ msgstr "Spor sahasında!!!." -#: src/lincity/lintypes.cpp:341 src/lincity/modules/pottery.cpp:105 -msgid "Pottery" -msgstr "Çömlekçi" +#~ msgid "It's at a shanty town." +#~ msgstr "Gecekondu semtinde." -#: src/lincity/lintypes.cpp:352 -msgid "Fire sta'n" -msgstr "Ä°tfaiye" +#~ msgid "Capacity" +#~ msgstr "Hacim" -#: src/lincity/lintypes.cpp:363 src/lincity/modules/cricket.cpp:92 -msgid "Sports field" -msgstr "Spor merkezi" +#~ msgid "Inventory" +#~ msgstr "Envanter" -#: src/lincity/lintypes.cpp:375 -msgid "Burnt" -msgstr "Yanık" +#~ msgid "Max Output" +#~ msgstr "Azami Çıktı" -#: src/lincity/lintypes.cpp:387 -msgid "Shanty town" -msgstr "Gecekondu semti" +#~ msgid "Current Output" +#~ msgstr "Geçerli Çıktı" -#: src/lincity/lintypes.cpp:411 -msgid "Used" -msgstr "Kullanıldı" +#~ msgid "Jobs" +#~ msgstr "İşçiler" -#: src/lincity/lintypes.cpp:422 -msgid "Residential ML" -msgstr "YerleÅŸim OS" +#~ msgid "Grid ID" +#~ msgstr "Åžebeke KimliÄŸi" -#: src/lincity/lintypes.cpp:433 -msgid "Residential HL" -msgstr "YerleÅŸim YS" +#~ msgid "Coal Mine" +#~ msgstr "Kömür Madeni" -#: src/lincity/lintypes.cpp:444 -#, fuzzy -msgid "Residential LH" -msgstr "YerleÅŸim DS" +#~ msgid "Stock" +#~ msgstr "Stok" -#: src/lincity/lintypes.cpp:455 -#, fuzzy -msgid "Residential MH" -msgstr "YerleÅŸim OS" +#~ msgid "Reserve" +#~ msgstr "Bulunan" -#: src/lincity/lintypes.cpp:466 -#, fuzzy -msgid "Residential HH" -msgstr "YerleÅŸim YS" +#~ msgid "EMPTY" +#~ msgstr "BOÅž" -#: src/lincity/lintypes.cpp:477 -#, fuzzy -msgid "Water well" -msgstr "Su" +#~ msgid "Activity" +#~ msgstr "Etkinlik" -#: src/lincity/lintypes.cpp:489 -#, fuzzy -msgid "Desert" -msgstr "Bulunan" +#~ msgid "Ore" +#~ msgstr "Mineral Madeni" -#: src/lincity/lintypes.cpp:501 -#, fuzzy -msgid "Tree" -msgstr "Ticaret" +#~ msgid "Steel" +#~ msgstr "Çelik" -#: src/lincity/lintypes.cpp:514 -#, fuzzy -msgid "Trees" -msgstr "Ticaret" +#~ msgid "Waste" +#~ msgstr "Atık" -#: src/lincity/lintypes.cpp:527 -#, fuzzy -msgid "Forest" -msgstr "Ä°tfaiye" +#~ msgid "Health Centre" +#~ msgstr "Hastane" -#: src/lincity/loadsave.cpp:129 -#, c-format -msgid "Save file <%s> - " -msgstr "Dosya kayıtı <%s> - " +#~ msgid "Grid" +#~ msgstr "Åžebeke" -#: src/lincity/loadsave.cpp:130 -msgid "Can't open save file!" -msgstr "Kayıt dosyası açılamadı!" +#~ msgid "Store" +#~ msgstr "Depo" -#: src/lincity/loadsave.cpp:292 src/lincity/old_ldsvguts.cpp:130 -#, c-format -msgid "Can't open <%s> (gzipped)" -msgstr "Açılamıyor <%s> (gzipped)" +#~ msgid "Food" +#~ msgstr "Yiyecek" -#: src/lincity/modules/blacksmith.cpp:94 -#: src/lincity/modules/heavy_industry.cpp:288 -#: src/lincity/modules/light_industry.cpp:278 src/lincity/modules/mill.cpp:96 -#: src/lincity/modules/pottery.cpp:107 src/lincity/modules/recycle.cpp:137 -#: src/lincity/modules/school.cpp:52 src/lincity/modules/university.cpp:68 -msgid "Capacity" -msgstr "Hacim" - -#: src/lincity/modules/blacksmith.cpp:96 src/lincity/modules/cricket.cpp:94 -#: src/lincity/modules/firestation.cpp:111 -#: src/lincity/modules/health_centre.cpp:60 src/lincity/modules/mill.cpp:98 -#: src/lincity/modules/pottery.cpp:109 src/lincity/modules/recycle.cpp:144 -#: src/lincity/modules/rocket_pad.cpp:194 src/lincity/modules/school.cpp:48 -#: src/lincity/modules/university.cpp:65 -msgid "Inventory" -msgstr "Envanter" +#~ msgid "Textile Mill" +#~ msgstr "Giyim Fabrikası" -#: src/lincity/modules/coal_power.cpp:84 -msgid "Coal Power Station" -msgstr "" +#~ msgid "Wisdom Bestowed" +#~ msgstr "Bilgelik Ä°hsan Edildi" -#: src/lincity/modules/coal_power.cpp:88 -#: src/lincity/modules/solar_power.cpp:49 -msgid "Max Output" -msgstr "Enfazla çıktı" - -#: src/lincity/modules/coal_power.cpp:93 -#: src/lincity/modules/solar_power.cpp:54 -msgid "Current Output" -msgstr "Güncel çıktı" - -#: src/lincity/modules/coal_power.cpp:98 src/lincity/modules/coalmine.cpp:155 -#: src/lincity/modules/cricket.cpp:95 src/lincity/modules/firestation.cpp:112 -#: src/lincity/modules/health_centre.cpp:61 -#: src/lincity/modules/market.cpp:1006 src/lincity/modules/pottery.cpp:110 -#: src/lincity/modules/rail.cpp:51 src/lincity/modules/road.cpp:46 -#: src/lincity/modules/rocket_pad.cpp:195 src/lincity/modules/school.cpp:49 -#: src/lincity/modules/solar_power.cpp:45 src/lincity/modules/track.cpp:37 -#: src/lincity/modules/university.cpp:66 src/lincity/modules/windmill.cpp:76 -msgid "Jobs" -msgstr "İşçi" - -#: src/lincity/modules/coal_power.cpp:99 -#: src/lincity/modules/organic_farm.cpp:212 -#: src/lincity/modules/recycle.cpp:142 src/lincity/modules/solar_power.cpp:58 -#: src/lincity/modules/windmill.cpp:75 -msgid "Tech" -msgstr "Teknoloji" +#~ msgid "% Complete" +#~ msgstr "Tamamlanan %" -#: src/lincity/modules/coal_power.cpp:100 -#: src/lincity/modules/power_line.cpp:49 -#: src/lincity/modules/solar_power.cpp:59 -#: src/lincity/modules/substation.cpp:113 src/lincity/modules/windmill.cpp:99 -msgid "Grid ID" -msgstr "Izgara KimliÄŸi" - -#: src/lincity/modules/coalmine.cpp:151 -msgid "Coal Mine" -msgstr "Kömür madeni" - -#: src/lincity/modules/coalmine.cpp:158 src/lincity/modules/oremine.cpp:164 -msgid "Stock" -msgstr "Mevcut mal" - -#: src/lincity/modules/coalmine.cpp:160 src/lincity/modules/coalmine.cpp:162 -#: src/lincity/modules/oremine.cpp:167 -msgid "Reserve" -msgstr "Bulunan" - -#: src/lincity/modules/coalmine.cpp:162 -msgid "EMPTY" -msgstr "BOÅž" - -#: src/lincity/modules/commune.cpp:177 -msgid "Activity" -msgstr "Faliyet" - -#: src/lincity/modules/commune.cpp:182 -#: src/lincity/modules/heavy_industry.cpp:286 -#: src/lincity/modules/light_industry.cpp:284 -#: src/lincity/modules/market.cpp:1009 src/lincity/modules/port.cpp:294 -#: src/lincity/modules/pottery.cpp:112 src/lincity/modules/rail.cpp:54 -#: src/lincity/modules/recycle.cpp:145 src/lincity/modules/road.cpp:49 -#: src/lincity/modules/track.cpp:40 -msgid "Ore" -msgstr "Mineral madeni" - -#: src/lincity/modules/commune.cpp:184 -#: src/lincity/modules/light_industry.cpp:285 -#: src/lincity/modules/market.cpp:1010 src/lincity/modules/port.cpp:302 -#: src/lincity/modules/rail.cpp:55 src/lincity/modules/road.cpp:50 -#: src/lincity/modules/rocket_pad.cpp:197 src/lincity/modules/track.cpp:41 -msgid "Steel" -msgstr "Çelik" - -#: src/lincity/modules/commune.cpp:186 src/lincity/modules/market.cpp:1011 -#: src/lincity/modules/rail.cpp:56 src/lincity/modules/recycle.cpp:146 -#: src/lincity/modules/road.cpp:51 src/lincity/modules/track.cpp:42 -msgid "Waste" -msgstr "Atık" +#~ msgid "Ore Mine" +#~ msgstr "Mineral Madeni" -#: src/lincity/modules/firestation.cpp:109 -msgid "Fire Station" -msgstr "Ä°tfaiye" +#~ msgid "Organic Farm" +#~ msgstr "DoÄŸal Tarım" -#: src/lincity/modules/health_centre.cpp:58 -msgid "Health Centre" -msgstr "Hastane" +#~ msgid "Prod" +#~ msgstr "Ãœretim" -#: src/lincity/modules/heavy_industry.cpp:270 -msgid "Heavy Industry" -msgstr "" +#~ msgid "Debug info" +#~ msgstr "Hata ayıklama bilgisi" -#: src/lincity/modules/heavy_industry.cpp:277 -msgid "Grid" -msgstr "Izgara" - -#: src/lincity/modules/heavy_industry.cpp:280 -#: src/lincity/modules/light_industry.cpp:281 -#: src/lincity/modules/organic_farm.cpp:211 -#: src/lincity/modules/recycle.cpp:139 src/lincity/modules/residence.cpp:263 -#: src/lincity/modules/residence.cpp:267 src/lincity/modules/residence.cpp:270 -#: src/lincity/modules/residence.cpp:273 src/lincity/modules/residence.cpp:279 -#: src/lincity/modules/residence.cpp:282 src/lincity/modules/residence.cpp:285 -msgid "NO" -msgstr "Hayır" +#~ msgid "max with power&water" +#~ msgstr "güç ve su ile azami" -#: src/lincity/modules/heavy_industry.cpp:283 -#: src/lincity/modules/light_industry.cpp:282 -#: src/lincity/modules/organic_farm.cpp:211 -#: src/lincity/modules/recycle.cpp:140 src/lincity/modules/residence.cpp:271 -msgid "Power" -msgstr "Elektrik" - -#: src/lincity/modules/heavy_industry.cpp:285 -#: src/lincity/modules/light_industry.cpp:283 -msgid "Store" -msgstr "Depo" +#~ msgid "N tiles with water" +#~ msgstr "Su ile N döşeme" -#: src/lincity/modules/light_industry.cpp:275 -msgid "Light Industry" -msgstr "" +#~ msgid "Current production" +#~ msgstr "Geçerli üretim" -#: src/lincity/modules/light_industry.cpp:281 -#: src/lincity/modules/organic_farm.cpp:211 -#: src/lincity/modules/recycle.cpp:139 src/lincity/modules/residence.cpp:263 -#: src/lincity/modules/residence.cpp:267 src/lincity/modules/residence.cpp:270 -#: src/lincity/modules/residence.cpp:273 src/lincity/modules/residence.cpp:279 -#: src/lincity/modules/residence.cpp:282 src/lincity/modules/residence.cpp:285 -msgid "YES" -msgstr "Evet" +#~ msgid "Power Line" +#~ msgstr "Elektrik Hattı" -#: src/lincity/modules/market.cpp:1005 src/lincity/modules/mill.cpp:100 -#: src/lincity/modules/port.cpp:286 src/lincity/modules/rail.cpp:50 -#: src/lincity/modules/road.cpp:45 src/lincity/modules/track.cpp:36 -msgid "Food" -msgstr "Yiyecek" - -#: src/lincity/modules/mill.cpp:94 -msgid "Textile Mill" -msgstr "Giyim Fabrikası" - -#: src/lincity/modules/monument.cpp:57 -msgid "Wisdom Bestowed" -msgstr "Bilgelik Ä°hsan Edildi" +#~ msgid "Recycling Center" +#~ msgstr "Dönüşüm Merkezi" -#: src/lincity/modules/monument.cpp:61 -#, c-format -msgid "% Complete" -msgstr "% Tamamlandı" +#~ msgid "Fed" +#~ msgstr "BeslenmiÅŸ" -#: src/lincity/modules/oremine.cpp:161 -msgid "Ore Mine" -msgstr "Mineral madeni" - -#: src/lincity/modules/organic_farm.cpp:208 -msgid "Organic Farm" -msgstr "DoÄŸal tarım" - -#: src/lincity/modules/organic_farm.cpp:213 -msgid "Prod" -msgstr "Ãœretim" +#~ msgid "Employed" +#~ msgstr "Çalışan" -#: src/lincity/modules/organic_farm.cpp:218 -msgid "Debug info" -msgstr "" +#~ msgid "poor" +#~ msgstr "fakir" -#: src/lincity/modules/organic_farm.cpp:219 -msgid "max with power&water" -msgstr "" +#~ msgid "Job" +#~ msgstr "Ä°ÅŸ" -#: src/lincity/modules/organic_farm.cpp:220 -msgid "N tiles with water" -msgstr "" +#~ msgid "Health Cvr" +#~ msgstr "SaÄŸlık Koruması" -#: src/lincity/modules/organic_farm.cpp:221 -#, fuzzy -msgid "Current production" -msgstr "Güncel çıktı" +#~ msgid "Rocket Pad" +#~ msgstr "Füze Rampası" -#: src/lincity/modules/power_line.cpp:46 -msgid "Power Line" -msgstr "Elektrik hattı" +#~ msgid "Completion" +#~ msgstr "BitiÅŸ" -#: src/lincity/modules/rail.cpp:47 -msgid "Rail" -msgstr "Ray" +#~ msgid "Local Demand" +#~ msgstr "Yerel Talep" -#: src/lincity/modules/recycle.cpp:134 -msgid "Recycling Center" -msgstr "" +#~ msgid "Grid Status" +#~ msgstr "Åžebeke Durumu" -#: src/lincity/modules/residence.cpp:255 -msgid "Residence" -msgstr "Konut" +#~ msgid "T. Cap." +#~ msgstr "Top. Güç" -#: src/lincity/modules/residence.cpp:259 -msgid "People" -msgstr "Åžahıs" +#~ msgid "A. Cap." +#~ msgstr "Anlık Güç" -#: src/lincity/modules/residence.cpp:268 -msgid "Fed" -msgstr "BeslenmiÅŸ" - -#: src/lincity/modules/residence.cpp:274 -msgid "Employed" -msgstr "Ä°stihdam edilmiÅŸ" - -#: src/lincity/modules/residence.cpp:276 -msgid "poor" -msgstr "fakir" - -#: src/lincity/modules/residence.cpp:277 -msgid "Job" -msgstr "Ä°ÅŸ" - -#: src/lincity/modules/residence.cpp:280 -msgid "Health Cvr" -msgstr "SaÄŸlık Koruması" - -#: src/lincity/modules/rocket_pad.cpp:188 -msgid "Rocket Pad" -msgstr "Füze Rampası" - -#: src/lincity/modules/rocket_pad.cpp:191 -msgid "Completion" -msgstr "BitiÅŸ" - -#: src/lincity/modules/school.cpp:45 -msgid "Lessons Learned" -msgstr "Öğretilen dersler" +#~ msgid "Demand" +#~ msgstr "Talep" -#: src/lincity/modules/solar_power.cpp:43 -msgid "Solar power station" -msgstr "" +#~ msgid "Landfill" +#~ msgstr "Atık" -#: src/lincity/modules/substation.cpp:97 -msgid "Local Demand" -msgstr "Yerel demand" - -#: src/lincity/modules/substation.cpp:101 src/lincity/modules/windmill.cpp:89 -msgid "Grid Status" -msgstr "Izgara durumu" - -#: src/lincity/modules/substation.cpp:104 src/lincity/modules/windmill.cpp:92 -msgid "T. Cap." -msgstr "Top. Güç" - -#: src/lincity/modules/substation.cpp:107 src/lincity/modules/windmill.cpp:95 -msgid "A. Cap." -msgstr "Anlık Güç" - -#: src/lincity/modules/substation.cpp:110 src/lincity/modules/windmill.cpp:86 -#: src/lincity/modules/windmill.cpp:98 -msgid "Demand" -msgstr "Talep" - -#: src/lincity/modules/tip.cpp:100 -msgid "Landfill" -msgstr "Atık" - -#: src/lincity/modules/tip.cpp:103 -msgid "Last Month" -msgstr "Son Ay" - -#: src/lincity/modules/tip.cpp:104 -msgid "Tons" -msgstr "Yığın" - -#: src/lincity/modules/tip.cpp:105 -msgid "Percent" -msgstr "Yüzde" +#~ msgid "Last Month" +#~ msgstr "Son Ay" -#: src/lincity/modules/tip.cpp:107 -#, c-format -msgid "% Filled" -msgstr "% Doluluk" +#~ msgid "Tons" +#~ msgstr "Yığın" -#: src/lincity/modules/university.cpp:61 -msgid "Tech Produced" -msgstr "Teknolojik GeliÅŸim" - -#: src/lincity/modules/water.cpp:21 -msgid "Navigable" -msgstr "Sefere elveriÅŸli" - -#: src/lincity/modules/waterwell.cpp:56 -#, fuzzy -msgid "Water_well" -msgstr "Su" +#~ msgid "Percent" +#~ msgstr "Yüzde" -#: src/lincity/modules/waterwell.cpp:63 -msgid "Drinkable" -msgstr "" +#~ msgid "Navigable" +#~ msgstr "Sefere ElveriÅŸli" -#: src/lincity/modules/windmill.cpp:80 -msgid "Local Status" -msgstr "Yerel durum" - -#: src/lincity/modules/windmill.cpp:83 -msgid "Prod." -msgstr "Ãœretim" +#~ msgid "Water_well" +#~ msgstr "Su_kuyusu" -#: src/lincity/old_ldsvguts.cpp:162 -msgid "Loading scene" -msgstr "Sahne yükleniyor" +#~ msgid "Local Status" +#~ msgstr "Yerel durum" -#: src/lincity/power.cpp:271 -msgid "You have too many power grids. Join some of them" -msgstr "" +#~ msgid "Prod." +#~ msgstr "Ãœretim" -#: src/lincity/simulate.cpp:80 -msgid "" -"Upgrading from old game. You have 10 years to build water wells where " -"needed. After, starvation will occur! You should check starvation minimap, " -"and read waterwell help page :-)" -msgstr "" +#~ msgid "You have too many power grids. Join some of them" +#~ msgstr "Çok fazla elektrik ÅŸebekeniz var. Bazılarını birleÅŸtirin" #~ msgid "Residential" #~ msgstr "YerleÅŸim" @@ -1349,9 +1357,6 @@ #~ msgid "Power Station" #~ msgstr "Elektrik Ãœreteci" -#~ msgid "Output" -#~ msgstr "Çıktı" - #~ msgid "Industry" #~ msgstr "Sanayi" diff -Nru lincity-ng-2.0/data/locale/zh_CN.po lincity-ng-2.9~git20150314/data/locale/zh_CN.po --- lincity-ng-2.0/data/locale/zh_CN.po 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/locale/zh_CN.po 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,1382 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: LINCITY Chinese\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-12-19 13:48+0100\n" +"PO-Revision-Date: 2013-03-09 16:22-0800\n" +"Last-Translator: Z-Localization <azaytseva@miis.edu>\n" +"Language-Team: Z Localization <LL@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.5\n" +"Language: zh_CN\n" + +#: src/lincity/loadsave.cpp:127 +#, c-format +msgid "Save file <%s> - " +msgstr "ä¿å­˜æ–‡ä»¶ <%s> - " + +#: src/lincity/loadsave.cpp:128 +msgid "Can't open save file!" +msgstr "无法打开ä¿å­˜æ–‡ä»¶ï¼" + +#: src/lincity/loadsave.cpp:288 src/lincity/old_ldsvguts.cpp:127 +#, c-format +msgid "Can't open <%s> (gzipped)" +msgstr "无法打开 <%s> (gzipped)" + +#: src/lincity/fileutil.cpp:232 src/lincity/fileutil.cpp:276 +msgid "Error. Can't find LINCITY_HOME" +msgstr "错误。找ä¸åˆ°LINCITY_HOME" + +#: src/lincity/fileutil.cpp:478 +msgid "Error verifying package. Can't find colour.pal." +msgstr "无法定ä½ç»„åˆ" + +#: src/lincity/fileutil.cpp:491 src/lincity/fileutil.cpp:499 +#, c-format +msgid "Couldn't create the save directory '%s'\n" +msgstr "无法创建ä¿å­˜è·¯å¾„'%s'\n" + +#: src/lincity/fileutil.cpp:516 +#, c-format +msgid "Out of memory: malloc failure\n" +msgstr "内存ä¸è¶³ï¼šå­˜å‚¨å™¨é—®é¢˜\n" + +#: src/lincity/old_ldsvguts.cpp:159 +msgid "Loading scene" +msgstr "加载页é¢" + +#: src/lincity/simulate.cpp:90 +msgid "" +"Upgrading from old game. You have 10 years to build water wells where " +"needed. After, starvation will occur! You should check starvation minimap, " +"and read waterwell help page :-)" +msgstr "" +"从之å‰çš„游æˆåŠ è½½ã€‚你有å年时间在需è¦çš„地方建立水井。之åŽï¼Œé¥¥è’就会到æ¥ï¼ä½ å¯" +"以查看关于饥è’的迷你地图,并阅读水井帮助页é¢:-)" + +#: src/lincity/power.cpp:271 +msgid "You have too many power grids. Join some of them" +msgstr "你有过多的电网。请åˆå¹¶å…¶ä¸­ä¸€äº›" + +#: src/lincity/engine.cpp:149 +msgid "Port must be connected to river all along right side." +msgstr "港å£å¿…须与河æµå³ä¾§è¿žæŽ¥ã€‚" + +#: src/lincity/engine.cpp:161 +msgid "You can't build a water well here: it is all desert." +msgstr "ä½ ä¸èƒ½åœ¨æ­¤å»ºæ°´äº•ï¼šè¿™é‡Œå…¨æ˜¯æ²™æ¼ ã€‚" + +#: src/lincity/engine.cpp:175 +msgid "You can't build a tip here: this area was once a landfill" +msgstr "ä½ ä¸èƒ½åœ¨æ­¤å»ºåžƒåœ¾åœºï¼šè¿™é‡Œæ›¾ç»æ˜¯åžƒåœ¾å¡«åŸ‹åœ°" + +#: src/lincity/engine.cpp:190 +msgid "You can't build a mine here: This area was once a landfill" +msgstr "ä½ ä¸èƒ½åœ¨æ­¤å»ºçŸ¿äº•ï¼šè¿™é‡Œæ›¾ç»æ˜¯åžƒåœ¾å¡«åŸ‹åœ°" + +#: src/lincity/engine.cpp:201 +msgid "You can't build a mine here: there is no ore left at this site" +msgstr "ä½ ä¸èƒ½åœ¨æ­¤å»ºçŸ¿äº•ï¼šè¿™é‡Œæ²¡æœ‰ç•™å®ˆäººå‘˜" + +#: src/lincity/engine.cpp:210 +msgid "You can't build a park here: it is a desert, parks need water" +msgstr "ä½ ä¸èƒ½åœ¨æ­¤å»ºåœè½¦åœºï¼šè¿™é‡Œå…¨æ˜¯æ²™æ¼ ï¼Œåœè½¦åœºéœ€è¦æ°´æº" + +#: src/lincity/engine.cpp:225 +msgid "Too many substations + windmills. You cannot build one more" +msgstr "太多å˜ç”µæ‰€ + 风车。你ä¸èƒ½å†å»ºä¸€ä¸ªäº†" + +#: src/lincity/engine.cpp:234 +msgid "Too many markets. You cannot build one more" +msgstr "市场太多了。你ä¸èƒ½å†å»ºä¸€ä¸ªäº†" + +#: src/lincity/engine.cpp:258 +msgid "" +"ERROR: group does not exist. This should not happen! Please consider filling " +"a bug report to lincity-ng team, with the saved game and what you did :-) " +msgstr "" +"错误:å°ç»„ä¸å­˜åœ¨ã€‚è¿™ä¸åº”该å‘生ï¼è¯·è€ƒè™‘填写故障报告给lincity-ngå¼€å‘团队,包括" +"ä¿å­˜çš„游æˆä»¥åŠä½ çš„步骤 :-)" + +#: src/lincity/engine.cpp:559 +msgid "It's at a power line." +msgstr "它在输电线处。" + +#: src/lincity/engine.cpp:561 +msgid "It's at a solar power station." +msgstr "它在太阳能å‘电站处。" + +#: src/lincity/engine.cpp:563 +msgid "It's at a substation." +msgstr "它在å˜ç”µæ‰€å¤„。" + +#: src/lincity/engine.cpp:565 +msgid "It's at a residential area." +msgstr "它在居民区处。" + +#: src/lincity/engine.cpp:567 +msgid "It's at a farm." +msgstr "它在农场处。" + +#: src/lincity/engine.cpp:569 +msgid "It's at a market." +msgstr "它在市场处。" + +#: src/lincity/engine.cpp:571 +msgid "It's at a track." +msgstr "它在é“轨处。" + +#: src/lincity/engine.cpp:573 +msgid "It's at a coal mine." +msgstr "它在煤矿处。" + +#: src/lincity/engine.cpp:575 +msgid "It's at a railway." +msgstr "它在轨é“处。" + +#: src/lincity/engine.cpp:577 +msgid "It's at a coal power station." +msgstr "它在煤电站处。" + +#: src/lincity/engine.cpp:579 +msgid "It's at a road." +msgstr "它在é“路处。" + +#: src/lincity/engine.cpp:581 +msgid "It's at light industry." +msgstr "它在轻工业处。" + +#: src/lincity/engine.cpp:583 +msgid "It's at a university." +msgstr "它在学校处。" + +#: src/lincity/engine.cpp:585 +msgid "It's at a commune." +msgstr "它在公社处。" + +#: src/lincity/engine.cpp:587 +msgid "It's at a tip." +msgstr "它在垃圾场处。" + +#: src/lincity/engine.cpp:589 +msgid "It's at a port." +msgstr "它在港å£å¤„。" + +#: src/lincity/engine.cpp:591 +msgid "It's at a steel works." +msgstr "它在钢é“厂处。" + +#: src/lincity/engine.cpp:593 +msgid "It's at a recycle centre." +msgstr "它在回收中心处。" + +#: src/lincity/engine.cpp:595 +msgid "It's at a health centre." +msgstr "它在医疗中心处。" + +#: src/lincity/engine.cpp:597 +msgid "It's at a rocket site." +msgstr "它在ç«ç®­åŸºåœ°å¤„。" + +#: src/lincity/engine.cpp:599 +msgid "It's at a windmill." +msgstr "它在风车处。" + +#: src/lincity/engine.cpp:601 +msgid "It's at a school." +msgstr "它在学校处。" + +#: src/lincity/engine.cpp:603 +msgid "It's at a blacksmith." +msgstr "它在é“匠处。" + +#: src/lincity/engine.cpp:605 +msgid "It's at a mill." +msgstr "它在磨åŠå¤„。" + +#: src/lincity/engine.cpp:607 +msgid "It's at a pottery." +msgstr "它在陶器厂处。" + +#: src/lincity/engine.cpp:609 +msgid "It's at a fire station!!!." +msgstr "它在消防站ï¼ï¼ï¼" + +#: src/lincity/engine.cpp:611 +msgid "It's at a sports field!!!." +msgstr "它在田径场ï¼ï¼ï¼" + +#: src/lincity/engine.cpp:613 +msgid "It's at a shanty town." +msgstr "它在贫民窟处。" + +#: src/lincity/engine.cpp:615 +msgid "UNKNOWN!" +msgstr "未知ï¼" + +#: src/lincity/lintypes.cpp:21 +msgid "Empty" +msgstr "空地" + +#: src/lincity/lintypes.cpp:33 +msgid "Power line" +msgstr "输电线" + +#: src/lincity/lintypes.cpp:44 +msgid "Solar PS" +msgstr "太阳能å‘电塔" + +#: src/lincity/lintypes.cpp:55 src/lincity/modules/substation.cpp:93 +msgid "Substation" +msgstr "å˜ç”µæ‰€" + +#: src/lincity/lintypes.cpp:66 +msgid "Residential LL" +msgstr "LL居民区" + +#: src/lincity/lintypes.cpp:77 +msgid "Farm" +msgstr "农场" + +#: src/lincity/lintypes.cpp:88 src/lincity/modules/market.cpp:979 +#: src/lincity-ng/Dialog.cpp:508 +msgid "Market" +msgstr "市场" + +#: src/lincity/lintypes.cpp:99 src/lincity/modules/track.cpp:34 +msgid "Track" +msgstr "é“轨" + +#: src/lincity/lintypes.cpp:110 +msgid "Coalmine" +msgstr "煤矿" + +#: src/lincity/lintypes.cpp:121 +msgid "Railway" +msgstr "é“è·¯" + +#: src/lincity/lintypes.cpp:132 +msgid "Coal PS" +msgstr "煤电å‘电塔" + +#: src/lincity/lintypes.cpp:143 src/lincity/modules/road.cpp:43 +msgid "Road" +msgstr "é“è·¯" + +#: src/lincity/lintypes.cpp:154 +msgid "Lt. Industry" +msgstr "轻工业" + +#: src/lincity/lintypes.cpp:165 src/lincity/modules/university.cpp:59 +msgid "University" +msgstr "大学" + +#: src/lincity/lintypes.cpp:176 src/lincity/modules/commune.cpp:174 +msgid "Commune" +msgstr "公社" + +#: src/lincity/lintypes.cpp:187 +msgid "Ore mine" +msgstr "矿山" + +#: src/lincity/lintypes.cpp:198 +msgid "Rubbish tip" +msgstr "垃圾场" + +#: src/lincity/lintypes.cpp:209 src/lincity/modules/port.cpp:281 +#: src/lincity-ng/Dialog.cpp:562 +msgid "Port" +msgstr "港å£" + +#: src/lincity/lintypes.cpp:220 +msgid "Hv. Industry" +msgstr "é‡å·¥ä¸š" + +#: src/lincity/lintypes.cpp:231 +msgid "Park" +msgstr "åœè½¦åœº" + +#: src/lincity/lintypes.cpp:242 src/lincity-ng/MpsInterface.cpp:519 +msgid "Recycle" +msgstr "回收中心" + +#: src/lincity/lintypes.cpp:253 src/lincity/modules/water.cpp:17 +#: src/lincity/modules/residence.cpp:264 +msgid "Water" +msgstr "æ°´æº" + +#: src/lincity/lintypes.cpp:264 +msgid "Health centre" +msgstr "医疗中心" + +#: src/lincity/lintypes.cpp:275 +msgid "Rocket pad" +msgstr "ç«ç®­å‘å°„å°" + +#: src/lincity/lintypes.cpp:286 src/lincity/modules/windmill.cpp:74 +#: src/lincity-ng/MpsInterface.cpp:509 +msgid "Windmill" +msgstr "风车" + +#: src/lincity/lintypes.cpp:297 src/lincity/modules/monument.cpp:51 +msgid "Monument" +msgstr "纪念碑" + +#: src/lincity/lintypes.cpp:308 src/lincity/modules/school.cpp:43 +msgid "School" +msgstr "学校" + +#: src/lincity/lintypes.cpp:319 src/lincity/modules/blacksmith.cpp:91 +msgid "Blacksmith" +msgstr "é“匠" + +#: src/lincity/lintypes.cpp:330 +msgid "Mill" +msgstr "磨åŠ" + +#: src/lincity/lintypes.cpp:341 src/lincity/modules/pottery.cpp:105 +msgid "Pottery" +msgstr "陶器厂" + +#: src/lincity/lintypes.cpp:352 +msgid "Fire sta'n" +msgstr "消防站" + +#: src/lincity/lintypes.cpp:363 src/lincity/modules/cricket.cpp:92 +msgid "Sports field" +msgstr "田径场" + +#: src/lincity/lintypes.cpp:375 +msgid "Burnt" +msgstr "化石厂" + +#: src/lincity/lintypes.cpp:387 +msgid "Shanty town" +msgstr "贫民区" + +#: src/lincity/lintypes.cpp:399 src/lincity/modules/residence.cpp:283 +#: src/lincity-ng/MpsInterface.cpp:383 src/lincity-ng/EconomyGraph.cpp:134 +msgid "Fire" +msgstr "消防站" + +#: src/lincity/lintypes.cpp:411 +msgid "Used" +msgstr "旧的" + +#: src/lincity/lintypes.cpp:422 +msgid "Residential ML" +msgstr "ML居民区" + +#: src/lincity/lintypes.cpp:433 +msgid "Residential HL" +msgstr "HL居民区" + +#: src/lincity/lintypes.cpp:444 +msgid "Residential LH" +msgstr "LH居民区" + +#: src/lincity/lintypes.cpp:455 +msgid "Residential MH" +msgstr "MH居民区" + +#: src/lincity/lintypes.cpp:466 +msgid "Residential HH" +msgstr "HH居民区" + +#: src/lincity/lintypes.cpp:477 +msgid "Water well" +msgstr "水井" + +#: src/lincity/lintypes.cpp:489 +msgid "Desert" +msgstr "沙漠" + +#: src/lincity/lintypes.cpp:501 +msgid "Tree" +msgstr "æ ‘" + +#: src/lincity/lintypes.cpp:514 +msgid "Trees" +msgstr "树木" + +#: src/lincity/lintypes.cpp:527 +msgid "Forest" +msgstr "森林" + +#: src/lincity/lclib.cpp:15 +msgid "Jan" +msgstr "一月" + +#: src/lincity/lclib.cpp:15 +msgid "Feb" +msgstr "二月" + +#: src/lincity/lclib.cpp:15 +msgid "Mar" +msgstr "三月" + +#: src/lincity/lclib.cpp:15 +msgid "Apr" +msgstr "四月" + +#: src/lincity/lclib.cpp:16 +msgid "May" +msgstr "五月" + +#: src/lincity/lclib.cpp:16 +msgid "Jun" +msgstr "六月" + +#: src/lincity/lclib.cpp:16 +msgid "Jul" +msgstr "七月" + +#: src/lincity/lclib.cpp:16 +msgid "Aug" +msgstr "八月" + +#: src/lincity/lclib.cpp:17 +msgid "Sep" +msgstr "ä¹æœˆ" + +#: src/lincity/lclib.cpp:17 +msgid "Oct" +msgstr "å月" + +#: src/lincity/lclib.cpp:17 +msgid "Nov" +msgstr "å一月" + +#: src/lincity/lclib.cpp:17 +msgid "Dec" +msgstr "å二月" + +#: src/lincity/modules/waterwell.cpp:56 +msgid "Water_well" +msgstr "水井" + +#: src/lincity/modules/waterwell.cpp:59 src/lincity/modules/residence.cpp:288 +#: src/lincity-ng/MpsInterface.cpp:391 +msgid "Pollution" +msgstr "污染" + +#: src/lincity/modules/waterwell.cpp:62 src/lincity/modules/water.cpp:20 +#: src/lincity/modules/commune.cpp:179 src/lincity/modules/commune.cpp:181 +#: src/lincity/modules/commune.cpp:183 src/lincity/modules/commune.cpp:185 +#: src/lincity-ng/MpsInterface.cpp:382 src/lincity-ng/MpsInterface.cpp:385 +#: src/lincity-ng/MpsInterface.cpp:388 +msgid "Yes" +msgstr "是" + +#: src/lincity/modules/waterwell.cpp:63 +msgid "Drinkable" +msgstr "å¯ä»¥é¥®ç”¨çš„" + +#: src/lincity/modules/health_centre.cpp:58 +msgid "Health Centre" +msgstr "医疗中心" + +#: src/lincity/modules/health_centre.cpp:60 +#: src/lincity/modules/rocket_pad.cpp:194 src/lincity/modules/recycle.cpp:149 +#: src/lincity/modules/mill.cpp:94 src/lincity/modules/university.cpp:65 +#: src/lincity/modules/cricket.cpp:94 src/lincity/modules/pottery.cpp:109 +#: src/lincity/modules/blacksmith.cpp:96 +#: src/lincity/modules/firestation.cpp:111 src/lincity/modules/school.cpp:48 +msgid "Inventory" +msgstr "存货" + +#: src/lincity/modules/health_centre.cpp:61 +#: src/lincity/modules/rocket_pad.cpp:195 src/lincity/modules/market.cpp:984 +#: src/lincity/modules/road.cpp:47 src/lincity/modules/rail.cpp:51 +#: src/lincity/modules/coal_power.cpp:100 +#: src/lincity/modules/university.cpp:66 src/lincity/modules/cricket.cpp:95 +#: src/lincity/modules/track.cpp:38 src/lincity/modules/pottery.cpp:110 +#: src/lincity/modules/firestation.cpp:112 src/lincity/modules/school.cpp:49 +msgid "Jobs" +msgstr "工作" + +#: src/lincity/modules/health_centre.cpp:62 +#: src/lincity/modules/rocket_pad.cpp:196 src/lincity/modules/market.cpp:986 +#: src/lincity/modules/port.cpp:298 src/lincity/modules/road.cpp:49 +#: src/lincity/modules/rail.cpp:53 src/lincity/modules/mill.cpp:95 +#: src/lincity/modules/university.cpp:67 src/lincity/modules/cricket.cpp:96 +#: src/lincity/modules/track.cpp:40 src/lincity/modules/pottery.cpp:111 +#: src/lincity/modules/blacksmith.cpp:97 +#: src/lincity/modules/firestation.cpp:113 src/lincity/modules/school.cpp:50 +#: src/lincity-ng/MpsInterface.cpp:451 +msgid "Goods" +msgstr "物å“" + +#: src/lincity/modules/rocket_pad.cpp:188 +msgid "Rocket Pad" +msgstr "ç«ç®­å‘å°„å°" + +#: src/lincity/modules/rocket_pad.cpp:191 +msgid "Completion" +msgstr "完æˆ" + +#: src/lincity/modules/rocket_pad.cpp:197 src/lincity/modules/market.cpp:988 +#: src/lincity/modules/port.cpp:302 src/lincity/modules/road.cpp:51 +#: src/lincity/modules/rail.cpp:55 src/lincity/modules/light_industry.cpp:287 +#: src/lincity/modules/commune.cpp:184 src/lincity/modules/track.cpp:42 +msgid "Steel" +msgstr "é’¢é“" + +#: src/lincity/modules/windmill.cpp:75 src/lincity/modules/recycle.cpp:147 +#: src/lincity/modules/coal_power.cpp:101 +#: src/lincity/modules/organic_farm.cpp:228 +#: src/lincity/modules/solar_power.cpp:57 +msgid "Tech" +msgstr "科技" + +#: src/lincity/modules/windmill.cpp:79 +msgid "Local Status" +msgstr "本地状况" + +#: src/lincity/modules/windmill.cpp:82 +msgid "Prod." +msgstr "产å“" + +#: src/lincity/modules/windmill.cpp:85 src/lincity/modules/windmill.cpp:98 +#: src/lincity/modules/substation.cpp:110 +msgid "Demand" +msgstr "è¦æ±‚" + +#: src/lincity/modules/windmill.cpp:89 src/lincity/modules/substation.cpp:101 +msgid "Grid Status" +msgstr "电网状况" + +#: src/lincity/modules/windmill.cpp:92 src/lincity/modules/substation.cpp:104 +msgid "T. Cap." +msgstr "T.人å£" + +#: src/lincity/modules/windmill.cpp:95 src/lincity/modules/substation.cpp:107 +msgid "A. Cap." +msgstr "A.人å£" + +#: src/lincity/modules/windmill.cpp:101 src/lincity/modules/coal_power.cpp:102 +#: src/lincity/modules/substation.cpp:113 +#: src/lincity/modules/power_line.cpp:49 +#: src/lincity/modules/solar_power.cpp:58 +msgid "Grid ID" +msgstr "电网å·ç " + +#: src/lincity/modules/water.cpp:20 src/lincity/modules/commune.cpp:179 +#: src/lincity/modules/commune.cpp:181 src/lincity/modules/commune.cpp:183 +#: src/lincity/modules/commune.cpp:185 src/lincity-ng/MpsInterface.cpp:382 +#: src/lincity-ng/MpsInterface.cpp:385 src/lincity-ng/MpsInterface.cpp:388 +msgid "No" +msgstr "å·ç " + +#: src/lincity/modules/water.cpp:21 +msgid "Navigable" +msgstr "å¯é©¾é©¶çš„" + +#: src/lincity/modules/recycle.cpp:138 +msgid "Recycling" +msgstr "å¯å›žæ”¶" + +#: src/lincity/modules/recycle.cpp:139 +msgid "Center" +msgstr "中心" + +#: src/lincity/modules/recycle.cpp:142 +#: src/lincity/modules/heavy_industry.cpp:290 src/lincity/modules/mill.cpp:92 +#: src/lincity/modules/light_industry.cpp:288 +#: src/lincity/modules/university.cpp:68 src/lincity/modules/pottery.cpp:107 +#: src/lincity/modules/blacksmith.cpp:94 src/lincity/modules/school.cpp:52 +msgid "Capacity" +msgstr "容é‡" + +#: src/lincity/modules/recycle.cpp:144 src/lincity/modules/residence.cpp:263 +#: src/lincity/modules/residence.cpp:267 src/lincity/modules/residence.cpp:270 +#: src/lincity/modules/residence.cpp:273 src/lincity/modules/residence.cpp:279 +#: src/lincity/modules/residence.cpp:282 src/lincity/modules/residence.cpp:285 +#: src/lincity/modules/light_industry.cpp:280 +#: src/lincity/modules/organic_farm.cpp:221 +msgid "YES" +msgstr "是" + +#: src/lincity/modules/recycle.cpp:144 src/lincity/modules/residence.cpp:263 +#: src/lincity/modules/residence.cpp:267 src/lincity/modules/residence.cpp:270 +#: src/lincity/modules/residence.cpp:273 src/lincity/modules/residence.cpp:279 +#: src/lincity/modules/residence.cpp:282 src/lincity/modules/residence.cpp:285 +#: src/lincity/modules/heavy_industry.cpp:281 +#: src/lincity/modules/light_industry.cpp:280 +msgid "NO" +msgstr "å¦" + +#: src/lincity/modules/recycle.cpp:145 src/lincity/modules/residence.cpp:271 +#: src/lincity/modules/heavy_industry.cpp:284 +#: src/lincity/modules/light_industry.cpp:281 +#: src/lincity/modules/organic_farm.cpp:225 +msgid "Power" +msgstr "电力" + +#: src/lincity/modules/recycle.cpp:150 +#: src/lincity/modules/heavy_industry.cpp:288 +#: src/lincity/modules/market.cpp:987 src/lincity/modules/port.cpp:294 +#: src/lincity/modules/road.cpp:50 src/lincity/modules/rail.cpp:54 +#: src/lincity/modules/light_industry.cpp:286 +#: src/lincity/modules/commune.cpp:182 src/lincity/modules/track.cpp:41 +#: src/lincity/modules/pottery.cpp:112 +msgid "Ore" +msgstr "矿石" + +#: src/lincity/modules/recycle.cpp:151 src/lincity/modules/market.cpp:989 +#: src/lincity/modules/road.cpp:52 src/lincity/modules/rail.cpp:56 +#: src/lincity/modules/commune.cpp:186 src/lincity/modules/track.cpp:43 +msgid "Waste" +msgstr "废物" + +#: src/lincity/modules/coalmine.cpp:132 +msgid "Coal Mine" +msgstr "矿山" + +#: src/lincity/modules/coalmine.cpp:135 src/lincity/modules/oremine.cpp:144 +msgid "Stock" +msgstr "存货" + +#: src/lincity/modules/coalmine.cpp:138 src/lincity/modules/coalmine.cpp:140 +#: src/lincity/modules/oremine.cpp:147 +msgid "Reserve" +msgstr "ä¿å­˜" + +#: src/lincity/modules/coalmine.cpp:140 +msgid "EMPTY" +msgstr "空地" + +#: src/lincity/modules/residence.cpp:255 +msgid "Residence" +msgstr "居民区" + +#: src/lincity/modules/residence.cpp:259 +msgid "People" +msgstr "人群" + +#: src/lincity/modules/residence.cpp:268 +msgid "Fed" +msgstr "è”邦" + +#: src/lincity/modules/residence.cpp:274 +msgid "Employed" +msgstr "å—雇用的" + +#: src/lincity/modules/residence.cpp:276 src/lincity-ng/MpsInterface.cpp:396 +msgid "good" +msgstr "好的" + +#: src/lincity/modules/residence.cpp:276 +msgid "poor" +msgstr "差的" + +#: src/lincity/modules/residence.cpp:277 +msgid "Job" +msgstr "工作" + +#: src/lincity/modules/residence.cpp:280 +msgid "Health Cvr" +msgstr "医疗中心" + +#: src/lincity/modules/residence.cpp:286 src/lincity-ng/MpsInterface.cpp:389 +#: src/lincity-ng/MpsInterface.cpp:517 +msgid "Sport" +msgstr "è¿åŠ¨" + +#: src/lincity/modules/monument.cpp:57 +msgid "Wisdom Bestowed" +msgstr "拥有智慧" + +#: src/lincity/modules/monument.cpp:61 +#, c-format +msgid "% Complete" +msgstr "% 完æˆ" + +#: src/lincity/modules/heavy_industry.cpp:270 +msgid "Heavy" +msgstr "é‡" + +#: src/lincity/modules/heavy_industry.cpp:271 +#: src/lincity/modules/light_industry.cpp:276 +msgid "Industry" +msgstr "工业" + +#: src/lincity/modules/heavy_industry.cpp:276 +#: src/lincity/modules/heavy_industry.cpp:289 +#: src/lincity/modules/market.cpp:985 src/lincity/modules/port.cpp:290 +#: src/lincity/modules/road.cpp:48 src/lincity/modules/rail.cpp:52 +#: src/lincity/modules/coal_power.cpp:85 src/lincity/modules/coal_power.cpp:99 +#: src/lincity/modules/mill.cpp:97 src/lincity/modules/commune.cpp:180 +#: src/lincity/modules/track.cpp:39 src/lincity/modules/pottery.cpp:113 +#: src/lincity/modules/blacksmith.cpp:98 src/lincity-ng/MpsInterface.cpp:447 +msgid "Coal" +msgstr "矿山" + +#: src/lincity/modules/heavy_industry.cpp:278 +msgid "Grid" +msgstr "电网" + +#: src/lincity/modules/heavy_industry.cpp:286 +#: src/lincity/modules/light_industry.cpp:283 +msgid "Output" +msgstr "产出" + +#: src/lincity/modules/heavy_industry.cpp:287 +#: src/lincity/modules/light_industry.cpp:285 +msgid "Store" +msgstr "商店" + +#: src/lincity/modules/market.cpp:983 src/lincity/modules/port.cpp:286 +#: src/lincity/modules/road.cpp:46 src/lincity/modules/rail.cpp:50 +#: src/lincity/modules/mill.cpp:96 src/lincity/modules/track.cpp:37 +msgid "Food" +msgstr "食å“" + +#: src/lincity/modules/port.cpp:306 src/lincity-ng/MpsInterface.cpp:535 +msgid "Total" +msgstr "总计" + +#: src/lincity/modules/rail.cpp:47 +msgid "Rail" +msgstr "é“è·¯" + +#: src/lincity/modules/coal_power.cpp:86 +#: src/lincity/modules/solar_power.cpp:44 +msgid "Power Station" +msgstr "å‘电厂" + +#: src/lincity/modules/coal_power.cpp:90 +#: src/lincity/modules/solar_power.cpp:48 +msgid "Max Output" +msgstr "最大产出" + +#: src/lincity/modules/coal_power.cpp:95 +#: src/lincity/modules/solar_power.cpp:53 +msgid "Current Output" +msgstr "现有产出" + +#: src/lincity/modules/substation.cpp:97 +msgid "Local Demand" +msgstr "本地è¦æ±‚" + +#: src/lincity/modules/mill.cpp:90 +msgid "Textile Mill" +msgstr "纺织厂" + +#: src/lincity/modules/oremine.cpp:141 +msgid "Ore Mine" +msgstr "矿山" + +#: src/lincity/modules/power_line.cpp:46 +msgid "Power Line" +msgstr "输电线" + +#: src/lincity/modules/light_industry.cpp:275 +msgid "Light" +msgstr "è½»" + +#: src/lincity/modules/university.cpp:61 +msgid "Tech Produced" +msgstr "科技产å“" + +#: src/lincity/modules/tip.cpp:100 +msgid "Landfill" +msgstr "垃圾填埋地" + +#: src/lincity/modules/tip.cpp:103 +msgid "Last Month" +msgstr "上月" + +#: src/lincity/modules/tip.cpp:104 +msgid "Tons" +msgstr "å¨æ•°" + +#: src/lincity/modules/tip.cpp:105 +msgid "Percent" +msgstr "百分比" + +#: src/lincity/modules/tip.cpp:107 +#, c-format +msgid "% Filled" +msgstr "% 完æˆ" + +#: src/lincity/modules/commune.cpp:177 +msgid "Activity" +msgstr "活动" + +#: src/lincity/modules/firestation.cpp:109 +msgid "Fire Station" +msgstr "消防站" + +#: src/lincity/modules/organic_farm.cpp:217 +msgid "Organic Farm" +msgstr "有机农场" + +#: src/lincity/modules/organic_farm.cpp:223 +msgid "NO " +msgstr "å¦" + +#: src/lincity/modules/organic_farm.cpp:231 +msgid "Prod" +msgstr "产å“" + +#: src/lincity/modules/organic_farm.cpp:237 +msgid "Debug info" +msgstr "调试信æ¯" + +#: src/lincity/modules/organic_farm.cpp:238 +msgid "max with power&water" +msgstr "电力åŠæ°´æºæ»¡è½½" + +#: src/lincity/modules/organic_farm.cpp:239 +msgid "N tiles with water" +msgstr "Nå—æ°´æº" + +#: src/lincity/modules/organic_farm.cpp:240 +msgid "Current production" +msgstr "现有产出" + +#: src/lincity/modules/school.cpp:45 +msgid "Lessons Learned" +msgstr "ç»éªŒæ•™è®­" + +#: src/lincity/modules/solar_power.cpp:43 +msgid "Solar" +msgstr "太阳能" + +#: src/lincity-ng/Dialog.cpp:174 +msgid "Launchsite" +msgstr "å‘射点" + +#: src/lincity-ng/Dialog.cpp:353 src/lincity-ng/Dialog.cpp:354 +msgid "----- IN TEST MODE -------" +msgstr "测试模å¼" + +#: src/lincity-ng/Dialog.cpp:356 +#, c-format +msgid "Game statistics from LinCity-NG Version %s" +msgstr "æ¥è‡ªLinCity-NG的游æˆæ•°æ® %s" + +#: src/lincity-ng/Dialog.cpp:360 +#, c-format +msgid "Initial loaded scene - %s" +msgstr "åŽŸå§‹åŠ è½½é¡µé¢ - %s" + +#: src/lincity-ng/Dialog.cpp:365 +#, c-format +msgid "Economy is sustainable" +msgstr "å¯æŒç»­å‘展的ç»æµŽ" + +#: src/lincity-ng/Dialog.cpp:369 +#, c-format +msgid "Population %d of which %d are not housed." +msgstr "äººå£ %d 其中 %d 无家å¯å½’" + +#: src/lincity-ng/Dialog.cpp:374 +#, c-format +msgid "Max population %d Number evacuated %d Total births %d" +msgstr "æœ€å¤§äººå£ %d 转移人数 %d 出生率 %d" + +#: src/lincity-ng/Dialog.cpp:379 +#, c-format +msgid "Date %s %04d Money %8d Tech-level %5.1f (%5.1f)" +msgstr "日期 %s %04d 钱数 %8d 技术水平 %5.1f(%5.1f)" + +#: src/lincity-ng/Dialog.cpp:386 +#, c-format +msgid "Deaths by starvation %7d History %8.3f" +msgstr "饥è’死亡率 %7d 历å²è®°å½• %8.3f" + +#: src/lincity-ng/Dialog.cpp:391 +#, c-format +msgid "Deaths from pollution %7d History %8.3f" +msgstr "人å£æ­»äº¡çŽ‡ %7d 历å²è®°å½• %8.3f" + +#: src/lincity-ng/Dialog.cpp:395 +#, c-format +msgid "Years of unemployment %7d History %8.3f" +msgstr "年失业率 %7d 历å²è®°å½• %8.3f" + +#: src/lincity-ng/Dialog.cpp:399 +#, c-format +msgid "Rockets launched %2d Successful launches %2d" +msgstr "å‘å°„ç«ç®­æ•° %2d æˆåŠŸå‘射率 %2d" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Residences" +msgstr "å±…ä½çŽ‡" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Markets" +msgstr "市场" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Farms" +msgstr "农场" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Water wells" +msgstr "水井" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Monuments" +msgstr "纪念碑" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Schools" +msgstr "学校" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Universities" +msgstr "大学" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Fire stations" +msgstr "消防站" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Parks" +msgstr "åœè½¦åœº" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Sports fields" +msgstr "田径场" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Health centres" +msgstr "医疗中心" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Tips" +msgstr "垃圾场" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Shanties" +msgstr "贫民区" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Windmills" +msgstr "风车" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Coal powers" +msgstr "矿石" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Solar powers" +msgstr "太阳能" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Substations" +msgstr "å˜ç”µæ‰€" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Power lines" +msgstr "输电线" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Ports" +msgstr "港å£" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Tracks" +msgstr "é“轨" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Roads" +msgstr "é“è·¯" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Rail" +msgstr "é“è·¯" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Potteries" +msgstr "陶器厂" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Blacksmiths" +msgstr "é“匠" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Mills" +msgstr "磨åŠ" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Light inds" +msgstr "轻工业" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Heavy inds" +msgstr "é‡å·¥ä¸š" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Recyclers" +msgstr "回收中心" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Coal mines" +msgstr "煤矿" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Ore mines" +msgstr "矿山" + +#: src/lincity-ng/MpsInterface.cpp:500 +msgid "Communes" +msgstr "公社" + +#: src/lincity-ng/GameView.cpp:239 +msgid "Minimap: outline map" +msgstr "迷你地图:概è¦å›¾" + +#: src/lincity-ng/GameView.cpp:242 +msgid "Minimap: unemployment" +msgstr "迷你地图:失业" + +#: src/lincity-ng/GameView.cpp:245 +msgid "Minimap: pollution" +msgstr "迷你地图:污染" + +#: src/lincity-ng/GameView.cpp:248 +msgid "Minimap: nourishments" +msgstr "迷你地图:食物" + +#: src/lincity-ng/GameView.cpp:251 +msgid "Minimap: power supply" +msgstr "迷你地图:能æºä¾›ç»™" + +#: src/lincity-ng/GameView.cpp:254 +msgid "Minimap: firedepartment cover" +msgstr "迷你地图:消防站覆盖" + +#: src/lincity-ng/GameView.cpp:257 +msgid "Minimap: sport cover" +msgstr "迷你地图:è¿åŠ¨åœºè¦†ç›–" + +#: src/lincity-ng/GameView.cpp:260 +msgid "Minimap: medical care" +msgstr "迷你地图:医疗中心" + +#: src/lincity-ng/GameView.cpp:263 +msgid "Minimap: coal depots" +msgstr "迷你地图:矿产" + +#: src/lincity-ng/GameView.cpp:266 +msgid "Minimap: traffic density" +msgstr "迷你地图:交通密集" + +#: src/lincity-ng/GameView.cpp:1587 +msgid "Estimated Bulldoze Cost: " +msgstr "预计推土机æˆæœ¬ï¼š" + +#: src/lincity-ng/GameView.cpp:1589 +msgid "Bulldoze Cost: " +msgstr "推土机æˆæœ¬ï¼š" + +#: src/lincity-ng/GameView.cpp:1592 src/lincity-ng/GameView.cpp:1623 +#: src/lincity-ng/ScreenInterface.cpp:275 +msgid "$" +msgstr "$" + +#: src/lincity-ng/GameView.cpp:1594 +msgid "n/a" +msgstr "ä¸å¯ç”¨" + +#: src/lincity-ng/GameView.cpp:1612 +msgid "Query Tool: Show information about selected building." +msgstr "问题工具:显示所选建筑信æ¯ã€‚" + +#: src/lincity-ng/GameView.cpp:1616 +msgid "Bulldozer: remove building -price varies-" +msgstr "推土机:清除" + +#: src/lincity-ng/GameView.cpp:1623 +msgid ": Cost to build " +msgstr ":建设æˆæœ¬" + +#: src/lincity-ng/GameView.cpp:1624 +msgid ", to bulldoze " +msgstr "使用推土机" + +#: src/lincity-ng/GameView.cpp:1624 src/lincity-ng/GameView.cpp:1627 +msgid "$." +msgstr "$" + +#: src/lincity-ng/GameView.cpp:1626 +msgid " To build " +msgstr "建造" + +#: src/lincity-ng/GameView.cpp:1626 +msgid " of them " +msgstr "他们的" + +#: src/lincity-ng/GameView.cpp:1627 +msgid "will cost about " +msgstr "将花费" + +#: src/lincity-ng/MainMenu.cpp:199 +msgid "empty" +msgstr "空地" + +#: src/lincity-ng/MpsInterface.cpp:227 +msgid "build something here" +msgstr "在此建设" + +#: src/lincity-ng/MpsInterface.cpp:229 +msgid "no further information available" +msgstr "没有进一步消æ¯" + +#: src/lincity-ng/MpsInterface.cpp:381 +msgid "Coverage" +msgstr "覆盖" + +#: src/lincity-ng/MpsInterface.cpp:386 +msgid "Health" +msgstr "医疗" + +#: src/lincity-ng/MpsInterface.cpp:394 +msgid "clear" +msgstr "清除" + +#: src/lincity-ng/MpsInterface.cpp:398 +msgid "fair" +msgstr "一般" + +#: src/lincity-ng/MpsInterface.cpp:400 +msgid "smelly" +msgstr "å‘臭的" + +#: src/lincity-ng/MpsInterface.cpp:402 +msgid "smokey" +msgstr "有烟的" + +#: src/lincity-ng/MpsInterface.cpp:404 +msgid "smoggy" +msgstr "有雾的" + +#: src/lincity-ng/MpsInterface.cpp:406 +msgid "bad" +msgstr "åçš„" + +#: src/lincity-ng/MpsInterface.cpp:408 +msgid "very bad" +msgstr "很差的" + +#: src/lincity-ng/MpsInterface.cpp:410 +msgid "death!" +msgstr "死亡ï¼" + +#: src/lincity-ng/MpsInterface.cpp:415 +msgid "Bulldoze Cost" +msgstr "推土机æˆæœ¬" + +#: src/lincity-ng/MpsInterface.cpp:421 +msgid "N/A" +msgstr "ä¸å¯ç”¨" + +#: src/lincity-ng/MpsInterface.cpp:439 +msgid "Tax Income" +msgstr "税收收入" + +#: src/lincity-ng/MpsInterface.cpp:443 +msgid "Income" +msgstr "收入" + +#: src/lincity-ng/MpsInterface.cpp:455 +msgid "Export" +msgstr "出å£" + +#: src/lincity-ng/MpsInterface.cpp:459 +msgid "Expenses" +msgstr "花费" + +#: src/lincity-ng/MpsInterface.cpp:463 +msgid "Unemp." +msgstr "ä¸ç©ºçš„" + +#: src/lincity-ng/MpsInterface.cpp:467 +msgid "Transport" +msgstr "交通" + +#: src/lincity-ng/MpsInterface.cpp:471 +msgid "Imports" +msgstr "è¿›å£" + +#: src/lincity-ng/MpsInterface.cpp:475 +msgid "Others" +msgstr "其他" + +#: src/lincity-ng/MpsInterface.cpp:480 +msgid "Net" +msgstr "网" + +#: src/lincity-ng/MpsInterface.cpp:492 +msgid "Other Costs" +msgstr "其他花销" + +#: src/lincity-ng/MpsInterface.cpp:497 +msgid "For year" +msgstr "æ¯å¹´" + +#: src/lincity-ng/MpsInterface.cpp:501 +msgid "Interest" +msgstr "利æ¯" + +#: src/lincity-ng/MpsInterface.cpp:503 +msgid "Schools" +msgstr "学校" + +#: src/lincity-ng/MpsInterface.cpp:505 +msgid "Univers." +msgstr "大学" + +#: src/lincity-ng/MpsInterface.cpp:507 +msgid "Deaths" +msgstr "死亡" + +#: src/lincity-ng/MpsInterface.cpp:511 +msgid "Hospital" +msgstr "医院" + +#: src/lincity-ng/MpsInterface.cpp:513 +msgid "Rockets" +msgstr "ç«ç®­" + +#: src/lincity-ng/MpsInterface.cpp:515 +msgid "Fire Stn" +msgstr "消防站" + +#: src/lincity-ng/MpsInterface.cpp:533 +msgid "Population" +msgstr "人å£" + +#: src/lincity-ng/MpsInterface.cpp:536 +msgid "Housed" +msgstr "有家的" + +#: src/lincity-ng/MpsInterface.cpp:537 +msgid "Homeless" +msgstr "无家的" + +#: src/lincity-ng/MpsInterface.cpp:538 +msgid "Shanties" +msgstr "贫民区" + +#: src/lincity-ng/MpsInterface.cpp:539 +msgid "Unn Dths" +msgstr "死亡人数" + +#: src/lincity-ng/MpsInterface.cpp:540 +msgid "Unemployment" +msgstr "失业" + +#: src/lincity-ng/MpsInterface.cpp:541 +msgid "Claims" +msgstr "宣告" + +#: src/lincity-ng/MpsInterface.cpp:542 src/lincity-ng/MpsInterface.cpp:547 +msgid "Rate" +msgstr "比例" + +#: src/lincity-ng/MpsInterface.cpp:544 +msgid "Starvation" +msgstr "饥è’" + +#: src/lincity-ng/MpsInterface.cpp:545 +msgid "Cases" +msgstr "案例" + +#: src/lincity-ng/EconomyGraph.cpp:124 +msgid "Mining" +msgstr "采矿" + +#: src/lincity-ng/EconomyGraph.cpp:126 +msgid "Trade" +msgstr "贸易" + +#: src/lincity-ng/EconomyGraph.cpp:128 +msgid "Money" +msgstr "金钱" + +#: src/lincity-ng/EconomyGraph.cpp:130 +msgid "Popul." +msgstr "人å£" + +#: src/lincity-ng/EconomyGraph.cpp:132 +msgid "Techn." +msgstr "科技" + +#: src/lincity-ng/EconomyGraph.cpp:137 +msgid "Economy Overview:" +msgstr "ç»æµŽæ¦‚况:" + +#: src/lincity-ng/EconomyGraph.cpp:140 +msgid "Sustainability:" +msgstr "å¯æŒç»­ï¼š" + +#: src/lincity-ng/EconomyGraph.cpp:143 +msgid "Frames per Second:" +msgstr "æ¯ç§’ç”»é¢æ•°" + +#: src/lincity-ng/EconomyGraph.cpp:219 +msgid "You lose." +msgstr "你输了。" + +#: src/lincity-ng/ButtonPanel.cpp:200 +msgid "Query Tool" +msgstr "问题工具" + +#: src/lincity-ng/ButtonPanel.cpp:201 +msgid "Bulldozer" +msgstr "推土机" + +#: src/lincity-ng/ButtonPanel.cpp:203 +msgid "Residential: 50 denizens, low birthrate, high deathrate" +msgstr "居民的:50个居民,低出生率,高死亡率" + +#: src/lincity-ng/ButtonPanel.cpp:204 +msgid "Residential: 100 denizens, high birthrate, low deathrate" +msgstr "居民的:100个居民,高出生率,低死亡率" + +#: src/lincity-ng/ButtonPanel.cpp:205 +msgid "Residential: 200 denizens, high birthrate, high deathrate" +msgstr "居民的:200个居民,高出生率,低死亡率" + +#: src/lincity-ng/ButtonPanel.cpp:206 +msgid "Residential: 100 denizens, low birthrate, high deathrate" +msgstr "居民的:100个居民,低出生率,高死亡率" + +#: src/lincity-ng/ButtonPanel.cpp:207 +msgid "Residential: 200 denizens, high birthrate, low deathrate" +msgstr "居民的:200个居民,高出生率,低死亡率" + +#: src/lincity-ng/ButtonPanel.cpp:208 +msgid "Residential: 400 denizens, high birthrate, high deathrate" +msgstr "居民的:400个居民,高出生率,低死亡率" + +#: src/lincity-ng/ButtonPanel.cpp:217 +msgid " [Click right for help.]" +msgstr "ã€å•å‡»å³é”®å¸®åŠ©ã€‘" + +#: src/lincity-ng/ButtonPanel.cpp:245 src/lincity-ng/ButtonPanel.cpp:288 +#, c-format +msgid "%s (Techlevel %.1f required.)" +msgstr "%s (科技水平 %.1f如果è¦æ±‚.)" + +#: src/lincity-ng/ButtonPanel.cpp:254 +#, c-format +msgid "%s is disabled (loaded old game)." +msgstr "%s ä¸å¯ç”¨ (加载历å²æ¸¸æˆ)" + +#: src/lincity-ng/ScreenInterface.cpp:264 +msgid "MM" +msgstr "MM" diff -Nru lincity-ng-2.0/data/messages/blacksmithup.mes lincity-ng-2.9~git20150314/data/messages/blacksmithup.mes --- lincity-ng-2.0/data/messages/blacksmithup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/blacksmithup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Blacksmiths +You have reached the tech level which enables +you to build blacksmiths. +Blacksmiths use jobs and steel to make goods. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/coalmineup.mes lincity-ng-2.9~git20150314/data/messages/coalmineup.mes --- lincity-ng-2.0/data/messages/coalmineup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/coalmineup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Coal mine +You have reached the tech level which enables +you to dig deep coal mines. +See the help screen for more information on +coal mines and coal surveys. diff -Nru lincity-ng-2.0/data/messages/coalpowerup.mes lincity-ng-2.9~git20150314/data/messages/coalpowerup.mes --- lincity-ng-2.0/data/messages/coalpowerup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/coalpowerup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +Coal fired power stations +You have reached the tech level which enables +you to build coal fired power stations. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/cricketup.mes lincity-ng-2.9~git20150314/data/messages/cricketup.mes --- lincity-ng-2.0/data/messages/cricketup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/cricketup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +Invention - Cricket +Your people have invented cricket. +Cricket pitches use a few jobs and goods +and make people in the surrounding areas +(about 10 units in each direction) happier. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/didcoalsurvey.mes lincity-ng-2.9~git20150314/data/messages/didcoalsurvey.mes --- lincity-ng-2.0/data/messages/didcoalsurvey.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/didcoalsurvey.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +Coal Survey Complete +Another player has conducted a coal +survey on this map. diff -Nru lincity-ng-2.0/data/messages/error.mes lincity-ng-2.9~git20150314/data/messages/error.mes --- lincity-ng-2.0/data/messages/error.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/error.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,2 @@ +Can't find the required message page. +The wanted file name has been written to stderr. diff -Nru lincity-ng-2.0/data/messages/fire.mes lincity-ng-2.9~git20150314/data/messages/fire.mes --- lincity-ng-2.0/data/messages/fire.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/fire.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,2 @@ +A Fire has started +You better go and look for it diff -Nru lincity-ng-2.0/data/messages/firestationup.mes lincity-ng-2.9~git20150314/data/messages/firestationup.mes --- lincity-ng-2.0/data/messages/firestationup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/firestationup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,8 @@ +Fire Stations +You have reached the tech level which enables +you to build fire stations. +Fire stations prevent most fires from starting. They +cover an area slightly smaller than the window area. +If you havn't had any fires yet, you might not think +you need them. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/healthup.mes lincity-ng-2.9~git20150314/data/messages/healthup.mes --- lincity-ng-2.0/data/messages/healthup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/healthup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +Health centres +You have reached the tech level which enables +you to build health centres. +Heath centres reduce the number of people killed +by pollution and increase overall productivity. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/hvindustryup.mes lincity-ng-2.9~git20150314/data/messages/hvindustryup.mes --- lincity-ng-2.0/data/messages/hvindustryup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/hvindustryup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Heavy industry +You have reached the tech level which enables +you to build heavy industry (steel works). +Heavy industry produces steel. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/import-exportup.mes lincity-ng-2.9~git20150314/data/messages/import-exportup.mes --- lincity-ng-2.0/data/messages/import-exportup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/import-exportup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +You can now import and export coal, goods, +ore and steel. Read the help pages on these +areas to find out how to use them. diff -Nru lincity-ng-2.0/data/messages/launch-evac.mes lincity-ng-2.9~git20150314/data/messages/launch-evac.mes --- lincity-ng-2.0/data/messages/launch-evac.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/launch-evac.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +EVACUATION LAUNCH GOOD +You have evacuated 1000 people. +You might want to reduce the size of your +economy to reflect the reduced population. diff -Nru lincity-ng-2.0/data/messages/launch-fail.mes lincity-ng-2.9~git20150314/data/messages/launch-fail.mes --- lincity-ng-2.0/data/messages/launch-fail.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/launch-fail.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +LAUNCH FAILURE +Your rocket crashed shortly after launch. +People no longer trust the technology for +evacuation. You must launch five more unmanned +rockets to restore confidence. diff -Nru lincity-ng-2.0/data/messages/launch-gone-mail.mes lincity-ng-2.9~git20150314/data/messages/launch-gone-mail.mes --- lincity-ng-2.0/data/messages/launch-gone-mail.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/launch-gone-mail.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,8 @@ +Total Evacuation Complete +Well done you have evacuated +all your people. +There is a LinCity Hall-of-Fame that +you can automatically send mail to. +This hall of fame will only be in operation for +a short time, just to see how it goes. This means +that you might not get the option again. \ No newline at end of file diff -Nru lincity-ng-2.0/data/messages/launch-gone.mes lincity-ng-2.9~git20150314/data/messages/launch-gone.mes --- lincity-ng-2.0/data/messages/launch-gone.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/launch-gone.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +Total Evacuation Complete. +Well done you have evacuated +all your people. diff -Nru lincity-ng-2.0/data/messages/launch-good.mes lincity-ng-2.9~git20150314/data/messages/launch-good.mes --- lincity-ng-2.0/data/messages/launch-good.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/launch-good.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,2 @@ +ROCKET LAUNCH GOOD +Doing well. diff -Nru lincity-ng-2.0/data/messages/ltindustryup.mes lincity-ng-2.9~git20150314/data/messages/ltindustryup.mes --- lincity-ng-2.0/data/messages/ltindustryup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/ltindustryup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Light industry +You have reached the tech level which enables +you to build light industry. +Light industry produces goods. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/millup.mes lincity-ng-2.9~git20150314/data/messages/millup.mes --- lincity-ng-2.0/data/messages/millup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/millup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +Mills +You have reached the tech level which enables +you to build mills. +Mills use jobs and food to make goods. +Watch out, they can use a lot of food! +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/mod_wind_up.mes lincity-ng-2.9~git20150314/data/messages/mod_wind_up.mes --- lincity-ng-2.0/data/messages/mod_wind_up.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/mod_wind_up.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +Modern windmills +You have reached the tech level which enables +you to build modern, more efficient, windmills. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/mousetype.mes lincity-ng-2.9~git20150314/data/messages/mousetype.mes --- lincity-ng-2.0/data/messages/mousetype.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/mousetype.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,24 @@ + + LinCity needs to know what sort of mouse you have. + +Select a number and press return + + 0 Microsoft + 1 MouseSystems + 2 MM series + 3 Logitech + 4 Busmouse + 5 PS2 + 6 Logiman + +If your mouse is not included here, take a guess, If that fails mail +ijp@floot.demon.co.uk and I'll see what I can do. We may have to wait for a +new SVGAlib or even GGI. + +Once you have selected a mouse you will not be asked again, ever. If you +make a mistake or change the type of mouse you use delete the file +.lincityrc in your home directory. + rm ~/.lincityrc +then start the game as normal. + + What sort of mouse have you got? diff -Nru lincity-ng-2.0/data/messages/nobull-tip.mes lincity-ng-2.9~git20150314/data/messages/nobull-tip.mes --- lincity-ng-2.0/data/messages/nobull-tip.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/nobull-tip.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +Not Allowed +Sorry you can't bulldoze +a tip. \ No newline at end of file diff -Nru lincity-ng-2.0/data/messages/no-credit-parkland.mes lincity-ng-2.9~git20150314/data/messages/no-credit-parkland.mes --- lincity-ng-2.0/data/messages/no-credit-parkland.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/no-credit-parkland.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +NO CREDIT AVAILABLE +You have budget deficit. The legislative +council will no allow you to build +parks on credit. diff -Nru lincity-ng-2.0/data/messages/no-credit-recycle.mes lincity-ng-2.9~git20150314/data/messages/no-credit-recycle.mes --- lincity-ng-2.0/data/messages/no-credit-recycle.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/no-credit-recycle.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +NO CREDIT AVAILABLE +You have budget deficit. The legislative +council will no allow you to build +recycling centres on credit. diff -Nru lincity-ng-2.0/data/messages/no-credit-rocket.mes lincity-ng-2.9~git20150314/data/messages/no-credit-rocket.mes --- lincity-ng-2.0/data/messages/no-credit-rocket.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/no-credit-rocket.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +NO CREDIT AVAILABLE +You have budget deficit. The legislative +council will no allow you to build +rocket launch pads on credit. diff -Nru lincity-ng-2.0/data/messages/no-credit-solar-power.mes lincity-ng-2.9~git20150314/data/messages/no-credit-solar-power.mes --- lincity-ng-2.0/data/messages/no-credit-solar-power.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/no-credit-solar-power.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +NO CREDIT AVAILABLE +You have budget deficit. The legislative +council will no allow you to build +solar power stations on credit. diff -Nru lincity-ng-2.0/data/messages/no-credit-university.mes lincity-ng-2.9~git20150314/data/messages/no-credit-university.mes --- lincity-ng-2.0/data/messages/no-credit-university.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/no-credit-university.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +NO CREDIT AVAILABLE +You have budget deficit. The legislative +council will no allow you to build +universities on credit. diff -Nru lincity-ng-2.0/data/messages/not_enough_tech.mes lincity-ng-2.9~git20150314/data/messages/not_enough_tech.mes --- lincity-ng-2.0/data/messages/not_enough_tech.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/not_enough_tech.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +Not invented yet. +You must increase your technology +level before you can select this area. diff -Nru lincity-ng-2.0/data/messages/oremineup.mes lincity-ng-2.9~git20150314/data/messages/oremineup.mes --- lincity-ng-2.0/data/messages/oremineup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/oremineup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +Ore mine +You have reached the tech level which enables +you to dig ore from ore mines. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/parkup.mes lincity-ng-2.9~git20150314/data/messages/parkup.mes --- lincity-ng-2.0/data/messages/parkup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/parkup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Parks +You have reached the tech level which enables +you to build parks. +Parks are used to absorb pollution. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/potteryup.mes lincity-ng-2.9~git20150314/data/messages/potteryup.mes --- lincity-ng-2.0/data/messages/potteryup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/potteryup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +Potteries +You have reached the tech level which enables +you to build potteries. +Potteries use jobs and ore to make goods. +( You need ore mines to get ore ) +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/railwayup.mes lincity-ng-2.9~git20150314/data/messages/railwayup.mes --- lincity-ng-2.0/data/messages/railwayup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/railwayup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +Railways +You have reached the tech level which enables +you to build railways. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/recycleup.mes lincity-ng-2.9~git20150314/data/messages/recycleup.mes --- lincity-ng-2.0/data/messages/recycleup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/recycleup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Recycling centres +You have reached the tech level which enables +you to recycling centres. +Recycling centres recycle used goods back into ore. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/riverup.mes lincity-ng-2.9~git20150314/data/messages/riverup.mes --- lincity-ng-2.0/data/messages/riverup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/riverup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Rivers +You have reached the tech level which enables +you to build rivers. +I don't know why you would want to do this! +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/roadup.mes lincity-ng-2.9~git20150314/data/messages/roadup.mes --- lincity-ng-2.0/data/messages/roadup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/roadup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +Roads +You have reached the tech level which enables +you to build roads. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/rocketup.mes lincity-ng-2.9~git20150314/data/messages/rocketup.mes --- lincity-ng-2.0/data/messages/rocketup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/rocketup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,7 @@ +Rocket launch pad +You have reached the tech level which enables +you to build rocket launch pads. +Rockets enable you to evacuate your population +and is a way to 'win' the game. +It is very important that you... +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/schoolup.mes lincity-ng-2.9~git20150314/data/messages/schoolup.mes --- lincity-ng-2.0/data/messages/schoolup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/schoolup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Schools +You have reached the tech level which enables +you to build schools. +Schools use jobs and goods to increase tech level. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/shfire-oc.mes lincity-ng-2.9~git20150314/data/messages/shfire-oc.mes --- lincity-ng-2.0/data/messages/shfire-oc.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/shfire-oc.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +A fire has broken out at +a shanty town. +The fire is OUT OF CONTROL +and may spread to other areas. diff -Nru lincity-ng-2.0/data/messages/shfire-uc.mes lincity-ng-2.9~git20150314/data/messages/shfire-uc.mes --- lincity-ng-2.0/data/messages/shfire-uc.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/shfire-uc.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +A fire has broken out at +a shanty town. +It is in a fire cover area +and APPEARS to be under control. diff -Nru lincity-ng-2.0/data/messages/solarpowerup.mes lincity-ng-2.9~git20150314/data/messages/solarpowerup.mes --- lincity-ng-2.0/data/messages/solarpowerup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/solarpowerup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,4 @@ +Solar power stations +You have reached the tech level which enables +you to build solar power stations. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/sustain.mes lincity-ng-2.9~git20150314/data/messages/sustain.mes --- lincity-ng-2.0/data/messages/sustain.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/sustain.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +LinCity has determined that you have +a sustainable economy. This is only +experimental at this time, but if you +want to mail me the ~/.Lincity/results +file, I might put you in the Hall of Fame. diff -Nru lincity-ng-2.0/data/messages/too-old.mes lincity-ng-2.9~git20150314/data/messages/too-old.mes --- lincity-ng-2.0/data/messages/too-old.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/too-old.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +Sorry, the version of LinCity +used to save this scene is +too old. diff -Nru lincity-ng-2.0/data/messages/universityup.mes lincity-ng-2.9~git20150314/data/messages/universityup.mes --- lincity-ng-2.0/data/messages/universityup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/universityup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +University +You have reached the tech level which enables +you to build universities. +Universities produces Phds, which produce more +technology. +See the help screen for more information. diff -Nru lincity-ng-2.0/data/messages/warning.mes lincity-ng-2.9~git20150314/data/messages/warning.mes --- lincity-ng-2.0/data/messages/warning.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/warning.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,2 @@ +Warning + diff -Nru lincity-ng-2.0/data/messages/windmillup.mes lincity-ng-2.9~git20150314/data/messages/windmillup.mes --- lincity-ng-2.0/data/messages/windmillup.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/windmillup.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,3 @@ +INVENTION - Windmills +You have reached the tech level which enables +you to build windmills. diff -Nru lincity-ng-2.0/data/messages/wrong-mpsize.mes lincity-ng-2.9~git20150314/data/messages/wrong-mpsize.mes --- lincity-ng-2.0/data/messages/wrong-mpsize.mes 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/messages/wrong-mpsize.mes 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,5 @@ +Wrong structure size detected +The load will probably cause a seg fault. +Don't worry, I'm working on it. If you +could mail ijp@floot.demon.co.uk with the +two numbers below, I'd be very greatful. Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/backsteinmauerbump.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/backsteinmauerbump.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/backsteinmauer.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/backsteinmauer.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/basketball.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/basketball.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/basketballnet.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/basketballnet.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/blacksmith.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/blacksmith.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/blacksmithroof.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/blacksmithroof.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/blacksmithwall.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/blacksmithwall.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/brick_brown.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/brick_brown.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/brick_orange.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/brick_orange.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/brick_red.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/brick_red.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/bricks.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/bricks.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/bush.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/bush.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/coalmine.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/coalmine.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/coalpower.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/coalpower.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/coalpowerwindow2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/coalpowerwindow2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/coalpowerwindow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/coalpowerwindow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/commune.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/commune.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/cow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/cow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/crossing.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/crossing.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/dachziegel.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/dachziegel.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/desert.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/desert.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/empty_tile.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/empty_tile.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/farm2.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/farm2.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/Fencelink.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/Fencelink.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/fire.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/fire.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestation.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestation.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestationdoor2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestationdoor2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestationdoor.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestationdoor.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestationwall2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestationwall2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestationwall3.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestationwall3.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestationwall.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestationwall.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/firestationwindow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/firestationwindow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/garbagedump.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/garbagedump.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/garbagedump_full.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/garbagedump_full.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/garbage.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/garbage.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/grass.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/grass.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/hospital.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/hospital.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/kopfsteinpflaster_bump.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/kopfsteinpflaster_bump.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/kopfsteinpflaster.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/kopfsteinpflaster.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/lightindustry-2.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/lightindustry-2.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/lightindustry-smoke.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/lightindustry-smoke.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/logs.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/logs.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/market.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/market.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/mill.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/mill.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/millroof.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/millroof.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/millwindow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/millwindow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/church.wings and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/church.wings differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/coalpower.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/coalpower.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/commune.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/commune.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/hospital-1.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/hospital-1.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/lightindustry.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/lightindustry.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/monument.wings and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/monument.wings differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/park_plane.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/park_plane.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/petrol_station.wings and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/petrol_station.wings differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/powerlines.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/powerlines.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/powerscoal-empty.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/powerscoal-empty.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/powerscoal-full.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/powerscoal-full.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/powerssolar.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/powerssolar.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/PowerTower.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/PowerTower.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/reshihbhd2.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/reshihbhd2.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/reshihbhd.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/reshihbhd.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/residence2.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/residence2.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/residence.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/residence.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/skyscraper.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/skyscraper.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/stadium.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/stadium.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/water.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/water.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/windpower.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/windpower.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/old/windpower_small.wings and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/old/windpower_small.wings differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/oremine.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/oremine.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/park.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/park.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/port.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/port.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/pottery.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/pottery.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/potteryhouse.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/potteryhouse.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/potterytexture.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/potterytexture.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/potterywindow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/potterywindow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/powerlines.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/powerlines.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/railbridge.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/railbridge.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rails.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rails.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/recyclingbuilding.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/recyclingbuilding.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/recyclingcenter.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/recyclingcenter.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/recyclinggarbage.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/recyclinggarbage.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/recyclinglogo.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/recyclinglogo.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/reshihi.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/reshihi.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/reshilow.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/reshilow.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/residencelowwindow2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/residencelowwindow2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/residencelowwindow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/residencelowwindow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/reslowhi.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/reslowhi.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/reslowlow.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/reslowlow.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/resmedhi.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/resmedhi.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/resmedlow.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/resmedlow.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/road.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/road.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/roadbridge.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/roadbridge.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket1.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket1.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket2.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket2.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket3.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket3.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket4.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket4.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket5.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket5.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket6.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket6.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket7.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket7.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocket.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocket.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rocketflow.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rocketflow.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rooftiles_grey.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rooftiles_grey.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/rooftiles_red.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/rooftiles_red.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/school.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/school.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/schooldoor.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/schooldoor.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/schoolwindow.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/schoolwindow.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/shanty.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/shanty.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/smoke.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/smoke.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/solarpower.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/solarpower.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/SonixCarMaterialLibrary.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/SonixCarMaterialLibrary.blend differ diff -Nru lincity-ng-2.0/data/models/source.txt lincity-ng-2.9~git20150314/data/models/source.txt --- lincity-ng-2.0/data/models/source.txt 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/models/source.txt 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +Lightindustry + +Truck model: +- Author: SONGKRO +- Liense: CC-BY +- Source: http://www.blendswap.com/blends/view/19418 \ No newline at end of file Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/SteelMill-1.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/SteelMill-1.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/SubStation-1.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/SubStation-1.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/asphalt_plain.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/asphalt_plain.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/asphalt_straight2.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/asphalt_straight2.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/asphalt_straight.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/asphalt_straight.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/bark-brown1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/bark-brown1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/bark-grey1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/bark-grey1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/billboard.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/billboard.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/brick919-dark-brown.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/brick919-dark-brown.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/brick919-red-02.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/brick919-red-02.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/bricks-brown1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/bricks-brown1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/bricks-red1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/bricks-red1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/bricks-yellow1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/bricks-yellow1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/bush03-diffuse.tga and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/bush03-diffuse.tga differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/charcoalmeiler.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/charcoalmeiler.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/cobblestone1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/cobblestone1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/cobblestone4.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/cobblestone4.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/commune-ground2.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/commune-ground2.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/commune-ground.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/commune-ground.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/concrete517-desa.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/concrete517-desa.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/concrete703-tile1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/concrete703-tile1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/concrete-yellow1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/concrete-yellow1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/dirt1.JPG and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/dirt1.JPG differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/dirt2.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/dirt2.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/farm-ground.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/farm-ground.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/FencelinkA.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/FencelinkA.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/garage-door1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/garage-door1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/grass1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/grass1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/grass3.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/grass3.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/helipad.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/helipad.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/LAMP018.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/LAMP018.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/monumentground.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/monumentground.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/moss1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/moss1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/Paving Slabs.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/Paving Slabs.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/railwood.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/railwood.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/roof-metal1-orange.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/roof-metal1-orange.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/rooftiles-brown1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/rooftiles-brown1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/rooftiles-grey1.jpg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/rooftiles-grey1.jpg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/solarscreen-orange.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/solarscreen-orange.png differ diff -Nru lincity-ng-2.0/data/models/textures/source.txt lincity-ng-2.9~git20150314/data/models/textures/source.txt --- lincity-ng-2.0/data/models/textures/source.txt 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/models/textures/source.txt 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,7 @@ +- cobblestone4.png http://opengameart.org/node/8016 license: cc0 Author: West +- bush03-diffuse.tga http://opengameart.org/content/bushes license: cc0 Author: yughues +- tiny weed02-diffuse.tga http://opengameart.org/content/tiny-weeds license: cc0 Author: yughues +- vehicle_generic_detail22.bmp LAMP018.jpg http://www.blendswap.com/blends/view/19418 License: CC-BY Author: SONGKRO + + +Textures in the textures folder without mention in this file are from www.burningwell.org or are own work (Ivar). License: Public Domain. \ No newline at end of file Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/tiny weed02-diffuse.tga and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/tiny weed02-diffuse.tga differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/vehicle_generic_detail22.bmp and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/vehicle_generic_detail22.bmp differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/wood floor 1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/wood floor 1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/textures/woodplanks4.JPG and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/textures/woodplanks4.JPG differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/track.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/track.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/trackbridge.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/trackbridge.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/traffic.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/traffic.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/tree2-inner.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/tree2-inner.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/treegreen.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/treegreen.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/trees.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/trees.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/tuxmonument.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/tuxmonument.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/tuxpower.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/tuxpower.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/universitybackground.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/universitybackground.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/university.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/university.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/universitydachziegel.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/universitydachziegel.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/water.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/water.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/Waterwell.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/Waterwell.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/wheel.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/wheel.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/windmill.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/windmill.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/windpower2.blend and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/windpower2.blend differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/wood1.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/wood1.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/models/wood_white.png and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/models/wood_white.png differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/music/01 - pronobozo - lincity.ogg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/music/01 - pronobozo - lincity.ogg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/music/02 - Robert van Herk - City Blues.ogg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/music/02 - Robert van Herk - City Blues.ogg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/music/03 - Robert van Herk - Architectural Contemplations.ogg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/music/03 - Robert van Herk - Architectural Contemplations.ogg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/music/default/01 - pronobozo - lincity.ogg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/music/default/01 - pronobozo - lincity.ogg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/music/default/02 - Robert van Herk - City Blues.ogg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/music/default/02 - Robert van Herk - City Blues.ogg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/music/default/03 - Robert van Herk - Architectural Contemplations.ogg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/music/default/03 - Robert van Herk - Architectural Contemplations.ogg differ diff -Nru lincity-ng-2.0/data/music/default/default.xml lincity-ng-2.9~git20150314/data/music/default/default.xml --- lincity-ng-2.0/data/music/default/default.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/music/default/default.xml 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,8 @@ +<?xml version="1.0"?> +<!-- Lincity default music theme --> +<!-- This file should be in music/default/default.xml with the old songs. --> +<musicTheme> + <song title="Robert van Herk - City Blues" filename="02 - Robert van Herk - City Blues.ogg" lowest-tech-level="0" highest-tech-level="0" /> + <song title="Robert van Herk - Architectural Contemplations" filename="03 - Robert van Herk - Architectural Contemplations.ogg" lowest-tech-level="1" highest-tech-level="0" /> + <song title="Pronobozo - Lincity" filename="01 - pronobozo - lincity.ogg" lowest-tech-level="2" highest-tech-level="0" /> +</musicTheme> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/8x8thin and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/8x8thin differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/alt-8x8 and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/alt-8x8 differ diff -Nru lincity-ng-2.0/data/opening/do_image lincity-ng-2.9~git20150314/data/opening/do_image --- lincity-ng-2.0/data/opening/do_image 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/opening/do_image 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,6 @@ +pov open +cp open.tga open_0.tga +octree -C=252 -W=640 -H=480 open +rm open.tga +mv open.2d ../open.tga +gzip -9 ../open.tga Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/iso8859-1-8x8.fnt and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/iso8859-1-8x8.fnt differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/iso8859-1-8x8.raw and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/iso8859-1-8x8.raw differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/iso8859-2-8x8.fnt and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/iso8859-2-8x8.fnt differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/iso8859-2-8x8.raw and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/iso8859-2-8x8.raw differ diff -Nru lincity-ng-2.0/data/opening/open.pov lincity-ng-2.9~git20150314/data/opening/open.pov --- lincity-ng-2.0/data/opening/open.pov 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/opening/open.pov 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,441 @@ +// open.pov opening screen for lin-city +#include "colors.inc" +#include "shapes.inc" +#include "textures.inc" +#include "stones.inc" + +/// #declare LT = texture {EMBWood1} +/// #declare LT = texture {DMFDarkOak} +#declare LT = texture {Stone17} +/// #declare LT = texture {Silver3} +/// #declare LT = texture {Chrome_Texture} +/// #declare LT = texture {Mirror pigment{White}} + +camera { + location <-3, 4, -15> +/// location <-2, 4, -15> +// direction <0, 0, 1.35> + look_at <9,5,0> +} + +#declare myJade = + pigment + {marble + turbulence 1.8 + color_map + {[0.0, 0.8 color red 0.4 green 0.9 blue 0.4 + color red 0.2 green 0.5 blue 0.2] + [0.8, 1.001 color red 0.15 green 0.75 blue 0.15 + color red 0.25 green 0.35 blue 0.15] + } + } + + +light_source {<-100, 300, -200> color Gray80} + +light_source {<150, 50, -200> color LightGray} + +light_source {<2,1,25> color Gray60 } + +// light_source {<2,100,0> color Gray30 } + +// back board +box { <0,0,0> <46,14,10> texture {Stone18} rotate <0,38.5,0> + translate <7.5,14,35> } +// this is the first sticking out bit, where the red writing goes +box { <3,11.58,-0.2> <43,12.85,0> texture {Stone21} rotate <0,38.5,0> + translate <7.5,14,35> } +// the second one +box { <3,8.3,-0.2> <43,10.3,0> texture {Stone21} rotate <0,38.5,0> + translate <7.5,14,35> } +// the bottom one +box { <3,5.11,-0.2> <43,7.11,0> texture {Stone21} rotate <0,38.5,0> + translate <7.5,14,35> } + + +// plane { z, 1.1 texture {White} } + +plane { <0,1,0>, 0 texture {myJade ambient 0.3} scale 4 } +//plane { <0,1,0>, 0.0 texture {Jade} } +//plane { <0,1,0>, -0.05 texture {White} } + +plane { < 0, 1, 0 > 350 texture {Bright_Blue_Sky ambient 0.8 scale 350 } } + +//frame1 +// L +//bottom layer +box { <0,0,0> <0.9,0.9,0.9> texture {LT} } +//frame2 +box { <0,0,1> <0.9,0.9,1.9> texture {LT} } +//frame3 +box { <1,0,0> <1.9,0.9,0.9> texture {LT} } +//frame4 +box { <1,0,1> <1.9,0.9,1.9> texture {LT} } +//frame5 +box { <2,0,0> <2.9,0.9,0.9> texture {LT} } +//frame6 +box { <2,0,1> <2.9,0.9,1.9> texture {LT} } +//frame7 +box { <3,0,0> <3.9,0.9,0.9> texture {LT} } +//frame8 +box { <3,0,1> <3.9,0.9,1.9> texture {LT} } +//frame9 +box { <4,0,0> <4.9,0.9,0.9> texture {LT} } +//frame10 +box { <4,0,1> <4.9,0.9,1.9> texture {LT} } +//box { <5,0,0> <5.9,0.9,0.9> texture {LT} } +//box { <5,0,1> <5.9,0.9,1.9> texture {LT} } +// last 4 of next layer +//frame11 +box { <2,1,0> <2.9,1.9,0.9> texture {LT} } +//frame12 +box { <2,1,1> <2.9,1.9,1.9> texture {LT} } +//frame13 +box { <3,1,0> <3.9,1.9,0.9> texture {LT} } +//frame14 +box { <3,1,1> <3.9,1.9,1.9> texture {LT} } +//frame15 +box { <4,1,0> <4.9,1.9,0.9> texture {LT} } +//frame16 +box { <4,1,1> <4.9,1.9,1.9> texture {LT} } +//box { <5,1,0> <5.9,1.9,0.9> texture {LT} } +//box { <5,1,1> <5.9,1.9,1.9> texture {LT} } + +// upright +//frame17 +box { <0,1,0> <0.9,1.9,0.9> texture {LT} } +//frame18 +box { <0,1,1> <0.9,1.9,1.9> texture {LT} } +//frame19 +box { <0,2,0> <0.9,2.9,0.9> texture {LT} } +//frame20 +box { <0,2,1> <0.9,2.9,1.9> texture {LT} } +//frame21 +box { <0,3,0> <0.9,3.9,0.9> texture {LT} } +//frame22 +box { <0,3,1> <0.9,3.9,1.9> texture {LT} } +//frame23 +box { <0,4,0> <0.9,4.9,0.9> texture {LT} } +//frame24 +box { <0,4,1> <0.9,4.9,1.9> texture {LT} } +//frame25 +box { <0,5,0> <0.9,5.9,0.9> texture {LT} } +//frame26 +box { <0,5,1> <0.9,5.9,1.9> texture {LT} } +//frame27 +box { <0,6,0> <0.9,6.9,0.9> texture {LT} } +//frame28 +box { <0,6,1> <0.9,6.9,1.9> texture {LT} } + +//frame29 +box { <1,1,0> <1.9,1.9,0.9> texture {LT} } +//frame30 +box { <1,1,1> <1.9,1.9,1.9> texture {LT} } +//frame31 +box { <1,2,0> <1.9,2.9,0.9> texture {LT} } +//frame32 +box { <1,2,1> <1.9,2.9,1.9> texture {LT} } +//frame33 +box { <1,3,0> <1.9,3.9,0.9> texture {LT} } +//frame34 +box { <1,3,1> <1.9,3.9,1.9> texture {LT} } +//frame35 +box { <1,4,0> <1.9,4.9,0.9> texture {LT} } +//frame36 +box { <1,4,1> <1.9,4.9,1.9> texture {LT} } +//frame37 +box { <1,5,0> <1.9,5.9,0.9> texture {LT} } +//frame38 +box { <1,5,1> <1.9,5.9,1.9> texture {LT} } +//frame39 +box { <1,6,0> <1.9,6.9,0.9> texture {LT} } +//frame40 +box { <1,6,1> <1.9,6.9,1.9> texture {LT} } + +// i +//frame41 +box { <6,0,0> <6.9,0.9,0.9> texture {LT} } +//frame42 +box { <6,0,1> <6.9,0.9,1.9> texture {LT} } +//frame43 +box { <7,0,0> <7.9,0.9,0.9> texture {LT} } +//frame44 +box { <7,0,1> <7.9,0.9,1.9> texture {LT} } +//frame45 +box { <6,1,0> <6.9,1.9,0.9> texture {LT} } +//frame46 +box { <6,1,1> <6.9,1.9,1.9> texture {LT} } +//frame47 +box { <7,1,0> <7.9,1.9,0.9> texture {LT} } +//frame48 +box { <7,1,1> <7.9,1.9,1.9> texture {LT} } +//frame49 +box { <6,2,0> <6.9,2.9,0.9> texture {LT} } +//frame50 +box { <6,2,1> <6.9,2.9,1.9> texture {LT} } +//frame51 +box { <7,2,0> <7.9,2.9,0.9> texture {LT} } +//frame52 +box { <7,2,1> <7.9,2.9,1.9> texture {LT} } +//frame53 +sphere { <7,4,1>, 0.9 texture {LT} } + +// n +//frame54 +box { <9,0,0> <9.9,0.9,0.9> texture {LT} } +//frame55 +box { <9,0,1> <9.9,0.9,1.9> texture {LT} } +//frame56 +box { <9,1,0> <9.9,1.9,0.9> texture {LT} } +//frame57 +box { <9,1,1> <9.9,1.9,1.9> texture {LT} } +//frame58 +box { <9.8,2,0> <10.7,2.9,0.9> texture {LT} } +//frame59 +box { <9.8,2,1> <10.7,2.9,1.9> texture {LT} } +//frame60 +box { <10.8,2,0> <11.7,2.9,0.9> texture {LT} } +//frame61 +box { <10.8,2,1> <11.7,2.9,1.9> texture {LT} } +//frame62 +box { <11.5,0,0> <12.4,0.9,0.9> texture {LT} } +//frame63 +box { <11.5,0,1> <12.4,0.9,1.9> texture {LT} } +//frame64 +box { <11.5,1,0> <12.4,1.9,0.9> texture {LT} } +//frame65 +box { <11.5,1,1> <12.4,1.9,1.9> texture {LT} } + + +// C +//bottom layer +//frame66 +box { <14,0,0> <14.9,0.9,0.9> texture {LT} } +//frame67 +box { <14,0,1> <14.9,0.9,1.9> texture {LT} } +//frame68 +box { <15,0,0> <15.9,0.9,0.9> texture {LT} } +//frame69 +box { <15,0,1> <15.9,0.9,1.9> texture {LT} } +//frame70 +box { <16,0,0> <16.9,0.9,0.9> texture {LT} } +//frame71 +box { <16,0,1> <16.9,0.9,1.9> texture {LT} } +//frame72 +box { <17,0,0> <17.9,0.9,0.9> texture {LT} } +//frame73 +box { <17,0,1> <17.9,0.9,1.9> texture {LT} } +//frame74 +box { <18,0,0> <18.9,0.9,0.9> texture {LT} } +//frame75 +box { <18,0,1> <18.9,0.9,1.9> texture {LT} } +// last 6 of next layer +//frame76 +box { <16,1,0> <16.9,1.9,0.9> texture {LT} } +//frame77 +box { <16,1,1> <16.9,1.9,1.9> texture {LT} } +//frame78 +box { <17,1,0> <17.9,1.9,0.9> texture {LT} } +//frame79 +box { <17,1,1> <17.9,1.9,1.9> texture {LT} } +//frame80 +box { <18,1,0> <18.9,1.9,0.9> texture {LT} } +//frame81 +box { <18,1,1> <18.9,1.9,1.9> texture {LT} } + +// upright +//frame82 +box { <14,1,0> <14.9,1.9,0.9> texture {LT} } +//frame83 +box { <14,1,1> <14.9,1.9,1.9> texture {LT} } +//frame84 +box { <14,2,0> <14.9,2.9,0.9> texture {LT} } +//frame85 +box { <14,2,1> <14.9,2.9,1.9> texture {LT} } +//frame86 +box { <14,3,0> <14.9,3.9,0.9> texture {LT} } +//frame87 +box { <14,3,1> <14.9,3.9,1.9> texture {LT} } +//frame88 +box { <14,4,0> <14.9,4.9,0.9> texture {LT} } +//frame89 +box { <14,4,1> <14.9,4.9,1.9> texture {LT} } +//frame90 +box { <14,5,0> <14.9,5.9,0.9> texture {LT} } +//frame91 +box { <14,5,1> <14.9,5.9,1.9> texture {LT} } +//frame92 +box { <14,6,0> <14.9,6.9,0.9> texture {LT} } +//frame93 +box { <14,6,1> <14.9,6.9,1.9> texture {LT} } + +//frame94 +box { <15,1,0> <15.9,1.9,0.9> texture {LT} } +//frame95 +box { <15,1,1> <15.9,1.9,1.9> texture {LT} } +//frame96 +box { <15,2,0> <15.9,2.9,0.9> texture {LT} } +//frame97 +box { <15,2,1> <15.9,2.9,1.9> texture {LT} } +//frame98 +box { <15,3,0> <15.9,3.9,0.9> texture {LT} } +//frame99 +box { <15,3,1> <15.9,3.9,1.9> texture {LT} } +//frame100 +box { <15,4,0> <15.9,4.9,0.9> texture {LT} } +//frame101 +box { <15,4,1> <15.9,4.9,1.9> texture {LT} } +//frame102 +box { <15,5,0> <15.9,5.9,0.9> texture {LT} } +//frame103 +box { <15,5,1> <15.9,5.9,1.9> texture {LT} } +//frame104 +box { <15,6,0> <15.9,6.9,0.9> texture {LT} } +//frame105 +box { <15,6,1> <15.9,6.9,1.9> texture {LT} } + +// overhang +//frame106 +box { <16,5,0> <16.9,5.9,0.9> texture {LT} } +//frame107 +box { <16,5,1> <16.9,5.9,1.9> texture {LT} } +//frame108 +box { <17,5,0> <17.9,5.9,0.9> texture {LT} } +//frame109 +box { <17,5,1> <17.9,5.9,1.9> texture {LT} } +//frame110 +box { <18,5,0> <18.9,5.9,0.9> texture {LT} } +//frame111 +box { <18,5,1> <18.9,5.9,1.9> texture {LT} } + +//frame112 +box { <16,6,0> <16.9,6.9,0.9> texture {LT} } +//frame113 +box { <16,6,1> <16.9,6.9,1.9> texture {LT} } +//frame114 +box { <17,6,0> <17.9,6.9,0.9> texture {LT} } +//frame115 +box { <17,6,1> <17.9,6.9,1.9> texture {LT} } +//frame116 +box { <18,6,0> <18.9,6.9,0.9> texture {LT} } +//frame117 +box { <18,6,1> <18.9,6.9,1.9> texture {LT} } + +// i +//frame118 +box { <20,0,0> <20.9,0.9,0.9> texture {LT} } +//frame119 +box { <20,0,1> <20.9,0.9,1.9> texture {LT} } +//frame120 +box { <21,0,0> <21.9,0.9,0.9> texture {LT} } +//frame121 +box { <21,0,1> <21.9,0.9,1.9> texture {LT} } +//frame122 +box { <20,1,0> <20.9,1.9,0.9> texture {LT} } +//frame123 +box { <20,1,1> <20.9,1.9,1.9> texture {LT} } +//frame124 +box { <21,1,0> <21.9,1.9,0.9> texture {LT} } +//frame125 +box { <21,1,1> <21.9,1.9,1.9> texture {LT} } +//frame126 +box { <20,2,0> <20.9,2.9,0.9> texture {LT} } +//frame127 +box { <20,2,1> <20.9,2.9,1.9> texture {LT} } +//frame128 +box { <21,2,0> <21.9,2.9,0.9> texture {LT} } +//frame129 +box { <21,2,1> <21.9,2.9,1.9> texture {LT} } +//frame130 +sphere { <21,4,1>, 0.9 texture {LT} } + +// t +// base +//frame131 +box { <24,0,0> <24.9,0.9,0.9> texture {LT} } +//frame132 +box { <24,0,1> <24.9,0.9,1.9> texture {LT} } +//frame133 +box { <25,0,0> <25.9,0.9,0.9> texture {LT} } +//frame134 +box { <25,0,1> <25.9,0.9,1.9> texture {LT} } +//frame135 +box { <26,0,0> <26.9,0.9,0.9> texture {LT} } +//frame136 +box { <26,0,1> <26.9,0.9,1.9> texture {LT} } +// upright +//frame137 +box { <24,1,0> <24.9,1.9,0.9> texture {LT} } +//frame138 +box { <24,1,1> <24.9,1.9,1.9> texture {LT} } +//frame139 +box { <24,2,0> <24.9,2.9,0.9> texture {LT} } +//frame140 +box { <24,2,1> <24.9,2.9,1.9> texture {LT} } +//frame141 +box { <24,3,0> <24.9,3.9,0.9> texture {LT} } +//frame142 +box { <24,3,1> <24.9,3.9,1.9> texture {LT} } +//frame143 +box { <24,4,0> <24.9,4.9,0.9> texture {LT} } +//frame144 +box { <24,4,1> <24.9,4.9,1.9> texture {LT} } +//frame145 +box { <24,5,0> <24.9,5.9,0.9> texture {LT} } +//frame146 +box { <24,5,1> <24.9,5.9,1.9> texture {LT} } + +// bar +//frame147 +box { <23,3,0> <23.9,3.9,0.9> texture {LT} } +//frame148 +box { <23,3,1> <23.9,3.9,1.9> texture {LT} } +//frame149 +box { <25,3,0> <25.9,3.9,0.9> texture {LT} } +//frame150 +box { <25,3,1> <25.9,3.9,1.9> texture {LT} } +//frame151 +box { <26,3,0> <26.9,3.9,0.9> texture {LT} } +//frame152 +box { <26,3,1> <26.9,3.9,1.9> texture {LT} } + +// y +//frame153 +box { <28,0,0> <28.9,0.9,0.9> texture {LT} } +//frame154 +box { <28,0,1> <28.9,0.9,1.9> texture {LT} } +//frame155 +box { <28.5,1,0> <29.4,1.9,0.9> texture {LT} } +//frame156 +box { <28.5,1,1> <29.4,1.9,1.9> texture {LT} } +//frame157 +box { <29,2,0> <29.9,2.9,0.9> texture {LT} } +//frame158 +box { <29,2,1> <29.9,2.9,1.9> texture {LT} } +//frame159 +box { <29.5,3,0> <30.4,3.9,0.9> texture {LT} } +//frame160 +box { <29.5,3,1> <30.4,3.9,1.9> texture {LT} } +//frame161 +box { <30,4,0> <30.9,4.9,0.9> texture {LT} } +//frame162 +box { <30,4,1> <30.9,4.9,1.9> texture {LT} } +//frame163 +box { <30.5,5,0> <31.4,5.9,0.9> texture {LT} } +//frame164 +box { <30.5,5,1> <31.4,5.9,1.9> texture {LT} } + +//frame165 +box { <28.5,3,0> <29.4,3.9,0.9> texture {LT} } +//frame166 +box { <28.5,3,1> <29.4,3.9,1.9> texture {LT} } +//frame167 +box { <28,4,0> <28.9,4.9,0.9> texture {LT} } +//frame168 +box { <28,4,1> <28.9,4.9,1.9> texture {LT} } +//frame169 +box { <27.5,5,0> <28.4,5.9,0.9> texture {LT} } +//frame170 +box { <27.5,5,1> <28.4,5.9,1.9> texture {LT} } +//frame171 + Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/open.tga.gz and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/open.tga.gz differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/Rocket_98.scn and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/Rocket_98.scn differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/scrawl_s.fnt and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/scrawl_s.fnt differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/scrawl_w.fnt and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/scrawl_w.fnt differ diff -Nru lincity-ng-2.0/data/opening/text1 lincity-ng-2.9~git20150314/data/opening/text1 --- lincity-ng-2.0/data/opening/text1 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/opening/text1 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,8 @@ + Press any key to continue. A +help system is available by clicking the mouse on the help +button in the lower right corner of the main screen... or click +the RIGHT mouse button on the things you want help with. You do not need a +mouse though, the cursor keys make mouse movements, the space or return are +like clicking the left mouse button, the backspace key, like the right. In +dialogue boxes, return or space means OK, return, space or y means yes and +backspace or n means no. diff -Nru lincity-ng-2.0/data/opening/text2 lincity-ng-2.9~git20150314/data/opening/text2 --- lincity-ng-2.0/data/opening/text2 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/opening/text2 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,20 @@ + LinCity was written by I J Peters. +( ijp@floot.demon.co.uk ) +LinCity is copyright (C) I J Peters 1995,1996. + +You may freely copy, distribute and modify lincity under the terms of the + + GNU GENERAL PUBLIC LICENSE + +Please read the file COPYING for the GPL. + + Thanks to Mike (mike@emgee.demon.co.uk) for ideas +and playing the game a lot. Thanks to Jasper +(jasper@js-thorn.demon.co.uk) for the university, +the 'wooden' windmills, the rockets and others. + Thanks to Fly +for the power station and commune icons and others. +Also thanks to RAb for always +finding those obscure bugs that only appear when you *really* try to break it. +Other people have contributed in some way to the development of LinCity, +they may be found in the file Acknowledgements. \ No newline at end of file diff -Nru lincity-ng-2.0/data/opening/text3 lincity-ng-2.9~git20150314/data/opening/text3 --- lincity-ng-2.0/data/opening/text3 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/opening/text3 2015-05-05 16:32:50.000000000 +0000 @@ -0,0 +1,8 @@ + Lin City is a city/country simulation +game. You are required to build and maintain a city. You must feed, house, +provide jobs and goods for your residents. You can build a sustainable +economy with the help of renewable energy and recycling, or you can go for +broke and build rockets to escape from a pollution ridden and resource +starved planet, it's up to you. Due to the finite resourses available in any +one place, this is not a game that you can leave for long periods of time. +Have fun.... \ No newline at end of file Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/winfont_16x16.fnt and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/winfont_16x16.fnt differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/opening/winfont_8x8.fnt and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/opening/winfont_8x8.fnt differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/rosegarden/02 - Robert van Herk - City Blues.rg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/rosegarden/02 - Robert van Herk - City Blues.rg differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/rosegarden/03 - Robert van Herk - Architectural Contemplations.rg and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/rosegarden/03 - Robert van Herk - Architectural Contemplations.rg differ diff -Nru lincity-ng-2.0/data/sounds/sounds.xml lincity-ng-2.9~git20150314/data/sounds/sounds.xml --- lincity-ng-2.0/data/sounds/sounds.xml 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/data/sounds/sounds.xml 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,383 @@ +<?xml version="1.0"?> +<!-- + sounds are loaded to all earlier resourceID inside a group + unspecified resourceID go to global scope + NOTE THE DIFFERENT RULES FOR IMAGES AND SOUNDS +--> +<resources> + + + <sound file="Click.wav" /> +<!-- + <sound file="WindowClose.wav" /> + <sound file="WindowOpen.wav" /> +--> + <group> + <sound file="Build1.wav" /> + <sound file="Build2.wav" /> + </group> + + <group> + <sound file="Raze1.wav" /> + <sound file="Raze2.wav" /> + <sound file="Raze3.wav" /> + </group> + + <group> + <sound file="RocketTakeoff1.wav" /> + <sound file="RocketExplosion1.wav" /> + </group> + + <group> + <resourceID name="Green" /> + <resourceID name="Tree" /> + <resourceID name="Tree2" /> + <resourceID name="Tree3" /> + <sound file="Green1.wav" /> + <sound file="Green2.wav" /> + <sound file="Green3.wav" /> + <sound file="Green4.wav" /> + </group> + + <group> + <resourceID name="Desert" /> + </group> + + <group> + <resourceID name="Water" /> + <sound file="Water1.wav" /> + <sound file="Water2.wav" /> + <sound file="Water3.wav" /> + <sound file="Water4.wav" /> + <sound file="Water5.wav" /> + </group> + + + <group> + <resourceID name="Blacksmith" /> + <sound file="Blacksmith1.wav" /> + <sound file="Blacksmith2.wav" /> + <sound file="Blacksmith3.wav" /> + </group> + + <group> + <resourceID name="CoalMine" /> + <resourceID name="CoalMineLow" /> + <resourceID name="CoalMineMed" /> + <resourceID name="CoalMineFull" /> + <sound file="CoalMine1.wav" /> + <sound file="CoalMine2.wav" /> + <sound file="CoalMine3.wav" /> + </group> + + <group> + <resourceID name="Commune" /> + <sound file="Commune1.wav" /> + <sound file="Commune2.wav" /> + <sound file="Commune3.wav" /> + </group> + + <group> + <resourceID name="Track" /> + <resourceID name="TrackBridge" /> + <sound file="DirtTrack1.wav" /> + <sound file="DirtTrack2.wav" /> + <sound file="DirtTrack3.wav" /> + </group> + + <group> + <resourceID name="Farm" /> + <sound file="Farm1.wav" /> + <sound file="Farm2.wav" /> + <sound file="Farm3.wav" /> + <sound file="OrganicFarm1.wav" /> + <sound file="OrganicFarm2.wav" /> + <sound file="OrganicFarm3.wav" /> + </group> + + <group> + <resourceID name="Fire" /> + <sound file="Fire1.wav" /> + <sound file="Fire2.wav" /> + <sound file="Fire3.wav" /> + </group> + + <group> + <resourceID name="FireWasteLand" /> + <sound file="FireWasteland1.wav" /> + </group> + + <group> + <resourceID name="FireStation" /> + <sound file="FireStation1.wav" /> + <sound file="FireStation2.wav" /> + <sound file="FireStation3.wav" /> + </group> + + <group> + <resourceID name="Harbor" /> + <sound file="Harbor1.wav" /> + <sound file="Harbor2.wav" /> + <sound file="Harbor3.wav" /> + </group> + + <group> + <resourceID name="Health" /> + <sound file="Health1.wav" /> + <sound file="Health2.wav" /> + <sound file="Health3.wav" /> + <sound file="Health4.wav" /> + <sound file="Health5.wav" /> + </group> + + <group> + <resourceID name="IndustryHigh" /> + <resourceID name="IndustryHighL" /> + <resourceID name="IndustryHighM" /> + <resourceID name="IndustryHighH" /> + <sound file="IndustryHigh1.wav" /> + <sound file="IndustryHigh2.wav" /> + <sound file="IndustryHigh3.wav" /> + </group> + + <group> + <resourceID name="IndustryLight" /> + <resourceID name="IndustryLightQ" /> + <resourceID name="IndustryLightL" /> + <resourceID name="IndustryLightM" /> + <resourceID name="IndustryLightH" /> + <sound file="IndustryLight1.wav" /> + <sound file="IndustryLight2.wav" /> + <sound file="IndustryLight3.wav" /> + </group> + + <group> + <resourceID name="MarketEmpty" /> + <sound file="MarketEmpty1.wav" /> + </group> + <group> + <resourceID name="MarketLow" /> + <sound file="MarketLow1.wav" /> + </group> + <group> + <resourceID name="MarketMed" /> + <sound file="MarketMed1.wav" /> + </group> + <group> + <resourceID name="MarketFull" /> + <sound file="MarketFull1.wav" /> + </group> + + <group> + <resourceID name="Mill" /> + <sound file="Mill1.wav" /> + <sound file="Mill2.wav" /> + <sound file="Mill3.wav" /> + </group> + + <group> + <resourceID name="Monument" /> + <sound file="Monument1.wav" /> + <sound file="Monument2.wav" /> + <sound file="Monument3.wav" /> + </group> + + <group> + <resourceID name="MonumentConstruction" /> + <sound file="MonumentConstruction1.wav" /> + <sound file="MonumentConstruction2.wav" /> + <sound file="MonumentConstruction3.wav" /> + </group> + + <group> + <resourceID name="OreMine" /> + <sound file="OreMine1.wav" /> + <sound file="OreMine2.wav" /> + <sound file="OreMine3.wav" /> + </group> + + <group> + <resourceID name="ParklandLake" /> + <sound file="ParklandLake1.wav" /> + <sound file="ParklandLake2.wav" /> + </group> + + <group> + <resourceID name="ParklandPlane" /> + <sound file="ParklandPlane1.wav" /> + <sound file="ParklandPlane2.wav" /> + <sound file="ParklandPlane3.wav" /> + </group> + + <group> + <resourceID name="Pottery" /> + <sound file="Pottery1.wav" /> + <sound file="Pottery2.wav" /> + </group> + + <group> + <resourceID name="PowerCoalEmpty" /> + <sound file="PowerCoalEmpty.wav" /> + </group> + <group> + <resourceID name="PowerCoalLow" /> + <sound file="PowerCoalLow.wav" /> + </group> + <group> + <resourceID name="PowerCoalMed" /> + <sound file="PowerCoalMed.wav" /> + </group> + <group> + <resourceID name="PowerCoalFull" /> + <sound file="PowerCoalFull.wav" /> + </group> + + <group> + <resourceID name="PowerLine" /> + <sound file="PowerLine1.wav" /> + </group> + + <group> + <resourceID name="PowerSolar" /> + <sound file="PowerSolar1.wav" /> + <sound file="PowerSolar2.wav" /> + <sound file="PowerSolar3.wav" /> + </group> + + <group> + <resourceID name="Rail" /> + <resourceID name="RailBridge" /> + <sound file="RailTrain1.wav" /> + <sound file="RailTrain2.wav" /> + <sound file="RailTrain3.wav" /> + </group> + + <group> + <resourceID name="Recycle" /> + <sound file="Recycle1.wav" /> + <sound file="Recycle2.wav" /> + <sound file="Recycle3.wav" /> + </group> + + <group> + <resourceID name="ResidentialHighHigh" /> + <resourceID name="ResidentialHighLow" /> + <sound file="ResidentialHigh1.wav" /> + <sound file="ResidentialHigh2.wav" /> + <sound file="ResidentialHigh3.wav" /> + </group> + + <group> + <resourceID name="ResidentialLow" /> + <sound file="ResidentialLow1.wav" /> + <sound file="ResidentialLow2.wav" /> + <sound file="ResidentialLow3.wav" /> + </group> + + <group> + <resourceID name="ResidentialLowLow" /> + <sound file="ResidentialLowLow1.wav" /> + </group> + + <group> + <resourceID name="ResidentialMedLow" /> + <resourceID name="ResidentialMedHigh" /> + <sound file="ResidentialMed1.wav" /> + <sound file="ResidentialMed2.wav" /> + <sound file="ResidentialMed3.wav" /> + </group> + +<!-- The first half of the following sounds are +used for high traffic, the second half as low traffic +--> + <group> + <resourceID name="Road" /> + <resourceID name="RoadBridge" /> + <sound file="TraficHigh1.wav" /> + <sound file="TraficHigh2.wav" /> + <sound file="TraficHigh3.wav" /> + <sound file="TraficLow1.wav" /> + <sound file="TraficLow2.wav" /> + <sound file="TraficLow3.wav" /> + </group> + + <group> + <resourceID name="Rocket" /> + <sound file="Rocket1.wav" /> + <sound file="Rocket2.wav" /> + <sound file="Rocket3.wav" /> + <sound file="Rocket4.wav" /> + </group> + + <group> + <resourceID name="School" /> + <sound file="School1.wav" /> + <sound file="School2.wav" /> + <sound file="School3.wav" /> + </group> + + <group> + <resourceID name="Shanty" /> + <sound file="Shanty1.wav" /> + <sound file="Shanty2.wav" /> + <sound file="Shanty3.wav" /> + <sound file="Shanty4.wav" /> + <sound file="Shanty5.wav" /> + </group> + + <group> + <resourceID name="SportsCroud" /> + <sound file="SportsCroud1.wav" /> + <sound file="SportsCroud2.wav" /> + <sound file="SportsCroud3.wav" /> + </group> + + <group> + <resourceID name="SubstationOff" /> + <sound file="SubstationOff.wav" /> + </group> + <group> + <resourceID name="Substation" /> + <sound file="Substation3.wav" /> + <sound file="Substation4.wav" /> + </group> + <group> + <resourceID name="SubstationOn" /> + <sound file="SubstationOn.wav" /> + </group> + + <group> + <resourceID name="Tip" /> + <sound file="Tip1.wav" /> + <sound file="Tip2.wav" /> + <sound file="Tip3.wav" /> + </group> + + <group> + <resourceID name="University" /> + <sound file="University1.wav" /> + <sound file="University2.wav" /> + <sound file="University3.wav" /> + </group> + + <group> + <resourceID name="WindMill" /> + <sound file="WindMill1.wav" /> + <sound file="WindMill2.wav" /> + <sound file="WindMill3.wav" /> + </group> + + <group> + <resourceID name="Waterwell" /> + </group> + + <group> + <resourceID name="WindMillHTech" /> + <resourceID name="WindMillHTechRG" /> + <resourceID name="WindMillHTechG" /> + + <sound file="WindMillHTech1.wav" /> + <sound file="WindMillHTech2.wav" /> + </group> + +</resources> Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/sounds/WindmillHTech1.wav and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/sounds/WindmillHTech1.wav differ Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/data/sounds/WindMillHTech1.wav and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/data/sounds/WindMillHTech1.wav differ diff -Nru lincity-ng-2.0/debian/changelog lincity-ng-2.9~git20150314/debian/changelog --- lincity-ng-2.0/debian/changelog 2014-05-01 09:59:21.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/changelog 2015-05-05 19:20:03.000000000 +0000 @@ -1,8 +1,66 @@ -lincity-ng (2.0-4build1) utopic; urgency=medium +lincity-ng (2.9~git20150314-1) unstable; urgency=medium - * Rebuild against libsdl-gfx1.2-5. + [ Markus Koschany ] + * Upload to unstable. + * Imported Upstream version 2.9~git20150314. + * Moved the package to Git. + * Switch Vcs-Browser field to cgit. + * Add README.source. + * Install lincity-ng.png to /usr/share/icons/hicolor/128x128/apps directory. + * debian/rules: Run makerelease.sh script. + * Update debian/copyright for new release. - -- Colin Watson <cjwatson@ubuntu.com> Thu, 01 May 2014 10:59:21 +0100 + [ Cyril Brulebois ] + * Remove myself from Uploaders. + + [ Alexandre Detiste ] + * Update debian/watch and homepage field. BerliOS is long dead, GoogleCode + now too, moved to GitHub. + + -- Markus Koschany <apo@gambaru.de> Tue, 05 May 2015 19:33:58 +0200 + +lincity-ng (2.9~beta-2) experimental; urgency=medium + + [ Markus Koschany ] + * Declare compliance with Debian Policy 3.9.6. + * Switch to Git repository. + * Rebuild to make the game installable again. + + [ Cyril Brulebois ] + * Remove myself from Uploaders. + + -- Markus Koschany <apo@gambaru.de> Sun, 26 Oct 2014 15:16:30 +0100 + +lincity-ng (2.9~beta-1) experimental; urgency=medium + + * Imported Upstream version 2.9~beta. + * Drop all patches. Fixed upstream. + - create-valid-desktop-file.patch + - fix-format-not-a-string-literal-error.patch + - fix-hyphen-is-used-as-minus-sign.patch + - fix-out-of-boundary-crash.patch + - failback-to-800x600.patch + * debian/control: + - Declare compliance with Debian policy 3.9.5. + - Depend on fonts-dejavu instead of the deprecated ttf-dejavu package. + - Move imagemagick to Build-Depends-Indep. + - Remove obsolete Breaks and Replaces fields from lincity-ng binary + package. Add Breaks and Replaces lincity-ng (<< 2.9~beta-1) to + lincity-ng-data because architecture-independent icons have been moved to + this package. + * debian/menu: Change section to Games/Simulation. + * debian/rules: + - Convert icons in dh_auto_build-indep target. + - Use dh_auto_build-arch target for jam -q. + - Enable verbose build with jam -dax. + * wrap-and-sort -sa. + * Update lincity-ng-data.links because of the new fonts-dejavu-core package. + * Add clean file. + * Update watch file and mangle the upstream version correctly. + * Update copyright years. + * Install README-WaterWell and README-Unlimited with docs file. + + -- Markus Koschany <apo@gambaru.de> Mon, 03 Feb 2014 16:57:11 +0100 lincity-ng (2.0-4) unstable; urgency=low diff -Nru lincity-ng-2.0/debian/clean lincity-ng-2.9~git20150314/debian/clean --- lincity-ng-2.0/debian/clean 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/clean 2015-05-05 19:20:03.000000000 +0000 @@ -0,0 +1 @@ +lincity-ng.xpm diff -Nru lincity-ng-2.0/debian/control lincity-ng-2.9~git20150314/debian/control --- lincity-ng-2.0/debian/control 2013-03-02 21:31:21.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/control 2015-05-05 19:20:03.000000000 +0000 @@ -2,11 +2,13 @@ Section: games Priority: optional Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org> -Uploaders: Cyril Brulebois <kibi@debian.org>, Markus Koschany <apo@gambaru.de> +Uploaders: + Markus Koschany <apo@gambaru.de> Build-Depends: + autoconf, + automake, autotools-dev, debhelper (>= 9), - imagemagick, jam, libphysfs-dev, libsdl-gfx1.2-dev, @@ -17,20 +19,20 @@ libxml2-dev, pkg-config, zlib1g-dev -Standards-Version: 3.9.4 -Vcs-Svn: svn://anonscm.debian.org/pkg-games/packages/trunk/lincity-ng/ -Vcs-Browser: http://anonscm.debian.org/viewvc/pkg-games/packages/trunk/lincity-ng/ -Homepage: http://lincity-ng.berlios.de/ +Build-Depends-Indep: + imagemagick +Standards-Version: 3.9.6 +Vcs-Git: git://anonscm.debian.org/pkg-games/lincity-ng.git +Vcs-Browser: http://anonscm.debian.org/cgit/pkg-games/lincity-ng.git +Homepage: https://github.com/lincity-ng/lincity-ng/ Package: lincity-ng Architecture: any Depends: + fonts-dejavu, lincity-ng-data (= ${source:Version}), - ttf-dejavu, ${misc:Depends}, ${shlibs:Depends} -Breaks: lincity-ng-data (<< 1.1.1) -Replaces: lincity-ng-data (<< 1.1.1) Description: City simulator game with polished graphics LinCity-NG is a City Simulation Game. It is a polished and improved version of the old LinCity game: @@ -45,8 +47,14 @@ Package: lincity-ng-data Architecture: all -Depends: ${misc:Depends} -Suggests: lincity-ng +Depends: + ${misc:Depends} +Breaks: + lincity-ng (<< 2.9~beta-1) +Replaces: + lincity-ng (<< 2.9~beta-1) +Suggests: + lincity-ng Description: Media files for the city simulator game LinCity-NG LinCity-NG is a City Simulation Game. It is a polished and improved version of the old LinCity game: diff -Nru lincity-ng-2.0/debian/copyright lincity-ng-2.9~git20150314/debian/copyright --- lincity-ng-2.0/debian/copyright 2013-03-07 15:43:57.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/copyright 2015-05-05 19:20:03.000000000 +0000 @@ -1,6 +1,6 @@ Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: LinCityNG -Source: http://lincity-ng.berlios.de +Source: https://github.com/lincity-ng/lincity-ng/ Files: * Copyright: 1995-1997, I J Peters @@ -20,10 +20,12 @@ more information about contributors to LinCityNG. Files: src/tinygettext/findlocale.* + osx/licenseDMG.py License: MIT -Copyright: 2004, Adam D. Moss +Copyright: 2004, Adam D. Moss + 2011-2013, Jared Hobbs -Files: data/fonts/*.ttf +Files: data/fonts/sans.ttf Copyright: 2003, Bitstream, Inc 2006, Tavmjong Bah License: Bitstream-Vera-Fonts-Copyright and Arev-Fonts-Copyright @@ -37,7 +39,7 @@ 2006, Steinar H. Gunderson <sesse@debian.org> 2006-2007, Cyril Brulebois <kibi@debian.org> 2007-2009, Gonéri Le Bouder <goneri@rulezlan.org> - 2013, Markus Koschany <apo@gambaru.de> + 2013-2015, Markus Koschany <apo@gambaru.de> License: GPL-2+ License: GPL-2+ diff -Nru lincity-ng-2.0/debian/docs lincity-ng-2.9~git20150314/debian/docs --- lincity-ng-2.0/debian/docs 2013-03-02 21:41:57.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/docs 2015-05-05 19:20:03.000000000 +0000 @@ -1,3 +1,4 @@ README +README-Unlimited +README-WaterWell TODO - diff -Nru lincity-ng-2.0/debian/lincity-ng-data.install lincity-ng-2.9~git20150314/debian/lincity-ng-data.install --- lincity-ng-2.0/debian/lincity-ng-data.install 2013-03-02 21:41:57.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/lincity-ng-data.install 2015-05-05 19:20:03.000000000 +0000 @@ -1 +1,3 @@ +data/lincity-ng.png usr/share/icons/hicolor/128x128/apps +lincity-ng.xpm usr/share/pixmaps usr/share/games/lincity-ng diff -Nru lincity-ng-2.0/debian/lincity-ng-data.links lincity-ng-2.9~git20150314/debian/lincity-ng-data.links --- lincity-ng-2.0/debian/lincity-ng-data.links 2013-03-02 23:14:01.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/lincity-ng-data.links 2015-05-05 19:20:03.000000000 +0000 @@ -1,2 +1 @@ -usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf usr/share/games/lincity-ng/fonts/sans.ttf - +usr/share/fonts/truetype/dejavu/DejaVuSans.ttf usr/share/games/lincity-ng/fonts/sans.ttf diff -Nru lincity-ng-2.0/debian/lincity-ng.install lincity-ng-2.9~git20150314/debian/lincity-ng.install --- lincity-ng-2.0/debian/lincity-ng.install 2013-03-07 15:44:54.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/lincity-ng.install 2015-05-05 19:20:03.000000000 +0000 @@ -1,3 +1,2 @@ usr/games/lincity-ng usr/share/games/applications usr/share -usr/share/games/pixmaps usr/share diff -Nru lincity-ng-2.0/debian/menu lincity-ng-2.9~git20150314/debian/menu --- lincity-ng-2.0/debian/menu 2013-03-02 21:41:57.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/menu 2015-05-05 19:20:03.000000000 +0000 @@ -1,5 +1,5 @@ ?package(lincity-ng):needs="X11" \ - section="Games/Strategy" \ + section="Games/Simulation" \ icon="/usr/share/pixmaps/lincity-ng.xpm" \ title="LinCity NG" \ longtitle="LinCity NG - city simulator game with polished graphics" \ diff -Nru lincity-ng-2.0/debian/patches/create-valid-desktop-file.patch lincity-ng-2.9~git20150314/debian/patches/create-valid-desktop-file.patch --- lincity-ng-2.0/debian/patches/create-valid-desktop-file.patch 2013-03-03 17:09:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/patches/create-valid-desktop-file.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,31 +0,0 @@ -From: Markus Koschany <apo@gambaru.de> -Date: Sat, 2 Mar 2013 22:55:02 +0100 -Subject: create valid desktop file - -Forwarded: http://developer.berlios.de/patch/index.php?func=detailpatch&patch_id=3428&group_id=2929 ---- - lincity-ng.desktop | 7 ++++--- - 1 file changed, 4 insertions(+), 3 deletions(-) - -diff --git a/lincity-ng.desktop b/lincity-ng.desktop -index 7137451..0e13116 100644 ---- a/lincity-ng.desktop -+++ b/lincity-ng.desktop -@@ -1,13 +1,14 @@ - [Desktop Entry] - Type=Application - Version=1.0 --Encoding=UTF-8 - Name=Lincity-NG - GenericName=City Simulation Game - GenericName[de]=Stadtsimulationsspiel --Comment=Plan and Build a city and take care of transport, economics, electricityand others. --Icon=lincity-ng.png -+Comment=Plan and build a city and take care of transport, economics, electricity and others. -+Comment[de]=Plane und baue eine Stadt und kümmere dich um das Verkehrswesen, die Wirtschaft, Elektrizität und mehr. -+Icon=lincity-ng - Exec=lincity-ng - Terminal=false - StartupNotify=false - Categories=Game;Simulation; -+Keywords=game;simulation;city;strategy;3D;economics;transport;buildings; diff -Nru lincity-ng-2.0/debian/patches/failback-to-800x600.patch lincity-ng-2.9~git20150314/debian/patches/failback-to-800x600.patch --- lincity-ng-2.0/debian/patches/failback-to-800x600.patch 2013-03-03 17:09:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/patches/failback-to-800x600.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ -From: Debian Games Team <pkg-games-devel@lists.alioth.debian.org> -Date: Sat, 2 Mar 2013 15:12:49 +0100 -Subject: failback-to-800x600 - ---- - src/lincity-ng/main.cpp | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/src/lincity-ng/main.cpp b/src/lincity-ng/main.cpp -index b6a1d1b..549c7a4 100644 ---- a/src/lincity-ng/main.cpp -+++ b/src/lincity-ng/main.cpp -@@ -217,6 +217,14 @@ void initVideo(int width, int height) - SDL_Surface* screen - = SDL_SetVideoMode(width, height, bpp, flags); - SDL_WM_SetCaption(PACKAGE_NAME " " PACKAGE_VERSION, 0); -+ -+ if(!screen) { -+ // Debian: Try harder to get a working screen -+ // The default 1024x768 is to large for most of the -+ // netBook computer. -+ screen = SDL_SetVideoMode(800, 600, bpp, flags); -+ } -+ - if(!screen) { - std::stringstream msg; - msg << "Couldn't set video mode (" diff -Nru lincity-ng-2.0/debian/patches/fix-format-not-a-string-literal-error.patch lincity-ng-2.9~git20150314/debian/patches/fix-format-not-a-string-literal-error.patch --- lincity-ng-2.0/debian/patches/fix-format-not-a-string-literal-error.patch 2013-03-03 17:09:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/patches/fix-format-not-a-string-literal-error.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,36 +0,0 @@ -From: Markus Koschany <apo@gambaru.de> -Date: Sat, 2 Mar 2013 15:14:38 +0100 -Subject: fix format not a string literal error - -Forwarded: http://developer.berlios.de/patch/index.php?func=detailpatch&patch_id=3430&group_id=2929 ---- - src/lincity-ng/Dialog.cpp | 2 +- - src/lincity/fileutil.cpp | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/lincity-ng/Dialog.cpp b/src/lincity-ng/Dialog.cpp -index 241a28e..1137b8a 100644 ---- a/src/lincity-ng/Dialog.cpp -+++ b/src/lincity-ng/Dialog.cpp -@@ -378,7 +378,7 @@ void Dialog::gameStats(){ - setParagraphN( "statistic_text", line++, outf ); - } - if (sustain_flag){ -- snprintf (outf, maxlength, _("Economy is sustainable")); -+ snprintf (outf, maxlength, _("Economy is sustainable"), "%s"); - setParagraphN( "statistic_text", line++, outf ); - } - snprintf (outf, maxlength, _("Population %d of which %d are not housed.") -diff --git a/src/lincity/fileutil.cpp b/src/lincity/fileutil.cpp -index fa6edbd..7a2cc5c 100644 ---- a/src/lincity/fileutil.cpp -+++ b/src/lincity/fileutil.cpp -@@ -498,7 +498,7 @@ void check_savedir(void) - - void malloc_failure(void) - { -- printf(_("Out of memory: malloc failure\n")); -+ printf(_("Out of memory: malloc failure \n"), "%s"); - exit(1); - } - diff -Nru lincity-ng-2.0/debian/patches/fix-hyphen-is-used-as-minus-sign.patch lincity-ng-2.9~git20150314/debian/patches/fix-hyphen-is-used-as-minus-sign.patch --- lincity-ng-2.0/debian/patches/fix-hyphen-is-used-as-minus-sign.patch 2013-03-03 17:09:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/patches/fix-hyphen-is-used-as-minus-sign.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -From: Markus Koschany <apo@gambaru.de> -Date: Sat, 2 Mar 2013 22:43:26 +0100 -Subject: fix hyphen is used as minus sign - -Forwarded: http://developer.berlios.de/patch/index.php?func=detailpatch&patch_id=3429&group_id=2929 ---- - doc/lincity-ng.6 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/doc/lincity-ng.6 b/doc/lincity-ng.6 -index b0ca5c6..b24ec0c 100644 ---- a/doc/lincity-ng.6 -+++ b/doc/lincity-ng.6 -@@ -76,7 +76,7 @@ speficify how quick is the fast speed. (eg. \-q 1 is the fastest possible with f - .SH UPGRADE from 1.x to 2.x - A new format for saved games is used since 2.0, but old games can be imported and automagically converted. Just copy $HOME/.lincity/* (old location for lincity and lincity-ng 1.x) to $HOME/.lincity-ng/ (new location since 2.0). - -- cp -a ~/.lincity/* ~/.lincity-ng/ -+ cp \-a ~/.lincity/* ~/.lincity-ng/ - - At the start of the game, one message will popup to remind you have some changes to do in your city. - diff -Nru lincity-ng-2.0/debian/patches/fix-out-of-boundary-crash.patch lincity-ng-2.9~git20150314/debian/patches/fix-out-of-boundary-crash.patch --- lincity-ng-2.0/debian/patches/fix-out-of-boundary-crash.patch 2013-03-03 17:15:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/patches/fix-out-of-boundary-crash.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ -From: Alain Baeckeroot <alain.baeckeroot@laposte.net> -Date: Sun, 3 Mar 2013 01:01:27 +0100 -Subject: fix out of boundary crash - -Patch was committed to upstream's svn repository. Revision 1605. - -Bug: http://bugs.debian.org/604172 ---- - src/lincity-ng/GameView.cpp | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/src/lincity-ng/GameView.cpp b/src/lincity-ng/GameView.cpp -index ca100fd..cca6740 100644 ---- a/src/lincity-ng/GameView.cpp -+++ b/src/lincity-ng/GameView.cpp -@@ -1724,6 +1724,12 @@ void GameView::printStatusMessage( std::string message ){ - int GameView::bulldozeCost( MapPoint tile ){ - int group; - int prize = 0; -+ if ( (tile.x < 0) || (tile.x >= WORLD_SIDE_LEN) || (tile.y < 0) || (tile.y >= WORLD_SIDE_LEN) ) -+ return 0; -+ -+ if( selected_module_type == CST_NONE ) -+ return 0; -+ - if (MP_TYPE( tile.x, tile.y) == CST_USED) - group = MP_GROUP( MP_INFO(tile.x,tile.y).int_1, - MP_INFO(tile.x,tile.y).int_2 ); -@@ -1737,6 +1743,9 @@ int GameView::buildCost( MapPoint tile ){ - if( selected_module_type == CST_NONE ){ - return 0; - } -+ if ( (tile.x < 0) || (tile.x >= WORLD_SIDE_LEN) || (tile.y < 0) || (tile.y >= WORLD_SIDE_LEN) ) -+ return 0; -+ - if (MP_TYPE( tile.x, tile.y ) == CST_USED) - return 0; - if (( selected_module_type == CST_TRACK_LR || selected_module_type == CST_ROAD_LR || diff -Nru lincity-ng-2.0/debian/patches/series lincity-ng-2.9~git20150314/debian/patches/series --- lincity-ng-2.0/debian/patches/series 2013-03-03 17:09:20.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/patches/series 1970-01-01 00:00:00.000000000 +0000 @@ -1,5 +0,0 @@ -failback-to-800x600.patch -fix-format-not-a-string-literal-error.patch -fix-hyphen-is-used-as-minus-sign.patch -create-valid-desktop-file.patch -fix-out-of-boundary-crash.patch diff -Nru lincity-ng-2.0/debian/README.source lincity-ng-2.9~git20150314/debian/README.source --- lincity-ng-2.0/debian/README.source 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/README.source 2015-05-05 19:20:03.000000000 +0000 @@ -0,0 +1,8 @@ +Steps to recreate the original tarball +====================================== + +1. git clone https://github.com/lincity-ng/lincity-ng.git +2. git checkout -b debiansource 3e94c18bf1bf04cc381b71ce12b2073ed388a81d +3. Remove all hidden files in the lincity-ng root directory and also the .git + directory. +4. tar caf lincity-ng_2.9~git20150314.orig.tar.xz lincity-ng diff -Nru lincity-ng-2.0/debian/rules lincity-ng-2.9~git20150314/debian/rules --- lincity-ng-2.0/debian/rules 2013-03-07 17:34:53.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/rules 2015-05-05 19:20:03.000000000 +0000 @@ -6,27 +6,24 @@ dh $@ --parallel --with autotools_dev override_dh_auto_configure: + ./makerelease.sh dh_auto_configure -- \ - --prefix=/usr \ - --bindir=\$${prefix}/games \ - --datarootdir=\$${prefix}/share/games \ - --mandir=\$${prefix}/share/man + --prefix=/usr \ + --bindir=\$${prefix}/games \ + --datarootdir=\$${prefix}/share/games \ + --mandir=\$${prefix}/share/man -override_dh_auto_build: - jam -q +override_dh_auto_build-arch: + jam -q -dax -override_dh_auto_install: - jam -sprefix=$(CURDIR)/debian/tmp/usr install - -override_dh_install: +override_dh_auto_build-indep: # create a .xpm file for the Debian menu - convert -monitor -resize 32x32 \ - $(CURDIR)/debian/tmp/usr/share/games/pixmaps/lincity-ng.png \ - $(CURDIR)/debian/tmp/usr/share/games/pixmaps/lincity-ng.xpm - dh_install + convert -monitor -resize 32x32 data/lincity-ng.png lincity-ng.xpm +override_dh_auto_install: + jam -sprefix=$(CURDIR)/debian/tmp/usr install # Remove duplicate Bitstream Vera font, use links file and symlink - # to Debian's ttf-dejavu package. + # to Debian's fonts-dejavu package. rm -f $(CURDIR)/debian/lincity-ng-data/usr/share/games/lincity-ng/fonts/* override_dh_installchangelogs: diff -Nru lincity-ng-2.0/debian/watch lincity-ng-2.9~git20150314/debian/watch --- lincity-ng-2.0/debian/watch 2013-03-04 23:01:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/debian/watch 2015-05-05 19:20:03.000000000 +0000 @@ -1,7 +1,4 @@ -# mandatory line -- format version version=3 - -# Berlios project, ID 2929, tar.bz2 source -opts=downloadurlmangle=s/prdownload/download/ \ - http://developer.berlios.de/project/showfiles.php?group_id=2929 \ - http://prdownload.berlios.de/lincity-ng/lincity-ng-(.*)\.(?:tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz))) +opts=dversionmangle=s/(\da?)[\+\.\-~](?:dfsg|debian|ds|repack|repacked)\.?\d*$/$1/ \ +https://github.com/lincity-ng/lincity-ng/tags \ +.*/archive/(?:upstream/)?(?:v||version-|release-|X|R|r)lincity-ng-(\d\S*)\.tar\.gz diff -Nru lincity-ng-2.0/doc/Doxyfile lincity-ng-2.9~git20150314/doc/Doxyfile --- lincity-ng-2.0/doc/Doxyfile 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/Doxyfile 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,1517 @@ +# Doxyfile 1.6.1 + +# This file describes the settings to be used by the documentation system +# doxygen (www.doxygen.org) for a project +# +# All text after a hash (#) is considered a comment and will be ignored +# The format is: +# TAG = value [value, ...] +# For lists items can also be appended using: +# TAG += value [value, ...] +# Values that contain spaces should be placed between quotes (" ") + +#--------------------------------------------------------------------------- +# Project related configuration options +#--------------------------------------------------------------------------- + +# This tag specifies the encoding used for all characters in the config file +# that follow. The default is UTF-8 which is also the encoding used for all +# text before the first occurrence of this tag. Doxygen uses libiconv (or the +# iconv built into libc) for the transcoding. See +# http://www.gnu.org/software/libiconv for the list of possible encodings. + +DOXYFILE_ENCODING = UTF-8 + +# The PROJECT_NAME tag is a single word (or a sequence of words surrounded +# by quotes) that should identify the project. + +PROJECT_NAME = Lincity-NG + +# The PROJECT_NUMBER tag can be used to enter a project or revision number. +# This could be handy for archiving the generated documentation or +# if some version control system is used. + +PROJECT_NUMBER = + +# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) +# base path where the generated documentation will be put. +# If a relative path is entered, it will be relative to the location +# where doxygen was started. If left blank the current directory will be used. + +OUTPUT_DIRECTORY = doc/doxygen + +# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create +# 4096 sub-directories (in 2 levels) under the output directory of each output +# format and will distribute the generated files over these directories. +# Enabling this option can be useful when feeding doxygen a huge amount of +# source files, where putting all generated files in the same directory would +# otherwise cause performance problems for the file system. + +CREATE_SUBDIRS = YES + +# The OUTPUT_LANGUAGE tag is used to specify the language in which all +# documentation generated by doxygen is written. Doxygen will use this +# information to generate all constant output in the proper language. +# The default language is English, other supported languages are: +# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, +# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German, +# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English +# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian, +# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak, +# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese. + +OUTPUT_LANGUAGE = English + +# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will +# include brief member descriptions after the members that are listed in +# the file and class documentation (similar to JavaDoc). +# Set to NO to disable this. + +BRIEF_MEMBER_DESC = YES + +# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend +# the brief description of a member or function before the detailed description. +# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the +# brief descriptions will be completely suppressed. + +REPEAT_BRIEF = YES + +# This tag implements a quasi-intelligent brief description abbreviator +# that is used to form the text in various listings. Each string +# in this list, if found as the leading text of the brief description, will be +# stripped from the text and the result after processing the whole list, is +# used as the annotated text. Otherwise, the brief description is used as-is. +# If left blank, the following values are used ("$name" is automatically +# replaced with the name of the entity): "The $name class" "The $name widget" +# "The $name file" "is" "provides" "specifies" "contains" +# "represents" "a" "an" "the" + +ABBREVIATE_BRIEF = + +# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then +# Doxygen will generate a detailed section even if there is only a brief +# description. + +ALWAYS_DETAILED_SEC = NO + +# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all +# inherited members of a class in the documentation of that class as if those +# members were ordinary class members. Constructors, destructors and assignment +# operators of the base classes will not be shown. + +INLINE_INHERITED_MEMB = NO + +# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full +# path before files name in the file list and in the header files. If set +# to NO the shortest path that makes the file name unique will be used. + +FULL_PATH_NAMES = YES + +# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag +# can be used to strip a user-defined part of the path. Stripping is +# only done if one of the specified strings matches the left-hand part of +# the path. The tag can be used to show relative paths in the file list. +# If left blank the directory from which doxygen is run is used as the +# path to strip. + +STRIP_FROM_PATH = "src/" + +# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of +# the path mentioned in the documentation of a class, which tells +# the reader which header file to include in order to use a class. +# If left blank only the name of the header file containing the class +# definition is used. Otherwise one should specify the include paths that +# are normally passed to the compiler using the -I flag. + +STRIP_FROM_INC_PATH = "src/" + +# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter +# (but less readable) file names. This can be useful is your file systems +# doesn't support long names like on DOS, Mac, or CD-ROM. + +SHORT_NAMES = NO + +# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen +# will interpret the first line (until the first dot) of a JavaDoc-style +# comment as the brief description. If set to NO, the JavaDoc +# comments will behave just like regular Qt-style comments +# (thus requiring an explicit @brief command for a brief description.) + +JAVADOC_AUTOBRIEF = NO + +# If the QT_AUTOBRIEF tag is set to YES then Doxygen will +# interpret the first line (until the first dot) of a Qt-style +# comment as the brief description. If set to NO, the comments +# will behave just like regular Qt-style comments (thus requiring +# an explicit \brief command for a brief description.) + +QT_AUTOBRIEF = NO + +# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen +# treat a multi-line C++ special comment block (i.e. a block of //! or /// +# comments) as a brief description. This used to be the default behaviour. +# The new default is to treat a multi-line C++ comment block as a detailed +# description. Set this tag to YES if you prefer the old behaviour instead. + +MULTILINE_CPP_IS_BRIEF = NO + +# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented +# member inherits the documentation from any documented member that it +# re-implements. + +INHERIT_DOCS = YES + +# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce +# a new page for each member. If set to NO, the documentation of a member will +# be part of the file/class/namespace that contains it. + +SEPARATE_MEMBER_PAGES = NO + +# The TAB_SIZE tag can be used to set the number of spaces in a tab. +# Doxygen uses this value to replace tabs by spaces in code fragments. + +TAB_SIZE = 8 + +# This tag can be used to specify a number of aliases that acts +# as commands in the documentation. An alias has the form "name=value". +# For example adding "sideeffect=\par Side Effects:\n" will allow you to +# put the command \sideeffect (or @sideeffect) in the documentation, which +# will result in a user-defined paragraph with heading "Side Effects:". +# You can put \n's in the value part of an alias to insert newlines. + +ALIASES = + +# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C +# sources only. Doxygen will then generate output that is more tailored for C. +# For instance, some of the names that are used will be different. The list +# of all members will be omitted, etc. + +OPTIMIZE_OUTPUT_FOR_C = NO + +# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java +# sources only. Doxygen will then generate output that is more tailored for +# Java. For instance, namespaces will be presented as packages, qualified +# scopes will look different, etc. + +OPTIMIZE_OUTPUT_JAVA = NO + +# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran +# sources only. Doxygen will then generate output that is more tailored for +# Fortran. + +OPTIMIZE_FOR_FORTRAN = NO + +# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL +# sources. Doxygen will then generate output that is tailored for +# VHDL. + +OPTIMIZE_OUTPUT_VHDL = NO + +# Doxygen selects the parser to use depending on the extension of the files it parses. +# With this tag you can assign which parser to use for a given extension. +# Doxygen has a built-in mapping, but you can override or extend it using this tag. +# The format is ext=language, where ext is a file extension, and language is one of +# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP, +# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat +# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran), +# use: inc=Fortran f=C. Note that for custom extensions you also need to set FILE_PATTERNS otherwise the files are not read by doxygen. + +EXTENSION_MAPPING = + +# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want +# to include (a tag file for) the STL sources as input, then you should +# set this tag to YES in order to let doxygen match functions declarations and +# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. +# func(std::string) {}). This also make the inheritance and collaboration +# diagrams that involve STL classes more complete and accurate. + +BUILTIN_STL_SUPPORT = NO + +# If you use Microsoft's C++/CLI language, you should set this option to YES to +# enable parsing support. + +CPP_CLI_SUPPORT = NO + +# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. +# Doxygen will parse them like normal C++ but will assume all classes use public +# instead of private inheritance when no explicit protection keyword is present. + +SIP_SUPPORT = NO + +# For Microsoft's IDL there are propget and propput attributes to indicate getter +# and setter methods for a property. Setting this option to YES (the default) +# will make doxygen to replace the get and set methods by a property in the +# documentation. This will only work if the methods are indeed getting or +# setting a simple type. If this is not the case, or you want to show the +# methods anyway, you should set this option to NO. + +IDL_PROPERTY_SUPPORT = YES + +# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC +# tag is set to YES, then doxygen will reuse the documentation of the first +# member in the group (if any) for the other members of the group. By default +# all members of a group must be documented explicitly. + +DISTRIBUTE_GROUP_DOC = NO + +# Set the SUBGROUPING tag to YES (the default) to allow class member groups of +# the same type (for instance a group of public functions) to be put as a +# subgroup of that type (e.g. under the Public Functions section). Set it to +# NO to prevent subgrouping. Alternatively, this can be done per class using +# the \nosubgrouping command. + +SUBGROUPING = YES + +# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum +# is documented as struct, union, or enum with the name of the typedef. So +# typedef struct TypeS {} TypeT, will appear in the documentation as a struct +# with name TypeT. When disabled the typedef will appear as a member of a file, +# namespace, or class. And the struct will be named TypeS. This can typically +# be useful for C code in case the coding convention dictates that all compound +# types are typedef'ed and only the typedef is referenced, never the tag name. + +TYPEDEF_HIDES_STRUCT = NO + +# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to +# determine which symbols to keep in memory and which to flush to disk. +# When the cache is full, less often used symbols will be written to disk. +# For small to medium size projects (<1000 input files) the default value is +# probably good enough. For larger projects a too small cache size can cause +# doxygen to be busy swapping symbols to and from disk most of the time +# causing a significant performance penality. +# If the system has enough physical memory increasing the cache will improve the +# performance by keeping more symbols in memory. Note that the value works on +# a logarithmic scale so increasing the size by one will rougly double the +# memory usage. The cache size is given by this formula: +# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0, +# corresponding to a cache size of 2^16 = 65536 symbols + +SYMBOL_CACHE_SIZE = 0 + +#--------------------------------------------------------------------------- +# Build related configuration options +#--------------------------------------------------------------------------- + +# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in +# documentation are documented, even if no documentation was available. +# Private class members and static file members will be hidden unless +# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES + +EXTRACT_ALL = YES + +# If the EXTRACT_PRIVATE tag is set to YES all private members of a class +# will be included in the documentation. + +EXTRACT_PRIVATE = NO + +# If the EXTRACT_STATIC tag is set to YES all static members of a file +# will be included in the documentation. + +EXTRACT_STATIC = YES + +# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) +# defined locally in source files will be included in the documentation. +# If set to NO only classes defined in header files are included. + +EXTRACT_LOCAL_CLASSES = YES + +# This flag is only useful for Objective-C code. When set to YES local +# methods, which are defined in the implementation section but not in +# the interface are included in the documentation. +# If set to NO (the default) only methods in the interface are included. + +EXTRACT_LOCAL_METHODS = NO + +# If this flag is set to YES, the members of anonymous namespaces will be +# extracted and appear in the documentation as a namespace called +# 'anonymous_namespace{file}', where file will be replaced with the base +# name of the file that contains the anonymous namespace. By default +# anonymous namespace are hidden. + +EXTRACT_ANON_NSPACES = NO + +# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all +# undocumented members of documented classes, files or namespaces. +# If set to NO (the default) these members will be included in the +# various overviews, but no documentation section is generated. +# This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_MEMBERS = NO + +# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all +# undocumented classes that are normally visible in the class hierarchy. +# If set to NO (the default) these classes will be included in the various +# overviews. This option has no effect if EXTRACT_ALL is enabled. + +HIDE_UNDOC_CLASSES = NO + +# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all +# friend (class|struct|union) declarations. +# If set to NO (the default) these declarations will be included in the +# documentation. + +HIDE_FRIEND_COMPOUNDS = NO + +# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any +# documentation blocks found inside the body of a function. +# If set to NO (the default) these blocks will be appended to the +# function's detailed documentation block. + +HIDE_IN_BODY_DOCS = NO + +# The INTERNAL_DOCS tag determines if documentation +# that is typed after a \internal command is included. If the tag is set +# to NO (the default) then the documentation will be excluded. +# Set it to YES to include the internal documentation. + +INTERNAL_DOCS = NO + +# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate +# file names in lower-case letters. If set to YES upper-case letters are also +# allowed. This is useful if you have classes or files whose names only differ +# in case and if your file system supports case sensitive file names. Windows +# and Mac users are advised to set this option to NO. + +CASE_SENSE_NAMES = YES + +# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen +# will show members with their full class and namespace scopes in the +# documentation. If set to YES the scope will be hidden. + +HIDE_SCOPE_NAMES = NO + +# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen +# will put a list of the files that are included by a file in the documentation +# of that file. + +SHOW_INCLUDE_FILES = YES + +# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] +# is inserted in the documentation for inline members. + +INLINE_INFO = YES + +# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen +# will sort the (detailed) documentation of file and class members +# alphabetically by member name. If set to NO the members will appear in +# declaration order. + +SORT_MEMBER_DOCS = YES + +# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the +# brief documentation of file, namespace and class members alphabetically +# by member name. If set to NO (the default) the members will appear in +# declaration order. + +SORT_BRIEF_DOCS = NO + +# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the (brief and detailed) documentation of class members so that constructors and destructors are listed first. If set to NO (the default) the constructors will appear in the respective orders defined by SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO. + +SORT_MEMBERS_CTORS_1ST = NO + +# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the +# hierarchy of group names into alphabetical order. If set to NO (the default) +# the group names will appear in their defined order. + +SORT_GROUP_NAMES = NO + +# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be +# sorted by fully-qualified names, including namespaces. If set to +# NO (the default), the class list will be sorted only by class name, +# not including the namespace part. +# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES. +# Note: This option applies only to the class list, not to the +# alphabetical list. + +SORT_BY_SCOPE_NAME = NO + +# The GENERATE_TODOLIST tag can be used to enable (YES) or +# disable (NO) the todo list. This list is created by putting \todo +# commands in the documentation. + +GENERATE_TODOLIST = YES + +# The GENERATE_TESTLIST tag can be used to enable (YES) or +# disable (NO) the test list. This list is created by putting \test +# commands in the documentation. + +GENERATE_TESTLIST = YES + +# The GENERATE_BUGLIST tag can be used to enable (YES) or +# disable (NO) the bug list. This list is created by putting \bug +# commands in the documentation. + +GENERATE_BUGLIST = YES + +# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or +# disable (NO) the deprecated list. This list is created by putting +# \deprecated commands in the documentation. + +GENERATE_DEPRECATEDLIST= YES + +# The ENABLED_SECTIONS tag can be used to enable conditional +# documentation sections, marked by \if sectionname ... \endif. + +ENABLED_SECTIONS = + +# The MAX_INITIALIZER_LINES tag determines the maximum number of lines +# the initial value of a variable or define consists of for it to appear in +# the documentation. If the initializer consists of more lines than specified +# here it will be hidden. Use a value of 0 to hide initializers completely. +# The appearance of the initializer of individual variables and defines in the +# documentation can be controlled using \showinitializer or \hideinitializer +# command in the documentation regardless of this setting. + +MAX_INITIALIZER_LINES = 30 + +# Set the SHOW_USED_FILES tag to NO to disable the list of files generated +# at the bottom of the documentation of classes and structs. If set to YES the +# list will mention the files that were used to generate the documentation. + +SHOW_USED_FILES = YES + +# If the sources in your project are distributed over multiple directories +# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy +# in the documentation. The default is NO. + +SHOW_DIRECTORIES = YES + +# Set the SHOW_FILES tag to NO to disable the generation of the Files page. +# This will remove the Files entry from the Quick Index and from the +# Folder Tree View (if specified). The default is YES. + +SHOW_FILES = YES + +# Set the SHOW_NAMESPACES tag to NO to disable the generation of the +# Namespaces page. +# This will remove the Namespaces entry from the Quick Index +# and from the Folder Tree View (if specified). The default is YES. + +SHOW_NAMESPACES = YES + +# The FILE_VERSION_FILTER tag can be used to specify a program or script that +# doxygen should invoke to get the current version for each file (typically from +# the version control system). Doxygen will invoke the program by executing (via +# popen()) the command <command> <input-file>, where <command> is the value of +# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file +# provided by doxygen. Whatever the program writes to standard output +# is used as the file version. See the manual for examples. + +FILE_VERSION_FILTER = + +# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by +# doxygen. The layout file controls the global structure of the generated output files +# in an output format independent way. The create the layout file that represents +# doxygen's defaults, run doxygen with the -l option. You can optionally specify a +# file name after the option, if omitted DoxygenLayout.xml will be used as the name +# of the layout file. + +LAYOUT_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- + +# The QUIET tag can be used to turn on/off the messages that are generated +# by doxygen. Possible values are YES and NO. If left blank NO is used. + +QUIET = NO + +# The WARNINGS tag can be used to turn on/off the warning messages that are +# generated by doxygen. Possible values are YES and NO. If left blank +# NO is used. + +WARNINGS = YES + +# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings +# for undocumented members. If EXTRACT_ALL is set to YES then this flag will +# automatically be disabled. + +WARN_IF_UNDOCUMENTED = YES + +# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for +# potential errors in the documentation, such as not documenting some +# parameters in a documented function, or documenting parameters that +# don't exist or using markup commands wrongly. + +WARN_IF_DOC_ERROR = YES + +# This WARN_NO_PARAMDOC option can be abled to get warnings for +# functions that are documented, but have no documentation for their parameters +# or return value. If set to NO (the default) doxygen will only warn about +# wrong or incomplete parameter documentation, but not about the absence of +# documentation. + +WARN_NO_PARAMDOC = NO + +# The WARN_FORMAT tag determines the format of the warning messages that +# doxygen can produce. The string should contain the $file, $line, and $text +# tags, which will be replaced by the file and line number from which the +# warning originated and the warning text. Optionally the format may contain +# $version, which will be replaced by the version of the file (if it could +# be obtained via FILE_VERSION_FILTER) + +WARN_FORMAT = "$file:$line: $text " + +# The WARN_LOGFILE tag can be used to specify a file to which warning +# and error messages should be written. If left blank the output is written +# to stderr. + +WARN_LOGFILE = + +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- + +# The INPUT tag can be used to specify the files and/or directories that contain +# documented source files. You may enter file names like "myfile.cpp" or +# directories like "/usr/src/myproject". Separate the files or directories +# with spaces. + +INPUT = src + +# This tag can be used to specify the character encoding of the source files +# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is +# also the default input encoding. Doxygen uses libiconv (or the iconv built +# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for +# the list of possible encodings. + +INPUT_ENCODING = UTF-8 + +# If the value of the INPUT tag contains directories, you can use the +# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank the following patterns are tested: +# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx +# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90 + +FILE_PATTERNS = *.hpp \ + *.cpp \ + *.inc \ + *.h + +# The RECURSIVE tag can be used to turn specify whether or not subdirectories +# should be searched for input files as well. Possible values are YES and NO. +# If left blank NO is used. + +RECURSIVE = YES + +# The EXCLUDE tag can be used to specify files and/or directories that should +# excluded from the INPUT source files. This way you can easily exclude a +# subdirectory from a directory tree whose root is specified with the INPUT tag. + +EXCLUDE = oldgui + +# The EXCLUDE_SYMLINKS tag can be used select whether or not files or +# directories that are symbolic links (a Unix filesystem feature) are excluded +# from the input. + +EXCLUDE_SYMLINKS = NO + +# If the value of the INPUT tag contains directories, you can use the +# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude +# certain files from those directories. Note that the wildcards are matched +# against the file with absolute path, so to exclude all test directories +# for example use the pattern */test/* + +EXCLUDE_PATTERNS = + +# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names +# (namespaces, classes, functions, etc.) that should be excluded from the +# output. The symbol name can be a fully qualified name, a word, or if the +# wildcard * is used, a substring. Examples: ANamespace, AClass, +# AClass::ANamespace, ANamespace::*Test + +EXCLUDE_SYMBOLS = + +# The EXAMPLE_PATH tag can be used to specify one or more files or +# directories that contain example code fragments that are included (see +# the \include command). + +EXAMPLE_PATH = + +# If the value of the EXAMPLE_PATH tag contains directories, you can use the +# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp +# and *.h) to filter out the source-files in the directories. If left +# blank all files are included. + +EXAMPLE_PATTERNS = + +# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be +# searched for input files to be used with the \include or \dontinclude +# commands irrespective of the value of the RECURSIVE tag. +# Possible values are YES and NO. If left blank NO is used. + +EXAMPLE_RECURSIVE = NO + +# The IMAGE_PATH tag can be used to specify one or more files or +# directories that contain image that are included in the documentation (see +# the \image command). + +IMAGE_PATH = + +# The INPUT_FILTER tag can be used to specify a program that doxygen should +# invoke to filter for each input file. Doxygen will invoke the filter program +# by executing (via popen()) the command <filter> <input-file>, where <filter> +# is the value of the INPUT_FILTER tag, and <input-file> is the name of an +# input file. Doxygen will then use the output that the filter program writes +# to standard output. +# If FILTER_PATTERNS is specified, this tag will be +# ignored. + +INPUT_FILTER = + +# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern +# basis. +# Doxygen will compare the file name with each pattern and apply the +# filter if there is a match. +# The filters are a list of the form: +# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further +# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER +# is applied to all files. + +FILTER_PATTERNS = + +# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using +# INPUT_FILTER) will be used to filter the input files when producing source +# files to browse (i.e. when SOURCE_BROWSER is set to YES). + +FILTER_SOURCE_FILES = NO + +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- + +# If the SOURCE_BROWSER tag is set to YES then a list of source files will +# be generated. Documented entities will be cross-referenced with these sources. +# Note: To get rid of all source code in the generated output, make sure also +# VERBATIM_HEADERS is set to NO. + +SOURCE_BROWSER = YES + +# Setting the INLINE_SOURCES tag to YES will include the body +# of functions and classes directly in the documentation. + +INLINE_SOURCES = NO + +# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct +# doxygen to hide any special comment blocks from generated source code +# fragments. Normal C and C++ comments will always remain visible. + +STRIP_CODE_COMMENTS = YES + +# If the REFERENCED_BY_RELATION tag is set to YES +# then for each documented function all documented +# functions referencing it will be listed. + +REFERENCED_BY_RELATION = YES + +# If the REFERENCES_RELATION tag is set to YES +# then for each documented function all documented entities +# called/used by that function will be listed. + +REFERENCES_RELATION = YES + +# If the REFERENCES_LINK_SOURCE tag is set to YES (the default) +# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from +# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will +# link to the source code. +# Otherwise they will link to the documentation. + +REFERENCES_LINK_SOURCE = YES + +# If the USE_HTAGS tag is set to YES then the references to source code +# will point to the HTML generated by the htags(1) tool instead of doxygen +# built-in source browser. The htags tool is part of GNU's global source +# tagging system (see http://www.gnu.org/software/global/global.html). You +# will need version 4.8.6 or higher. + +USE_HTAGS = NO + +# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen +# will generate a verbatim copy of the header file for each class for +# which an include is specified. Set to NO to disable this. + +VERBATIM_HEADERS = YES + +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- + +# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index +# of all compounds will be generated. Enable this if the project +# contains a lot of classes, structs, unions or interfaces. + +ALPHABETICAL_INDEX = NO + +# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then +# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns +# in which this list will be split (can be a number in the range [1..20]) + +COLS_IN_ALPHA_INDEX = 5 + +# In case all classes in a project start with a common prefix, all +# classes will be put under the same header in the alphabetical index. +# The IGNORE_PREFIX tag can be used to specify one or more prefixes that +# should be ignored while generating the index headers. + +IGNORE_PREFIX = + +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- + +# If the GENERATE_HTML tag is set to YES (the default) Doxygen will +# generate HTML output. + +GENERATE_HTML = YES + +# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `html' will be used as the default path. + +HTML_OUTPUT = html + +# The HTML_FILE_EXTENSION tag can be used to specify the file extension for +# each generated HTML page (for example: .htm,.php,.asp). If it is left blank +# doxygen will generate files with .html extension. + +HTML_FILE_EXTENSION = .html + +# The HTML_HEADER tag can be used to specify a personal HTML header for +# each generated HTML page. If it is left blank doxygen will generate a +# standard header. + +HTML_HEADER = + +# The HTML_FOOTER tag can be used to specify a personal HTML footer for +# each generated HTML page. If it is left blank doxygen will generate a +# standard footer. + +HTML_FOOTER = + +# The HTML_STYLESHEET tag can be used to specify a user-defined cascading +# style sheet that is used by each HTML page. It can be used to +# fine-tune the look of the HTML output. If the tag is left blank doxygen +# will generate a default style sheet. Note that doxygen will try to copy +# the style sheet file to the HTML output directory, so don't put your own +# stylesheet in the HTML output directory as well, or it will be erased! + +HTML_STYLESHEET = + +# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, +# files or namespaces will be aligned in HTML using tables. If set to +# NO a bullet list will be used. + +HTML_ALIGN_MEMBERS = YES + +# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML +# documentation will contain sections that can be hidden and shown after the +# page has loaded. For this to work a browser that supports +# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox +# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari). + +HTML_DYNAMIC_SECTIONS = NO + +# If the GENERATE_DOCSET tag is set to YES, additional index files +# will be generated that can be used as input for Apple's Xcode 3 +# integrated development environment, introduced with OSX 10.5 (Leopard). +# To create a documentation set, doxygen will generate a Makefile in the +# HTML output directory. Running make will produce the docset in that +# directory and running "make install" will install the docset in +# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find +# it at startup. +# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information. + +GENERATE_DOCSET = NO + +# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the +# feed. A documentation feed provides an umbrella under which multiple +# documentation sets from a single provider (such as a company or product suite) +# can be grouped. + +DOCSET_FEEDNAME = "Doxygen generated docs" + +# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that +# should uniquely identify the documentation set bundle. This should be a +# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen +# will append .docset to the name. + +DOCSET_BUNDLE_ID = org.doxygen.Project + +# If the GENERATE_HTMLHELP tag is set to YES, additional index files +# will be generated that can be used as input for tools like the +# Microsoft HTML help workshop to generate a compiled HTML help file (.chm) +# of the generated HTML documentation. + +GENERATE_HTMLHELP = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can +# be used to specify the file name of the resulting .chm file. You +# can add a path in front of the file if the result should not be +# written to the html output directory. + +CHM_FILE = + +# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can +# be used to specify the location (absolute path including file name) of +# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run +# the HTML help compiler on the generated index.hhp. + +HHC_LOCATION = + +# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag +# controls if a separate .chi index file is generated (YES) or that +# it should be included in the master .chm file (NO). + +GENERATE_CHI = NO + +# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING +# is used to encode HtmlHelp index (hhk), content (hhc) and project file +# content. + +CHM_INDEX_ENCODING = + +# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag +# controls whether a binary table of contents is generated (YES) or a +# normal table of contents (NO) in the .chm file. + +BINARY_TOC = NO + +# The TOC_EXPAND flag can be set to YES to add extra items for group members +# to the contents of the HTML help documentation and to the tree view. + +TOC_EXPAND = NO + +# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER +# are set, an additional index file will be generated that can be used as input for +# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated +# HTML documentation. + +GENERATE_QHP = NO + +# If the QHG_LOCATION tag is specified, the QCH_FILE tag can +# be used to specify the file name of the resulting .qch file. +# The path specified is relative to the HTML output folder. + +QCH_FILE = + +# The QHP_NAMESPACE tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#namespace + +QHP_NAMESPACE = + +# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating +# Qt Help Project output. For more information please see +# http://doc.trolltech.com/qthelpproject.html#virtual-folders + +QHP_VIRTUAL_FOLDER = doc + +# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add. +# For more information please see +# http://doc.trolltech.com/qthelpproject.html#custom-filters + +QHP_CUST_FILTER_NAME = + +# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see +# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>. + +QHP_CUST_FILTER_ATTRS = + +# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's +# filter section matches. +# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>. + +QHP_SECT_FILTER_ATTRS = + +# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can +# be used to specify the location of Qt's qhelpgenerator. +# If non-empty doxygen will try to run qhelpgenerator on the generated +# .qhp file. + +QHG_LOCATION = + +# The DISABLE_INDEX tag can be used to turn on/off the condensed index at +# top of each HTML page. The value NO (the default) enables the index and +# the value YES disables it. + +DISABLE_INDEX = NO + +# This tag can be used to set the number of enum values (range [1..20]) +# that doxygen will group on one line in the generated HTML documentation. + +ENUM_VALUES_PER_LINE = 4 + +# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index +# structure should be generated to display hierarchical information. +# If the tag value is set to YES, a side panel will be generated +# containing a tree-like index structure (just like the one that +# is generated for HTML Help). For this to work a browser that supports +# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser). +# Windows users are probably better off using the HTML help feature. + +GENERATE_TREEVIEW = NO + +# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories, +# and Class Hierarchy pages using a tree view instead of an ordered list. + +USE_INLINE_TREES = NO + +# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be +# used to set the initial width (in pixels) of the frame in which the tree +# is shown. + +TREEVIEW_WIDTH = 250 + +# Use this tag to change the font size of Latex formulas included +# as images in the HTML documentation. The default is 10. Note that +# when you change the font size after a successful doxygen run you need +# to manually remove any form_*.png images from the HTML output directory +# to force them to be regenerated. + +FORMULA_FONTSIZE = 10 + +# When the SEARCHENGINE tag is enable doxygen will generate a search box for the HTML output. The underlying search engine uses javascript +# and DHTML and should work on any modern browser. Note that when using HTML help (GENERATE_HTMLHELP) or Qt help (GENERATE_QHP) +# there is already a search function so this one should typically +# be disabled. + +SEARCHENGINE = NO + +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- + +# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will +# generate Latex output. + +GENERATE_LATEX = NO + +# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `latex' will be used as the default path. + +LATEX_OUTPUT = latex + +# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be +# invoked. If left blank `latex' will be used as the default command name. + +LATEX_CMD_NAME = latex + +# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to +# generate index for LaTeX. If left blank `makeindex' will be used as the +# default command name. + +MAKEINDEX_CMD_NAME = makeindex + +# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact +# LaTeX documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_LATEX = NO + +# The PAPER_TYPE tag can be used to set the paper type that is used +# by the printer. Possible values are: a4, a4wide, letter, legal and +# executive. If left blank a4wide will be used. + +PAPER_TYPE = a4wide + +# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX +# packages that should be included in the LaTeX output. + +EXTRA_PACKAGES = + +# The LATEX_HEADER tag can be used to specify a personal LaTeX header for +# the generated latex document. The header should contain everything until +# the first chapter. If it is left blank doxygen will generate a +# standard header. Notice: only use this tag if you know what you are doing! + +LATEX_HEADER = + +# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated +# is prepared for conversion to pdf (using ps2pdf). The pdf file will +# contain links (just like the HTML output) instead of page references +# This makes the output suitable for online browsing using a pdf viewer. + +PDF_HYPERLINKS = NO + +# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of +# plain latex in the generated Makefile. Set this option to YES to get a +# higher quality PDF documentation. + +USE_PDFLATEX = NO + +# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. +# command to the generated LaTeX files. This will instruct LaTeX to keep +# running if errors occur, instead of asking the user for help. +# This option is also used when generating formulas in HTML. + +LATEX_BATCHMODE = NO + +# If LATEX_HIDE_INDICES is set to YES then doxygen will not +# include the index chapters (such as File Index, Compound Index, etc.) +# in the output. + +LATEX_HIDE_INDICES = NO + +# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with syntax highlighting in the LaTeX output. Note that which sources are shown also depends on other settings such as SOURCE_BROWSER. + +LATEX_SOURCE_CODE = NO + +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- + +# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output +# The RTF output is optimized for Word 97 and may not look very pretty with +# other RTF readers or editors. + +GENERATE_RTF = NO + +# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `rtf' will be used as the default path. + +RTF_OUTPUT = rtf + +# If the COMPACT_RTF tag is set to YES Doxygen generates more compact +# RTF documents. This may be useful for small projects and may help to +# save some trees in general. + +COMPACT_RTF = NO + +# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated +# will contain hyperlink fields. The RTF file will +# contain links (just like the HTML output) instead of page references. +# This makes the output suitable for online browsing using WORD or other +# programs which support those fields. +# Note: wordpad (write) and others do not support links. + +RTF_HYPERLINKS = NO + +# Load stylesheet definitions from file. Syntax is similar to doxygen's +# config file, i.e. a series of assignments. You only have to provide +# replacements, missing definitions are set to their default value. + +RTF_STYLESHEET_FILE = + +# Set optional variables used in the generation of an rtf document. +# Syntax is similar to doxygen's config file. + +RTF_EXTENSIONS_FILE = + +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- + +# If the GENERATE_MAN tag is set to YES (the default) Doxygen will +# generate man pages + +GENERATE_MAN = NO + +# The MAN_OUTPUT tag is used to specify where the man pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `man' will be used as the default path. + +MAN_OUTPUT = man + +# The MAN_EXTENSION tag determines the extension that is added to +# the generated man pages (default is the subroutine's section .3) + +MAN_EXTENSION = .3 + +# If the MAN_LINKS tag is set to YES and Doxygen generates man output, +# then it will generate one additional man file for each entity +# documented in the real man page(s). These additional files +# only source the real man page, but without them the man command +# would be unable to find the correct page. The default is NO. + +MAN_LINKS = NO + +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- + +# If the GENERATE_XML tag is set to YES Doxygen will +# generate an XML file that captures the structure of +# the code including all documentation. + +GENERATE_XML = NO + +# The XML_OUTPUT tag is used to specify where the XML pages will be put. +# If a relative path is entered the value of OUTPUT_DIRECTORY will be +# put in front of it. If left blank `xml' will be used as the default path. + +XML_OUTPUT = xml + +# The XML_SCHEMA tag can be used to specify an XML schema, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_SCHEMA = + +# The XML_DTD tag can be used to specify an XML DTD, +# which can be used by a validating XML parser to check the +# syntax of the XML files. + +XML_DTD = + +# If the XML_PROGRAMLISTING tag is set to YES Doxygen will +# dump the program listings (including syntax highlighting +# and cross-referencing information) to the XML output. Note that +# enabling this will significantly increase the size of the XML output. + +XML_PROGRAMLISTING = YES + +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- + +# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will +# generate an AutoGen Definitions (see autogen.sf.net) file +# that captures the structure of the code including all +# documentation. Note that this feature is still experimental +# and incomplete at the moment. + +GENERATE_AUTOGEN_DEF = NO + +#--------------------------------------------------------------------------- +# configuration options related to the Perl module output +#--------------------------------------------------------------------------- + +# If the GENERATE_PERLMOD tag is set to YES Doxygen will +# generate a Perl module file that captures the structure of +# the code including all documentation. Note that this +# feature is still experimental and incomplete at the +# moment. + +GENERATE_PERLMOD = NO + +# If the PERLMOD_LATEX tag is set to YES Doxygen will generate +# the necessary Makefile rules, Perl scripts and LaTeX code to be able +# to generate PDF and DVI output from the Perl module output. + +PERLMOD_LATEX = NO + +# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be +# nicely formatted so it can be parsed by a human reader. +# This is useful +# if you want to understand what is going on. +# On the other hand, if this +# tag is set to NO the size of the Perl module output will be much smaller +# and Perl will parse it just the same. + +PERLMOD_PRETTY = YES + +# The names of the make variables in the generated doxyrules.make file +# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. +# This is useful so different doxyrules.make files included by the same +# Makefile don't overwrite each other's variables. + +PERLMOD_MAKEVAR_PREFIX = + +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- + +# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will +# evaluate all C-preprocessor directives found in the sources and include +# files. + +ENABLE_PREPROCESSING = YES + +# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro +# names in the source code. If set to NO (the default) only conditional +# compilation will be performed. Macro expansion can be done in a controlled +# way by setting EXPAND_ONLY_PREDEF to YES. + +MACRO_EXPANSION = NO + +# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES +# then the macro expansion is limited to the macros specified with the +# PREDEFINED and EXPAND_AS_DEFINED tags. + +EXPAND_ONLY_PREDEF = NO + +# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files +# in the INCLUDE_PATH (see below) will be search if a #include is found. + +SEARCH_INCLUDES = YES + +# The INCLUDE_PATH tag can be used to specify one or more directories that +# contain include files that are not input files but should be processed by +# the preprocessor. + +INCLUDE_PATH = + +# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard +# patterns (like *.h and *.hpp) to filter out the header-files in the +# directories. If left blank, the patterns specified with FILE_PATTERNS will +# be used. + +INCLUDE_FILE_PATTERNS = + +# The PREDEFINED tag can be used to specify one or more macro names that +# are defined before the preprocessor is started (similar to the -D option of +# gcc). The argument of the tag is a list of macros of the form: name +# or name=definition (no spaces). If the definition and the = are +# omitted =1 is assumed. To prevent a macro definition from being +# undefined via #undef or recursively expanded use the := operator +# instead of the = operator. + +PREDEFINED = + +# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then +# this tag can be used to specify a list of macro names that should be expanded. +# The macro definition that is found in the sources will be used. +# Use the PREDEFINED tag if you want to use a different macro definition. + +EXPAND_AS_DEFINED = + +# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then +# doxygen's preprocessor will remove all function-like macros that are alone +# on a line, have an all uppercase name, and do not end with a semicolon. Such +# function macros are typically used for boiler-plate code, and will confuse +# the parser if not removed. + +SKIP_FUNCTION_MACROS = YES + +#--------------------------------------------------------------------------- +# Configuration::additions related to external references +#--------------------------------------------------------------------------- + +# The TAGFILES option can be used to specify one or more tagfiles. +# Optionally an initial location of the external documentation +# can be added for each tagfile. The format of a tag file without +# this location is as follows: +# +# TAGFILES = file1 file2 ... +# Adding location for the tag files is done as follows: +# +# TAGFILES = file1=loc1 "file2 = loc2" ... +# where "loc1" and "loc2" can be relative or absolute paths or +# URLs. If a location is present for each tag, the installdox tool +# does not have to be run to correct the links. +# Note that each tag file must have a unique name +# (where the name does NOT include the path) +# If a tag file is not located in the directory in which doxygen +# is run, you must also specify the path to the tagfile here. + +TAGFILES = + +# When a file name is specified after GENERATE_TAGFILE, doxygen will create +# a tag file that is based on the input files it reads. + +GENERATE_TAGFILE = + +# If the ALLEXTERNALS tag is set to YES all external classes will be listed +# in the class index. If set to NO only the inherited external classes +# will be listed. + +ALLEXTERNALS = NO + +# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed +# in the modules index. If set to NO, only the current project's groups will +# be listed. + +EXTERNAL_GROUPS = YES + +# The PERL_PATH should be the absolute path and name of the perl script +# interpreter (i.e. the result of `which perl'). + +PERL_PATH = /usr/bin/perl + +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- + +# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will +# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base +# or super classes. Setting the tag to NO turns the diagrams off. Note that +# this option is superseded by the HAVE_DOT option below. This is only a +# fallback. It is recommended to install and use dot, since it yields more +# powerful graphs. + +CLASS_DIAGRAMS = YES + +# You can define message sequence charts within doxygen comments using the \msc +# command. Doxygen will then run the mscgen tool (see +# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the +# documentation. The MSCGEN_PATH tag allows you to specify the directory where +# the mscgen tool resides. If left empty the tool is assumed to be found in the +# default search path. + +MSCGEN_PATH = + +# If set to YES, the inheritance and collaboration graphs will hide +# inheritance and usage relations if the target is undocumented +# or is not a class. + +HIDE_UNDOC_RELATIONS = YES + +# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is +# available from the path. This tool is part of Graphviz, a graph visualization +# toolkit from AT&T and Lucent Bell Labs. The other options in this section +# have no effect if this option is set to NO (the default) + +HAVE_DOT = YES + +# By default doxygen will write a font called FreeSans.ttf to the output +# directory and reference it in all dot files that doxygen generates. This +# font does not include all possible unicode characters however, so when you need +# these (or just want a differently looking font) you can specify the font name +# using DOT_FONTNAME. You need need to make sure dot is able to find the font, +# which can be done by putting it in a standard location or by setting the +# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory +# containing the font. + +DOT_FONTNAME = FreeSans + +# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs. +# The default size is 10pt. + +DOT_FONTSIZE = 10 + +# By default doxygen will tell dot to use the output directory to look for the +# FreeSans.ttf font (which doxygen will put there itself). If you specify a +# different font using DOT_FONTNAME you can set the path where dot +# can find it using this tag. + +DOT_FONTPATH = + +# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect inheritance relations. Setting this tag to YES will force the +# the CLASS_DIAGRAMS tag to NO. + +CLASS_GRAPH = YES + +# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for each documented class showing the direct and +# indirect implementation dependencies (inheritance, containment, and +# class references variables) of the class with other documented classes. + +COLLABORATION_GRAPH = YES + +# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen +# will generate a graph for groups, showing the direct groups dependencies + +GROUP_GRAPHS = YES + +# If the UML_LOOK tag is set to YES doxygen will generate inheritance and +# collaboration diagrams in a style similar to the OMG's Unified Modeling +# Language. + +UML_LOOK = NO + +# If set to YES, the inheritance and collaboration graphs will show the +# relations between templates and their instances. + +TEMPLATE_RELATIONS = NO + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT +# tags are set to YES then doxygen will generate a graph for each documented +# file showing the direct and indirect include dependencies of the file with +# other documented files. + +INCLUDE_GRAPH = YES + +# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and +# HAVE_DOT tags are set to YES then doxygen will generate a graph for each +# documented header file showing the documented files that directly or +# indirectly include this file. + +INCLUDED_BY_GRAPH = YES + +# If the CALL_GRAPH and HAVE_DOT options are set to YES then +# doxygen will generate a call dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable call graphs +# for selected functions only using the \callgraph command. + +CALL_GRAPH = YES + +# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then +# doxygen will generate a caller dependency graph for every global function +# or class method. Note that enabling this option will significantly increase +# the time of a run. So in most cases it will be better to enable caller +# graphs for selected functions only using the \callergraph command. + +CALLER_GRAPH = YES + +# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen +# will graphical hierarchy of all classes instead of a textual one. + +GRAPHICAL_HIERARCHY = YES + +# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES +# then doxygen will show the dependencies a directory has on other directories +# in a graphical way. The dependency relations are determined by the #include +# relations between the files in the directories. + +DIRECTORY_GRAPH = YES + +# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images +# generated by dot. Possible values are png, jpg, or gif +# If left blank png will be used. + +DOT_IMAGE_FORMAT = png + +# The tag DOT_PATH can be used to specify the path where the dot tool can be +# found. If left blank, it is assumed the dot tool can be found in the path. + +DOT_PATH = + +# The DOTFILE_DIRS tag can be used to specify one or more directories that +# contain dot files that are included in the documentation (see the +# \dotfile command). + +DOTFILE_DIRS = + +# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of +# nodes that will be shown in the graph. If the number of nodes in a graph +# becomes larger than this value, doxygen will truncate the graph, which is +# visualized by representing a node as a red box. Note that doxygen if the +# number of direct children of the root node in a graph is already larger than +# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note +# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH. + +DOT_GRAPH_MAX_NODES = 5000 + +# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the +# graphs generated by dot. A depth value of 3 means that only nodes reachable +# from the root by following a path via at most 3 edges will be shown. Nodes +# that lay further from the root node will be omitted. Note that setting this +# option to 1 or 2 may greatly reduce the computation time needed for large +# code bases. Also note that the size of a graph can be further restricted by +# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction. + +MAX_DOT_GRAPH_DEPTH = 5 + +# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent +# background. This is disabled by default, because dot on Windows does not +# seem to support this out of the box. Warning: Depending on the platform used, +# enabling this option may lead to badly anti-aliased labels on the edges of +# a graph (i.e. they become hard to read). + +DOT_TRANSPARENT = NO + +# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output +# files in one run (i.e. multiple -o and -T options on the command line). This +# makes dot run faster, but since only newer versions of dot (>1.8.10) +# support this, this feature is disabled by default. + +DOT_MULTI_TARGETS = NO + +# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will +# generate a legend page explaining the meaning of the various boxes and +# arrows in the dot generated graphs. + +GENERATE_LEGEND = YES + +# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will +# remove the intermediate dot files that are used to generate +# the various graphs. + +DOT_CLEANUP = YES diff -Nru lincity-ng-2.0/doc/files lincity-ng-2.9~git20150314/doc/files --- lincity-ng-2.0/doc/files 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/files 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,8 @@ +gui_interface: + screen.h - must be stay in interface, as it's used widely over the sim-engine + cliglobs.h - must stay here, as there are many global variables and some dependencies on X11/SVGA,etc. + common.h - dispatcher for +engine: + simulation.cc - deleted dependencies on X11/Win32 + lintypes.cc - here are dependencies on readpng.h and the graphics files (icons) - should be moved to oldgui - then readpng.h could be moved there, too + diff -Nru lincity-ng-2.0/doc/gui lincity-ng-2.9~git20150314/doc/gui --- lincity-ng-2.0/doc/gui 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/gui 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,6 @@ +barchart/line history is in screen.cc (static void do_monthgraph (int full_refresh)) + +mps in mps.cc + +minimap in update_main_screen (int full_refresh) (also screen.cc) + diff -Nru lincity-ng-2.0/doc/lincityconfig.xml lincity-ng-2.9~git20150314/doc/lincityconfig.xml --- lincity-ng-2.0/doc/lincityconfig.xml 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/lincityconfig.xml 2015-05-05 16:32:51.000000000 +0000 @@ -32,7 +32,8 @@ --> <!-- Game Section --> - <game quickness="9" /> + <game quickness="9" WorldSideLen="200" + binarySaveGames="yes" /> <!-- quickness is saved to userconfig.xml Commandline -q [delay] sets the delay for fast mode, default is 9. 9 is default. This skips animation frames, good on slow machines. @@ -46,4 +47,8 @@ fastest mode until the MainScreen is updated again. The default of 1 seems to be a good choice. --> +<!-- binarySaveGames enables quick writing of mapTiles and Constructions + to a hybrid text-binary file. It is much faster, but may break if you + are a developer and change the corresponding classes. +--> </configuration> diff -Nru lincity-ng-2.0/doc/lincity-ng.6 lincity-ng-2.9~git20150314/doc/lincity-ng.6 --- lincity-ng-2.0/doc/lincity-ng.6 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/lincity-ng.6 2015-05-05 16:32:51.000000000 +0000 @@ -76,7 +76,7 @@ .SH UPGRADE from 1.x to 2.x A new format for saved games is used since 2.0, but old games can be imported and automagically converted. Just copy $HOME/.lincity/* (old location for lincity and lincity-ng 1.x) to $HOME/.lincity-ng/ (new location since 2.0). - cp -a ~/.lincity/* ~/.lincity-ng/ + cp \-a ~/.lincity/* ~/.lincity\-ng/ At the start of the game, one message will popup to remind you have some changes to do in your city. diff -Nru lincity-ng-2.0/doc/translation.txt lincity-ng-2.9~git20150314/doc/translation.txt --- lincity-ng-2.0/doc/translation.txt 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/translation.txt 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,42 @@ +0. How to Translate +~~~~~~~~~~~~~~~~~~~~ + +* Install gettext +* get a snv snapshot of lincity-ng and do the usual autogen.sh, configure. + Make sure configure can find the xgettext application. + (ie. "checking for xgettext... xgettext") +* Run 'jam', let it compile. It should create data/locale/messages.pot and + data/locale/gui/messages.pot files +* Go into data/locale and data/locale/gui and in each dir do: + - In case you want to create a new translation do + msginit -i messages.pot -o $LANG.po + (where $LANG is the 2character handle of your language) + - In case you want to update an existing translation do + msgmerge -U $LANG.po messages.pot +* Edit the .po files with your favourite Editor or with 1 of the GUI tools + below. +* Send the translated .po files to the lincity-devel@lists.sourceforge.net + mailing list. +* If you want to edit the help texts, then create a directory with your language + shortcut in the data/help directory (e.g. data/help/de) and write new xml + files in your language (similar to the ones in the data/help/en directory). + You don't need to copy over the english texts, the game will automatically use + the english version of a text if no translated version exists. +* You should also edit the lincity-ng.desktop file and add a comment entry for + your language + +2. GUI Tools +~~~~~~~~~~~~~ + + KBabel - a long dated KDE program that has been maturing over the years, + and it's really handy by now. + poEdit - a multi-platform po editor (runs under Windows and Unix). + URL: http://poedit.sourceforge.net/ + (X)Emacs - a commonly used program for translating with the respective + plugin. + QTranslator - made by Qt, has the advantage of running in several platforms. + PO files are written in ASCII and are pretty intuitive, so they + can be used by any text editor. But it would be wise to use a + program made for that effect. If not possible, use a text editor + with highlighting for PO files. + diff -Nru lincity-ng-2.0/doc/units lincity-ng-2.9~git20150314/doc/units --- lincity-ng-2.0/doc/units 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/units 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,87 @@ +Some orders of magnitudes to check engine internals and try to display realistic units. + +POWER +===== +Power unit is 1kW +=> Coal unit = 100 kg (coal power plant and coal_make_power) + +Discussion power: +_________________ + +some RL indicators picked in wikipedia and other sites in 2007: + 1 ton equivalent oil + = 40 GJ + = 1.5 tons of coal + = gives 11 MW.h of thermic power + = gives less than 5 MW.h of electic power in thermic power plant + = production of 1 ton biofuel by 1 hectare (4t of biomass) + sometimes 2 crops/year. + (variable by a factor 0.5 to 2) + (need to add work and water and fertilizer ...) + = sun at midday on 1 hectare during one hour + (1000 W/m2, average on earth= 350 W/m2) + = power produced by a 10 ha solarplant.(10% efficiency) + +Big offshore windmill = 5 MW +Big solar plant = 350 MW +Big coal powerplant = 700 MW + +100 MW = 50 000 citizens + +build cost: +----------- + clean coal power station: 1 MW = 1 M€ +need to be fed by tons of coal/day + solar plant / bio / wind: 1 MW = 2 M€ + +prices: +------- + oil 350€/ton equivalent oil + coal 50~100€/ton equivalent oil + bio 50~500€/ton equivalent oil + sun/wind/river 0€ + +=> in NG +-------- + Windmill and solar power prices are rather realistic + but coal_power plants are far too much cheap + even if we consider 10% efficiency for windmill and sunplant, there is still + a factor 3 in favor of coal plants. (moreover they don't pay the coal in NG + except when it is imported. + The only counter-part is the coal reserve are finite, even if sometimes they + are huge. + +=> idea: +-------- +Like windmill add high tech thermic power plant and change as little as possible: + - price *= 1 + 2 * (tech - coalpower_tech) (doesn't break too much) + - pollution -= some % tech + - check box to use food or coal + +Production of one farm of tech T gives enough biomass to produce the same amount +of power as a solar plant of the same tech. + + +ORE/STEEL +========= +RL: +--- +average earth crust is 4% iron +rich iron ore = 50% iron + +NG: +-- +heavy industry : 16 ore -> 1 steel +this is ok considering that ore is average earth crust (we can dig everywhere) + +need to find energy needed for producing steel to have steel weight unit in NG, +then ore weight unit :) + +MAX_COAL_ON_TRACK 64 unit = 100 kg +MAX_ORE_ON_TRACK 4096 +MAX_STEEL_ON_TRACK 128 + +MAX_COAL_ON_ROAD (MAX_COAL_ON_TRACK * 8) = 512*100 = 51.2 tons +MAX_ORE_ON_ROAD (MAX_ORE_ON_TRACK * 4) = 16384 ore_unit +MAX_STEEL_ON_ROAD (MAX_STEEL_ON_TRACK * 4) = 512 steel_unit + +MAX_XXX_ON_RAIL (MAX_XXXX_ON_ROAD * same_coeff_as_road_vs_track) diff -Nru lincity-ng-2.0/doc/vars lincity-ng-2.9~git20150314/doc/vars --- lincity-ng-2.0/doc/vars 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/doc/vars 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1 @@ +mappoint_array_(x|y) : shuffles all mappoints, so that simulation does no linear effects, the shuffling is done in shuffle_mappoint_array (engine.cc diff -Nru lincity-ng-2.0/Jamconfig.in lincity-ng-2.9~git20150314/Jamconfig.in --- lincity-ng-2.0/Jamconfig.in 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/Jamconfig.in 1970-01-01 00:00:00.000000000 +0000 @@ -1,141 +0,0 @@ -SHELL ?= "@SHELL@" ; -PATH_SEPARATOR ?= "@PATH_SEPARATOR@" ; -PACKAGE_NAME ?= "@PACKAGE_NAME@" ; -PACKAGE_TARNAME ?= "@PACKAGE_TARNAME@" ; -PACKAGE_VERSION ?= "@PACKAGE_VERSION@" ; -PACKAGE_STRING ?= "@PACKAGE_STRING@" ; -PACKAGE_BUGREPORT ?= "@PACKAGE_BUGREPORT@" ; -exec_prefix ?= "@exec_prefix@" ; -prefix ?= "@prefix@" ; -program_transform_name ?= "@program_transform_name@" ; -bindir ?= "@bindir@" ; -sbindir ?= "@sbindir@" ; -libexecdir ?= "@libexecdir@" ; -datarootdir ?= "@datarootdir@" ; -datadir ?= "@datadir@" ; -sysconfdir ?= "@sysconfdir@" ; -sharedstatedir ?= "@sharedstatedir@" ; -localstatedir ?= "@localstatedir@" ; -includedir ?= "@includedir@" ; -oldincludedir ?= "@oldincludedir@" ; -docdir ?= "@docdir@" ; -infodir ?= "@infodir@" ; -htmldir ?= "@htmldir@" ; -dvidir ?= "@dvidir@" ; -pdfdir ?= "@pdfdir@" ; -psdir ?= "@psdir@" ; -libdir ?= "@libdir@" ; -localedir ?= "@localedir@" ; -mandir ?= "@mandir@" ; -DEFS ?= "@DEFS@" ; -ECHO_C ?= "@ECHO_C@" ; -ECHO_N ?= "@ECHO_N@" ; -ECHO_T ?= "@ECHO_T@" ; -LIBS ?= "@LIBS@" ; -build_alias ?= "@build_alias@" ; -host_alias ?= "@host_alias@" ; -target_alias ?= "@target_alias@" ; -build ?= "@build@" ; -build_cpu ?= "@build_cpu@" ; -build_vendor ?= "@build_vendor@" ; -build_os ?= "@build_os@" ; -host ?= "@host@" ; -host_cpu ?= "@host_cpu@" ; -host_vendor ?= "@host_vendor@" ; -host_os ?= "@host_os@" ; -target ?= "@target@" ; -target_cpu ?= "@target_cpu@" ; -target_vendor ?= "@target_vendor@" ; -target_os ?= "@target_os@" ; -VARIANT ?= "@VARIANT@" ; -CXX ?= "@CXX@" ; -CXXFLAGS ?= "@CXXFLAGS@" ; -LDFLAGS ?= "@LDFLAGS@" ; -LIBS ?= "@LIBS@" ; -CPPFLAGS ?= "@CPPFLAGS@" ; -CXX ?= "@CXX@" ; -ac_ct_CXX ?= "@ac_ct_CXX@" ; -EXEEXT ?= "@EXEEXT@" ; -OBJEXT ?= "@OBJEXT@" ; -INSTALL_PROGRAM ?= "@INSTALL_PROGRAM@" ; -INSTALL_SCRIPT ?= "@INSTALL_SCRIPT@" ; -INSTALL_DATA ?= "@INSTALL_DATA@" ; -XGETTEXT ?= "@XGETTEXT@" ; -XSLTPROC ?= "@XSLTPROC@" ; -CC ?= "@CC@" ; -CFLAGS ?= "@CFLAGS@" ; -LDFLAGS ?= "@LDFLAGS@" ; -LIBS ?= "@LIBS@" ; -CPPFLAGS ?= "@CPPFLAGS@" ; -CC ?= "@CC@" ; -CC ?= "@CC@" ; -CC ?= "@CC@" ; -CC ?= "@CC@" ; -ac_ct_CC ?= "@ac_ct_CC@" ; -CPP ?= "@CPP@" ; -CPPFLAGS ?= "@CPPFLAGS@" ; -CPP ?= "@CPP@" ; -GREP ?= "@GREP@" ; -GREP ?= "@GREP@" ; -EGREP ?= "@EGREP@" ; -EGREP ?= "@EGREP@" ; -LIBICONV ?= "@LIBICONV@" ; -LTLIBICONV ?= "@LTLIBICONV@" ; -ICONV_LIBS ?= "@ICONV_LIBS@" ; -BINRELOC_CFLAGS ?= "@BINRELOC_CFLAGS@" ; -BINRELOC_LIBS ?= "@BINRELOC_LIBS@" ; -ZLIB_AVAILABLE ?= "@ZLIB_AVAILABLE@" ; -ZLIB_CFLAGS ?= "@ZLIB_CFLAGS@" ; -ZLIB_LIBS ?= "@ZLIB_LIBS@" ; -PKG_CONFIG ?= "@PKG_CONFIG@" ; -LIBXML_CFLAGS ?= "@LIBXML_CFLAGS@" ; -LIBXML_LIBS ?= "@LIBXML_LIBS@" ; -XMKMF ?= "@XMKMF@" ; -acx_pthread_config ?= "@acx_pthread_config@" ; -PTHREAD_CC ?= "@PTHREAD_CC@" ; -PTHREAD_LIBS ?= "@PTHREAD_LIBS@" ; -PTHREAD_CFLAGS ?= "@PTHREAD_CFLAGS@" ; -PTHREAD_CC ?= "@PTHREAD_CC@" ; -GL_CFLAGS ?= "@GL_CFLAGS@" ; -GL_LIBS ?= "@GL_LIBS@" ; -SDL_CONFIG ?= "@SDL_CONFIG@" ; -SDL_CFLAGS ?= "@SDL_CFLAGS@" ; -SDL_LIBS ?= "@SDL_LIBS@" ; -SDLMIXER_AVAILABLE ?= "@SDLMIXER_AVAILABLE@" ; -SDLMIXER_CFLAGS ?= "@SDLMIXER_CFLAGS@" ; -SDLMIXER_LIBS ?= "@SDLMIXER_LIBS@" ; -SDLIMAGE_AVAILABLE ?= "@SDLIMAGE_AVAILABLE@" ; -SDLIMAGE_CFLAGS ?= "@SDLIMAGE_CFLAGS@" ; -SDLIMAGE_LIBS ?= "@SDLIMAGE_LIBS@" ; -SDLTTF_AVAILABLE ?= "@SDLTTF_AVAILABLE@" ; -SDLTTF_CFLAGS ?= "@SDLTTF_CFLAGS@" ; -SDLTTF_LIBS ?= "@SDLTTF_LIBS@" ; -SDLGFX_AVAILABLE ?= "@SDLGFX_AVAILABLE@" ; -SDLGFX_CFLAGS ?= "@SDLGFX_CFLAGS@" ; -SDLGFX_LIBS ?= "@SDLGFX_LIBS@" ; -PHYSFS_AVAILABLE ?= "@PHYSFS_AVAILABLE@" ; -PHYSFS_CFLAGS ?= "@PHYSFS_CFLAGS@" ; -PHYSFS_LIBS ?= "@PHYSFS_LIBS@" ; -prefix ?= "@prefix@" ; -exec_prefix ?= "@exec_prefix@" ; -bindir ?= "@bindir@" ; -sbindir ?= "@sbindir@" ; -libexecdir ?= "@libexecdir@" ; -datarootdir ?= "@datarootdir@" ; -datadir ?= "@datadir@" ; -sysconfdir ?= "@sysconfdir@" ; -sharedstatedir ?= "@sharedstatedir@" ; -localstatedir ?= "@localstatedir@" ; -libdir ?= "@libdir@" ; -includedir ?= "@includedir@" ; -oldincludedir ?= "@oldincludedir@" ; -infodir ?= "@infodir@" ; -mandir ?= "@mandir@" ; -INSTALL ?= "@INSTALL@" ; -INSTALL_PROGRAM ?= "@INSTALL_PROGRAM@" ; -INSTALL_SCRIPT ?= "@INSTALL_SCRIPT@" ; -INSTALL_DATA ?= "@INSTALL_DATA@" ; -LIBOBJS ?= "@LIBOBJS@" ; -LTLIBOBJS ?= "@LTLIBOBJS@" ; -INSTALL ?= "@INSTALL@" ; -JAMCONFIG_READ = yes ; diff -Nru lincity-ng-2.0/Jamfile lincity-ng-2.9~git20150314/Jamfile --- lincity-ng-2.0/Jamfile 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/Jamfile 2015-05-05 16:32:49.000000000 +0000 @@ -16,8 +16,8 @@ } # add some additional files to package -Package README RELNOTES TODO COPYING COPYING-fonts.txt COPYING-data.txt CREDITS ; -InstallDoc README RELNOTES TODO COPYING COPYING-fonts.txt COPYING-data.txt CREDITS ; +Package README README-Unlimited README-WaterWell RELNOTES TODO COPYING COPYING-data.txt COPYING-fonts.txt CREDITS ; +InstallDoc README README-Unlimited README-WaterWell RELNOTES TODO COPYING COPYING-data.txt COPYING-fonts.txt CREDITS ; InstallDesktop lincity-ng.desktop ; InstallPixmap data/lincity-ng.png ; diff -Nru lincity-ng-2.0/Jamrules lincity-ng-2.9~git20150314/Jamrules --- lincity-ng-2.0/Jamrules 2009-01-25 20:21:25.000000000 +0000 +++ lincity-ng-2.9~git20150314/Jamrules 2015-05-05 16:32:49.000000000 +0000 @@ -25,13 +25,17 @@ CXXFLAGS += -O3 -g -Wall ; LIBS += -g ; case debug : - CFLAGS += -Wall -W -O0 -g3 -DDEBUG -Werror ; - CXXFLAGS += -Wall -W -O0 -g3 -DDEBUG -Werror ; + CFLAGS += -Wall -W -O0 -g3 -DDEBUG -Werror -Wformat=2 ; + CXXFLAGS += -Wall -W -O0 -g3 -DDEBUG -Werror -Wformat=2 ; LIBS += -g3 ; case profile : CFLAGS += -O3 -g3 -pg ; CXXFLAGS += -O3 -g3 -pg ; LIBS += -g3 -pg ; + case experimental : + CFLAGS += -Wall -W -O0 -g3 -DDEBUG -DEXPERIMENTAL ; + CXXFLAGS += -Wall -W -O0 -g3 -DDEBUG -DEXPERIMENTAL ; + LIBS += -g3 ; case * : EXIT "Invalid variant $(VARIANT) selected" ; } @@ -68,7 +72,7 @@ { local sources = [ SearchSource $(>) ] ; local target = [ LocateTarget $(<) : $(SUBDIR) ] ; - + XGetText $(target) : $(sources) ; Depends all : $(target) ; Clean clean : $(target) ; diff -Nru lincity-ng-2.0/lincity-ng.desktop lincity-ng-2.9~git20150314/lincity-ng.desktop --- lincity-ng-2.0/lincity-ng.desktop 2009-01-25 20:21:28.000000000 +0000 +++ lincity-ng-2.9~git20150314/lincity-ng.desktop 2015-05-05 16:32:51.000000000 +0000 @@ -1,13 +1,16 @@ [Desktop Entry] Type=Application Version=1.0 -Encoding=UTF-8 Name=Lincity-NG GenericName=City Simulation Game GenericName[de]=Stadtsimulationsspiel -Comment=Plan and Build a city and take care of transport, economics, electricityand others. -Icon=lincity-ng.png +GenericName[tr]=Åžehir Simulasyon Oyunu +Comment=Plan and build a city and take care of transport, economics, electricity and others. +Comment[de]=Plane und baue eine Stadt und kümmere dich um das Verkehrswesen, die Wirtschaft, Elektrizität und mehr. +Comment[tr]=Bir ÅŸehir planlayın, inÅŸa edin ve ulaşım, ekonomi, elektrik ve diÄŸer ihtiyaçları ile ilgilenin. +Icon=lincity-ng Exec=lincity-ng Terminal=false StartupNotify=false Categories=Game;Simulation; +Keywords=game;simulation;city;strategy;3D;economics;transport;buildings; diff -Nru lincity-ng-2.0/makerelease.sh lincity-ng-2.9~git20150314/makerelease.sh --- lincity-ng-2.0/makerelease.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/makerelease.sh 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,10 @@ +#!/bin/sh +cat data/gui/creditslist.xml |grep -v "@"|cut -d\> -f2|cut -d\< -f1 >CREDITS +echo "# automatically generated from data/gui/creditslist.xml. Do not edit. #">>CREDITS + +jam maintainer-clean +rm -rf build +./autogen.sh +./configure +jam dist + diff -Nru lincity-ng-2.0/mk/autoconf/np_findlib.m4 lincity-ng-2.9~git20150314/mk/autoconf/np_findlib.m4 --- lincity-ng-2.0/mk/autoconf/np_findlib.m4 2009-01-25 20:21:26.000000000 +0000 +++ lincity-ng-2.9~git20150314/mk/autoconf/np_findlib.m4 2015-05-05 16:32:51.000000000 +0000 @@ -4,7 +4,7 @@ AC_ARG_WITH([lib$2], [AC_HELP_STRING([--with-lib$2=dir], [specify location of lib$2 if not detected automatically; uses dir, dir/include and dir/lib])]) - + save_CFLAGS="$CFLAGS" save_CPPFLAGS="$CPPFLAGS" save_LIBS="$LIBS" @@ -25,27 +25,27 @@ AC_MSG_CHECKING([for $3]) - AC_LINK_IFELSE([$4], [buildok=yes], [buildok=no]) + AC_LINK_IFELSE([AC_LANG_SOURCE([$4])], [buildok=yes], [buildok=no]) LIBS=$save_LIBS CPPFLAGS=$save_CPPFLAGS CFLAGS=$save_CFLAGS AS_IF([test $buildok = yes], - [AC_MSG_RESULT([found]) - $1_AVAILABLE=yes - $1_CFLAGS="$RESCFLAGS" - $1_LIBS="$RESLIBS"], - [AC_MSG_RESULT([not found]) - $1_AVAILABLE=no - $1_CFLAGS="" - $1_LIBS=""]) - + [AC_MSG_RESULT([found]) + $1_AVAILABLE=yes + $1_CFLAGS="$RESCFLAGS" + $1_LIBS="$RESLIBS"], + [AC_MSG_RESULT([not found]) + $1_AVAILABLE=no + $1_CFLAGS="" + $1_LIBS=""]) + AC_SUBST([$1_AVAILABLE]) AC_SUBST([$1_CFLAGS]) AC_SUBST([$1_LIBS]) AS_IF([test $buildok = yes], - [ifelse([$7], , :, [$7])], - [ifelse([$8], , :, [$8])]) + [ifelse([$7], , :, [$7])], + [ifelse([$8], , :, [$8])]) ]) diff -Nru lincity-ng-2.0/mk/msvc/config.h lincity-ng-2.9~git20150314/mk/msvc/config.h --- lincity-ng-2.0/mk/msvc/config.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/mk/msvc/config.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,108 @@ +/* config.h. Generated by configure. */ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Use the Apple OpenGL framework. */ +/* #undef HAVE_APPLE_OPENGL_FRAMEWORK */ + +/* Define to 1 if you have the <dirent.h> header file, and it defines `DIR'. + */ +//#define HAVE_DIRENT_H 1 + +/* Define to 1 if you have the `gettimeofday' function. */ +/* #undef HAVE_GETTIMEOFDAY */ + +/* Define to 1 if you have the <inttypes.h> header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the <memory.h> header file. */ +#define HAVE_MEMORY_H 1 + +/* Define to 1 if you have the `mkdir' function. */ +#define HAVE_MKDIR 1 + +/* Define to 1 if you have the <ndir.h> header file, and it defines `DIR'. */ +/* #undef HAVE_NDIR_H */ + +/* Define to 1 if you have the `popen' function. */ +#define HAVE_POPEN 1 + +/* Define if you have POSIX threads libraries and header files. */ +/* #undef HAVE_PTHREAD */ + +/* Define to 1 if you have the <stdint.h> header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the <stdlib.h> header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the <strings.h> header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the <string.h> header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the <sys/dir.h> header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_DIR_H */ + +/* Define to 1 if you have the <sys/ndir.h> header file, and it defines `DIR'. + */ +/* #undef HAVE_SYS_NDIR_H */ + +/* Define to 1 if you have the <sys/stat.h> header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the <sys/types.h> header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if you have the <unistd.h> header file. */ +#undef HAVE_UNISTD_H + +/* Define to 1 if you have the <windows.h> header file. */ +#define HAVE_WINDOWS_H 1 + +/* Define to the address where bug reports for this package should be sent. */ +#define PACKAGE_BUGREPORT "matze@braunis.de" + +/* Define to the full name of this package. */ +#define PACKAGE_NAME "lincity-ng" + +/* Define to the full name and version of this package. */ +#define PACKAGE_STRING "lincity-ng 0.9rc1" + +/* Define to the one symbol short name of this package. */ +#define PACKAGE_TARNAME "lincity-ng" + +/* Define to the version of this package. */ +#define PACKAGE_VERSION "0.9rc1" + +/* Define to the necessary symbol if this constant uses a non-standard name on + your system. */ +/* #undef PTHREAD_CREATE_JOINABLE */ + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */ +//#define TIME_WITH_SYS_TIME 1 + +#define ICONV_CONST const + +#pragma warning(disable:4996) +#pragma warning(disable:4244) +#define snprintf _snprintf +#define putenv _putenv +#define strdup _strdup +#define popen _popen +#define pclose _pclose +#define strcasecmp stricmp + + +/* Define to empty if `const' does not conform to ANSI C. */ +/* #undef const */ + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +/* #undef inline */ +#endif diff -Nru lincity-ng-2.0/mk/msvc/iconv.h lincity-ng-2.9~git20150314/mk/msvc/iconv.h --- lincity-ng-2.0/mk/msvc/iconv.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/mk/msvc/iconv.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,131 @@ +/* Copyright (C) 1999-2003 Free Software Foundation, Inc. + This file is part of the GNU LIBICONV Library. + + The GNU LIBICONV Library is free software; you can redistribute it + and/or modify it under the terms of the GNU Library General Public + License as published by the Free Software Foundation; either version 2 + of the License, or (at your option) any later version. + + The GNU LIBICONV Library is distributed in the hope that it will be + useful, but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU LIBICONV Library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, Inc., 59 Temple Place - + Suite 330, Boston, MA 02111-1307, USA. */ + +/* When installed, this file is called "iconv.h". */ + +#ifndef _LIBICONV_H +#define _LIBICONV_H + +#define _LIBICONV_VERSION 0x0109 /* version number: (major<<8) + minor */ +extern int _libiconv_version; /* Likewise */ + +/* We would like to #include any system header file which could define + iconv_t, 1. in order to eliminate the risk that the user gets compilation + errors because some other system header file includes /usr/include/iconv.h + which defines iconv_t or declares iconv after this file, 2. when compiling + for LIBICONV_PLUG, we need the proper iconv_t type in order to produce + binary compatible code. + But gcc's #include_next is not portable. Thus, once libiconv's iconv.h + has been installed in /usr/local/include, there is no way any more to + include the original /usr/include/iconv.h. We simply have to get away + without it. + Ad 1. The risk that a system header file does + #include "iconv.h" or #include_next "iconv.h" + is small. They all do #include <iconv.h>. + Ad 2. The iconv_t type is a pointer type in all cases I have seen. (It + has to be a scalar type because (iconv_t)(-1) is a possible return value + from iconv_open().) */ + +/* Define iconv_t ourselves. */ +#undef iconv_t +#define iconv_t libiconv_t +typedef void* iconv_t; + +/* Get size_t declaration. */ +#include <stddef.h> + +/* Get errno declaration and values. */ +#include <errno.h> +/* Some systems, like SunOS 4, don't have EILSEQ. Some systems, like BSD/OS, + have EILSEQ in a different header. On these systems, define EILSEQ + ourselves. */ +#ifndef EILSEQ +#define EILSEQ +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + +/* Allocates descriptor for code conversion from encoding `fromcode' to + encoding `tocode'. */ +#ifndef LIBICONV_PLUG +#define iconv_open libiconv_open +#endif +extern iconv_t iconv_open (const char* tocode, const char* fromcode); + +/* Converts, using conversion descriptor `cd', at most `*inbytesleft' bytes + starting at `*inbuf', writing at most `*outbytesleft' bytes starting at + `*outbuf'. + Decrements `*inbytesleft' and increments `*inbuf' by the same amount. + Decrements `*outbytesleft' and increments `*outbuf' by the same amount. */ +#ifndef LIBICONV_PLUG +#define iconv libiconv +#endif +extern size_t iconv (iconv_t cd, const char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft); + +/* Frees resources allocated for conversion descriptor `cd'. */ +#ifndef LIBICONV_PLUG +#define iconv_close libiconv_close +#endif +extern int iconv_close (iconv_t cd); + + +#ifndef LIBICONV_PLUG + +/* Nonstandard extensions. */ + +/* Control of attributes. */ +#define iconvctl libiconvctl +extern int iconvctl (iconv_t cd, int request, void* argument); + +/* Requests for iconvctl. */ +#define ICONV_TRIVIALP 0 /* int *argument */ +#define ICONV_GET_TRANSLITERATE 1 /* int *argument */ +#define ICONV_SET_TRANSLITERATE 2 /* const int *argument */ +#define ICONV_GET_DISCARD_ILSEQ 3 /* int *argument */ +#define ICONV_SET_DISCARD_ILSEQ 4 /* const int *argument */ + +/* Listing of locale independent encodings. */ +#define iconvlist libiconvlist +extern void iconvlist (int (*do_one) (unsigned int namescount, + const char * const * names, + void* data), + void* data); + +/* Support for relocatable packages. */ + +/* Sets the original and the current installation prefix of the package. + Relocation simply replaces a pathname starting with the original prefix + by the corresponding pathname with the current prefix instead. Both + prefixes should be directory names without trailing slash (i.e. use "" + instead of "/"). */ +extern void libiconv_set_relocation_prefix (const char *orig_prefix, + const char *curr_prefix); + +#endif + + +#ifdef __cplusplus +} +#endif + + +#endif /* _LIBICONV_H */ diff -Nru lincity-ng-2.0/mk/msvc/stdint.h lincity-ng-2.9~git20150314/mk/msvc/stdint.h --- lincity-ng-2.0/mk/msvc/stdint.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/mk/msvc/stdint.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,208 @@ +/* ISO C9x 7.18 Integer types <stdint.h> + * Based on ISO/IEC SC22/WG14 9899 Committee draft (SC22 N2794) + * + * THIS SOFTWARE IS NOT COPYRIGHTED + * + * Contributor: Danny Smith <danny_r_smith_2001@yahoo.co.nz> + * + * This source code is offered for use in the public domain. You may + * use, modify or distribute it freely. + * + * This code is distributed in the hope that it will be useful but + * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY + * DISCLAMED. This includes but is not limited to warranties of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + * + * Date: 2000-12-02 + */ + + +#ifndef _STDINT_H +#define _STDINT_H + +/* 7.18.1.1 Exact-width integer types */ +typedef signed char int8_t; +typedef unsigned char uint8_t; +typedef short int16_t; +typedef unsigned short uint16_t; +typedef int int32_t; +typedef unsigned uint32_t; +#if defined(_MSC_VER) && !defined(_WIN32_WCE) +#define WIN32_LEAN_AND_MEAN +#include <windows.h> +typedef LONGLONG int64_t; +typedef ULONGLONG uint64_t; +#else +typedef long long int64_t; +typedef unsigned long long uint64_t; +#endif + + +/* 7.18.1.2 Minimum-width integer types */ +typedef signed char int_least8_t; +typedef unsigned char uint_least8_t; +typedef short int_least16_t; +typedef unsigned short uint_least16_t; +typedef int int_least32_t; +typedef unsigned uint_least32_t; +#if defined(_MSC_VER) && !defined(_WIN32_WCE) +typedef LONGLONG int_least64_t; +typedef ULONGLONG uint_least64_t; +#else +typedef long long int_least64_t; +typedef unsigned long long uint_least64_t; +#endif + +/* 7.18.1.3 Fastest minimum-width integer types + * Not actually guaranteed to be fastest for all purposes + * Here we use the exact-width types for 8 and 16-bit ints. + */ +typedef char int_fast8_t; +typedef unsigned char uint_fast8_t; +typedef short int_fast16_t; +typedef unsigned short uint_fast16_t; +typedef int int_fast32_t; +typedef unsigned int uint_fast32_t; +#if defined(_MSC_VER) && !defined(_WIN32_WCE) +typedef LONGLONG int_fast64_t; +typedef ULONGLONG uint_fast64_t; +#else +typedef long long int_fast64_t; +typedef unsigned long long uint_fast64_t; +#endif + +/* 7.18.1.4 Integer types capable of holding object pointers */ +typedef int intptr_t; +typedef unsigned uintptr_t; + +/* 7.18.1.5 Greatest-width integer types */ +#if defined(_MSC_VER) && !defined(_WIN32_WCE) +typedef LONGLONG intmax_t; +typedef ULONGLONG uintmax_t; +#else +typedef long long intmax_t; +typedef unsigned long long uintmax_t; +#endif + +/* 7.18.2 Limits of specified-width integer types */ +#if !defined ( __cplusplus) || defined (__STDC_LIMIT_MACROS) + +/* 7.18.2.1 Limits of exact-width integer types */ +#define INT8_MIN (-128) +#define INT16_MIN (-32768) +#define INT32_MIN (-2147483647 - 1) +#define INT64_MIN (-9223372036854775807LL - 1) + +#define INT8_MAX 127 +#define INT16_MAX 32767 +#define INT32_MAX 2147483647 +#define INT64_MAX 9223372036854775807LL + +#define UINT8_MAX 0xff /* 255U */ +#define UINT16_MAX 0xffff /* 65535U */ +#define UINT32_MAX 0xffffffff /* 4294967295U */ +#define UINT64_MAX 0xffffffffffffffffULL /* 18446744073709551615ULL */ + +/* 7.18.2.2 Limits of minimum-width integer types */ +#define INT_LEAST8_MIN INT8_MIN +#define INT_LEAST16_MIN INT16_MIN +#define INT_LEAST32_MIN INT32_MIN +#define INT_LEAST64_MIN INT64_MIN + +#define INT_LEAST8_MAX INT8_MAX +#define INT_LEAST16_MAX INT16_MAX +#define INT_LEAST32_MAX INT32_MAX +#define INT_LEAST64_MAX INT64_MAX + +#define UINT_LEAST8_MAX UINT8_MAX +#define UINT_LEAST16_MAX UINT16_MAX +#define UINT_LEAST32_MAX UINT32_MAX +#define UINT_LEAST64_MAX UINT64_MAX + +/* 7.18.2.3 Limits of fastest minimum-width integer types */ +#define INT_FAST8_MIN INT8_MIN +#define INT_FAST16_MIN INT16_MIN +#define INT_FAST32_MIN INT32_MIN +#define INT_FAST64_MIN INT64_MIN + +#define INT_FAST8_MAX INT8_MAX +#define INT_FAST16_MAX INT16_MAX +#define INT_FAST32_MAX INT32_MAX +#define INT_FAST64_MAX INT64_MAX + +#define UINT_FAST8_MAX UINT8_MAX +#define UINT_FAST16_MAX UINT16_MAX +#define UINT_FAST32_MAX UINT32_MAX +#define UINT_FAST64_MAX UINT64_MAX + +/* 7.18.2.4 Limits of integer types capable of holding + object pointers */ +#define INTPTR_MIN INT32_MIN +#define INTPTR_MAX INT32_MAX +#define UINTPTR_MAX UINT32_MAX + +/* 7.18.2.5 Limits of greatest-width integer types */ +#define INTMAX_MIN INT64_MIN +#define INTMAX_MAX INT64_MAX +#define UINTMAX_MAX UINT64_MAX + +/* 7.18.3 Limits of other integer types */ +#define PTRDIFF_MIN INT32_MIN +#define PTRDIFF_MAX INT32_MAX + +#define SIG_ATOMIC_MIN INT32_MIN +#define SIG_ATOMIC_MAX INT32_MAX + +#define SIZE_MAX UINT32_MAX + +#ifndef WCHAR_MIN /* also in wchar.h */ +#define WCHAR_MIN 0 +#define WCHAR_MAX ((wchar_t)-1) /* UINT16_MAX */ +#endif + +/* + * wint_t is unsigned int in __MINGW32__, + * but unsigned short in MS runtime + */ +#define WINT_MIN 0 +#define WINT_MAX UINT32_MAX + +#endif /* !defined ( __cplusplus) || defined __STDC_LIMIT_MACROS */ + + +/* 7.18.4 Macros for integer constants */ +#if !defined ( __cplusplus) || defined (__STDC_CONSTANT_MACROS) + +/* 7.18.4.1 Macros for minimum-width integer constants + + Accoding to Douglas Gwyn <gwyn@arl.mil>: + "This spec was changed in ISO/IEC 9899:1999 TC1; in ISO/IEC + 9899:1999 as initially published, the expansion was required + to be an integer constant of precisely matching type, which + is impossible to accomplish for the shorter types on most + platforms, because C99 provides no standard way to designate + an integer constant with width less than that of type int. + TC1 changed this to require just an integer constant + *expression* with *promoted* type." + + The trick used here is from Clive D W Feather. +*/ + +#define INT8_C(val) (INT_LEAST8_MAX-INT_LEAST8_MAX+(val)) +#define INT16_C(val) (INT_LEAST16_MAX-INT_LEAST16_MAX+(val)) +#define INT32_C(val) (INT_LEAST32_MAX-INT_LEAST32_MAX+(val)) +#define INT64_C(val) (INT_LEAST64_MAX-INT_LEAST64_MAX+(val)) + +#define UINT8_C(val) (UINT_LEAST8_MAX-UINT_LEAST8_MAX+(val)) +#define UINT16_C(val) (UINT_LEAST16_MAX-UINT_LEAST16_MAX+(val)) +#define UINT32_C(val) (UINT_LEAST32_MAX-UINT_LEAST32_MAX+(val)) +#define UINT64_C(val) (UINT_LEAST64_MAX-UINT_LEAST64_MAX+(val)) + +/* 7.18.4.2 Macros for greatest-width integer constants */ +#define INTMAX_C(val) (INTMAX_MAX-INTMAX_MAX+(val)) +#define UINTMAX_C(val) (UINTMAX_MAX-UINTMAX_MAX+(val)) + +#endif /* !defined ( __cplusplus) || defined __STDC_CONSTANT_MACROS */ + +#endif + diff -Nru lincity-ng-2.0/osx/build.sh lincity-ng-2.9~git20150314/osx/build.sh --- lincity-ng-2.0/osx/build.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/osx/build.sh 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,46 @@ +#!/bin/bash + +INSTALL_PREFIX="$PWD/lincity-ng" +APP_NAME="LinCity-NG.app" + +cd .. +./configure --with-apple-opengl-framework --prefix=$INSTALL_PREFIX x86_64-apple-darwin10.6.0 +jam +jam install + +cd ./osx + +echo "* Removing any existing installation" + rm -rf ./$APP_NAME + rm *.dmg + rm *.xz + +echo "* Creating skeleton" +mkdir -p ./$APP_NAME/Contents/Resources +mkdir ./$APP_NAME/Contents/MacOS +cp info.plist ./$APP_NAME/Contents/info.plist +cp lincity-ng.icns ./$APP_NAME/Contents/Resources/lincity-ng.icns + +echo "* Copying executable" +cp $INSTALL_PREFIX/bin/lincity-ng ./$APP_NAME/Contents/MacOS/lincity-ng + +echo "* Copying data files" +cp -r $INSTALL_PREFIX/share ./$APP_NAME/Contents/Resources/ + +echo "* Bunling dependencies" + +dylibbundler -od -b -x ./$APP_NAME/Contents/MacOS/lincity-ng -d ./$APP_NAME/Contents/libs/ + +echo "* Creating DMG" + hdiutil create -size 100M -fs HFS+J -volname LinCity-NG LinCity-NG-tmp.dmg + hdiutil attach LinCity-NG-tmp.dmg -readwrite -mount required + cp -R LinCity-NG.app /Volumes/LinCity-NG/ + cp ../README /Volumes/LinCity-NG + cp ../COPYING /Volumes/LinCity-NG + cp ../COPYING-data.txt /Volumes/LinCity-NG + cp ../COPYING-fonts.txt /Volumes/LinCity-NG + hdiutil detach /Volumes/LinCity-NG -force + ./licenseDMG.py LinCity-NG-tmp.dmg ../COPYING + hdiutil convert LinCity-NG-tmp.dmg -format UDRO -o LinCity-NG-`awk -F " " '{print $3}' ../RELNOTES | awk 'NR == 1'`.dmg + xz -z LinCity-NG-`awk -F " " '{print $3}' ../RELNOTES | awk 'NR == 1'`.dmg + rm LinCity-NG-tmp.dmg \ No newline at end of file diff -Nru lincity-ng-2.0/osx/Info.plist lincity-ng-2.9~git20150314/osx/Info.plist --- lincity-ng-2.0/osx/Info.plist 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/osx/Info.plist 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleExecutable</key> + <string>lincity-ng</string> + <key>CFBundleIconFile</key> + <string>lincity-ng.icns</string> + <key>CFBundleIdentifier</key> + <string>de.berlios.lincity-ng</string> + <key>CFBundlePackageType</key> + <string>APPL</string> + <key>CFBungleSignature</key> + <string>????</string> +</dict> +</plist> diff -Nru lincity-ng-2.0/osx/licenseDMG.py lincity-ng-2.9~git20150314/osx/licenseDMG.py --- lincity-ng-2.0/osx/licenseDMG.py 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/osx/licenseDMG.py 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,161 @@ +#! /usr/bin/env python +""" +This script adds a license file to a DMG. Requires Xcode and a plain ascii text +license file. +Obviously only runs on a Mac. + +Copyright (C) 2011-2013 Jared Hobbs + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. +""" +import os +import sys +import tempfile +import optparse + + +class Path(str): + def __enter__(self): + return self + + def __exit__(self, type, value, traceback): + os.unlink(self) + + +def mktemp(dir=None, suffix=''): + (fd, filename) = tempfile.mkstemp(dir=dir, suffix=suffix) + os.close(fd) + return Path(filename) + + +def main(options, args): + dmgFile, license = args + with mktemp('.') as tmpFile: + with open(tmpFile, 'w') as f: + f.write("""data 'TMPL' (128, "LPic") { + $"1344 6566 6175 6C74 204C 616E 6775 6167" + $"6520 4944 4457 5244 0543 6F75 6E74 4F43" + $"4E54 042A 2A2A 2A4C 5354 430B 7379 7320" + $"6C61 6E67 2049 4444 5752 441E 6C6F 6361" + $"6C20 7265 7320 4944 2028 6F66 6673 6574" + $"2066 726F 6D20 3530 3030 4457 5244 1032" + $"2D62 7974 6520 6C61 6E67 7561 6765 3F44" + $"5752 4404 2A2A 2A2A 4C53 5445" +}; + +data 'LPic' (5000) { + $"0000 0002 0000 0000 0000 0000 0004 0000" +}; + +data 'STR#' (5000, "English buttons") { + $"0006 0D45 6E67 6C69 7368 2074 6573 7431" + $"0541 6772 6565 0844 6973 6167 7265 6505" + $"5072 696E 7407 5361 7665 2E2E 2E7A 4966" + $"2079 6F75 2061 6772 6565 2077 6974 6820" + $"7468 6520 7465 726D 7320 6F66 2074 6869" + $"7320 6C69 6365 6E73 652C 2063 6C69 636B" + $"2022 4167 7265 6522 2074 6F20 6163 6365" + $"7373 2074 6865 2073 6F66 7477 6172 652E" + $"2020 4966 2079 6F75 2064 6F20 6E6F 7420" + $"6167 7265 652C 2070 7265 7373 2022 4469" + $"7361 6772 6565 2E22" +}; + +data 'STR#' (5002, "English") { + $"0006 0745 6E67 6C69 7368 0541 6772 6565" + $"0844 6973 6167 7265 6505 5072 696E 7407" + $"5361 7665 2E2E 2E7B 4966 2079 6F75 2061" + $"6772 6565 2077 6974 6820 7468 6520 7465" + $"726D 7320 6F66 2074 6869 7320 6C69 6365" + $"6E73 652C 2070 7265 7373 2022 4167 7265" + $"6522 2074 6F20 696E 7374 616C 6C20 7468" + $"6520 736F 6674 7761 7265 2E20 2049 6620" + $"796F 7520 646F 206E 6F74 2061 6772 6565" + $"2C20 7072 6573 7320 2244 6973 6167 7265" + $"6522 2E" +};\n\n""") + with open(license, 'r') as l: + f.write('data \'TEXT\' (5000, "English SLA") {\n') + for line in l: + if len(line) < 1000: + f.write(' "' + line.strip().replace('"', '\\"') + + '\\n"\n') + else: + for liner in line.split('.'): + f.write(' "' + + liner.strip().replace('"', '\\"') + + '. \\n"\n') + f.write('};\n\n') + f.write("""data 'styl' (5000, "English SLA") { + $"0003 0000 0000 000C 0009 0014 0000 0000" + $"0000 0000 0000 0000 0027 000C 0009 0014" + $"0100 0000 0000 0000 0000 0000 002A 000C" + $"0009 0014 0000 0000 0000 0000 0000" +};\n""") + os.system('hdiutil unflatten -quiet "%s"' % dmgFile) + ret = os.system('%s -a %s -o "%s"' % + (options.rez, tmpFile, dmgFile)) + os.system('hdiutil flatten -quiet "%s"' % dmgFile) + if options.compression is not None: + os.system('cp %s %s.temp.dmg' % (dmgFile, dmgFile)) + os.remove(dmgFile) + if options.compression == "bz2": + os.system('hdiutil convert %s.temp.dmg -format UDBZ -o %s' % + (dmgFile, dmgFile)) + elif options.compression == "gz": + os.system('hdiutil convert %s.temp.dmg -format ' % dmgFile + + 'UDZO -imagekey zlib-devel=9 -o %s' % dmgFile) + os.remove('%s.temp.dmg' % dmgFile) + if ret == 0: + print "Successfully added license to '%s'" % dmgFile + else: + print "Failed to add license to '%s'" % dmgFile + +if __name__ == '__main__': + parser = optparse.OptionParser() + parser.set_usage("""%prog <dmgFile> <licenseFile> [OPTIONS] + This program adds a software license agreement to a DMG file. + It requires Xcode and a plain ascii text <licenseFile>. + + See --help for more details.""") + parser.add_option( + '--rez', + '-r', + action='store', + default='/Applications/Xcode.app/Contents/Developer/Tools/Rez', + help='The path to the Rez tool. Defaults to %default' + ) + parser.add_option( + '--compression', + '-c', + action='store', + choices=['bz2', 'gz'], + default=None, + help='Optionally compress dmg using specified compression type. ' + 'Choices are bz2 and gz.' + ) + options, args = parser.parse_args() + cond = len(args) != 2 + if not os.path.exists(options.rez): + print 'Failed to find Rez at "%s"!\n' % options.rez + cond = True + if cond: + parser.print_usage() + sys.exit(1) + main(options, args) Binary files /tmp/8aaEFsBZYE/lincity-ng-2.0/osx/lincity-ng.icns and /tmp/ZJIZhvZzWN/lincity-ng-2.9~git20150314/osx/lincity-ng.icns differ diff -Nru lincity-ng-2.0/README lincity-ng-2.9~git20150314/README --- lincity-ng-2.0/README 2009-01-25 20:21:28.000000000 +0000 +++ lincity-ng-2.9~git20150314/README 2015-05-05 16:32:49.000000000 +0000 @@ -1,7 +1,7 @@ LinCity-NG a city simulation game - http://lincity-ng.berlios.de/ + https://code.google.com/p/lincity-ng Contents: 1. Introduction @@ -24,6 +24,9 @@ 2. Building and Installation + +These are generic instructions, please see the wiki for more specific instructions + 2.1 Prerequisites The game depends on some tools and libraries to be present, before @@ -164,13 +167,12 @@ 4. Contact -Bugs should be reported to the Lincity Wiki on Berlios: - http://lincity-ng.berlios.de/wiki/index.php/Bug_Reports - (press edit to add or modify bugreports) +Bugs should be reported to: + https://code.google.com/p/lincity-ng/issues/list -You can contact us at the lincity-ng-devel mailinglist at Berlios: - http://lists.berlios.de/mailman/listinfo/lincity-ng-devel +You can contact us at the lincity-ng-devel mailinglist: + http://lists.fedorahosted.org/mailman/listinfo/lincity-ng-devel or you might be able to catch us in irc at irc.freenode.net #lincity. -Visit our homepage: http://lincity-ng.berlios.de/ +Visit our homepage: https://code.google.com/p/lincity-ng diff -Nru lincity-ng-2.0/README-Unlimited lincity-ng-2.9~git20150314/README-Unlimited --- lincity-ng-2.0/README-Unlimited 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/README-Unlimited 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,35 @@ +LinCity Unlimited + +Major features +- Free mapsizes larger than 50² +- Smart simulation on huge maps +- Quick map generation +- New savegames with optional text mode. Import of legacy savegames +- New water and power management (flows along transport) +- Irrigation for forests and powered farms on dry land +- Density and traffic maps for all different kind of commodities (mousewheel over minimap) +- Stat bars reflect city wide averages +- Coal/Ore mines can store material and are evacuated before auto-bulldozing +- xml config files for sprites and sounds +- seed compression for savegames + +Minor features +- In text mode query with "d" pressed sends XML info to console +- press p to cylcle trough constructions and/or locate village on map +- hold s while building watertower to build a shanty +- press Ctrl to toggle left/right cornered road dragging +- Evacuate commodities from buildings or transport +- Up/downgrading of transport by simple dragging +- find coal deposits by right click on tile +- Animated waste burning +- 2nd page of stat bars +- Zooming on cursor position +- updated help contents +- bridging power cables +- railway crossings for roads and tracks +- power poles on any terrain + + +And of course thousands time more changes under the skin and endless hours of game testing. +have fun with LinCity Unlimites. It is free and unlimited. + diff -Nru lincity-ng-2.0/README-WaterWell lincity-ng-2.9~git20150314/README-WaterWell --- lincity-ng-2.0/README-WaterWell 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/README-WaterWell 2015-05-05 16:32:49.000000000 +0000 @@ -0,0 +1,128 @@ +WARNING +------- + + BACKUP YOUR SAVED GAMES BEFORE USE. + + Data structure have changed and impact load/save. + + YOU HAVE BEEN WARNED, BACKUP YOUR DATA. + +README: +------- +Attempt to implement some kind of water management. +This file is a temporary note book. + +DONE: +----- +basic water management implemented: + -residence need water like food. Lack of water has the same consequences as lack of food. + -random village has a water well. + -well's range is shown in starvation window and around cursor + -initial desert tiles have no underground water (added flag has_underground_water) + -farm and charcoal (in communes) production depends on underground water + -parks need ugw (no park on true desert tile) + -2 scenarios: extreme_arid and extreme_wetland (random village is in between) + -basic ecology: change desert with UGW (= bulldozed tile) to green after some monthes. + (needed for showing UGW for placing farms communes and parks) + -Tuning of aridity parameter and others (communes, farms, parks) seems rather correct. + + -additional data structure and load/save. + -automagic upgrade of old games + +AIM: +---- +* simple ecology = periodic event : + - neighbours => % decrease/increase from desert to tree3. (tree3 need 4 neighbouring trees) + - pollution ++%decrease + - water ++%increase + = just look nicer (change nothing in the game) but could show impact of human activities on forests :) + +* Water quality (from drinkable to mortal). + - altitude to know the local slope and the drainage basin. + unit 1cm +1/tile is enough slope for calm river, large river => +0/tile, + coast line +100, land + rand() % mountainity per tile. + maybe just UGW_altitude. Need to be tested and displayed in altitude minimap. + pb: ugw motion with desert tile: + -probably need some iterations during creation to draw a path. + -allow diagonal motion + - residences, farms and industries can pollute water. + - park along a river or around a well will also reduce the pollution. + - pollution transported by water will follow the slope, so go in river and travel toward the bottom + of the map (roughtly opposite of wind direction :-) + - annual event = waste => pollution diffusion and slow diminution (1000 years) + In NG_1.1 already, tips slowly degrade to green. + +Won't do soon, maybe never: +--------------------------- +* Areas without water could need high-tech deep well and/or pipes to feed the water station. + +* residence near river should not need water well. + +* transport capacity for water = water_on_road, water_on rail.... ? + This mean quantity management of water. can be very tricky in addition to quality. + rev 1170 uses range, so no need for transport. + ? market can buy/sell water ? or waterwell is a watermarket ? + +* fire/health cover in dry area should cost more (need more equipment ...) + +* industries also need water (connection needed?, or pipes?) + +REMARKS/NOTES: +-------------- +Don't consider this is important, it's just some ideas caught while wandering in the +code. They are written here instead of somewhere else, but maybe they will just be forgotten +or go in the wiki. + +* separation of engine and graphics is rather good + - additional data structure could be useful + - a building gives: tech at build time, average state (needs %, production %) during last period + - the drawing modules uses the info to choose correct tile, and manage looping for + cleaner animation (currently fast speed skip frames => weird animation). + +* Within market range, everything can already jump accross rivers. + +* rivers are ready for transport: in lin-city.h + #define MAX_FOOD_ON_RIVER (MAX_FOOD_ON_TRACK*2) + #define MAX_JOBS_ON_RIVER (MAX_JOBS_ON_TRACK*2) + #define MAX_COAL_ON_RIVER (MAX_COAL_ON_TRACK*2) + #define MAX_GOODS_ON_RIVER (MAX_GOODS_ON_TRACK*2) + #define MAX_ORE_ON_RIVER (MAX_ORE_ON_TRACK*2) + #define MAX_STEEL_ON_RIVER (MAX_STEEL_ON_TRACK*2) + + but are not in GROUP_IS_TRANSPORT. + #define GROUP_IS_TRANSPORT(group) \ + ((group == GROUP_TRACK) || \ + (group == GROUP_ROAD) || \ + (group == GROUP_RAIL) || \ + (group == GROUP_POWER_LINE)) + Beach scenario could cause trouble (stock many thing in the sea !). + FLAG_IS_RIVER (=navigable) should allow to control this: + coast line = navigable = RIVER + off shore = not navigable = WATER + In current version (1195), in Beach all the sea is navigable. + +* Speed of transport: (must think of this and look more carefully) + afaik speed of transport +-= 1 tile/iteration for all transports + it could be set to different value: speed = N <=> N iteration + track_speed = 1 + road_speed = 2 + train_speed = 3 + river_speed = 0.3 but huge capacity for coal,ore and steel. + low speed should prevent absorbing everything, but once the + river is loaded it should be a nice transport. + +* Parks are not entertainment parks. They are biological depollution tool + => they are build in very polluted areas (sometimes mortal) + => no child games should appear there! + +* Parks appear too early, when they are not needed. + +* Graphic before rail techlevel should not have cars, but horses and bullocks instead. +* Low tech houses looks too modern. + +* non-navigable waters (not seas) could very slowly become green + less than 1/1000 chance per year, inversely proportionnal to surface. + +* Minimap size is hardcoded 200 pixel = 2x WORLD_SIDE_LEN. Probably need to use pixel for sharp graphics. + + diff -Nru lincity-ng-2.0/RELNOTES lincity-ng-2.9~git20150314/RELNOTES --- lincity-ng-2.0/RELNOTES 2009-01-25 20:21:28.000000000 +0000 +++ lincity-ng-2.9~git20150314/RELNOTES 2015-05-05 16:32:49.000000000 +0000 @@ -1,9 +1,17 @@ -*** LincityNG 2.0 *** [r1516 in svn] 2009-01-25 +*** LincityNG 2.9.beta *** [r1797 in svn] 2013-12-22 + +public BETA release with: +* custom map size, see README-Unlimited +* new water management, see README-WaterWell +* more supported languages +* less bugs + +*** LincityNG 2.0 *** [r1518 in svn] 2009-01-25 * Updated translations (cs, de, nl, pt_BR, ru, sv) * Use language specific font if fonts/<style>-<Language>.ttf exists. Note: To use the Japanese translation you have to copy or symlink - a font with Japanese characters to fonts/sans-ja_JA.ttf. + a font with Japanese characters to fonts/sans-ja_JP.ttf. * improved images * less bugs diff -Nru lincity-ng-2.0/src/gui/Button.cpp lincity-ng-2.9~git20150314/src/gui/Button.cpp --- lincity-ng-2.0/src/gui/Button.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Button.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -36,7 +36,7 @@ #include "XmlReader.hpp" Button::Button() - : state(STATE_NORMAL), lowerOnClick(false), mouseholdTicks(0) + : state(STATE_NORMAL), lowerOnClick(true), mouseholdTicks(0) { fixWidth = -1; fixHeight = -1; @@ -77,7 +77,7 @@ // we need 4 child components childs.assign(4, Child()); - + // parse contents of the xml-element bool parseTooltip = false; int depth = reader.getDepth(); @@ -140,7 +140,7 @@ continue; const char* p = (const char*) reader.getValue(); - + // skip trailing spaces while(*p != 0 && isspace(static_cast<unsigned char>(*p))) ++p; @@ -200,14 +200,14 @@ width = fixWidth; height = fixHeight; } - + // place components at the middle of the button for(Childs::iterator i = childs.begin(); i != childs.end(); ++i) { Child& child = *i; Component* component = child.getComponent(); if(!component) continue; - + child.setPos( Vector2 ((width - component->getWidth())/2, (height - component->getHeight())/2)); } @@ -246,7 +246,7 @@ if(!child.getComponent()) continue; Component* component = child.getComponent(); - + child.setPos( Vector2 ((width - component->getWidth())/2, (height - component->getHeight())/2)); } @@ -262,8 +262,8 @@ Paragraph *p=dynamic_cast<Paragraph*>(cm); if(p) s=p->getText(); - } - + } + return s; } @@ -346,19 +346,30 @@ case STATE_NORMAL: drawChild(comp_normal(), painter); break; - + default: assert(false); } - if(lowerOnClick && state==STATE_CLICKED) + if(lowerOnClick) { - painter.pushTransform(); - painter.translate(Vector2(1,1)); + if(state == STATE_CLICKED) + { + painter.pushTransform(); + painter.translate(Vector2(3,3)); + } + else if(state == STATE_HOVER) + { + painter.pushTransform(); + painter.translate(Vector2(1,1)); + } } if(comp_caption().isEnabled()) - drawChild(comp_caption(), painter); - if(lowerOnClick && state==STATE_CLICKED) - painter.popTransform(); + { drawChild(comp_caption(), painter);} + if(lowerOnClick && (state==STATE_CLICKED || state == STATE_HOVER)) + { painter.popTransform();} } IMPLEMENT_COMPONENT_FACTORY(Button) + +/** @file gui/Button.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Button.hpp lincity-ng-2.9~git20150314/src/gui/Button.hpp --- lincity-ng-2.0/src/gui/Button.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Button.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -89,3 +89,6 @@ }; #endif + +/** @file gui/Button.hpp */ + diff -Nru lincity-ng-2.0/src/gui/callback/CallbackBase.hpp lincity-ng-2.9~git20150314/src/gui/callback/CallbackBase.hpp --- lincity-ng-2.0/src/gui/callback/CallbackBase.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/callback/CallbackBase.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -41,3 +41,6 @@ #endif + +/** @file gui/callback/CallbackBase.hpp */ + diff -Nru lincity-ng-2.0/src/gui/callback/Callback.hpp lincity-ng-2.9~git20150314/src/gui/callback/Callback.hpp --- lincity-ng-2.0/src/gui/callback/Callback.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/callback/Callback.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -94,3 +94,6 @@ } #endif + +/** @file gui/callback/Callback.hpp */ + diff -Nru lincity-ng-2.0/src/gui/callback/Signal.hpp lincity-ng-2.9~git20150314/src/gui/callback/Signal.hpp --- lincity-ng-2.0/src/gui/callback/Signal.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/callback/Signal.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -105,3 +105,6 @@ #endif + +/** @file gui/callback/Signal.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Child.cpp lincity-ng-2.9~git20150314/src/gui/Child.cpp --- lincity-ng-2.0/src/gui/Child.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Child.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -85,3 +85,6 @@ std::vector<Child>::clear(); } + +/** @file gui/Child.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Child.hpp lincity-ng-2.9~git20150314/src/gui/Child.hpp --- lincity-ng-2.0/src/gui/Child.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Child.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -105,3 +105,6 @@ }; #endif + +/** @file gui/Child.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Color.cpp lincity-ng-2.9~git20150314/src/gui/Color.cpp --- lincity-ng-2.0/src/gui/Color.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Color.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -101,3 +101,6 @@ throw std::runtime_error(msg.str()); } } + +/** @file gui/Color.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Color.hpp lincity-ng-2.9~git20150314/src/gui/Color.hpp --- lincity-ng-2.0/src/gui/Color.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Color.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -67,3 +67,6 @@ #endif + +/** @file gui/Color.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Component.cpp lincity-ng-2.9~git20150314/src/gui/Component.cpp --- lincity-ng-2.0/src/gui/Component.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Component.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -77,10 +77,8 @@ { for(Childs::iterator i = childs.begin(); i != childs.end(); ++i) { Child& child = *i; - if(!child.enabled) - continue; - - drawChild(child, painter); + if(child.enabled) + drawChild(child, painter); } } @@ -134,12 +132,11 @@ for(Childs::const_iterator i = childs.begin(); i != childs.end(); ++i) { const Child& child = *i; - if(!child.getComponent()) - continue; - - Component* component = child.component->findComponent(name); - if(component) - return component; + if (child.getComponent()) { + Component* component = child.component->findComponent(name); + if(component) + return component; + } } return 0; @@ -220,3 +217,6 @@ assert(false); } + +/** @file gui/Component.cpp */ + diff -Nru lincity-ng-2.0/src/gui/ComponentFactory.cpp lincity-ng-2.9~git20150314/src/gui/ComponentFactory.cpp --- lincity-ng-2.0/src/gui/ComponentFactory.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ComponentFactory.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -27,24 +27,25 @@ #include "ComponentLoader.hpp" #include "XmlReader.hpp" #include "Desktop.hpp" -#include "tinygettext/TinyGetText.hpp" +#include "tinygettext/tinygettext.hpp" +//#include "../lincity-ng/CheckButton.hpp" //FIXME will that help? #include <sstream> #include <stdexcept> #include <iostream> -TinyGetText::DictionaryManager dictionaryGUIManager; +tinygettext::DictionaryManager* dictionaryGUIManager = 0; -const char * +const char * GUI_TRANSLATE(const char * msgid) { - return dictionaryGUIManager.get_dictionary().translate(msgid); + return dictionaryGUIManager->get_dictionary().translate(msgid); } -std::string +std::string GUI_TRANSLATE(const std::string& msgid) { - return dictionaryGUIManager.get_dictionary().translate(msgid); + return dictionaryGUIManager->get_dictionary().translate(msgid); } ComponentFactories* component_factories = 0; @@ -63,7 +64,7 @@ component_factories->insert(std::make_pair("Import", this)); } - + Component* createComponent(XmlReader& reader); }; //static ImportFactory factory_Import; @@ -72,7 +73,7 @@ ImportFactory::createComponent(XmlReader& reader) { std::string importfile; - + XmlReader::AttributeIterator iter(reader); while(iter.next()) { const char* attribute = (const char*) iter.getName(); @@ -87,8 +88,8 @@ if(importfile == "") throw std::runtime_error("No src attribute specified."); - XmlReader nreader(importfile); + //std::cout << "importing Factory: " << importfile << std::endl; return ::createComponent((const char*) nreader.getName(), nreader); } @@ -116,6 +117,7 @@ #include "TooltipManager.hpp" #include "Window.hpp" +//DECLARE_COMPONENT_FACTORY(CheckButton); //FIXME will this help? DECLARE_COMPONENT_FACTORY(Button) DECLARE_COMPONENT_FACTORY(Desktop) DECLARE_COMPONENT_FACTORY(Document) @@ -133,8 +135,12 @@ void initFactories() { +#ifdef DEBUG static bool initialized = false; - if(!initialized) { + if(!initialized) + { +#endif + //new INTERN_CheckButtonFactory(); //FIXME will this help? new INTERN_ButtonFactory(); new INTERN_DesktopFactory(); new INTERN_DocumentFactory(); @@ -151,10 +157,16 @@ new INTERN_WindowFactory(); new ImportFactory(); - dictionaryGUIManager.set_charset("UTF-8"); - dictionaryGUIManager.add_directory("locale/gui"); + dictionaryGUIManager = new tinygettext::DictionaryManager(); + dictionaryGUIManager->set_charset("UTF-8"); + dictionaryGUIManager->add_directory("locale/gui"); +#ifdef DEBUG initialized = true; } +#endif } + +/** @file gui/ComponentFactory.cpp */ + diff -Nru lincity-ng-2.0/src/gui/ComponentFactory.hpp lincity-ng-2.9~git20150314/src/gui/ComponentFactory.hpp --- lincity-ng-2.0/src/gui/ComponentFactory.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ComponentFactory.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -81,3 +81,8 @@ #endif + +/** @file gui/ComponentFactory.hpp */ +/* CLASS * component = dynamic_cast<CLASS *>(new CLASS()); + + */ diff -Nru lincity-ng-2.0/src/gui/Component.hpp lincity-ng-2.9~git20150314/src/gui/Component.hpp --- lincity-ng-2.0/src/gui/Component.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Component.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -55,7 +55,7 @@ * Also the painter passed to the draw function will have a transformation * set, so that you can simply use coordinates ralative to the component origin. */ -class Component +class Component { public: /** Values for the flags bitfield. */ @@ -166,3 +166,6 @@ }; #endif + +/** @file gui/Component.hpp */ + diff -Nru lincity-ng-2.0/src/gui/ComponentLoader.cpp lincity-ng-2.9~git20150314/src/gui/ComponentLoader.cpp --- lincity-ng-2.0/src/gui/ComponentLoader.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ComponentLoader.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -29,27 +29,40 @@ #include "Desktop.hpp" #include "Style.hpp" + #include <sstream> #include <stdexcept> #include <iostream> #include <memory> -void initFactories(); +//void initFactories(); Component* createComponent(const std::string& type, XmlReader& reader) { - initFactories(); - + //static int depth = 0; + //initFactories(); + //Component * component = 0; if(component_factories == 0) throw std::runtime_error("No component factories registered"); - + ComponentFactories::iterator i = component_factories->find(type); if(i == component_factories->end()) { std::stringstream msg; msg << "Couldn't find a component factory for '" << type << "'"; throw std::runtime_error(msg.str()); } - +/* + for(int i=0;i<depth;++i) + std::cout << "\t"; + std::cout << type << ": begin" <<std::endl; + std::cout.flush(); + ++depth; + component = i->second->createComponent(reader); + --depth; + for(int i=0;i<depth;++i) + std::cout << "\t"; + std::cout << type << ": end" << std::endl; +*/ try { return i->second->createComponent(reader); } catch(std::exception& e) { @@ -64,14 +77,14 @@ Component* loadGUIFile(const std::string& filename) { XmlReader reader(filename); - + std::string componentName = (const char*) reader.getName(); if(componentName == "gui") { std::auto_ptr<Desktop> desktop (new Desktop()); desktop->parse(reader); return desktop.release(); } - + std::auto_ptr<Component> component (createComponent(componentName, reader)); return component.release(); } @@ -103,3 +116,6 @@ return component; } + +/** @file gui/ComponentLoader.cpp */ + diff -Nru lincity-ng-2.0/src/gui/ComponentLoader.hpp lincity-ng-2.9~git20150314/src/gui/ComponentLoader.hpp --- lincity-ng-2.0/src/gui/ComponentLoader.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ComponentLoader.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -52,3 +52,6 @@ Component* createComponent(const std::string& type, XmlReader& reader); #endif + +/** @file gui/ComponentLoader.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Desktop.cpp lincity-ng-2.9~git20150314/src/gui/Desktop.cpp --- lincity-ng-2.0/src/gui/Desktop.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Desktop.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -243,3 +243,6 @@ assert( component->getParent() == 0 ); addQueue.push_back(component); } + +/** @file gui/Desktop.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Desktop.hpp lincity-ng-2.9~git20150314/src/gui/Desktop.hpp --- lincity-ng-2.0/src/gui/Desktop.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Desktop.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -67,3 +67,6 @@ #endif + +/** @file gui/Desktop.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Document.cpp lincity-ng-2.9~git20150314/src/gui/Document.cpp --- lincity-ng-2.0/src/gui/Document.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Document.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -165,4 +165,7 @@ linkClicked(paragraph, href); } -IMPLEMENT_COMPONENT_FACTORY(Document); +IMPLEMENT_COMPONENT_FACTORY(Document) + +/** @file gui/Document.cpp */ + diff -Nru lincity-ng-2.0/src/gui/DocumentElement.hpp lincity-ng-2.9~git20150314/src/gui/DocumentElement.hpp --- lincity-ng-2.0/src/gui/DocumentElement.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/DocumentElement.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -45,3 +45,6 @@ #endif + +/** @file gui/DocumentElement.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Document.hpp lincity-ng-2.9~git20150314/src/gui/Document.hpp --- lincity-ng-2.0/src/gui/Document.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Document.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -56,3 +56,6 @@ #endif + +/** @file gui/Document.hpp */ + diff -Nru lincity-ng-2.0/src/gui/DocumentImage.cpp lincity-ng-2.9~git20150314/src/gui/DocumentImage.cpp --- lincity-ng-2.0/src/gui/DocumentImage.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/DocumentImage.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -85,3 +85,6 @@ painter.drawTexture(texture, Vector2(0, 0)); } + +/** @file gui/DocumentImage.cpp */ + diff -Nru lincity-ng-2.0/src/gui/DocumentImage.hpp lincity-ng-2.9~git20150314/src/gui/DocumentImage.hpp --- lincity-ng-2.0/src/gui/DocumentImage.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/DocumentImage.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -54,3 +54,6 @@ #endif + +/** @file gui/DocumentImage.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Event.cpp lincity-ng-2.9~git20150314/src/gui/Event.cpp --- lincity-ng-2.0/src/gui/Event.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Event.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -57,3 +57,6 @@ : type(UPDATE), inside(false), elapsedTime(_elapsedTime) { } + +/** @file gui/Event.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Event.hpp lincity-ng-2.9~git20150314/src/gui/Event.hpp --- lincity-ng-2.0/src/gui/Event.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Event.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -72,3 +72,6 @@ #endif + +/** @file gui/Event.hpp */ + diff -Nru lincity-ng-2.0/src/gui/FilledRectangle.cpp lincity-ng-2.9~git20150314/src/gui/FilledRectangle.cpp --- lincity-ng-2.0/src/gui/FilledRectangle.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/FilledRectangle.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -73,3 +73,6 @@ } IMPLEMENT_COMPONENT_FACTORY(FilledRectangle) + +/** @file gui/FilledRectangle.cpp */ + diff -Nru lincity-ng-2.0/src/gui/FilledRectangle.hpp lincity-ng-2.9~git20150314/src/gui/FilledRectangle.hpp --- lincity-ng-2.0/src/gui/FilledRectangle.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/FilledRectangle.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -47,3 +47,6 @@ }; #endif + +/** @file gui/FilledRectangle.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Filter.cpp lincity-ng-2.9~git20150314/src/gui/Filter.cpp --- lincity-ng-2.0/src/gui/Filter.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Filter.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -59,3 +59,6 @@ SDL_UnlockSurface(surface); } + +/** @file gui/Filter.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Filter.hpp lincity-ng-2.9~git20150314/src/gui/Filter.hpp --- lincity-ng-2.0/src/gui/Filter.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Filter.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -31,3 +31,6 @@ #endif + +/** @file gui/Filter.hpp */ + diff -Nru lincity-ng-2.0/src/gui/FontManager.cpp lincity-ng-2.9~git20150314/src/gui/FontManager.cpp --- lincity-ng-2.0/src/gui/FontManager.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/FontManager.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -63,15 +63,37 @@ TTF_Font* font = 0; // If there a special font for the current language use it. - std::string fontfile = "fonts/" + info.name + "-" + dictionaryManager->get_language() + ".ttf"; + std::string language = dictionaryManager->get_language(); + std::string fontfile = "fonts/" + info.name + "-" + language + ".ttf"; try{ font = TTF_OpenFontRW(getPhysfsSDLRWops(fontfile), 1, info.fontsize); } catch(std::exception& ){ + font = 0; + } + if(!font){ + // try short language, eg. "de" instead of "de_CH" + std::string::size_type pos = language.find("_"); + if(pos != std::string::npos) { + language = std::string(language, 0, pos); + fontfile = "fonts/" + info.name + "-" + language + ".ttf"; + try{ + font = TTF_OpenFontRW(getPhysfsSDLRWops(fontfile), 1, info.fontsize); + } catch(std::exception& ){ + font = 0; + } + } + } + if(!font){ // No special font found? Use default font then. fontfile = "fonts/" + info.name + ".ttf"; - font = TTF_OpenFontRW(getPhysfsSDLRWops(fontfile), 1, info.fontsize); + try{ + font = TTF_OpenFontRW(getPhysfsSDLRWops(fontfile), 1, info.fontsize); + } catch(std::exception& ){ + font = 0; + } } if(!font) { + // give up. std::stringstream msg; msg << "Error opening font '" << fontfile << "': " << SDL_GetError(); @@ -84,3 +106,6 @@ return font; } + +/** @file gui/FontManager.cpp */ + diff -Nru lincity-ng-2.0/src/gui/FontManager.hpp lincity-ng-2.9~git20150314/src/gui/FontManager.hpp --- lincity-ng-2.0/src/gui/FontManager.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/FontManager.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -74,3 +74,6 @@ #endif + +/** @file gui/FontManager.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Gradient.cpp lincity-ng-2.9~git20150314/src/gui/Gradient.cpp --- lincity-ng-2.0/src/gui/Gradient.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Gradient.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -186,3 +186,6 @@ } IMPLEMENT_COMPONENT_FACTORY(Gradient) + +/** @file gui/Gradient.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Gradient.hpp lincity-ng-2.9~git20150314/src/gui/Gradient.hpp --- lincity-ng-2.0/src/gui/Gradient.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Gradient.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -62,3 +62,6 @@ #endif + +/** @file gui/Gradient.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Image.cpp lincity-ng-2.9~git20150314/src/gui/Image.cpp --- lincity-ng-2.0/src/gui/Image.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Image.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -134,5 +134,8 @@ texture = texture_manager->load(pfilename); } -IMPLEMENT_COMPONENT_FACTORY(Image); +IMPLEMENT_COMPONENT_FACTORY(Image) + + +/** @file gui/Image.cpp */ diff -Nru lincity-ng-2.0/src/gui/Image.hpp lincity-ng-2.9~git20150314/src/gui/Image.hpp --- lincity-ng-2.0/src/gui/Image.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Image.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -55,3 +55,6 @@ #endif + +/** @file gui/Image.hpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterGL/PainterGL.cpp lincity-ng-2.9~git20150314/src/gui/PainterGL/PainterGL.cpp --- lincity-ng-2.0/src/gui/PainterGL/PainterGL.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterGL/PainterGL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -78,7 +78,6 @@ #endif return; } - drawTextureRect(texture, rect); } @@ -227,3 +226,6 @@ return 0; } + +/** @file gui/PainterGL/PainterGL.cpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterGL/PainterGL.hpp lincity-ng-2.9~git20150314/src/gui/PainterGL/PainterGL.hpp --- lincity-ng-2.0/src/gui/PainterGL/PainterGL.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterGL/PainterGL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -77,3 +77,6 @@ }; #endif + +/** @file gui/PainterGL/PainterGL.hpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterGL/TextureGL.cpp lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureGL.cpp --- lincity-ng-2.0/src/gui/PainterGL/TextureGL.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureGL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -32,3 +32,6 @@ glDeleteTextures(1, handles); } + +/** @file gui/PainterGL/TextureGL.cpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterGL/TextureGL.hpp lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureGL.hpp --- lincity-ng-2.0/src/gui/PainterGL/TextureGL.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureGL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -50,3 +50,6 @@ #endif + +/** @file gui/PainterGL/TextureGL.hpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterGL/TextureManagerGL.cpp lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureManagerGL.cpp --- lincity-ng-2.0/src/gui/PainterGL/TextureManagerGL.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureManagerGL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -72,15 +72,18 @@ glBindTexture(GL_TEXTURE_2D, handle); glPixelStorei(GL_UNPACK_ROW_LENGTH, convert->pitch/format->BytesPerPixel); + glTexParameteri(GL_TEXTURE_2D, GL_GENERATE_MIPMAP, GL_TRUE); glTexImage2D(GL_TEXTURE_2D, 0, format->BytesPerPixel, convert->w, convert->h, 0, GL_RGBA, GL_UNSIGNED_BYTE, convert->pixels); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_CLAMP); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_CLAMP); - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_R, GL_CLAMP); + GLfloat yellow[4] = { 1.0f, 1.0f, 0.0f, 1.0f }; + glTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_BORDER_COLOR, yellow); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_R, GL_REPEAT); TextureGL* texture = new TextureGL(handle); texture->rect = Rect2D(0, 0, @@ -94,3 +97,6 @@ return texture; } + +/** @file gui/PainterGL/TextureManagerGL.cpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterGL/TextureManagerGL.hpp lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureManagerGL.hpp --- lincity-ng-2.0/src/gui/PainterGL/TextureManagerGL.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterGL/TextureManagerGL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -31,3 +31,6 @@ #endif + +/** @file gui/PainterGL/TextureManagerGL.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Painter.hpp lincity-ng-2.9~git20150314/src/gui/Painter.hpp --- lincity-ng-2.0/src/gui/Painter.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Painter.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -68,3 +68,6 @@ }; #endif + +/** @file gui/Painter.hpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterSDL/PainterSDL.cpp lincity-ng-2.9~git20150314/src/gui/PainterSDL/PainterSDL.cpp --- lincity-ng-2.0/src/gui/PainterSDL/PainterSDL.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterSDL/PainterSDL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -51,19 +51,21 @@ } //ERM this function seems to account for SOME of the slowdown +//This function draw a tile with zoom = 1 +//i.e. with no transformation, so it is as fast as possible void PainterSDL::drawTexture(const Texture* texture, const Vector2& pos) { assert(typeid(*texture) == typeid(TextureSDL)); const TextureSDL* textureSDL = static_cast<const TextureSDL*> (texture); +#ifdef DEBUG_ALL if(texture == 0) { std::cerr << "Trying to render 0 texture."; -#ifdef DEBUG assert(false); -#endif return; } +#endif Vector2 screenpos = transform.apply(pos); @@ -108,19 +110,20 @@ } //ERM this function seems to account for MOST of the slowdown +//AL1 this function is twice as slow as drawTexture void PainterSDL::drawStretchTexture(Texture* texture, const Rect2D& rect) { assert(typeid(*texture) == typeid(TextureSDL)); TextureSDL* textureSDL = static_cast< TextureSDL*> (texture); +#ifdef DEBUG_ALL if(texture == 0 || texture->getWidth() == 0 || texture->getHeight() == 0) { std::cerr << "Trying to render 0 texture."; -#ifdef DEBUG assert(false); -#endif return; } +#endif Vector2 screenpos = transform.apply(rect.p1); @@ -287,3 +290,6 @@ return new PainterSDL(textureSDL); } + +/** @file gui/PainterSDL/PainterSDL.cpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterSDL/PainterSDL.hpp lincity-ng-2.9~git20150314/src/gui/PainterSDL/PainterSDL.hpp --- lincity-ng-2.0/src/gui/PainterSDL/PainterSDL.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterSDL/PainterSDL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -82,3 +82,6 @@ }; #endif + +/** @file gui/PainterSDL/PainterSDL.hpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterSDL/TextureManagerSDL.cpp lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureManagerSDL.cpp --- lincity-ng-2.0/src/gui/PainterSDL/TextureManagerSDL.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureManagerSDL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -80,3 +80,6 @@ return new TextureSDL(surface); } + +/** @file gui/PainterSDL/TextureManagerSDL.cpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterSDL/TextureManagerSDL.hpp lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureManagerSDL.hpp --- lincity-ng-2.0/src/gui/PainterSDL/TextureManagerSDL.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureManagerSDL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -37,3 +37,6 @@ }; #endif + +/** @file gui/PainterSDL/TextureManagerSDL.hpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterSDL/TextureSDL.cpp lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureSDL.cpp --- lincity-ng-2.0/src/gui/PainterSDL/TextureSDL.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureSDL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -29,3 +29,6 @@ zoomSurface = NULL; } } + +/** @file gui/PainterSDL/TextureSDL.cpp */ + diff -Nru lincity-ng-2.0/src/gui/PainterSDL/TextureSDL.hpp lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureSDL.hpp --- lincity-ng-2.0/src/gui/PainterSDL/TextureSDL.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/PainterSDL/TextureSDL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -63,3 +63,6 @@ }; #endif + +/** @file gui/PainterSDL/TextureSDL.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Panel.cpp lincity-ng-2.9~git20150314/src/gui/Panel.cpp --- lincity-ng-2.0/src/gui/Panel.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Panel.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -132,5 +132,8 @@ return false; } -IMPLEMENT_COMPONENT_FACTORY(Panel); +IMPLEMENT_COMPONENT_FACTORY(Panel) + + +/** @file gui/Panel.cpp */ diff -Nru lincity-ng-2.0/src/gui/Panel.hpp lincity-ng-2.9~git20150314/src/gui/Panel.hpp --- lincity-ng-2.0/src/gui/Panel.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Panel.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -51,3 +51,6 @@ #endif + +/** @file gui/Panel.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Paragraph.cpp lincity-ng-2.9~git20150314/src/gui/Paragraph.cpp --- lincity-ng-2.0/src/gui/Paragraph.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Paragraph.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -40,7 +40,7 @@ #include "XmlReader.hpp" #include "ComponentFactory.hpp" #include "Document.hpp" -#include "tinygettext/TinyGetText.hpp" +#include "tinygettext/tinygettext.hpp" Paragraph::Paragraph() : texture(0) @@ -65,7 +65,7 @@ Paragraph::parseList(XmlReader& reader, const Style& ) { // query for "list" style - std::map<std::string, Style>::iterator i + std::map<std::string, Style>::iterator i = styleRegistry.find("list"); if(i == styleRegistry.end()) { throw std::runtime_error("<li> element used but no" @@ -82,11 +82,26 @@ } void +Paragraph::commit_changes(TextSpan* ¤tspan, bool translatable) +{ + if (currentspan != 0) { + if (translatable) { + currentspan->text + = GUI_TRANSLATE(currentspan->text); + } + textspans.push_back(currentspan); + //std::cout << "new span: " << currentspan->text << std::endl; + currentspan = 0; + } +} + +void Paragraph::parse(XmlReader& reader, const Style& parentstyle) { bool translatable = false; - + style = parentstyle; + XmlReader::AttributeIterator iter(reader); while(iter.next()) { const char* attribute = (const char*) iter.getName(); @@ -105,105 +120,106 @@ std::vector<Style> stylestack; stylestack.push_back(style); + stylestack.back().toSpan(); TextSpan* currentspan = 0; - + try { std::string currenthref; int depth = reader.getDepth(); while(reader.read() && reader.getDepth() > depth) { - if(reader.getNodeType() == XML_READER_TYPE_ELEMENT) { - std::string node((const char*) reader.getName()); - if(node == "span" || node == "i" || node == "b" - || node == "a") { - if(currentspan != 0) { - if(translatable) { - currentspan->text - = GUI_TRANSLATE(currentspan->text); - } - textspans.push_back(currentspan); - currentspan = 0; - } - - Style style(stylestack.back()); - if (node == "a") { - style.text_color.parse("blue"); - } else if(node == "i") { - style.italic = true; - } else if(node == "b") { - style.bold = true; - } - - currenthref = ""; - XmlReader::AttributeIterator iter(reader); - while(iter.next()) { - const char* attribute = (const char*) iter.getName(); - const char* value = (const char*) iter.getValue(); - if(style.parseAttribute(attribute, value)) - continue; - else if(strcmp(attribute, "href") == 0) { - currenthref = value; - } else { - std::cerr << "Unknown attribute '" << attribute - << "' in textspan node.\n"; - } - } - style.parseAttributes(reader); - // TODO parse style attributes... - stylestack.push_back(style); - } else { - std::cerr << "Skipping unknown node '" << node << "'.\n"; - reader.nextNode(); - } - } else if(reader.getNodeType() == XML_READER_TYPE_TEXT) { - if(currentspan == 0) { - currentspan = new TextSpan(); - currentspan->style = stylestack.back(); + switch(reader.getNodeType()) { + case XML_READER_TYPE_ELEMENT: + { + std::string node((const char*) reader.getName()); + if(node == "span" || node == "i" || node == "b" + || node == "a") { + commit_changes(currentspan,translatable); + + Style style(stylestack.back()); + if (node == "a") { + style.text_color.parse("blue"); + } else if(node == "i") { + style.italic = true; + } else if(node == "b") { + style.bold = true; } - - const char* p = (const char*) reader.getValue(); - // skip trailing spaces... - while(*p != 0 && isspace(static_cast<unsigned char>(*p))) - ++p; - - bool lastspace = false; - for( ; *p != 0; ++p) { - if(isspace(static_cast<unsigned char>(*p))) { - if(!lastspace) { - lastspace = true; - currentspan->text += ' '; - } - } else { - lastspace = false; - currentspan->text += *p; - } + + currenthref = ""; + XmlReader::AttributeIterator iter(reader); + while(iter.next()) { + const char* attribute = (const char*) iter.getName(); + const char* value = (const char*) iter.getValue(); + if(style.parseAttribute(attribute, value)) + continue; + else if(strcmp(attribute, "href") == 0) { + currenthref = value; + } else { + std::cerr << "Unknown attribute '" << attribute + << "' in textspan node.\n"; + } } - } else if(reader.getNodeType() == XML_READER_TYPE_END_ELEMENT) { - std::string node((const char*) reader.getName()); - if(node == "span" || node == "b" || node == "i" - || node == "a") { - if(currentspan != 0) { - if(translatable) { - currentspan->text - = GUI_TRANSLATE(currentspan->text); - } - textspans.push_back(currentspan); - currentspan = 0; - } - stylestack.pop_back(); + style.parseAttributes(reader); + // TODO parse style attributes... + stylestack.push_back(style); + } else { + std::cerr << "Skipping unknown node '" << node << "'.\n"; + reader.nextNode(); + } + } + break; + case XML_READER_TYPE_TEXT: + { + if(currentspan == 0) { + currentspan = new TextSpan(); + currentspan->style = stylestack.back(); + } + + const char* p = (const char*) reader.getValue(); + // skip trailing spaces... + while(*p != 0 && isspace(static_cast<unsigned char>(*p))) + ++p; + + bool lastspace = false; + for( ; *p != 0; ++p) { + if(isspace(static_cast<unsigned char>(*p))) { + if(!lastspace) { + lastspace = true; + currentspan->text += ' '; + } } else { - std::cerr << "Internal error: unknown node end: '" << - node << "'.\n"; + lastspace = false; + currentspan->text += *p; + //std::cout << "growing span: " << currentspan->text << std::endl; } + } + + } + break; + case XML_READER_TYPE_END_ELEMENT: + { + std::string node((const char*) reader.getName()); + if(node == "span" || node == "b" || node == "i" + || node == "a") { + commit_changes(currentspan,translatable); + stylestack.pop_back(); + } else { + std::cerr << "Internal error: unknown node end: '" << + node << "'.\n"; + } } + break; + } } if(currentspan != 0) { if(translatable) { - currentspan->text + currentspan->text = GUI_TRANSLATE(currentspan->text); } + //std::cout << "completed span: " << currentspan->text << std::endl; textspans.push_back(currentspan); + currentspan = 0; //added CK } } catch(...) { if(currentspan != 0) @@ -213,7 +229,7 @@ } /** - * Reflows the text and renders it onto a texture + * Reflows the text and renders it onto a texture * Cleaning this big code up a bit more is always nice. However be very careful * when doing so and test it alot, as the code very easily breaks... */ @@ -221,13 +237,17 @@ Paragraph::resize(float width, float height) { // free old texture - if(texture) { + if(texture) + { delete texture; texture = 0; } - if(width == 0) { - this->width = this->height = 0; + if( (width == 0) || textspans.empty() ) + { + this->width = 0; + this->height = 0; + texture = 0; return; } @@ -237,19 +257,13 @@ std::vector<SDL_Surface*> lineimages; // surfaces for the current line std::vector<SDL_Surface*> spanimages; + std::vector<float> spanxoffset; std::vector<LinkRectangle> linerectangles; std::vector<int> spanbaselines; int lineheight = 0; int baseline = 0; - if(textspans.empty()) { - // no need to render anything if there are no spans - this->width = 0; - this->height = 0; - texture = 0; - return; - } - + TextSpans::iterator i = textspans.begin(); const TextSpan* span = *i; @@ -262,24 +276,25 @@ std::string line; // current rendering position Vector2 pos; - while(1) { std::string::size_type lastp = p; - if( (*text) [p] == ' ') { + if( (*text) [p] == ' ') + { // we don't need the space at the beginning of the line if(p-linestart != 0 || pos.x != 0) - line += ' '; - else { + { line += ' ';} + else + { lastp++; linestart++; } ++p; } - + // take a word - for( ; p < text->size() && (*text) [p] != ' '; ++p) { - line += (*text) [p]; - } + for( ; p < text->size() && + !( ((*text) [p] == ' ') /*|| ((*text) [p] == '\t')*/ ); ++p) + { line += (*text) [p];} // check line size... int render_width, render_height; @@ -288,10 +303,10 @@ bool render = false; bool linefeed = false; // we need a linefeed if width isn't enough for current span - if(width > 0 && pos.x + render_width >= width) { + if(width > 0 && pos.x + render_width >= width - style.margin_left - style.margin_right) + { render = true; linefeed = true; - // we have to leave out the last word (which made it too width) if(lastp-linestart > 0 || pos.x != 0) { line = std::string(*text, linestart, lastp-linestart); @@ -304,19 +319,22 @@ /* span is over, so we need to render now (and if it was the last span, * we need a linefeed too) */ - if(p >= text->size()) { + if(p >= text->size()) + { render = true; ++i; if(i == textspans.end()) - linefeed = true; + { linefeed = true;} } - - if(render && line != "") { - if(TTF_FontHeight(font) > lineheight) { + + if(render && line != "") + { + if(TTF_FontHeight(font) > lineheight) + { lineheight = TTF_FontHeight(font); baseline = TTF_FontAscent(font); } - + // render span //printf("Rendering: '%s'.\n", line.c_str()); SDL_Surface* spansurface = TTF_RenderUTF8_Blended(font, @@ -327,19 +345,48 @@ throw std::runtime_error(msg.str()); } SDL_SetAlpha(spansurface, 0, 0); + //remember individual margins of spans + float xoffset; + bool new_column = false; + if(span->style.alignment == Style::ALIGN_LEFT) + { + xoffset = span->style.margin_left; + new_column = (xoffset!=0); + } + else if(span->style.alignment == Style::ALIGN_CENTER) + { + new_column = (span->style.margin_left!=0); + if (new_column) + { xoffset = (width + span->style.margin_left - span->style.margin_right - spansurface->w)/2;} + else + { xoffset = 0;} + } + else + { + new_column = true; //always new column for right adjustment + xoffset = (width - spansurface->w - span->style.margin_right); + } + float yoffset = span->style.margin_top; + if (new_column) + { pos.x = xoffset;}//fixed columns + else + { pos.x += xoffset;} + pos.y += yoffset; + spanxoffset.push_back(pos.x); spanimages.push_back(spansurface); spanbaselines.push_back(TTF_FontAscent(font)); // remember span position if it is a link if(span->style.href != "") { LinkRectangle link; - link.rect = Rect2D (pos.x, pos.y, + link.rect = Rect2D (pos.x , pos.y, pos.x + spansurface->w, pos.y + spansurface->h); link.span = span; linerectangles.push_back(link); } - + + pos.x += spansurface->w; line = ""; } @@ -359,45 +406,42 @@ } SDL_SetAlpha(lineimage, 0, 0); - Sint16 x = 0; - SDL_Rect rect; + SDL_Rect rect; for(size_t i = 0; i < spanimages.size(); ++i) { - rect.x = x; - rect.y = baseline - spanbaselines[i]; - if(rect.y < 0) { - rect.y = 0; - } + rect.x = (Sint16) spanxoffset[i]; + rect.y = baseline - spanbaselines[i] + textspans[i]->style.margin_top; + if(rect.y < 0) + { rect.y = 0;} SDL_BlitSurface(spanimages[i], 0, lineimage, &rect); - x += spanimages[i]->w; - SDL_FreeSurface(spanimages[i]); } lineimages.push_back(lineimage); } spanbaselines.clear(); spanimages.clear(); + spanxoffset.clear(); // adjust link rectangles for alignment and add them to the list float xoffset; if(style.alignment == Style::ALIGN_LEFT) { - xoffset = 0; + xoffset = style.margin_left; } else if(style.alignment == Style::ALIGN_CENTER) { - xoffset = (width - lineimages.back()->w) / 2; + xoffset = (width + style.margin_left - style.margin_right - lineimages.back()->w)/2; } else { - xoffset = (width - lineimages.back()->w); + xoffset = (width - lineimages.back()->w - style.margin_right); } for(std::vector<LinkRectangle>::iterator i =linerectangles.begin(); i != linerectangles.end(); ++i) { - i->rect.move(Vector2(xoffset, 0)); + i->rect.move(Vector2(xoffset, style.margin_top)); linkrectangles.push_back(*i); } linerectangles.clear(); line = ""; pos.x = 0; - - ycoords.push_back(static_cast<int> (pos.y)); + + ycoords.push_back(static_cast<int> (pos.y + style.margin_top)); pos.y += lineheight; lineheight = TTF_FontHeight(font); @@ -405,9 +449,10 @@ } // advance to next span if necessary - if(p >= text->size()) { + if(p >= text->size()) + { if(i == textspans.end()) - break; + { break;} span = *i; text = &(span->text); font = fontManager->getFont(span->style); @@ -416,11 +461,9 @@ } } - if(height < style.min_height) { - height = style.min_height; - } else { - height = pos.y; - } + height = pos.y + style.margin_top + style.margin_bottom; + if(height < style.min_height) + { height = style.min_height;} // check height defined in style if(height == 0) { @@ -440,14 +483,16 @@ if(result == 0) { throw std::runtime_error("Out of memory when creating text image"); } + //apply margins of paragraph for(size_t i = 0; i < lineimages.size(); ++i) { SDL_Rect rect; + if(style.alignment == Style::ALIGN_LEFT) { - rect.x = (Sint16) 0; + rect.x = (Sint16) style.margin_left; } else if(style.alignment == Style::ALIGN_CENTER) { - rect.x = (Sint16) (width - lineimages[i]->w) / 2; + rect.x = (Sint16) (width + style.margin_left - style.margin_right - lineimages[i]->w) / 2; } else { - rect.x = (Sint16) (width - lineimages[i]->w); + rect.x = (Sint16) (width - lineimages[i]->w - style.margin_right); } rect.y = (Sint16) ycoords[i]; SDL_BlitSurface(lineimages[i], 0, result, &rect); @@ -455,12 +500,10 @@ } SDL_Surface* surface = SDL_DisplayFormatAlpha(result); SDL_FreeSurface(result); - if(surface == 0) { - throw std::runtime_error("Out of memory when creating text image(d)"); - } - - texture = texture_manager->create(surface); + if(surface == 0) + { throw std::runtime_error("Out of memory when creating text image(d)");} + texture = texture_manager->create(surface); this->width = width; this->height = height; @@ -471,8 +514,7 @@ Paragraph::draw(Painter& painter) { if(!texture) - return; - + { return;} painter.drawTexture(texture, Vector2(0, 0)); } @@ -501,7 +543,9 @@ void Paragraph::setText(const std::string& newtext) { - setText(newtext, style); + Style spanStyle = style; + spanStyle.toSpan(); + setText(newtext, spanStyle); } std::string Paragraph::getText() const @@ -515,23 +559,67 @@ void Paragraph::setText(const std::string& newtext, const Style& style) { +/* for(TextSpans::iterator i = textspans.begin(); i != textspans.end(); ++i) delete *i; +*/ textspans.clear(); - if(newtext != "") { - TextSpan* span = new TextSpan(); - span->style = style; - span->text = newtext; - textspans.push_back(span); - } + size_t span_end = newtext.find_first_of('\t',0); + if(span_end != newtext.npos) // we have a tab + { + int tabcount = 0; + std::string mytext = newtext; + std::string spantext; + while(mytext.size()) + { + spantext = mytext.substr(0,span_end);//skip the first tab + mytext.erase(0,span_end);//drop first span + mytext.erase(0,1);//kill the first tab + span_end = mytext.find_first_of('\t',0); // next tab + TextSpan* span = new TextSpan(); + span->style = style; + span->style.toSpan(); + span->text = spantext; + textspans.push_back(span); + ++tabcount; + } + if (tabcount == 2) + { + textspans[0]->style.alignment = Style::ALIGN_LEFT; + textspans[1]->style.alignment = Style::ALIGN_RIGHT; + } + else if (tabcount == 3) + { + textspans[0]->style.alignment = Style::ALIGN_LEFT; + textspans[1]->style.alignment = Style::ALIGN_RIGHT; + textspans[1]->style.margin_right = 65; + textspans[2]->style.alignment = Style::ALIGN_RIGHT; + } + } + else // simple string to parse + { + TextSpan* span = new TextSpan(); + span->style = style; + span->style.toSpan(); + span->text = newtext; + textspans.push_back(span); + } + + float oldWidth = width; + float oldHeight = height; // rerender text resize(width, height); - // eventually trigger resize/relayout of parent component - if(getParent()) - getParent()->reLayout(); + if(width == 0 || width != oldWidth || height == 0 || height != oldHeight) + { + if(getParent()) + { getParent()->reLayout();} + } } -IMPLEMENT_COMPONENT_FACTORY(Paragraph); +IMPLEMENT_COMPONENT_FACTORY(Paragraph) + + +/** @file gui/Paragraph.cpp */ diff -Nru lincity-ng-2.0/src/gui/Paragraph.hpp lincity-ng-2.9~git20150314/src/gui/Paragraph.hpp --- lincity-ng-2.0/src/gui/Paragraph.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Paragraph.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -32,6 +32,8 @@ #include "DocumentElement.hpp" #include "callback/Signal.hpp" + + class XmlReader; /** @@ -93,6 +95,8 @@ Signal<Paragraph*, const std::string&> linkClicked; private: + void commit_changes(TextSpan* ¤tspan, bool translatable); + class LinkRectangle { public: @@ -102,7 +106,8 @@ typedef std::vector<TextSpan*> TextSpans; TextSpans textspans; - Style style; + Style style; //CK: every span has its own style anyways + //TODO distinct Styles for paragraphs and styles Texture* texture; @@ -112,3 +117,6 @@ #endif + +/** @file gui/Paragraph.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Rect2D.cpp lincity-ng-2.9~git20150314/src/gui/Rect2D.cpp --- lincity-ng-2.0/src/gui/Rect2D.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Rect2D.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -29,3 +29,6 @@ p2.x = std::max(p2.x, other.p2.x); p2.y = std::max(p2.y, other.p2.y); } + +/** @file gui/Rect2D.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Rect2D.hpp lincity-ng-2.9~git20150314/src/gui/Rect2D.hpp --- lincity-ng-2.0/src/gui/Rect2D.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Rect2D.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -111,3 +111,6 @@ }; #endif + +/** @file gui/Rect2D.hpp */ + diff -Nru lincity-ng-2.0/src/gui/ScrollBar.cpp lincity-ng-2.9~git20150314/src/gui/ScrollBar.cpp --- lincity-ng-2.0/src/gui/ScrollBar.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ScrollBar.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -257,4 +257,7 @@ scrollspeed = 0; } -IMPLEMENT_COMPONENT_FACTORY(ScrollBar); +IMPLEMENT_COMPONENT_FACTORY(ScrollBar) + +/** @file gui/ScrollBar.cpp */ + diff -Nru lincity-ng-2.0/src/gui/ScrollBar.hpp lincity-ng-2.9~git20150314/src/gui/ScrollBar.hpp --- lincity-ng-2.0/src/gui/ScrollBar.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ScrollBar.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -86,3 +86,6 @@ #endif + +/** @file gui/ScrollBar.hpp */ + diff -Nru lincity-ng-2.0/src/gui/ScrollView.cpp lincity-ng-2.9~git20150314/src/gui/ScrollView.cpp --- lincity-ng-2.0/src/gui/ScrollView.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ScrollView.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -69,7 +69,7 @@ while(reader.read() && reader.getDepth() > depth) { if(reader.getNodeType() == XML_READER_TYPE_ELEMENT) { std::string element = (const char*) reader.getName(); - + if(element == "scrollbar") { std::auto_ptr<ScrollBar> scrollbar (new ScrollBar()); scrollbar->parse(reader); @@ -98,7 +98,7 @@ float scrollBarWidth = scrollBar().getComponent()->getWidth(); scrollBar().getComponent()->resize(scrollBarWidth, newheight); scrollBar().setPos(Vector2(newwidth - scrollBarWidth, 0)); - + float scrollarea = 0; if(contents().getComponent() != 0) { Component* component = contents().getComponent(); @@ -108,7 +108,7 @@ Rect2D(0, 0, newwidth - scrollBarWidth, newheight)); scrollarea = component->getHeight() - newheight; if(scrollarea < 0) - scrollarea = 0; + scrollarea = 0; } ScrollBar* scrollBarComponent = (ScrollBar*) scrollBar().getComponent(); @@ -137,7 +137,7 @@ if(!event.inside) return; - ScrollBar* scrollBarComp + ScrollBar* scrollBarComp = dynamic_cast<ScrollBar*> (scrollBar().getComponent()); if(scrollBarComp == 0) { #ifdef DEBUG @@ -171,5 +171,8 @@ resize(width, height); } -IMPLEMENT_COMPONENT_FACTORY(ScrollView); +IMPLEMENT_COMPONENT_FACTORY(ScrollView) + + +/** @file gui/ScrollView.cpp */ diff -Nru lincity-ng-2.0/src/gui/ScrollView.hpp lincity-ng-2.9~git20150314/src/gui/ScrollView.hpp --- lincity-ng-2.0/src/gui/ScrollView.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/ScrollView.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -55,3 +55,6 @@ #endif + +/** @file gui/ScrollView.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Style.cpp lincity-ng-2.9~git20150314/src/gui/Style.cpp --- lincity-ng-2.0/src/gui/Style.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Style.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -123,7 +123,7 @@ if(sscanf(value, "%f", &min_width) != 1) { std::cerr << "Couldn't parse value for min-width: '" << value << "'\n"; - } + } } else if(strcmp(attribute, "min-height") == 0) { if(sscanf(value, "%f", &min_height) != 1) { std::cerr << "Couldn't parse value for min-height: '" @@ -184,11 +184,25 @@ << "' in style definition.\n"; } } - + reader.nextNode(); - + if(name == "") throw std::runtime_error("Missing name in style definition"); styleRegistry.insert(std::make_pair(name, style)); } +void +Style::toSpan(void) +{ + margin_right = 0; + margin_left = 0; + margin_bottom = 0; + margin_top = 0; + if (alignment == ALIGN_CENTER) + { alignment = ALIGN_LEFT;} +} + + +/** @file gui/Style.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Style.hpp lincity-ng-2.9~git20150314/src/gui/Style.hpp --- lincity-ng-2.0/src/gui/Style.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Style.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -35,6 +35,8 @@ /** * @class Style */ +//TODO make distinct styles for paragraphs and spans + class Style { public: @@ -45,7 +47,7 @@ bool parseAttribute(const char* name, const char* value); std::string href; - + std::string font_family; bool italic; bool bold; @@ -61,6 +63,7 @@ float margin_left, margin_right, margin_top, margin_bottom; float width, height, min_width, min_height; + void toSpan(void); //restricts paragraph style to span style private: Color parseColor(const char* value); }; @@ -70,3 +73,6 @@ #endif + +/** @file gui/Style.hpp */ + diff -Nru lincity-ng-2.0/src/gui/SwitchComponent.cpp lincity-ng-2.9~git20150314/src/gui/SwitchComponent.cpp --- lincity-ng-2.0/src/gui/SwitchComponent.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/SwitchComponent.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -176,4 +176,7 @@ return false; } -IMPLEMENT_COMPONENT_FACTORY(SwitchComponent); +IMPLEMENT_COMPONENT_FACTORY(SwitchComponent) + +/** @file gui/SwitchComponent.cpp */ + diff -Nru lincity-ng-2.0/src/gui/SwitchComponent.hpp lincity-ng-2.9~git20150314/src/gui/SwitchComponent.hpp --- lincity-ng-2.0/src/gui/SwitchComponent.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/SwitchComponent.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -54,3 +54,6 @@ #endif + +/** @file gui/SwitchComponent.hpp */ + diff -Nru lincity-ng-2.0/src/gui/TableLayout.cpp lincity-ng-2.9~git20150314/src/gui/TableLayout.cpp --- lincity-ng-2.0/src/gui/TableLayout.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/TableLayout.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -463,5 +463,8 @@ cells[row * colproperties.size() + col] = Cell(childs.size()-1); } -IMPLEMENT_COMPONENT_FACTORY(TableLayout); +IMPLEMENT_COMPONENT_FACTORY(TableLayout) + + +/** @file gui/TableLayout.cpp */ diff -Nru lincity-ng-2.0/src/gui/TableLayout.hpp lincity-ng-2.9~git20150314/src/gui/TableLayout.hpp --- lincity-ng-2.0/src/gui/TableLayout.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/TableLayout.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -111,3 +111,6 @@ #endif + +/** @file gui/TableLayout.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Texture.hpp lincity-ng-2.9~git20150314/src/gui/Texture.hpp --- lincity-ng-2.0/src/gui/Texture.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Texture.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -43,3 +43,6 @@ }; #endif + +/** @file gui/Texture.hpp */ + diff -Nru lincity-ng-2.0/src/gui/TextureManager.cpp lincity-ng-2.9~git20150314/src/gui/TextureManager.cpp --- lincity-ng-2.0/src/gui/TextureManager.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/TextureManager.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -81,3 +81,6 @@ return result; } + +/** @file gui/TextureManager.cpp */ + diff -Nru lincity-ng-2.0/src/gui/TextureManager.hpp lincity-ng-2.9~git20150314/src/gui/TextureManager.hpp --- lincity-ng-2.0/src/gui/TextureManager.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/TextureManager.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -97,3 +97,6 @@ extern TextureManager* texture_manager; #endif + +/** @file gui/TextureManager.hpp */ + diff -Nru lincity-ng-2.0/src/gui/TooltipManager.cpp lincity-ng-2.9~git20150314/src/gui/TooltipManager.cpp --- lincity-ng-2.0/src/gui/TooltipManager.cpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/TooltipManager.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -129,4 +129,7 @@ setDirty(); } -IMPLEMENT_COMPONENT_FACTORY(TooltipManager); +IMPLEMENT_COMPONENT_FACTORY(TooltipManager) + +/** @file gui/TooltipManager.cpp */ + diff -Nru lincity-ng-2.0/src/gui/TooltipManager.hpp lincity-ng-2.9~git20150314/src/gui/TooltipManager.hpp --- lincity-ng-2.0/src/gui/TooltipManager.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/TooltipManager.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -61,3 +61,6 @@ #endif + +/** @file gui/TooltipManager.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Vector2.hpp lincity-ng-2.9~git20150314/src/gui/Vector2.hpp --- lincity-ng-2.0/src/gui/Vector2.hpp 2009-01-25 20:20:40.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Vector2.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -128,3 +128,6 @@ #endif + +/** @file gui/Vector2.hpp */ + diff -Nru lincity-ng-2.0/src/gui/Window.cpp lincity-ng-2.9~git20150314/src/gui/Window.cpp --- lincity-ng-2.0/src/gui/Window.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Window.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -233,3 +233,6 @@ } IMPLEMENT_COMPONENT_FACTORY(Window) + +/** @file gui/Window.cpp */ + diff -Nru lincity-ng-2.0/src/gui/Window.hpp lincity-ng-2.9~git20150314/src/gui/Window.hpp --- lincity-ng-2.0/src/gui/Window.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/Window.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -63,3 +63,6 @@ #endif + +/** @file gui/Window.hpp */ + diff -Nru lincity-ng-2.0/src/gui/XmlReader.cpp lincity-ng-2.9~git20150314/src/gui/XmlReader.cpp --- lincity-ng-2.0/src/gui/XmlReader.cpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/XmlReader.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -17,14 +17,14 @@ */ /** - * @file XmlReader.cpp + * @file gui/XmlReader.cpp * @brief Implement a simple XML file reader (simple wrapper around libxml2 xmlreader interface). * @author Matthias Braun. */ #include <config.h> -#include "XmlReader.hpp" +#include "./XmlReader.hpp" #include <physfs.h> @@ -97,3 +97,6 @@ return res; } + +/** @file gui/XmlReader.cpp */ + diff -Nru lincity-ng-2.0/src/gui/XmlReader.hpp lincity-ng-2.9~git20150314/src/gui/XmlReader.hpp --- lincity-ng-2.0/src/gui/XmlReader.hpp 2009-01-25 20:20:39.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui/XmlReader.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -18,7 +18,7 @@ /** * @author Matthias Braun. - * @file XmlReader.hpp + * @file gui/XmlReader.hpp * @brief Simple wrapper around libxml2 xmlreader interface. */ @@ -70,6 +70,11 @@ { xmlTextReaderNext(reader); } + + const xmlChar* readString() + { + return xmlTextReaderReadString(reader); + } class AttributeIterator { @@ -136,7 +141,7 @@ throw std::runtime_error(msg.str()); } - // Usefull for debug sometimes... + // Useful for debug sometimes... #if 0 for(int i = 0; i < getDepth(); ++i) std::cout << " "; @@ -159,3 +164,6 @@ #endif + +/** @file gui/XmlReader.hpp */ + diff -Nru lincity-ng-2.0/src/gui_interface/dialbox_interface.h lincity-ng-2.9~git20150314/src/gui_interface/dialbox_interface.h --- lincity-ng-2.0/src/gui_interface/dialbox_interface.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui_interface/dialbox_interface.h 2015-05-05 16:32:51.000000000 +0000 @@ -6,3 +6,6 @@ #endif + +/** @file gui_interface/dialbox_interface.h */ + diff -Nru lincity-ng-2.0/src/gui_interface/mps.h lincity-ng-2.9~git20150314/src/gui_interface/mps.h --- lincity-ng-2.0/src/gui_interface/mps.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui_interface/mps.h 2015-05-05 16:32:51.000000000 +0000 @@ -7,11 +7,7 @@ #ifndef __mps_h__ #define __mps_h__ -//#include "geometry.h" -//#include "cliglobs.h" - -void mps_full_refresh (void); -void mappoint_stats (int, int, int); +#include <string> static const int MPS_PARAGRAPH_COUNT = 13; @@ -28,37 +24,45 @@ #define MPS_GLOBAL_HOUSING 2 /* Citywide population information */ #define MPS_GLOBAL_STYLES 3 /* Number of global styles */ +#define MPS_MAP_PAGES 2 + -void mps_init(); +//void mps_init(); -int mps_set(int style, int x, int y); /* Attaches an area or global display */ -void mps_redraw(void); /* Re-draw the mps area, bezel and all */ +int mps_set(int x, int y, int style); /* Attaches an area or global display */ void mps_refresh(void); /* refresh the information display's contents */ void mps_update(void); /* Update text contents for later display (refresh) */ -void mps_global_advance(void); /* Changes global var to next display */ /* mps_info storage functions; place values of corresponding type into - mps_info[], performing certain pretification. The single argument + mps_info[], performing certain pretification. The single argument forms center their argument. The dual arguments left-justify the first and right-justify the second. the ..p forms put a % after - the second argument + the second argument */ -void mps_store_title(int i, const char * t); +void mps_store_title(int i, const std::string &t); void mps_store_fp(int i, double f); void mps_store_f(int i, double f); void mps_store_d(int i, int d); -void mps_store_ss(int i, const char * s1, const char * s2); -void mps_store_sd(int i, const char * s, int d); -void mps_store_sfp(int i, const char * s, double fl); +void mps_store_ss(int i, const std::string &s1, const std::string &s2); +void mps_store_ssd(int i, const std::string &s1, const std::string &s2, int d); +void mps_store_sd(int i, const std::string &s, int d); +void mps_store_sdd(int i, const std::string &s, int d1, int d2); +void mps_store_sf(int i, const std::string &s, double fl); +void mps_store_sfp(int i, const std::string &s, double fl); +void mps_store_sddp(int i, const std::string &s, int d, int max); +void mps_store_ssddp(int i, const std::string &ascii, const std::string &s2, int d, int max); -void mps_store_sss(int i, const char * s1, const char * s2, const char * s3); +void mps_store_sss(int i, const std::string &s1, const std::string &s2, const std::string &s3); /* Data for new mps routines */ extern int mps_global_style; +/* current page for report of constructions 0,1,2...MPS_MAP_PAGES-1*/ +extern int mps_map_page; + /* MPS Global displays */ void mps_global_finance(void); void mps_global_other_costs(void); @@ -73,3 +77,6 @@ #endif /* __mps_h__ */ + +/** @file gui_interface/mps.h */ + diff -Nru lincity-ng-2.0/src/gui_interface/pbar_interface.h lincity-ng-2.9~git20150314/src/gui_interface/pbar_interface.h --- lincity-ng-2.0/src/gui_interface/pbar_interface.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui_interface/pbar_interface.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,4 +1,4 @@ -/* pbar.h: handles rate-of-change indicators +/* pbar.h: handles rate-of-change indicators * This file is part of lincity. * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * Portions copyright (c) 2001 Corey Keasling. @@ -7,67 +7,42 @@ #ifndef _pbar_h #define _pbar_h -//#include "geometry.h" - void init_pbars (void); -void pbars_full_refresh (void); // does nothing in NG -void init_pbar_text (void); // doe snot exist in NG -//void draw_pbar (Rect* b, char* graphic); void draw_pbars (void); -/* void clear_pbar_text (Rect* pbar); - * void write_pbar_int (Rect* b, int val); - * void write_pbar_text (Rect* b, char * s); - */ void refresh_pbars (void); void refresh_population_text (void); void update_pbar (int pbar_num, int value, int month_flag); -void update_pbars_daily(void); // does not exist in NG void update_pbars_monthly(void); -/*int compute_pbar_offset (Rect* b, int val); - void draw_pbar_new (Rect* b, int val);*/ -void pbar_mouse(int rawx, int rawy, int button); - -/* Constants */ - -#define PBAR_POP_X (PBAR_AREA_X + 4) -#define PBAR_POP_Y (PBAR_AREA_Y + 4) -#define PBAR_TECH_X PBAR_POP_X -#define PBAR_TECH_Y PBAR_POP_Y+(PBAR_H+1) -#define PBAR_FOOD_X PBAR_POP_X -#define PBAR_FOOD_Y PBAR_POP_Y+(PBAR_H+1)*2 -#define PBAR_JOBS_X PBAR_POP_X -#define PBAR_JOBS_Y PBAR_POP_Y+(PBAR_H+1)*3 -#define PBAR_COAL_X PBAR_POP_X -#define PBAR_COAL_Y PBAR_POP_Y+(PBAR_H+1)*4 -#define PBAR_GOODS_X PBAR_POP_X -#define PBAR_GOODS_Y PBAR_POP_Y+(PBAR_H+1)*5 -#define PBAR_ORE_X PBAR_POP_X -#define PBAR_ORE_Y PBAR_POP_Y+(PBAR_H+1)*6 -#define PBAR_STEEL_X PBAR_POP_X -#define PBAR_STEEL_Y PBAR_POP_Y+(PBAR_H+1)*7 -#define PBAR_MONEY_X PBAR_POP_X -#define PBAR_MONEY_Y PBAR_POP_Y+(PBAR_H+1)*8 - -/* Type:Position constants for pbars struct */ - -#define PPOP 0 -#define PTECH 1 -#define PFOOD 2 -#define PJOBS 3 -#define PMONEY 4 -#define PCOAL 5 -#define PGOODS 6 -#define PORE 7 -#define PSTEEL 8 +#define NUM_PBARS 15 +#define OLD_NUM_PBARS 9 + +/* Position constants aka linenumbers for pbars struct */ -#define NUM_PBARS 9 +#define PPOP 0 +#define PTECH 1 +#define PMONEY 2 +#define PFOOD 3 +#define PJOBS 4 +#define PGOODS 5 +#define PCOAL 6 +#define PORE 7 +#define PSTEEL 8 + +#define PBAR_PAGE_SHIFT 6 + +#define PPOL 9 +#define PKWH 10 +#define PMWH 11 +#define PWATER 12 +#define PWASTE 13 +#define PHOUSE 14 /* Number of elements per pbar */ #define PBAR_DATA_SIZE 12 -struct pbar_st +struct pbar_st { int oldtot; int tot; @@ -84,3 +59,6 @@ + +/** @file gui_interface/pbar_interface.h */ + diff -Nru lincity-ng-2.0/src/gui_interface/readpng.h lincity-ng-2.9~git20150314/src/gui_interface/readpng.h --- lincity-ng-2.0/src/gui_interface/readpng.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui_interface/readpng.h 2015-05-05 16:32:51.000000000 +0000 @@ -5,6 +5,10 @@ #ifndef __readpng_h__ #define __readpng_h__ -int load_png_graphics (char *txt_filename, char *png_filename); +//int load_png_graphics (char *txt_filename, char *png_filename); +int load_png_graphics (void); #endif /* __readpng_h__ */ + +/** @file gui_interface/readpng.h */ + diff -Nru lincity-ng-2.0/src/gui_interface/screen_interface.h lincity-ng-2.9~git20150314/src/gui_interface/screen_interface.h --- lincity-ng-2.0/src/gui_interface/screen_interface.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui_interface/screen_interface.h 2015-05-05 16:32:51.000000000 +0000 @@ -52,7 +52,6 @@ void draw_small_yellow_bezel (int x, int y, int h, int w); void init_pbars (void); void mini_screen_help (void); -void status_message(const char *m1, const char* m2); void print_time_for_year (void); void rotate_main_screen (void); void screen_setup (void); @@ -61,11 +60,11 @@ void init_mini_map_mouse(void); void mini_map_handler(int x, int y, int button); void mini_aux_handler(int x, int y, int button); -/* Message area */ -void display_info_message (int colour, const char* ss, const char* xs); -void reset_status_message (void); -#define CB_SPACE 20 // space between checkbuttons for market/port +#define CB_SPACE 20 // space between checkbuttons for market/port // AL1 : unused in 2.x #endif /* __screen_h__ */ + +/** @file gui_interface/screen_interface.h */ + diff -Nru lincity-ng-2.0/src/gui_interface/shared_globals.h lincity-ng-2.9~git20150314/src/gui_interface/shared_globals.h --- lincity-ng-2.0/src/gui_interface/shared_globals.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/gui_interface/shared_globals.h 2015-05-05 16:32:51.000000000 +0000 @@ -16,17 +16,23 @@ extern int cheat_flag; + // modules #define NUMOF_MODULES 32 -extern int module_help_flag[NUMOF_MODULES]; +/* +extern int module_help_flag[NUMOF_MODULES]; extern int selected_module; -extern int selected_module_type; // must be set somehow +//extern int selected_module_type; // must be set somehow extern int sbut[NUMOF_MODULES]; void highlight_module_button (int module); void unhighlight_module_button (int button); void set_selected_module (int type); +*/ void update_avail_modules (int popup); #endif + +/** @file gui_interface/shared_globals.h */ + diff -Nru lincity-ng-2.0/src/lincity/all_buildings.cpp lincity-ng-2.9~git20150314/src/lincity/all_buildings.cpp --- lincity-ng-2.0/src/lincity/all_buildings.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/all_buildings.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,101 @@ +/* ---------------------------------------------------------------------- * + * all_buildings.cpp + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * (c) Corey Keasling, 2004 + * ---------------------------------------------------------------------- */ + + #include "all_buildings.h" + #include <stdlib.h> + +TileConstructionGroup waterConstructionGroup( + N_("Water"), + false, //need credit + GROUP_WATER, + 1, //tilesize is always 1 + GROUP_WATER_COLOUR, + GROUP_WATER_COST_MUL, + GROUP_WATER_BUL_COST, + GROUP_WATER_FIREC, + GROUP_WATER_COST, + GROUP_WATER_TECH, + 0 //range tiles is 0 +); + +TileConstructionGroup bareConstructionGroup( + N_("Empty"), + false, //need credit + GROUP_BARE, + 1, //tilesize is always 1 + GROUP_BARE_COLOUR, + GROUP_BARE_COST_MUL, + GROUP_BARE_BUL_COST, + GROUP_BARE_FIREC, + GROUP_BARE_COST, + GROUP_BARE_TECH, + 0 //range tiles is 0 +); + +TileConstructionGroup desertConstructionGroup( + N_("Desert"), + false, //need credit + GROUP_DESERT, + 1, //tilesize is always 1 + GROUP_DESERT_COLOUR, + GROUP_DESERT_COST_MUL, + GROUP_DESERT_BUL_COST, + GROUP_DESERT_FIREC, + GROUP_DESERT_COST, + GROUP_DESERT_TECH, + 0 //range tiles is 0 +); + + +TileConstructionGroup treeConstructionGroup( + N_("Tree"), + false, //need credit + GROUP_TREE, + 1, //tilesize is always 1 + GROUP_TREE_COLOUR, + GROUP_TREE_COST_MUL, + GROUP_TREE_BUL_COST, + GROUP_TREE_FIREC, + GROUP_TREE_COST, + GROUP_TREE_TECH, + 0 //range tiles is 0 +); + +TileConstructionGroup tree2ConstructionGroup( + N_("Trees"), + false, //need credit + GROUP_TREE2, + 1, //tilesize is always 1 + GROUP_TREE2_COLOUR, + GROUP_TREE2_COST_MUL, + GROUP_TREE2_BUL_COST, + GROUP_TREE2_FIREC, + GROUP_TREE2_COST, + GROUP_TREE2_TECH, + 0 //range tiles is 0 +); + +TileConstructionGroup tree3ConstructionGroup( + N_("Forest"), + false, //need credit + GROUP_TREE3, + 1, //tilesize is always 1 + GROUP_TREE3_COLOUR, + GROUP_TREE3_COST_MUL, + GROUP_TREE3_BUL_COST, + GROUP_TREE3_FIREC, + GROUP_TREE3_COST, + GROUP_TREE3_TECH, + 0 //range tiles is 0 +); + +//Dont use this one after all maptiles are no constructions +Construction *TileConstructionGroup::createConstruction(int, int) +{ return 0;} + + + /** @file lincity/all_buildings.cpp */ diff -Nru lincity-ng-2.0/src/lincity/all_buildings.h lincity-ng-2.9~git20150314/src/lincity/all_buildings.h --- lincity-ng-2.0/src/lincity/all_buildings.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/all_buildings.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,155 @@ +/* ---------------------------------------------------------------------- * + * all_buildings.h + * This file is part of lincity-ng + * Lincity is copyright (c) see CREDITS for more informations + * + * See COPYING COPYING-data.txt and COPYING-fonts.txt for licenses informations + * ---------------------------------------------------------------------- */ + +#ifndef __all_buildings_h__ +#define __all_buildings_h__ + +/************* Buildings stuff *********************/ + +#define DAYS_PER_POLLUTION 14 +#define RAIL_POLLUTION 1 +#define DAYS_PER_RAIL_POLLUTION 30 +#define ROAD_POLLUTION 1 +#define DAYS_PER_ROAD_POLLUTION 20 +#define UNNAT_DEATHS_COST 500 +#define POL_DIV 64 /* GCS -- from engine.c */ + +#define INCOME_TAX_RATE 8 +#define COAL_TAX_RATE 25 +#define GOODS_TAX_RATE 1 +#define DOLE_RATE 15 +#define TRANSPORT_COST_RATE 14 +#define IM_PORT_COST_RATE 1 + +#define DAYS_BETWEEN_COVER (NUMOF_DAYS_IN_MONTH*3) +#define COVER_TOLERANCE_DAYS 5 + +#define ORE_RESERVE 1000 +#define COAL_RESERVE_SIZE 10000 +#define COAL_PER_RESERVE 1000 + +#define JOBS_LOAD_COAL 18 +#define JOBS_LOAD_ORE 9 +#define JOBS_LOAD_STEEL 15 + +//used on markets, transport, shanties when burning waste +#define WASTE_BURN_TIME 350 + +/* interest rate *10 ie 10 is 1% */ +#define INTEREST_RATE 15 + +/******* Buildings // GROUPS ************/ +#define red(x) (32 + x) +#define green(x) (64 + x) +#define yellow(x) (96 + x) +#define blue(x) (128 + x) +#define magenta(x) (160 + x) +#define cyan(x) (192 + x) +#define white(x) (224 + x) + +#define GROUP_NAME_LEN 20 + +#define GROUP_BARE_COLOUR (green(12)) +#define GROUP_BARE_COST 0 +#define GROUP_BARE_COST_MUL 1 +#define GROUP_BARE_BUL_COST 1 +#define GROUP_BARE_TECH 0 +#define GROUP_BARE_FIREC 0 + +#define GROUP_WATER_COLOUR (blue(31)) +#define GROUP_WATER_COST 1000000 +#define GROUP_WATER_COST_MUL 2 +#define GROUP_WATER_BUL_COST 1000000 +#define GROUP_WATER_TECH 0 +#define GROUP_WATER_FIREC 0 + +#define GROUP_BURNT_COLOUR (red(30)) +#define GROUP_BURNT_COST 0 /* Unused */ +#define GROUP_BURNT_COST_MUL 1 /* Unused */ +#define GROUP_BURNT_BUL_COST 1000 +#define GROUP_BURNT_TECH 0 /* Unused */ +#define GROUP_BURNT_FIREC 0 + +#define GROUP_USED_COLOUR (green(12)) /* Unused */ +#define GROUP_USED_COST 0 /* Unused */ +#define GROUP_USED_COST_MUL 1 /* Unused */ +#define GROUP_USED_BUL_COST 0 /* Unused */ +#define GROUP_USED_TECH 0 /* Unused */ +#define GROUP_USED_FIREC 0 /* Unused */ + +#define GROUP_DESERT_COLOUR (yellow(18)) +#define GROUP_DESERT_COST 0 +#define GROUP_DESERT_COST_MUL 1 +#define GROUP_DESERT_BUL_COST 1 +#define GROUP_DESERT_TECH 0 +#define GROUP_DESERT_FIREC 0 + +#define GROUP_TREE_COLOUR (green(12)) +#define GROUP_TREE_COST 0 +#define GROUP_TREE_COST_MUL 1 +#define GROUP_TREE_BUL_COST 1 +#define GROUP_TREE_TECH 0 +#define GROUP_TREE_FIREC 0 + +#define GROUP_TREE2_COLOUR (green(12)) +#define GROUP_TREE2_COST 0 +#define GROUP_TREE2_COST_MUL 1 +#define GROUP_TREE2_BUL_COST 1 +#define GROUP_TREE2_TECH 0 +#define GROUP_TREE2_FIREC 0 + +#define GROUP_TREE3_COLOUR (green(12)) +#define GROUP_TREE3_COST 0 +#define GROUP_TREE3_COST_MUL 1 +#define GROUP_TREE3_BUL_COST 1 +#define GROUP_TREE3_TECH 0 +#define GROUP_TREE3_FIREC 0 + +/******** end of buildings // groups ************/ + + + #include "lintypes.h" + +/* +* TileConstructionGroups hold information about inactive tiles +* in city. They cannot create any constructions and should not be found +* in ConstructionGroup::groupmap. They also hold the sounds and graphics +* for the tiles, and are acessed via a switch of maptile.group +*/ + +class TileConstructionGroup: public ConstructionGroup { +public: + TileConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + + }; + // dont use that one tiles are no constructions + virtual Construction *createConstruction(int x, int y); +}; + +extern TileConstructionGroup waterConstructionGroup; +extern TileConstructionGroup bareConstructionGroup; +extern TileConstructionGroup desertConstructionGroup; +extern TileConstructionGroup treeConstructionGroup; +extern TileConstructionGroup tree2ConstructionGroup; +extern TileConstructionGroup tree3ConstructionGroup; + + + +#endif // __all_buildings_h__ + +/** @file lincity/all_buildings.h */ + diff -Nru lincity-ng-2.0/src/lincity/confw32.h lincity-ng-2.9~git20150314/src/lincity/confw32.h --- lincity-ng-2.0/src/lincity/confw32.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/confw32.h 2015-05-05 16:32:51.000000000 +0000 @@ -94,3 +94,6 @@ /* Version number of package */ #define VERSION "1.13.2" + +/** @file lincity/confw32.h */ + diff -Nru lincity-ng-2.0/src/lincity/ConstructionCount.cpp lincity-ng-2.9~git20150314/src/lincity/ConstructionCount.cpp --- lincity-ng-2.0/src/lincity/ConstructionCount.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/ConstructionCount.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,173 @@ +/* ---------------------------------------------------------------------- * + * ConstructionCount.cpp + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * ---------------------------------------------------------------------- */ + +#include <stdlib.h> +#include <iostream> +#include "ConstructionCount.h" +#include "lintypes.h" +#include "engine.h" + +ConstructionCount::ConstructionCount() +{ + constructionVector.resize(100, NULL); + permutator = new Permutator(100,1); + free_slot = 0; +} + +ConstructionCount:: ~ConstructionCount() +{ + delete permutator; + permutator = NULL; +} + +void +ConstructionCount::add_construction(Construction * construction) +{ + + while(free_slot < constructionVector.size() && constructionVector[free_slot] ) {free_slot++;} + if (free_slot == constructionVector.size()) + { + constructionVector.resize(constructionVector.size()*3/2, NULL); + update_permutator(); + //std::cout << "growing constructionCount " << constructionVector.size() << std::endl; + } + constructionVector[free_slot++] = construction; + world.dirty = true; + //std::cout << "Added Construction to constructionCount: " << + // construction->constructionGroup->name << " ID :" << construction->ID << std::endl; +} + +void +ConstructionCount::remove_construction(Construction * construction) +{ + //std::vector <Construction*>::iterator i; + //i = constructionVector.begin(); + //while(i != constructionVector.end() && constructionVector.at(i) != construction) {i++;} + free_slot = 0; + while(free_slot < constructionVector.size() && constructionVector[free_slot] != construction) {free_slot++;} + if (constructionVector[free_slot] == construction) + { + //std::cout << "Nullified Construction in constructionCount: " << + //construction->constructionGroup->name << " ID :" << construction->ID << std::endl; + constructionVector[free_slot] = NULL; + //constructionVector.erase(i,i+1); + //update_permutator(); + } +/* + //normal event if market or shanty is burning waste + else + { + std::cout << "Could not find Construction in constructionCount: " << + construction->constructionGroup->name << " ID :" << construction->ID << std::endl; + //assert(false); + } +*/ + free_slot = 0; +} + +void +ConstructionCount::shuffle() +{ + permutator->shuffle(); +} + +Construction* +ConstructionCount::operator[](unsigned int i) +{ + return constructionVector[permutator->getIndex(i)]; +} + +Construction* +ConstructionCount::pos(unsigned int i) +{ + return constructionVector[i]; +} + +void +ConstructionCount::update_permutator() +{ + if (permutator) + { + delete permutator; + } + permutator = new Permutator(constructionVector.size(),1); +} + +int +ConstructionCount::size() +{ + return constructionVector.size(); +} + +void +ConstructionCount::size(int new_len) +{ + constructionVector.resize(new_len, NULL); + update_permutator(); +} + +int +ConstructionCount::count() +{ + int n = 0; + for(size_t i = 0; i < constructionVector.size(); ++i) + { + if (constructionVector[i]) + { ++n;} + } + return n; +} + +void +ConstructionCount::sort() +{ +/* + //FIXME The resuluts with this one are quite good, but not really ordered + std::sort(constructionVector.begin(), constructionVector.end(), earlier); +*/ + //Alternate Solution + std::map <unsigned short,std::map <int, Construction*> > census; + for(size_t i = 0; i < constructionVector.size(); ++i) + { + if (constructionVector[i]) + { + Construction *cst = constructionVector[i]; + int ID = cst->ID; + unsigned short group = cst->constructionGroup->group; + census[group][ID] = cst; + constructionVector[i] = 0; + } + } + std::map <unsigned short,std::map <int, Construction*> >::iterator group_it; + std::map <int, Construction*>::iterator cst_it; + free_slot = 0; + for(group_it = census.begin(); group_it != census.end(); ++group_it) + { //for every groups + for(cst_it = group_it->second.begin(); cst_it != group_it->second.end(); ++cst_it) + { //for every construction + constructionVector[free_slot++] = cst_it->second; + } + } +} + +bool +ConstructionCount::earlier(Construction* a, Construction* b) +{ +//sort works until all tests are false +return (a && b)?((a->constructionGroup->group == b->constructionGroup->group)?(a->ID < b->ID): + (a->constructionGroup->group < b->constructionGroup->group)):false; +} + +//FIXME Only for use in debugging +void +ConstructionCount::reset() +{ + constructionVector.clear(); + constructionVector.resize(100, NULL); + update_permutator(); + free_slot = 0; +} +/** @file lincity/ConstructionCount.cpp */ diff -Nru lincity-ng-2.0/src/lincity/ConstructionCount.h lincity-ng-2.9~git20150314/src/lincity/ConstructionCount.h --- lincity-ng-2.0/src/lincity/ConstructionCount.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/ConstructionCount.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,43 @@ +/* ---------------------------------------------------------------------- * + * ConstructionCount.h + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * ---------------------------------------------------------------------- */ +#ifndef __ConstructionCount_h__ +#define __ConstructionCount_h__ + +#include "lintypes.h" +#include "../lincity-ng/Permutator.hpp" +#include <vector> +#include <algorithm> //for std::sort + +class Construction; + +class ConstructionCount +{ +public: + ConstructionCount(); + ~ConstructionCount(); + void add_construction(Construction * construction); + void remove_construction(Construction * construction); + void shuffle(); //suffle the permutator + int size(); //return the current size constructionVector NOT the number of Constructions + int count(); //return the current number of constructions + void size (int new_len); //set the new size of constructionVector + void reset(); //FIXME Only for use in debugging + void sort(); //Sort all contructions + Construction* operator[](unsigned int i); + Construction* pos(unsigned int i); +protected: + size_t free_slot; + Permutator * permutator; + std::vector <Construction*> constructionVector; + void update_permutator(); + static bool earlier(Construction* a, Construction* b); //first by group and then by ID +}; + +#endif /* __ConstructionCount_h__ */ + +/** @file lincity/world.h */ + + diff -Nru lincity-ng-2.0/src/lincity/ConstructionManager.cpp lincity-ng-2.9~git20150314/src/lincity/ConstructionManager.cpp --- lincity-ng-2.0/src/lincity/ConstructionManager.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/ConstructionManager.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,54 @@ +#include "ConstructionManager.h" +#include "lintypes.h" +//FIXME +#include <iostream> + +void ConstructionManager::submitRequest(ConstructionRequest *request) { + std::map<Construction *, ConstructionRequest *>::iterator iterator; + iterator = pendingRequests.find(request->subject); + if (iterator != pendingRequests.end()) + { + //std::cout<<"duplicate Request at "<<request->subject->constructionGroup->name<<" x,y = "<<request->subject->x<<","<<request->subject->y<<std::endl; + delete iterator->second; + iterator->second = request; + } + else + { + //std::cout<<"added Request at "<<request->subject->constructionGroup->name<<" x,y = "<<request->subject->x<<","<<request->subject->y<<std::endl; + pendingRequests[request->subject] = request; + } +} + +void ConstructionManager::executeRequest(ConstructionRequest *request) { + std::map<Construction *, ConstructionRequest *>::iterator iterator; + iterator = pendingRequests.find(request->subject); + if (iterator != pendingRequests.end()) + { + //make sure there wont be no another pending request after execution + if (request != iterator->second) + { + delete iterator->second; + pendingRequests.erase(iterator->first); + } + } + request->execute(); + delete request; +} + +void ConstructionManager::executePendingRequests() { + std::map<Construction *, ConstructionRequest *>::const_iterator iterator; + for (iterator = pendingRequests.begin(); iterator != pendingRequests.end(); iterator++) + { + executeRequest(iterator->second); + } + pendingRequests.clear(); +} + +void ConstructionManager::clearRequests() +{ + pendingRequests.clear(); +} + + +std::map<Construction *, ConstructionRequest *> ConstructionManager::pendingRequests; + diff -Nru lincity-ng-2.0/src/lincity/ConstructionManager.h lincity-ng-2.9~git20150314/src/lincity/ConstructionManager.h --- lincity-ng-2.0/src/lincity/ConstructionManager.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/ConstructionManager.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,27 @@ +#ifndef CONSTRUCTION_MANAGER_H__ +#define CONSTRUCTION_MANAGER_H__ + +#include <map> + +#include "ConstructionRequest.h" + +class Construction; + +class ConstructionManager { +public: + // NOTE: no synchronization is performed + static void submitRequest(ConstructionRequest *request); + static void executeRequest(ConstructionRequest *request); + static void executePendingRequests(); + static void clearRequests(); +private: + static std::map<Construction *, ConstructionRequest *> pendingRequests; +}; + +/* Usage: + // suicide within a construction: + ConstructionManager::submitRequest(new ConstructionDeletionRequest(this)); +*/ + +#endif + diff -Nru lincity-ng-2.0/src/lincity/ConstructionRequest.cpp lincity-ng-2.9~git20150314/src/lincity/ConstructionRequest.cpp --- lincity-ng-2.0/src/lincity/ConstructionRequest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/ConstructionRequest.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,150 @@ +#include "ConstructionRequest.h" + +#include "lintypes.h" +#include "lin-city.h" +#include "lctypes.h" +#include "engglobs.h" +#include "engine.h" +#include "simulate.h" +#include "transport.h" +#include "../gui_interface/mps.h" +#include "modules/all_modules.h" +#include "all_buildings.h" + +//#include "../lincity-ng/Mps.hpp" +//FIXME cannot include mps.h because of differing paths for further dependencies +//TODO eliminate duplicated code + +extern int mps_x, mps_y; + +void ConstructionDeletionRequest::execute() +{ + //std::cout << "deleting: " << subject->constructionGroup->name + //<< " (" << subject->x << "," << subject->y << ")" << std::endl; + unsigned short size = subject->constructionGroup->size; + int x = subject->x; + int y = subject->y; + subject->detach(); + delete subject; + for (int i = 0; i < size; i++) + { + for (int j = 0; j < size; j++) + { + //update mps display + world(x + j, y + i)->flags &= ~(FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90); + if (mps_x == x + j && mps_y == y + i) + { mps_set(x + j, y + i, MPS_MAP);} + } + } + // update adjacencies + connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); + desert_water_frontiers(x - 1, y - 1, size + 2, size + 2); +} + +void OreMineDeletionRequest::execute() +{ + int size = subject->constructionGroup->size; + int x = subject->x; + int y = subject->y; + subject->detach(); + delete subject; + for (int i = 0; i < size; i++) + { + for (int j = 0; j < size; j++) + { + world(x + j, y + i)->flags &= ~(FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90); + if (world(x+j,y+i)->ore_reserve < ORE_RESERVE / 2) + { + world(x+j,y+i)->setTerrain(GROUP_WATER); + world(x+j,y+i)->flags |= (FLAG_HAS_UNDERGROUND_WATER | FLAG_ALTERED); + connect_rivers(x+j,y+i); + } + //update mps display + if (mps_x == x + j && mps_y == y + i) + { mps_set(x + j, y + i, MPS_MAP);} + } + } + + // update adjacencies + connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); + desert_water_frontiers(x - 1, y - 1, size + 2, size + 2); +} + +void CommuneDeletionRequest::execute() +{ + unsigned short size = subject->constructionGroup->size; + int x = subject->x; + int y = subject->y; + subject->detach(); + delete subject; + for (unsigned short i = 0; i < size; ++i) + { + for (unsigned short j = 0; j < size; ++j) + { + world(x + j, y + i)->flags &= ~(FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90); + if (world(x+j,y+i)->flags & FLAG_HAS_UNDERGROUND_WATER) + { parklandConstructionGroup.placeItem(x+j, y+i);} + //update mps display + if (mps_x == x + j && mps_y == y + i) + { mps_set(x + j, y + i, MPS_MAP);} + } + } + // update adjacencies + connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); + desert_water_frontiers(x - 1, y - 1, size + 2, size + 2); +} + +void BurnDownRequest::execute() +{ + unsigned short size = subject->constructionGroup->size; + int x = subject->x; + int y = subject->y; + subject->detach(); + delete subject; + for (unsigned short i = 0; i < size; ++i) + { + for (unsigned short j = 0; j < size; ++j) + { + world(x + j, y + i)->flags &= ~(FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90); + fireConstructionGroup.placeItem(x+j, y+i); + static_cast<Fire*> (world(x+j,y+i)->construction)->burning_days = FIRE_LENGTH - 25; + //update mps display + if (mps_x == x + j && mps_y == y + i) + { mps_set(x + j, y + i, MPS_MAP);} + } + } + // update adjacencies + connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); + desert_water_frontiers(x - 1, y - 1, size + 2, size + 2); +} + +void SetOnFire::execute() +{ + unsigned short size = subject->constructionGroup->size; + int x = subject->x; + int y = subject->y; + subject->detach(); + delete subject; + for (unsigned short i = 0; i < size; ++i) + { + for (unsigned short j = 0; j < size; ++j) + { + world(x + j, y + i)->flags &= ~(FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90); + fireConstructionGroup.placeItem(x+j, y+i); + //update mps display + if (mps_x == x + j && mps_y == y + i) + { mps_set(x + j, y + i, MPS_MAP);} + } + } + // update adjacencies + connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); + desert_water_frontiers(x - 1, y - 1, size + 2, size + 2); +} + +void PowerLineFlashRequest::execute() +{ + int *anim_counter = &(dynamic_cast<Powerline*>(subject)->anim_counter); + // 2/3 cooldown will prevent interlacing wave packets + if (*anim_counter <= POWER_MODULUS/3) + { *anim_counter = POWER_MODULUS;} +} diff -Nru lincity-ng-2.0/src/lincity/ConstructionRequest.h lincity-ng-2.9~git20150314/src/lincity/ConstructionRequest.h --- lincity-ng-2.0/src/lincity/ConstructionRequest.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/ConstructionRequest.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,56 @@ +#ifndef CONSTRUCTION_REQUEST_H__ +#define CONSTRUCTION_REQUEST_H__ + +class Construction; +class ConstructionManager; + +class ConstructionRequest { +public: + ConstructionRequest(Construction *subject): subject(subject) { } + virtual ~ConstructionRequest() { } + virtual void execute() = 0; +protected: + Construction *subject; + friend class ConstructionManager; +}; + +class ConstructionDeletionRequest: public ConstructionRequest { +public: + ConstructionDeletionRequest(Construction *subject): ConstructionRequest(subject) { } + virtual void execute(); +}; + +class OreMineDeletionRequest: public ConstructionRequest { +public: + OreMineDeletionRequest(Construction *subject): ConstructionRequest(subject) { } + virtual void execute(); +}; + +class CommuneDeletionRequest: public ConstructionRequest { +public: + CommuneDeletionRequest(Construction *subject): ConstructionRequest(subject) { } + virtual void execute(); +}; + +class BurnDownRequest: public ConstructionRequest { +public: + BurnDownRequest(Construction *subject): ConstructionRequest(subject) { } + virtual void execute(); +}; + +class SetOnFire: public ConstructionRequest { +public: + SetOnFire(Construction *subject): ConstructionRequest(subject) { } + virtual void execute(); +}; + + +class PowerLineFlashRequest: public ConstructionRequest { +public: + PowerLineFlashRequest(Construction *subject): ConstructionRequest(subject) { } + virtual void execute(); +}; + + +#endif + diff -Nru lincity-ng-2.0/src/lincity/engglobs.cpp lincity-ng-2.9~git20150314/src/lincity/engglobs.cpp --- lincity-ng-2.0/src/lincity/engglobs.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/engglobs.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -4,64 +4,77 @@ * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * ---------------------------------------------------------------------- */ #include "engglobs.h" -//#include "common.h" +#include "lin-city.h" #include "fileutil.h" /* load/save version for compatibility with(out) waterwell */ int ldsv_version; -int use_waterwell=true; +int use_waterwell = true; -Map map; +ConstructionCount constructionCount = ConstructionCount(); +World world = World(WORLD_SIDE_LEN); +int world_id = 0; +UserOperation* userOperation = NULL; + +/* Vector for visiting neigbours = ( dx[k] , dy[k] ) ; ordered so that diagonal moves are the last 4 */ +const int dx[8] = { -1, 0, 1, 0, 1, 1, -1, -1}; +const int dy[8] = { 0, -1, 0, 1, 1, -1, 1, -1}; +//anti clockwise ordering +const int dxo[8] ={ -1, -1, 0, 1, 1, 1, 0, -1}; +const int dyo[8] ={ 0, -1, -1, -1, 0, 1, 1, 1}; + +bool binary_mode = true; +bool seed_compression = true; +//You may want to set these to false for easier debugging + +//These have to be decalred as extern in lintypes.h after class Construction +std::map<Construction::Commodities, int> tstat_capacities; +std::map<Construction::Commodities, int> tstat_census; -int mappoint_array_x[WORLD_SIDE_LEN]; -int mappoint_array_y[WORLD_SIDE_LEN]; -int numof_shanties; -int numof_communes; int main_screen_originx, main_screen_originy; int pix_double = 0; +/* graph stuff from src/gui_interface/shared_globals.h */ int cheat_flag; int modern_windmill_flag = 0; -int askdir_lines; -char *askdir_path[4]; - int monthgraph_size = 0; int *monthgraph_pop; int *monthgraph_starve; int *monthgraph_nojobs; int *monthgraph_ppool; +/* end of gui_interface.... */ + int sust_dig_ore_coal_tip_flag = 0, sust_port_flag = 0, sustain_flag = 0; int sust_dig_ore_coal_count = 0, sust_port_count = 0, sust_old_money = 0; int sust_old_money_count = 0, sust_old_population = 0, sust_old_population_count = 0; int sust_old_tech = 0, sust_old_tech_count = 0, sust_fire_count = 0; +bool refresh_cover = false; int total_time = 0; /* game time */ -int deadline = 0; +int deadline = 0; int population, starving_population; -int housed_population; +int housed_population, total_housing, housing; int unemployed_population, people_pool; -int substationx[MAX_NUMOF_SUBSTATIONS], substationy[MAX_NUMOF_SUBSTATIONS]; -int numof_substations = 0; -int marketx[MAX_NUMOF_MARKETS], markety[MAX_NUMOF_MARKETS], numof_markets = 0; -int numof_health_centres, max_pop_ever = 0, total_evacuated = 0, total_births = 0; -int numof_waterwell = 0; +int max_pop_ever = 0, total_evacuated = 0, total_births = 0; +int total_population = 0; int total_money = 0, income_tax_rate, coal_tax_rate; int dole_rate, transport_cost_rate; int goods_tax_rate; int export_tax_rate, import_cost_rate; -int tech_level, highest_tech_level, unnat_deaths; +int tech_level, highest_tech_level; +int total_pollution = 0; int total_pollution_deaths = 0, total_starve_deaths = 0, total_unemployed_days = 0; int total_unemployed_years = 0; float pollution_deaths_history = 0.0, starve_deaths_history = 0.0; float unemployed_history = 0.0; -int university_intake_rate; +//int university_intake_rate; int power_made, power_used, coal_made, coal_used; int goods_made, goods_used, ore_made, ore_used; int rockets_launched, rockets_launched_success; @@ -81,7 +94,10 @@ int global_aridity; int global_mountainity; -ground_struct ground[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; +//TODO These and their updating should go to class World int alt_min, alt_max, alt_step; int fast_time_for_year; + +/** @file lincity/engglobs.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/engglobs.h lincity-ng-2.9~git20150314/src/lincity/engglobs.h --- lincity-ng-2.0/src/lincity/engglobs.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/engglobs.h 2015-05-05 16:32:51.000000000 +0000 @@ -6,26 +6,44 @@ #ifndef __engglobs_h__ #define __engglobs_h__ -#include "lin-city.h" - -/* was shrglobs.h */ +#include "lintypes.h" +#include "groups.h" +#include "world.h" +#include "ConstructionCount.h" +#include "UserOperation.h" +// Use permutator to shuffle the simulation order +//#include "lincity-ng/Permutator.hpp" + +class World; +class ConstructionCount; +class UserOperation; extern int pix_double; -/* */ extern int use_waterwell, ldsv_version; -extern Map map; extern struct GROUP main_groups[NUM_OF_GROUPS]; extern struct TYPE main_types[NUM_OF_TYPES]; -extern int mappoint_array_x[WORLD_SIDE_LEN], mappoint_array_y[WORLD_SIDE_LEN]; -extern ground_struct ground[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; +extern ConstructionCount constructionCount; +extern World world; +extern int world_id; +extern UserOperation* userOperation; + +/* Vector for visiting neigbours = ( dx[k] , dy[k] ) ; ordered so that diagonal moves are the last 4 */ +extern const int dx[8]; +extern const int dy[8]; +//anti clockwise ordering +extern const int dxo[8]; +extern const int dyo[8]; + +extern bool binary_mode; +extern bool seed_compression; +extern bool refresh_cover; + extern int global_aridity, global_mountainity; extern int alt_min, alt_max, alt_step; -extern int numof_shanties, numof_communes; - extern int sust_dig_ore_coal_tip_flag, sust_port_flag, sustain_flag; extern int sust_dig_ore_coal_count, sust_port_count, sust_old_money; extern int sust_old_money_count, sust_old_population, sust_old_population_count; @@ -36,26 +54,23 @@ extern int flag_warning;// flag to send a message to player. extern int population, starving_population; -extern int housed_population; +extern int housed_population, total_housing, housing; extern int unemployed_population, people_pool; -extern int substationx[MAX_NUMOF_SUBSTATIONS], substationy[MAX_NUMOF_SUBSTATIONS]; -extern int numof_substations; -extern int marketx[MAX_NUMOF_MARKETS], markety[MAX_NUMOF_MARKETS], numof_markets; -extern int numof_health_centres, max_pop_ever, total_evacuated, total_births; -extern int numof_waterwell; +extern int max_pop_ever, total_evacuated, total_births; +extern int total_pollution; extern int total_money, income_tax_rate, coal_tax_rate; extern int dole_rate, transport_cost_rate; extern int goods_tax_rate; extern int export_tax_rate, import_cost_rate; -extern int tech_level, highest_tech_level, unnat_deaths; +extern int tech_level, highest_tech_level; extern int total_pollution_deaths, total_starve_deaths, total_unemployed_days; extern int total_unemployed_years; extern float pollution_deaths_history, starve_deaths_history; extern float unemployed_history; -extern int university_intake_rate; +//extern int university_intake_rate; extern int power_made, power_used, coal_made, coal_used; extern int goods_made, goods_used, ore_made, ore_used; extern int rockets_launched, rockets_launched_success; @@ -67,3 +82,6 @@ extern int fast_time_for_year; #endif /* __engglobs_h__ */ + +/** @file lincity/engglobs.h */ + diff -Nru lincity-ng-2.0/src/lincity/engine.cpp lincity-ng-2.9~git20150314/src/lincity/engine.cpp --- lincity-ng-2.0/src/lincity/engine.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/engine.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -10,85 +10,47 @@ #include "lin-city.h" #include "engine.h" #include "engglobs.h" +#include "ConstructionManager.h" #include "simulate.h" #include "tinygettext/gettext.hpp" -#include "power.h" #include "gui_interface/pbar_interface.h" #include "stats.h" #include "gui_interface/dialbox_interface.h" #include "gui_interface/mps.h" #include "gui_interface/screen_interface.h" #include "gui_interface/shared_globals.h" +#include "modules/modules_interfaces.h" #include "modules/all_modules.h" #include "transport.h" +#include "all_buildings.h" + + extern void ok_dial_box(const char *, int, const char *); extern void print_total_money(void); -int last_warning_message_group = 0; - /****** Private functions prototypes *****/ -static void bulldoze_mappoint(short fill, int x, int y); -static int is_real_river(int x, int y); +//static void bulldoze_mappoint(short fill, int x, int y); +//static int is_real_river(int x, int y); /*************** Global functions ********************/ -void fire_area(int xx, int yy) +void fire_area(int x, int y) { /* this happens when a rocket crashes or on random_fire. */ - int x = xx; - int y = yy; - int size; - if (MP_GROUP(x, y) == GROUP_WATER || MP_GROUP(x, y) == GROUP_FIRE) - return; - if (MP_TYPE(x, y) == CST_USED) { - x = MP_INFO(xx, yy).int_1; - y = MP_INFO(xx, yy).int_2; - } - size = MP_SIZE(x, y); - - /* Destroy the content of the building to prevent special management - * when bulldozed. - */ - - /* Kill 'only' half of the people (bulldoze item put them in people_pool) - * lincity NG 1.1 and previous killed all the people! - */ - if ((MP_INFO(x, y).flags & FLAG_FIRE_COVER) != 0) - MP_INFO(x, y).population = MP_INFO(x, y).population / 2; - else - MP_INFO(x, y).population = 0; - MP_INFO(x, y).flags = 0; - MP_INFO(x, y).int_1 = 0; - MP_INFO(x, y).int_2 = 0; - MP_INFO(x, y).int_3 = 0; - MP_INFO(x, y).int_4 = 0; - MP_INFO(x, y).int_5 = 0; - MP_INFO(x, y).int_6 = 0; - MP_INFO(x, y).int_7 = 0; - - /* Correctly remove buildings (substations...) and adjust count, - * but don't count bulldoze cost - * */ - adjust_money(+main_groups[MP_GROUP(x, y)].bul_cost); - bulldoze_item(x, y); - - /* put fire */ - for (int i = 0; i < size; i++) - for (int j = 0; j < size; j++) { - bulldoze_mappoint(CST_FIRE_1, x + i, y + j); - MP_GROUP(x + i, y + j) = GROUP_FIRE; - } - - /* AL1: is it necessary ? It is the only place in lincity/. with such a call - * all other are in lincity-ng/. - */ - refresh_main_screen(); - - /* - // update transport or we get stuff put in - // the area from connected tracks etc. - // FIXME: AL1: NG 1.1: do the right thing and/or remove this comment - */ + if (world(x, y)->getGroup() == GROUP_WATER || world(x, y)->getGroup() == GROUP_FIRE) + { return;} + if(world(x, y)->reportingConstruction) + { + //fire is an unatural death for one in two + if(world(x,y)->is_residence()) + { + int casualities = ((dynamic_cast<Residence*>(world(x,y)->reportingConstruction))->local_population/2); + (dynamic_cast<Residence*>(world(x,y)->reportingConstruction))->local_population -= casualities; + tunnat_deaths += casualities; + ddeaths += casualities; + } + ConstructionManager::submitRequest( new SetOnFire(world(x,y)->reportingConstruction)); + } } int adjust_money(int value) @@ -98,294 +60,49 @@ mps_update(); update_pbar(PMONEY, total_money, 0); refresh_pbars(); /* This could be more specific */ - return total_money; -} - -int is_allowed_here(int x, int y, short type, short msg) -{ - int group = get_group_of_type( type ); - int size = main_groups[group].size; - int i,j; - int has_ugw = 0; - - switch (group) { - case GROUP_SOLAR_POWER: - if (total_money <= 0) { - if (msg) - ok_dial_box("no-credit-solar-power.mes", BAD, 0L); - return false; - } - break; - - case GROUP_UNIVERSITY: - if (total_money <= 0) { - if (msg) - ok_dial_box("no-credit-university.mes", BAD, 0L); - return false; - } - break; - - case GROUP_RECYCLE: - if (total_money <= 0) { - if (msg) - ok_dial_box("no-credit-recycle.mes", BAD, 0L); - return false; - } - break; - - case GROUP_ROCKET: - if (total_money <= 0) { - if (msg) - ok_dial_box("no-credit-rocket.mes", BAD, 0L); - return false; - } - break; - - //The Harbour needs a River on the East side. - case GROUP_PORT: - for( j = 0; j < size; j++ ) - if (!( MP_INFO(x + size, y + j).flags & FLAG_IS_RIVER ) ) { - if (msg) - ok_dial_box("warning.mes", BAD, _("Port must be connected to river all along right side.")); - return false; - } - break; - - //Waterwell needs ... water :-) - case GROUP_WATERWELL: - for ( i = 0; i < size; i++) - for ( j = 0; j < size; j++) - has_ugw = has_ugw | HAS_UGWATER(x + i, y + j); - if (!has_ugw) { - if (msg) - ok_dial_box("warning.mes", BAD, _("You can't build a water well here: it is all desert.")); - return false; - } - break; - - //Tip - /* Don't build a tip if there has already been one. - * This is marked permanently by setting the ore reserve to double of (max) ORE_RESERVE at tip build time - */ - case GROUP_TIP: - for (i = 0; i < size; i++) - for (j = 0; j < size; j++) - if (MP_INFO(x + i, y + j).ore_reserve > ORE_RESERVE) { - if (msg) - ok_dial_box("warning.mes", BAD, _("You can't build a tip here: this area was once a landfill")); - return false; - } - break; - //Oremine - /* Don't allow new mines on old mines or old tips */ - /* GCS: mines over old mines is OK if there is enough remaining - * ore, as is the case when there is partial overlap. */ - case GROUP_OREMINE: - { - - for (i = 0; i < size; i++) - for (j = 0; j < size; j++) - if (MP_INFO(x + i, y + j).ore_reserve > ORE_RESERVE) { - if (msg) - ok_dial_box("warning.mes", BAD, _("You can't build a mine here: This area was once a landfill")); - return false; //previous tip - } - - int total_ore = 0; - for (i = 0; i < size; i++) - for (j = 0; j < size; j++) - total_ore += MP_INFO(x + i, y + j).ore_reserve; - - if (total_ore < MIN_ORE_RESERVE_FOR_MINE) { - if (msg) - ok_dial_box("warning.mes", BAD, _("You can't build a mine here: there is no ore left at this site")); - return false; // not enought ore - } - } - break; - - //Parkland - case GROUP_PARKLAND: - if (!HAS_UGWATER(x, y)) { - if (msg) - ok_dial_box("warning.mes", BAD, _("You can't build a park here: it is a desert, parks need water")); - return false; - } - if (total_money <= 0) { - if (msg) - ok_dial_box("no-credit-parkland.mes", BAD, 0L); - return false; - } - break; - - //Substations and Windmills - case GROUP_SUBSTATION: - case GROUP_WINDMILL: - if (numof_substations >= MAX_NUMOF_SUBSTATIONS) { - if (msg) - ok_dial_box("warning.mes", BAD, _("Too many substations + windmills. You cannot build one more")); - return false; - } - break; - - //Market - case GROUP_MARKET: - if (numof_markets >= MAX_NUMOF_MARKETS) { - if (msg) - ok_dial_box("warning.mes", BAD, _("Too many markets. You cannot build one more")); - return false; - } - break; - - //Other cases + // is not triggered in fresh game or during initial setup + // because there money == 0 + if( (total_money < 0) && ((total_money - value) > 0) ) + { + ok_dial_box("warning.mes", BAD, _("You just spent all your money.")); } - return true; + return total_money; } -int place_item(int x, int y, short type) +//CK place_item is only used once in MapEdit +int place_item(int x, int y) { - int i, j; - int group; - int size; - int msg; + int group = (userOperation->action == UserOperation::ACTION_BUILD)?userOperation->constructionGroup->group:-1; + int size = 1; - group = get_group_of_type(type); if (group < 0) { -#ifdef DEBUG - fprintf(stderr, "Error: group does not exist %i\n", group); -#endif ok_dial_box("warning.mes", BAD, _ ("ERROR: group does not exist. This should not happen! Please consider filling a bug report to lincity-ng team, with the saved game and what you did :-) ")); return -1000; } - MP_DATE(x,y) = total_time; - MP_TECH(x,y) = tech_level; - MP_ANIM(x,y) = real_time; - - size = main_groups[group].size; - if (last_warning_message_group != group) - msg = true; - else - msg =false; - - if (GROUP_IS_RESIDENCE(group)) - group=GROUP_RESIDENCE_LL; - - /* You can't build here because it's forbidden or impossible or not enough money */ - if (!is_allowed_here(x,y,type,msg)) { - last_warning_message_group = group; - return -2; - } else - last_warning_message_group = 0; - - switch (group) { - case GROUP_RESIDENCE_LL: - /* all residences are treated. local variable 'group' is redefined to do so.*/ - /* int_2 is date of last starvation. Needed for correct display */ - MP_INFO(x, y).int_2 = MP_DATE(x,y); - break; - - // bridge is build or upgraded as track/road/rail so set the group bridge according to water - case GROUP_TRACK: - if (MP_GROUP(x, y) == GROUP_WATER) { - type = CST_TRACK_BRIDGE_LR; - selected_module_cost = get_group_cost(GROUP_TRACK_BRIDGE); - } else - // return to normal cost in case of dragging - selected_module_cost = get_group_cost(GROUP_TRACK); - MP_INFO(x, y).flags |= FLAG_IS_TRANSPORT; - break; - - case GROUP_ROAD: - if (MP_GROUP(x, y) == GROUP_WATER || MP_GROUP(x, y) == GROUP_TRACK_BRIDGE) { - type = CST_ROAD_BRIDGE_LR; - selected_module_cost = get_group_cost(GROUP_ROAD_BRIDGE); - } else - selected_module_cost = get_group_cost(GROUP_ROAD); - MP_INFO(x, y).flags |= FLAG_IS_TRANSPORT; - break; - - case GROUP_RAIL: - if (MP_GROUP(x, y) == GROUP_WATER || MP_GROUP(x, y) == GROUP_TRACK_BRIDGE - || MP_GROUP(x, y) == GROUP_ROAD_BRIDGE) { - type = CST_RAIL_BRIDGE_LR; - selected_module_cost = get_group_cost(GROUP_RAIL_BRIDGE); - } else - selected_module_cost = get_group_cost(GROUP_RAIL); - MP_INFO(x, y).flags |= FLAG_IS_TRANSPORT; - break; - - case GROUP_SUBSTATION: - add_a_substation (x, y); - break; - - case GROUP_WINDMILL: - add_a_substation (x, y); - MP_INFO(x, y).int_1 = (int)(WINDMILL_POWER + (((double)MP_TECH(x, y) * WINDMILL_POWER) / MAX_TECH_LEVEL)); - /* Make sure that the correct windmill graphic shows up */ - if (tech_level > MODERN_WINDMILL_TECH) - type = CST_WINDMILL_1_R; - else - type = CST_WINDMILL_1_W; - break; - - case (GROUP_COAL_POWER): - MP_INFO(x, y).int_1 = (int)(POWERS_COAL_OUTPUT + (((double)MP_TECH(x, y) * POWERS_COAL_OUTPUT) - / MAX_TECH_LEVEL)); - break; - - case (GROUP_SOLAR_POWER): - MP_INFO(x, y).int_1 = (int)(POWERS_SOLAR_OUTPUT + (((double)MP_TECH(x, y) * POWERS_SOLAR_OUTPUT) - / MAX_TECH_LEVEL)); - break; - - case GROUP_COMMUNE: - numof_communes++; - break; - - case GROUP_MARKET: - add_a_market(x,y); - MP_INFO(x, y).flags += (FLAG_MB_FOOD | FLAG_MB_JOBS - | FLAG_MB_COAL | FLAG_MB_ORE | FLAG_MB_STEEL - | FLAG_MB_GOODS | FLAG_MS_FOOD | FLAG_MS_JOBS - | FLAG_MS_COAL | FLAG_MS_GOODS | FLAG_MS_ORE | FLAG_MS_STEEL); - break; - - case GROUP_TIP: - /* To prevent building a tip if there has already been one we - * mark the spot permanently by "doubling" the ore reserve */ - for (i = 0; i < size; i++) - for (j = 0; j < size; j++) - MP_INFO(x + i, y + j).ore_reserve = ORE_RESERVE * 2; - break; - - case GROUP_WATERWELL: - do_waterwell_cover(x,y); - numof_waterwell++; //AL1: unused so far. - break; - - } /* end case */ - - set_mappoint(x, y, type); - desert_frontier(x - 1, y - 1, size + 2, size + 2); - - if (group == GROUP_RIVER) - connect_rivers(); - +#ifdef DEBUG + assert(userOperation->constructionGroup->is_allowed_here(x,y,false)); +#endif + if(userOperation->action == UserOperation::ACTION_BUILD) + { + userOperation->constructionGroup->placeItem(x, y); + size = userOperation->constructionGroup->size; + adjust_money(-userOperation->constructionGroup->getCosts()); + } connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); - - adjust_money(-selected_module_cost); - map_power_grid(); + desert_water_frontiers(x - 1, y - 1, size + 2, size + 2); + //connect_rivers(x,y); //CK This should not apply here since water is not a construction return 0; } int bulldoze_item(int x, int y) { - int g, size; - - if (MP_TYPE(x, y) == CST_USED) { + int g, size = 1; + bool construction_found = false; + if (!world(x, y)->is_visible()) + { /* This is considered "improper" input. Silently ignore. */ #ifdef DEBUG fprintf(stderr, " try to improperly bulldoze_item CST_USED\n"); @@ -393,310 +110,322 @@ return -1; } - size = MP_SIZE(x, y); - g = MP_GROUP(x, y); - people_pool += MP_INFO(x, y).population; + if (world(x, y)->reportingConstruction ) + { + construction_found = true; + size = world(x, y)->reportingConstruction->constructionGroup->size; + g = world(x, y)->reportingConstruction->constructionGroup->group; + } + else + { + size = 1; //all non-constructions are 1// MP_SIZE(x, y); + g = world(x, y)->group; + //size = main_groups[g].size; + } - if (g == GROUP_DESERT) { + if (g == GROUP_DESERT) + { /* Nothing to do. */ return -1; - } else if (g == GROUP_SHANTY) { - remove_a_shanty(x, y); + } + else if (g == GROUP_SHANTY) + { + ConstructionManager::executeRequest + ( + new BurnDownRequest(world(x,y)->reportingConstruction) + ); adjust_money(-GROUP_SHANTY_BUL_COST); - } else if (g == GROUP_FIRE) { - if (MP_INFO(x, y).int_2 >= FIRE_LENGTH) - return -1; /* Can't bulldoze ? */ - MP_INFO(x, y).int_2 = FIRE_LENGTH + 1; - MP_TYPE(x, y) = CST_FIRE_DONE1; - MP_GROUP(x, y) = GROUP_BURNT; - adjust_money(-GROUP_BURNT_BUL_COST); - } else { - adjust_money(-main_groups[g].bul_cost); - - if (g == GROUP_COMMUNE) - numof_communes--; - - if (g == GROUP_MARKET) - remove_a_market(x, y); - - if (g == GROUP_SUBSTATION || g == GROUP_WINDMILL) - remove_a_substation(x, y); - - if (g == GROUP_TRACK_BRIDGE || g == GROUP_ROAD_BRIDGE || g == GROUP_RAIL_BRIDGE){ - do_bulldoze_area(CST_WATER, x, y); - return size; - } - - /* keep compatibility for saving pre_waterwell loaded game */ - if (use_waterwell) - do_bulldoze_area(CST_DESERT, x, y); + } + else if (g == GROUP_FIRE) + { + return -1; /* Can't bulldoze ? */ + } + else + { + if (!construction_found) + { adjust_money(-world(x,y)->getTileConstructionGroup()->bul_cost);} else - do_bulldoze_area(CST_GREEN, x, y); + { adjust_money(-world(x, y)->reportingConstruction->constructionGroup->bul_cost);} - if (g == GROUP_OREMINE) { - int i, j; - for (j = 0; j < 4; j++) - for (i = 0; i < 4; i++) - if (MP_INFO(x + i, y + j).ore_reserve < ORE_RESERVE / 2) - do_bulldoze_area(CST_WATER, x + i, y + j); + if (g == GROUP_OREMINE) + { + ConstructionManager::executeRequest + ( new OreMineDeletionRequest(world(x, y)->reportingConstruction)); } + else + { do_bulldoze_area(x, y);} } - /* Tell mps about it, in case its selected */ mps_update(); return size; /* No longer used... */ } -void do_bulldoze_area(short fill, int xx, int yy) +void do_bulldoze_area(int x, int y) //arg1 was short fill { - int size, x, y; - if (MP_TYPE(xx, yy) == CST_USED) { - x = MP_INFO(xx, yy).int_1; - y = MP_INFO(xx, yy).int_2; - } else { - x = xx; - y = yy; - } - size = MP_SIZE(x, y); - for (int i = 0; i < size; i++) - for (int j = 0; j < size; j++) - bulldoze_mappoint(fill, x + i, y + j); - - desert_frontier(x - 1, y - 1, size + 2, size + 2); - connect_transport(x - 2, y - 2, x + size + 1, y + size + 1); + if (world(x, y)->reportingConstruction) + { + ConstructionManager::executeRequest + ( new ConstructionDeletionRequest(world(x, y)->reportingConstruction)); + } + else + { + world(x, y)->flags &= ~(FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90); + if (world(x, y)->is_water()) + { + world(x, y)->type = CST_GREEN; + world(x, y)->group = GROUP_BARE; + world(x, y)->flags &= ~(FLAG_IS_RIVER); + world(x, y)->flags |= FLAG_ALTERED; + } + else + { + world(x, y)->type = CST_DESERT; + world(x, y)->group = GROUP_DESERT; + } + if (world(x, y)->construction) + { ok_dial_box("fire.mes", BAD, _("ups, Bulldozer found a dangling reportingConstruction"));} + //Here size is always 1 + connect_transport(x - 2, y - 2, x + 1 + 1, y + 1 + 1); + connect_rivers(x,y); + desert_water_frontiers(x - 1, y - 1, 1 + 2, 1 + 2); + } } void do_pollution() { - int x, p; - int *pol = &map.pollution[0][0]; + const int len = world.len(); + std::set<int>::iterator it; + //kill pollution from edges of map + //diffuse pollution inside the map + + for (it = world.polluted.begin(); it != world.polluted.end(); ++it) + { + if (world.is_border(*it)) + { + world(*it)->pollution /= POL_DIV; + continue; + } + + if (world(*it)->pollution > 10 ) + { + int x = *it % len; + int y = *it / len; + + //assert(world.is_visible(x,y)); - /* Kill pollution from top edge of map */ - do { - if (*pol > 0) - *pol /= POL_DIV; - } while (++pol < &map.pollution[1][0]); - - x = 1; - do { - /* Kill some pollution from left edge of map */ - if (*pol++ > 0) - *(pol - 1) /= POL_DIV; - do { - if (*pol > 10) { - p = *pol / 16; - *pol -= p; - switch (rand() % 11) { /* prevailing wind is *from* SW */ - case 0: - case 1: /* up */ + int pflow; + pflow = world(x, y)->pollution/16; + world(x, y)->pollution -= pflow; + switch (rand() % 11) + { + case 0:/* up */ + case 1: case 2: - *(pol - 1) += p; - break; - case 3: - case 4: /* right */ + world(x, y-1)->pollution += pflow; + break; + case 3:/* right */ + case 4: case 5: - *(pol + WORLD_SIDE_LEN) += p; - break; - case 6: /* down */ + world(x-1, y)->pollution += pflow; + break; + case 6:/* down */ case 7: - *(pol + 1) += p; - break; - case 8: /* left */ + world(x, y+1)->pollution += pflow; + break; + case 8:/* left */ case 9: - *(pol - WORLD_SIDE_LEN) += p; - break; - case 10: - *pol += p - 2; - break; - } - } - } while (++pol < &map.pollution[x][WORLD_SIDE_LEN - 1]); - /* Kill some pollution from right edge of map */ - if (*pol > 0) - *pol /= POL_DIV; - ++x; - } - while (++pol < &map.pollution[WORLD_SIDE_LEN - 1][0]); - - /* Kill pollution from bottom edge of map */ - do { - if (*pol > 0) - *pol /= POL_DIV; - } while (++pol < &map.pollution[WORLD_SIDE_LEN][0]); + world(x+1, y)->pollution += pflow; + break; + case 10:/* clean up*/ + world(x, y)->pollution += (pflow - 2); + break; + }// endswitch + }// endif + }// endfor index +} + +void scan_pollution() +{ + const int len = world.len(); + const int area = len * len; + std::set<int>::iterator it; + total_pollution = 0; + for (int index = 0; index < area; ++index) + { + int x = index % len; + int y = index / len; + it = world.polluted.find(index); + if( (world(x,y)->pollution > 10) + && (it == world.polluted.end())) + { world.polluted.insert(index);} + else if ((world(x,y)->pollution <= 10) + && (it != world.polluted.end())) + { world.polluted.erase(it);} + total_pollution += world(x,y)->pollution; + } } void do_fire_health_cricket_power_cover(void) { - int x, y,m; - /* Clear the flag */ - m = 0xffffffff - (FLAG_FIRE_COVER | FLAG_HEALTH_COVER - | FLAG_CRICKET_COVER | FLAG_WATERWELL_COVER); - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) - MP_INFO(x, y).flags &= m; - - /* Check cover */ - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) { - /* The next few lines need changing to test for */ - /* the group if these areas are animated. */ - - if (MP_GROUP(x, y) == GROUP_FIRESTATION) - do_fire_cover(x, y); - else if (MP_TYPE(x, y) == CST_HEALTH) - do_health_cover(x, y); - else if (MP_GROUP(x, y) == GROUP_CRICKET) - do_cricket_cover(x, y); - else if (MP_GROUP(x, y) == GROUP_WATERWELL) - do_waterwell_cover(x, y); - } + const int len = world.len(); + const int area = len * len; + const int mask = ~(FLAG_FIRE_COVER | FLAG_HEALTH_COVER | FLAG_CRICKET_COVER | FLAG_MARKET_COVER ); + for(int index = 0; index < area; ++index) + { world(index)->flags &= mask;} + refresh_cover = true; //constructions will call ::cover() } void do_random_fire(int x, int y, int pwarning) { /* well random if x=y=-1 */ int xx, yy; - if (x == -1 && y == -1) { - x = rand() % WORLD_SIDE_LEN; - y = rand() % WORLD_SIDE_LEN; - } else { - if (x < 0 || x >= WORLD_SIDE_LEN || y < 0 || y >= WORLD_SIDE_LEN) + if (x == -1 && y == -1) + { + x = rand() % world.len(); + y = rand() % world.len(); + } + else + { + if (!world.is_inside(x, y)) + { return; + } } - if (MP_TYPE(x, y) == CST_USED) { - xx = MP_INFO(x, y).int_1; - yy = MP_INFO(x, y).int_2; + if(world(x, y)->reportingConstruction) + { + xx = world(x, y)->reportingConstruction->x; + yy = world(x, y)->reportingConstruction->y; x = xx; y = yy; } + xx = rand() % 100; - if (xx >= (main_groups[MP_GROUP(x, y)].fire_chance)) - return; - if ((MP_INFO(x, y).flags & FLAG_FIRE_COVER) != 0) + if(world(x, y)->reportingConstruction) + { + if (xx >= world(x, y)->reportingConstruction->constructionGroup->fire_chance) + return; + } + else + { + if (xx >= (world(x, y)->getConstructionGroup()->fire_chance)) + return; + } + if ((world(x, y)->flags & FLAG_FIRE_COVER) != 0) return; - if (pwarning) { - if (MP_GROUP(x, y) == GROUP_POWER_LINE) - ok_dial_box("fire.mes", BAD, _("It's at a power line.")); - else if (MP_GROUP(x, y) == GROUP_SOLAR_POWER) - ok_dial_box("fire.mes", BAD, _("It's at a solar power station.")); - else if (MP_GROUP(x, y) == GROUP_SUBSTATION) - ok_dial_box("fire.mes", BAD, _("It's at a substation.")); - else if (MP_GROUP_IS_RESIDENCE(x, y)) - ok_dial_box("fire.mes", BAD, _("It's at a residential area.")); - else if (MP_GROUP(x, y) == GROUP_ORGANIC_FARM) - ok_dial_box("fire.mes", BAD, _("It's at a farm.")); - else if (MP_GROUP(x, y) == GROUP_MARKET) - ok_dial_box("fire.mes", BAD, _("It's at a market.")); - else if (MP_GROUP(x, y) == GROUP_TRACK) - ok_dial_box("fire.mes", BAD, _("It's at a track.")); - else if (MP_GROUP(x, y) == GROUP_COALMINE) - ok_dial_box("fire.mes", BAD, _("It's at a coal mine.")); - else if (MP_GROUP(x, y) == GROUP_RAIL) - ok_dial_box("fire.mes", BAD, _("It's at a railway.")); - else if (MP_GROUP(x, y) == GROUP_COAL_POWER) - ok_dial_box("fire.mes", BAD, _("It's at a coal power station.")); - else if (MP_GROUP(x, y) == GROUP_ROAD) - ok_dial_box("fire.mes", BAD, _("It's at a road.")); - else if (MP_GROUP(x, y) == GROUP_INDUSTRY_L) - ok_dial_box("fire.mes", BAD, _("It's at light industry.")); - else if (MP_GROUP(x, y) == GROUP_UNIVERSITY) - ok_dial_box("fire.mes", BAD, _("It's at a university.")); - else if (MP_GROUP(x, y) == GROUP_COMMUNE) - ok_dial_box("fire.mes", BAD, _("It's at a commune.")); - else if (MP_GROUP(x, y) == GROUP_TIP) - ok_dial_box("fire.mes", BAD, _("It's at a tip.")); - else if (MP_GROUP(x, y) == GROUP_PORT) - ok_dial_box("fire.mes", BAD, _("It's at a port.")); - else if (MP_GROUP(x, y) == GROUP_INDUSTRY_H) - ok_dial_box("fire.mes", BAD, _("It's at a steel works.")); - else if (MP_GROUP(x, y) == GROUP_RECYCLE) - ok_dial_box("fire.mes", BAD, _("It's at a recycle centre.")); - else if (MP_GROUP(x, y) == GROUP_HEALTH) - ok_dial_box("fire.mes", BAD, _("It's at a health centre.")); - else if (MP_GROUP(x, y) == GROUP_ROCKET) - ok_dial_box("fire.mes", BAD, _("It's at a rocket site.")); - else if (MP_GROUP(x, y) == GROUP_WINDMILL) - ok_dial_box("fire.mes", BAD, _("It's at a windmill.")); - else if (MP_GROUP(x, y) == GROUP_SCHOOL) - ok_dial_box("fire.mes", BAD, _("It's at a school.")); - else if (MP_GROUP(x, y) == GROUP_BLACKSMITH) - ok_dial_box("fire.mes", BAD, _("It's at a blacksmith.")); - else if (MP_GROUP(x, y) == GROUP_MILL) - ok_dial_box("fire.mes", BAD, _("It's at a mill.")); - else if (MP_GROUP(x, y) == GROUP_POTTERY) - ok_dial_box("fire.mes", BAD, _("It's at a pottery.")); - else if (MP_GROUP(x, y) == GROUP_FIRESTATION) - ok_dial_box("fire.mes", BAD, _("It's at a fire station!!!.")); - else if (MP_GROUP(x, y) == GROUP_CRICKET) - ok_dial_box("fire.mes", BAD, _("It's at a sports field!!!.")); - else if (MP_GROUP(x, y) == GROUP_SHANTY) - ok_dial_box("fire.mes", BAD, _("It's at a shanty town.")); + if (pwarning) + { + if(world(x, y)->reportingConstruction) + ok_dial_box("fire.mes", BAD, world(x, y)->reportingConstruction-> +constructionGroup->name); else ok_dial_box("fire.mes", BAD, _("UNKNOWN!")); } fire_area(x, y); } -void do_daily_ecology() +void do_daily_ecology() //should be going to MapTile:: und handled during simulation { - for (int x = 0; x < WORLD_SIDE_LEN; x++) - for (int y = 0; y < WORLD_SIDE_LEN; y++) { - /* approximately 3 monthes needed to turn bulldoze area into green */ - if (MP_GROUP(x, y) == GROUP_DESERT && HAS_UGWATER(x, y) - && rand() % 300 == 1) { - do_bulldoze_area(CST_GREEN, x, y); - } + const int len = world.len(); + const int area = len * len; + for (int idx = 0; idx < area; ++idx) + { + /* approximately 3 monthes needed to turn bulldoze area into green */ + if ((world(idx)->getLowerstVisibleGroup() == GROUP_DESERT) + && (world(idx)->flags & FLAG_HAS_UNDERGROUND_WATER) + && (rand() % 300 == 1)) + { + world(idx)->setTerrain(CST_GREEN); + desert_water_frontiers( (idx % len) - 1, (idx / len) - 1, 1 + 2, 1 + 2); } + } //TODO: depending on water, green can become trees - // pollution can make desert + // pollution can make desert // etc ... + /*TODO incorporate do_daily_ecology to simulate_mappoints. */ +} + +int check_group(int x, int y) +{ + if (! world.is_inside(x, y) ) + return -1; + return world(x, y)->getGroup(); +} + +int check_topgroup(int x, int y) +{ + if (!world.is_inside(x, y) ) + return -1; + return world(x, y)->getTopGroup(); +} + +int check_lvgroup(int x, int y) +{ + if (! world.is_inside(x, y) ) + return -1; + return world(x, y)->getLowerstVisibleGroup(); } -void connect_rivers(void) +bool check_water(int x, int y) { - int x, y, count; - count = 1; - while (count > 0) { - count = 0; - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) { - if (is_real_river(x, y) == 1) { - if (is_real_river(x - 1, y) == -1) { - MP_INFO(x - 1, y).flags |= FLAG_IS_RIVER; - count++; - } - if (is_real_river(x, y - 1) == -1) { - MP_INFO(x, y - 1).flags |= FLAG_IS_RIVER; - count++; - } - if (is_real_river(x + 1, y) == -1) { - MP_INFO(x + 1, y).flags |= FLAG_IS_RIVER; - count++; - } - if (is_real_river(x, y + 1) == -1) { - MP_INFO(x, y + 1).flags |= FLAG_IS_RIVER; - count++; - } + if (!world.is_inside(x, y) ) + return false; + return world(x, y)->is_water(); +} + + +void connect_rivers(int x, int y) +{ + std::deque<int> line; + const int len = world.len(); + + line.clear(); + //only act on lakes + if ( world(x,y)->is_lake()) + { line.push_back(y*len+x);} + + while(line.size()>0) + { + int x = line.front() % len; + int y = line.front() / len; + line.pop_front(); + //check for close by river + for(unsigned int i = 0;i<4;++i) + { + int xx = x + dx[i]; + int yy = y + dy[i]; + if(world(xx,yy)->is_river()) + { + world(x, y)->flags |= FLAG_IS_RIVER; + i = 4; + //now check for more close by lakes + for(unsigned int j = 0;j<4;++j) + { + int x3 = x + dx[j]; + int y3 = y + dy[j]; + if (world(x3,y3)->is_lake()) + { line.push_back(y3*len+x3);} } } + } } } /* Feature: coal survey should vary in price and accuracy with technology */ void do_coal_survey(void) { - if (coal_survey_done == 0) { + if (coal_survey_done == 0) + { adjust_money(-1000000); coal_survey_done = 1; } } -void desert_frontier(int originx, int originy, int w, int h) +void desert_water_frontiers(int originx, int originy, int w, int h) { /* copied from connect_transport */ // sets the correct TYPE depending on neighbours, => gives the correct tile to display - int x, y, mask; - + int mask; +/* static const short desert_table[16] = { CST_DESERT_0, CST_DESERT_1D, CST_DESERT_1R, CST_DESERT_2RD, CST_DESERT_1L, CST_DESERT_2LD, CST_DESERT_2LR, CST_DESERT_3LRD, @@ -704,79 +433,149 @@ CST_DESERT_2LU, CST_DESERT_3LUD, CST_DESERT_3LRU, CST_DESERT }; -#if FLAG_LEFT != 1 || FLAG_UP != 2 || FLAG_RIGHT != 4 || FLAG_DOWN != 8 +#if FLAG_LEFT != 1 || FLAG_UP != 2 || FLAG_RIGHT != 4 || FLAG_DOWN != 8 #error desert_frontier(): you loose #error the algorithm depends on proper flag settings -- (ThMO) #endif - +*/ /* Adjust originx,originy,w,h to proper range */ - if (originx <= 0) { + if (originx <= 0) + { w -= 1 - originx; originx = 1; } - if (originy <= 0) { + if (originy <= 0) + { h -= 1 - originy; originy = 1; } - if (originx + w >= WORLD_SIDE_LEN) { - w = WORLD_SIDE_LEN - originx; + if (originx + w >= world.len()) + { w = world.len() - originx;} + if (originy + h >= world.len()) + { h = world.len() - originy;} + + for (int x = originx; x < originx + w; x++) + { + for (int y = originy; y < originy + h; y++) + { + if ( world(x, y)->getLowerstVisibleGroup() == GROUP_DESERT) + { + mask = 0; + if ( check_lvgroup(x, y - 1) == GROUP_DESERT ) + { mask |= 8;} + if ( check_lvgroup(x - 1, y) == GROUP_DESERT ) + { mask |= 4;} + if ( check_lvgroup(x + 1, y) == GROUP_DESERT ) + { mask |= 2;} + if ( check_lvgroup(x, y + 1) == GROUP_DESERT ) + { ++mask;} + world(x, y)->type = mask; + } + else if ( world(x, y)->getLowerstVisibleGroup() == GROUP_WATER) + { + mask = 0; + if ( check_water(x, y - 1) + || (check_group(x, y - 1) == GROUP_PORT) ) + { mask |= 8;} + if ( check_water(x - 1, y) + || (check_group(x - 1, y) == GROUP_PORT) ) + { mask |= 4;} + if ( check_water(x + 1, y) ) + { mask |= 2;} + if ( check_water(x, y + 1) ) + { ++mask;} + world(x, y)->type = mask; + } + } } - if (originy + h >= WORLD_SIDE_LEN) { - h = WORLD_SIDE_LEN - originy; +} + +/* + // spiral arounf mapTile[x][y] until we hit something of group group. + // return the x y coords encoded as x+y*world.len() + // return -1 if we don't find one. + */ +int find_group(int x, int y, unsigned short group) +{ + int i, j; + for (i = 1; i < (2 * world.len()); i++) + { + for (j = 0; j < i; j++) + { + x--; + if (world.is_visible(x, y) && world(x, y)->getTopGroup() == group) + { return (x + y * world.len());} + } + for (j = 0; j < i; j++) { + y--; + if (world.is_visible(x, y) && world(x, y)->getTopGroup() == group) + { return (x + y * world.len());} + } + i++; + for (j = 0; j < i; j++) + { + x++; + if (world.is_visible(x, y) && world(x, y)->getTopGroup() == group) + { return (x + y * world.len());} + } + for (j = 0; j < i; j++) + { + y++; + if (world.is_visible(x, y) && world(x, y)->getTopGroup() == group) + { return (x + y * world.len());} + } } + return (-1); +} - for (x = originx; x < originx + w; x++) { - for (y = originy; y < originy + h; y++) { - if (MP_GROUP(x,y) == GROUP_DESERT) { - mask = 0; - /* up -- (ThMO) */ - if (MP_GROUP(x, y - 1) == GROUP_DESERT) - mask |= 8; - - /* left -- (ThMO) */ - if (MP_GROUP(x - 1, y) == GROUP_DESERT) - mask |= 4; - - /* right -- (ThMO) */ - if (MP_GROUP(x + 1, y) == GROUP_DESERT) - mask |= 2; - - /* down -- (ThMO) */ - if (MP_GROUP(x, y + 1) == GROUP_DESERT) - ++mask; - MP_TYPE(x, y) = desert_table[mask]; - } +/* + // spiral round from startx,starty until we hit a 2x2 space. + // return the x y coords encoded as x+y*world.len() + // return -1 if we don't find one. + */ +bool is_bare_area(int x, int y, int size) +{ + for(int j = 0; j<size; j++) + { + for(int i = 0; i<size; i++) + { + if(!world.is_visible(x+i, y+j) || !world(x+i, y+j)->is_bare()) + { return false;} } } + return true; } -/************ Private functions ***************************/ -static void bulldoze_mappoint(short fill, int x, int y) + +int find_bare_area(int x, int y, int size) { - /* bulldoze preserve underground resources */ - MP_TYPE(x, y) = fill; - MP_GROUP(x, y) = get_group_of_type(fill); - if (MP_GROUP(x, y) < 0) - MP_GROUP(x, y) = GROUP_BARE; - MP_INFO(x, y).population = 0; - MP_INFO(x, y).flags &= FLAG_HAS_UNDERGROUND_WATER | FLAG_WATERWELL_COVER | FLAG_CRICKET_COVER | FLAG_HEALTH_COVER | FLAG_FIRE_COVER; - MP_INFO(x, y).int_1 = 0; - MP_INFO(x, y).int_2 = 0; - MP_INFO(x, y).int_3 = 0; - MP_INFO(x, y).int_4 = 0; - MP_INFO(x, y).int_5 = 0; - MP_INFO(x, y).int_6 = 0; - MP_INFO(x, y).int_7 = 0; -} - -static int is_real_river(int x, int y) -{ - /* returns zero if not water at all or if out of bounds. */ - if (x < 0 || x >= WORLD_SIDE_LEN || y < 0 || y >= WORLD_SIDE_LEN) - return (0); - if (MP_GROUP(x, y) != GROUP_WATER) - return (0); - if (MP_INFO(x, y).flags & FLAG_IS_RIVER) - return (1); - return (-1); // only water, not river + int i, j; + for (i = 1; i < (2 * world.len()); i++) + { + for (j = 0; j < i; j++) + { + x--; + if (world.is_visible(x, y) && is_bare_area(x, y, size) ) + { return (x + y * world.len());} + } + for (j = 0; j < i; j++) { + y--; + if (world.is_visible(x, y) && is_bare_area(x, y, size) ) + { return (x + y * world.len());} + } + i++; + for (j = 0; j < i; j++) { + x++; + if (world.is_visible(x, y) && is_bare_area(x, y, size) ) + { return (x + y * world.len());} + } + for (j = 0; j < i; j++) { + y++; + if (world.is_visible(x, y) && is_bare_area(x, y, size) ) + { return (x + y * world.len());} + } + } + return (-1); } +/** @file lincity/engine.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/engine.h lincity-ng-2.9~git20150314/src/lincity/engine.h --- lincity-ng-2.0/src/lincity/engine.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/engine.h 2015-05-05 16:32:51.000000000 +0000 @@ -7,23 +7,32 @@ #define __engine_h__ int adjust_money(int value); -int place_item(int x, int y, short type); -int is_allowed_here(int x, int y, short type); +int place_item(int x, int y); int bulldoze_item(int x, int y); -void do_bulldoze_area(short fill, int xx, int yy); +void do_bulldoze_area(int x, int y); void do_coal_survey(void); void do_random_fire(int x, int y, int pwarning); void fire_area(int x, int y); -void desert_frontier(int originx, int originy, int w, int h); -void connect_rivers(void); +void desert_water_frontiers(int originx, int originy, int w, int h); +void connect_rivers(int x, int y); +int check_group(int x, int y); +int check_topgroup(int x, int y); +int check_lvgroup(int x, int y); +bool check_water(int x, int y); -void launch_rocket(int x, int y); +int find_group(int x, int y, unsigned short group); +bool is_bare_area(int x, int y, int size); +int find_bare_area(int x, int y, int size); /* called only by simulate.cpp */ void do_daily_ecology(void); void do_pollution(void); +void scan_pollution(void); void do_fire_health_cricket_power_cover(void); extern long real_time; #endif /* __engine_h__ */ + +/** @file lincity/engine.h */ + diff -Nru lincity-ng-2.0/src/lincity/fileutil.cpp lincity-ng-2.9~git20150314/src/lincity/fileutil.cpp --- lincity-ng-2.0/src/lincity/fileutil.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/fileutil.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -141,44 +141,12 @@ * Public Functions * ---------------------------------------------------------------------- */ #if defined (__BORLANDC__) -int _chdir(const char *dirname) -{ - return chdir(dirname); -} - int _access(const char *path, int mode) { return access(path, mode) } #endif -/* Executes a system command */ -int execute_command(char *cmd, char *p1, char *p2, char *p3) -{ - char *sys_cmd = (char *)malloc(strlen(cmd) + strlen(p1) + strlen(p2) - + strlen(p3) + 4); - int ret_value; - - if (sys_cmd == 0) { - malloc_failure(); - } - sprintf(sys_cmd, "%s %s %s %s", cmd, p1, p2, p3); - ret_value = system(sys_cmd); -/* fprintf(stderr, "system(%s)=%i\n", sys_cmd, ret_value); */ - free(sys_cmd); - return ret_value; -} - -void copy_file(char *f1, char *f2) -{ - int ret_value = execute_command((char*)"cp", f1, f2, (char*)""); - if (ret_value != 0) { - /* GCS FIX: Need to make do_error into var_args fn? */ - printf("Tried to cp %s %s\n", f1, f2); - do_error("Can't copy requested file"); - } -} - int directory_exists(char *dir) { #if defined (WIN32) @@ -324,7 +292,7 @@ #endif } -/* GCS: This function is modified from gettext. It finds the language +/* GCS: This function is modified from gettext. It finds the language portion of the locale. */ static void lincity_nl_find_language(char *name) { @@ -473,15 +441,17 @@ #if defined (WIN32) if (_mkdir(lc_save_dir) == -1 && errno != EEXIST) { - printf(_("Couldn't create the save directory '%s'\n"), lc_save_dir); + printf("%s '%s'\n", _("Couldn't create the save directory"), lc_save_dir); exit(-1); } #else mkdir(lc_save_dir, 0755); - chown(lc_save_dir, getuid(), getgid()); + if (chown(lc_save_dir, getuid(), getgid()) == -1) { + printf("%s '%s'\n", _("Failed to chown"), lc_save_dir); + } if ((dp = opendir(lc_save_dir)) == NULL) { /* change this to a screen message. */ - printf(_("Couldn't create the save directory '%s'\n"), lc_save_dir); + printf("%s '%s'\n", _("Couldn't create the save directory"), lc_save_dir); exit(1); } closedir(dp); @@ -498,7 +468,7 @@ void malloc_failure(void) { - printf(_("Out of memory: malloc failure\n")); + printf("%s",_("Out of memory: malloc failure\n")); exit(1); } @@ -565,7 +535,7 @@ vfprintf(fp, fmt, argptr); #endif - /* FIXME: maybe uncomment this + /* FIXME: maybe uncomment this if (command_line_debug) { #if (!DEBUG_PRINTF_TO_FILE) va_start (argptr, fmt); @@ -581,3 +551,6 @@ fclose(fp); #endif } + +/** @file lincity/fileutil.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/fileutil.h lincity-ng-2.9~git20150314/src/lincity/fileutil.h --- lincity-ng-2.0/src/lincity/fileutil.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/fileutil.h 2015-05-05 16:32:51.000000000 +0000 @@ -52,3 +52,6 @@ void debug_printf(char *fmt, ...); #endif /* __fileutil_h__ */ + +/** @file lincity/fileutil.h */ + diff -Nru lincity-ng-2.0/src/lincity/groups.h lincity-ng-2.9~git20150314/src/lincity/groups.h --- lincity-ng-2.0/src/lincity/groups.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/groups.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,86 @@ +/* ---------------------------------------------------------------------- * + * groups.h + * This file is part of lincity-ng + * Lincity is copyright (c) see CREDITS for more informations + * + * See COPYING COPYING-data.txt and COPYING-fonts.txt for licenses informations + * ---------------------------------------------------------------------- */ + +#ifndef __groups_h__ +#define __groups_h__ + +/******* Buildings // GROUPS ************/ + +#define GROUP_BARE 0 +#define GROUP_POWER_LINE 1 +#define GROUP_SOLAR_POWER 2 +#define GROUP_SUBSTATION 3 +#define GROUP_RESIDENCE_LL 4 +#define GROUP_ORGANIC_FARM 5 +#define GROUP_MARKET 6 +#define GROUP_TRACK 7 +#define GROUP_COALMINE 8 +#define GROUP_RAIL 9 +#define GROUP_COAL_POWER 10 +#define GROUP_ROAD 11 +#define GROUP_INDUSTRY_L 12 +#define GROUP_UNIVERSITY 13 +#define GROUP_COMMUNE 14 +#define GROUP_OREMINE 15 +#define GROUP_TIP 16 +#define GROUP_PORT 17 +#define GROUP_INDUSTRY_H 18 +#define GROUP_PARKLAND 19 +#define GROUP_RECYCLE 20 +#define GROUP_WATER 21 +#define GROUP_HEALTH 22 +#define GROUP_ROCKET 23 +#define GROUP_WINDMILL 24 +#define GROUP_MONUMENT 25 +#define GROUP_SCHOOL 26 +#define GROUP_BLACKSMITH 27 +#define GROUP_MILL 28 +#define GROUP_POTTERY 29 +#define GROUP_FIRESTATION 30 +#define GROUP_CRICKET 31 +#define GROUP_BURNT 32 +#define GROUP_SHANTY 33 +#define GROUP_FIRE 34 +#define GROUP_USED 35 +#define GROUP_RESIDENCE_ML 36 +#define GROUP_RESIDENCE_HL 37 +#define GROUP_RESIDENCE_LH 38 +#define GROUP_RESIDENCE_MH 39 +#define GROUP_RESIDENCE_HH 40 +#define GROUP_WATERWELL 41 +#define GROUP_DESERT 42 +#define GROUP_TREE 43 +#define GROUP_TREE2 44 +#define GROUP_TREE3 45 +#define GROUP_TRACK_BRIDGE 46 +#define GROUP_ROAD_BRIDGE 47 +#define GROUP_RAIL_BRIDGE 48 +#define GROUP_WIND_POWER 49 +#define GROUP_PARKPOND 50 + +#define GROUP_RIVER (GROUP_WATER) + +#define GROUP_IS_RESIDENCE(group) \ + ((group == GROUP_RESIDENCE_LL) || \ + (group == GROUP_RESIDENCE_ML) || \ + (group == GROUP_RESIDENCE_HL) || \ + (group == GROUP_RESIDENCE_LH) || \ + (group == GROUP_RESIDENCE_MH) || \ + (group == GROUP_RESIDENCE_HH)) + +#define GROUP_IS_BARE(group) \ + ((group == GROUP_BARE) || \ + (group == GROUP_DESERT) || \ + (group == GROUP_TREE) || \ + (group == GROUP_TREE2) || \ + (group == GROUP_TREE3)) + +#endif // __groups_h__ + +/** @file lincity/groups.h */ + diff -Nru lincity-ng-2.0/src/lincity/init_game.cpp lincity-ng-2.9~git20150314/src/lincity/init_game.cpp --- lincity-ng-2.0/src/lincity/init_game.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/init_game.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,7 +5,7 @@ * ---------------------------------------------------------------------- */ -// This was part of simulate.cpp. +// This was part of simulate.cpp. // Moved in new file for clarification // // (re)initialise engine and UI data when @@ -13,8 +13,11 @@ // - start a random village (or a void map) // +//#define DEBUG_EXPERIMENTAL + #include <math.h> #include <cstdlib> +#include <vector> #include "init_game.h" #include "fileutil.h" #include "simulate.h" @@ -23,58 +26,72 @@ #include "lin-city.h" #include "engglobs.h" #include "gui_interface/screen_interface.h" -#include "power.h" #include "stats.h" #include "gui_interface/pbar_interface.h" +#include "modules/modules_interfaces.h" #include "modules/all_modules.h" #include "transport.h" +#include "all_buildings.h" +#include "engine.h" +#include "Vehicles.h" +#include <deque> + -#define IS_RIVER(x,y) (MP_INFO(x,y).flags & FLAG_IS_RIVER) -static const int di[8] = { -1, 0, 1, 0, 1, 1, -1, -1}; -static const int dj[8] = { 0, -1, 0, 1, 1, -1, 1, -1}; /* Private functions prototypes */ -static void init_mappoint_array(void); +//static void init_mappoint_array(void); static void initialize_tax_rates(void); static void nullify_mappoint(int x, int y); static void random_start(int *originx, int *originy); static void coal_reserve_setup(void); static void ore_reserve_setup(void); static void setup_river(void); +//static void remove_river(void); static void setup_river2(int x, int y, int d, int alt, int mountain); static void setup_ground(void); static void new_setup_river_ground(void); static void new_setup_river(void); -static void sort_by_altitude(int n, int *tabx, int *taby); -static void new_setup_one_river(int num_river, int c, int *colx, int *coly, int t, int *topx, int *topy, int l, int *lakx, int *laky); -static void set_river_tile( int i, int j); +//static void sort_by_altitude(int n, std::vector <int> *tabx, std::vector <int> *taby); +//static int new_setup_one_river(int x, int y, int lake_id, Shoreline *shore); +static int quick_river( int x, int y); +void set_river_tile( int i, int j); //also used in loadsave.cpp +static void do_rand_ecology(int x, int y, int r); +//static Shoreline * init_shore(void); +//static void free_shore(Shoreline *shore); +static int overfill_lake(int xl, int yl);//, Shoreline *shore, int lake_id); + /* ---------------------------------------------------------------------- * * Public Functions * ---------------------------------------------------------------------- */ -void clear_game(void) + +void destroy_game(void) { - int x, y, i, p; + ConstructionManager::clearRequests(); + Vehicle::clearVehicleList(); + const int len = world.len(); + const int area = len * len; + for (int index = 0; index < area; ++index) + { + int xx = index % world.len(); + int yy = index / world.len(); + nullify_mappoint(xx, yy); + } +} - init_mappoint_array (); +void clear_game(void) +{ initialize_tax_rates (); init_inventory(); - + //std::cout << "whiping game with " << world.len() << " side length" << std::endl; + destroy_game(); // Clear engine and UI data. - for (y = 0; y < WORLD_SIDE_LEN; y++) { - for (x = 0; x < WORLD_SIDE_LEN; x++) { - nullify_mappoint(x, y); - } - } + world.dirty = false; + constructionCount.size(100); total_time = 0; coal_survey_done = 0; - numof_shanties = 0; - numof_communes = 0; - numof_substations = 0; - numof_health_centres = 0; - numof_markets = 0; max_pop_ever = 0; total_evacuated = 0; total_births = 0; @@ -83,13 +100,12 @@ highest_tech_level = 0; rockets_launched = 0; rockets_launched_success = 0; - init_inventory(); update_avail_modules(0); use_waterwell = true; // NG 1.91 : AL1 // unused now (it was used in branch waterwell) // but useful to know how to add an optional module, so keep it for a while. - numof_waterwell = 0; + global_aridity = 0; global_mountainity =0; @@ -100,173 +116,239 @@ starve_deaths_history = 0; total_unemployed_years = 0; unemployed_history = 0; - /* Al1. NG 1.1 is this enough ? Are all global variables reseted ? */ - // UI stuff - /* TODO check reset screen, sustain info ... */ given_scene[0] = 0; - for( i = 0; i < monthgraph_size; i++ ){ + for(int i = 0; i < monthgraph_size; i++ ) + { monthgraph_pop[i] = 0; monthgraph_starve[i] = 0; monthgraph_nojobs[i] = 0; monthgraph_ppool[i] = 0; - } - // reset PBARS - // FIXME AL1 NG 1.92.svn pbars are reseted only - // when we build something - // when some building already exist and modify one value - // - /* AL1 i don't understand why this does not work - init_pbars(); // AL1: Why is this not enough and why do we need additional stuff ? - */ - - /* - */ - housed_population=0; - tech_level=0; - tfood_in_markets=0; - tjobs_in_markets=0; - tcoal_in_markets=0; - tgoods_in_markets=0; - tore_in_markets=0; - tsteel_in_markets=0; - total_money=0; - - init_pbars(); - for (p = 0; p < NUM_PBARS; p++) - pbars[p].data_size = PBAR_DATA_SIZE; - - for (p = 0; p < NUM_PBARS; p++) { - pbars[p].oldtot = 0; - pbars[p].diff = 0; - } - - for (x = 0; x < PBAR_DATA_SIZE; x++) { - update_pbar (PPOP, housed_population, 1); - update_pbar (PTECH, tech_level, 1); - update_pbar (PFOOD, tfood_in_markets , 1); - update_pbar (PJOBS, tjobs_in_markets , 1); - update_pbar (PCOAL, tcoal_in_markets , 1); - update_pbar (PGOODS, tgoods_in_markets , 1); - update_pbar (PORE, tore_in_markets , 1); - update_pbar (PSTEEL, tsteel_in_markets , 1); - update_pbar (PMONEY, total_money, 1); } - data_last_month = 1; - update_pbars_monthly(); -} -void new_city(int *originx, int *originy, int random_village) -{ - int old_setup_ground = true; - clear_game(); - coal_reserve_setup(); + people_pool = 100; + housed_population = 0; + tech_level = 0; + total_money = 0; + + sust_dig_ore_coal_tip_flag = 1; + sust_dig_ore_coal_count = 0; + sust_port_flag = 1; + sust_port_count = 0; + sust_old_money = total_money; + sust_old_money_count = 0; + //redo this if a village is generated + sust_old_population = (housed_population + people_pool); + sust_old_population_count = 0; + sust_old_tech_count = 0; + sust_old_tech = tech_level; + sust_fire_count = 0; - global_mountainity= 100 + rand () % 300; // roughly water slope = 25m / 1km (=from N to S) - if (old_setup_ground) { - setup_river(); - setup_ground(); - } else { - new_setup_river_ground(); - } - setup_land(); - ore_reserve_setup(); init_pbars(); + refresh_pbars(); - /* Initial population is 100 for empty board or 200 - for random village (100 are housed). */ - people_pool = 100; +} - if (random_village != 0) { - random_start(originx, originy); - update_pbar(PPOP, 200, 1); /* So pbars don't flash */ - } else { - *originx = *originy = WORLD_SIDE_LEN / 2; - update_pbar(PPOP, 100, 1); - } - connect_transport(1, 1, WORLD_SIDE_LEN - 2, WORLD_SIDE_LEN - 2); - /* Fix desert frontier for old saved games and scenarios */ - desert_frontier(0, 0, WORLD_SIDE_LEN, WORLD_SIDE_LEN); - refresh_pbars(); // AL1: does nothing in NG ! +void new_city(int *originx, int *originy, city_settings *city) +{ + world.old_setup_ground = true; + world.climate = 0; + world.seed(rand()); + create_new_city( originx, originy, city, true, 0); } -void setup_land(void) +void new_desert_city(int *originx, int *originy, city_settings *city) { - int x, y, xw, yw; - int aridity = rand() % 450 - 150; - - global_aridity = aridity; - - - for (y = 0; y < WORLD_SIDE_LEN; y++) { - for (x = 0; x < WORLD_SIDE_LEN; x++) { - int d2w_min = 2 * WORLD_SIDE_LEN * WORLD_SIDE_LEN; - int r; - int arid = aridity; - int alt0 = 0; + world.old_setup_ground = false; + world.climate = 1; + world.seed(rand()); + create_new_city( originx, originy, city, false, 1); +} - /* test against IS_RIVER to prevent terrible recursion */ - if (IS_RIVER(x, y) || !GROUP_IS_BARE(MP_GROUP(x, y))) - continue; +void new_temperate_city(int *originx, int *originy, city_settings *city) +{ + world.old_setup_ground = false; + world.climate = 2; + world.seed(rand()); + create_new_city( originx, originy, city, false, 2); +} - for (yw = 0; yw < WORLD_SIDE_LEN; yw++) { - for (xw = 0; xw < WORLD_SIDE_LEN; xw++) { - int d2w; - if (!IS_RIVER(xw, yw)) - continue; - d2w = (xw - x) * (xw - x) + (yw - y) * (yw - y); - if (d2w < d2w_min) { - d2w_min = d2w; - alt0 = ALT(xw,yw); // altitude of the river - } - /* TODO ? Store square of distance to river for each tile */ - } - } +void new_swamp_city(int *originx, int *originy, city_settings *city) +{ + world.old_setup_ground = false; + world.climate = 3; + world.seed(rand()); + create_new_city( originx, originy, city, false, 3); +} - /* near river lower aridity */ - if (aridity > 0) { - if (d2w_min < 5) - arid = aridity / 3; - else if (d2w_min < 17) - arid = (aridity * 2) / 3; - } - /* Altitude has same effect as distance */ - if( alt_step == 0 ){ - alt_step = 400; // TODO: Why can alt_step be zero here? Quick hack to prevent crash WolfgangB 2008-09-13 - } - r = rand() % (d2w_min / 3 + 1) + arid + - abs((ALT(x,y) - alt0) * 19 / alt_step) + 3 * (ALT(x,y) * ALT(x,y)) /1000000 ; - ground[x][y].ecotable=r; - /* needed to setup quasi randome land. The flag is set below */ - MP_INFO(x, y).flags |= FLAG_HAS_UNDERGROUND_WATER; - do_rand_ecology(x,y); - MP_POL(x, y) = 0; - - /* preserve rivers, so that we can connect port later */ - if (MP_TYPE(x, y) == CST_WATER) { - int navigable = MP_INFO(x, y).flags & FLAG_IS_RIVER; - set_mappoint(x, y, CST_WATER); - MP_INFO(x, y).flags |= navigable; - MP_INFO(x, y).flags |= FLAG_HAS_UNDERGROUND_WATER; - } - /* set undergroung water according to first random land setup */ - if (MP_TYPE(x, y) == CST_DESERT) { - MP_INFO(x, y).flags &= (0xffffffff - FLAG_HAS_UNDERGROUND_WATER); +void setup_land() +{ + std::cout << "setting up ecology "; + std::cout.flush(); + const int len = world.len(); + const int area = len * len; + std::deque <int> line; + Array2D <int> dist(len,len); + Array2D <int> water(len,len); + int arid = global_aridity; + + line.clear(); + std::cout << "."; + std::cout.flush(); + for (int index = 0; index < area; index++) + { + int xx = index % len; + int yy = index / len; + if(!world.is_visible(xx,yy)) + { continue;} + if(world(xx,yy)->is_water()) + { + *dist(xx,yy) = 0; + *water(xx,yy) = world(xx,yy)->ground.water_alt; + line.push_back(xx + yy * len); + } + else + { + *dist(xx,yy) = 50; + *water(xx,yy) = 3*world(xx,yy)->ground.altitude/4; + } + } + //std::cout << "detected " << line.size() << " river tiles" << std::endl; + std::cout << "."; + std::cout.flush(); + while (line.size()) + { + int index = line.front(); + line.pop_front(); + int xx = index % len; + int yy = index / len; + int next_dist = *dist(xx,yy) + 1; + int water_alt = *water(xx,yy); + for (int i=0; i<4 ; i++) + { + int xt = xx + dx[i]; + int yt = yy + dy[i]; + if(!world.is_visible(xt,yt)) + { continue;} + int old_eco = (*dist(xt,yt) * *dist(xt,yt)/5 + 1) + arid + + (world(xt, yt)->ground.altitude - *water(xt,yt)) * 50 / alt_step; + int next_eco = (next_dist * next_dist/5 + 1) + arid + + (world(xt, yt)->ground.altitude - water_alt) * 50 / alt_step; + if (world.is_visible(xt,yt) && next_eco < old_eco ) + { + *dist(xt,yt) = next_dist; + *water(xt,yt) = water_alt; + line.push_back(xt + yt * len); } } + } - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) - if (MP_TYPE(x, y) == CST_WATER) - MP_INFO(x, y).flags |= FLAG_HAS_UNDERGROUND_WATER; + //line.clear(); + std::cout << "."; + std::cout.flush(); + for (int index = 0; index < area; index++) + { + int xx = index % len; + int yy = index / len; + int d2w_min = 2 * area; + int r; + int alt0 = 0; + + /* test against IS_RIVER to prevent terrible recursion */ + if ( (world(xx, yy)->flags & FLAG_IS_RIVER) || !world(xx, yy)->is_bare()) + continue; + r = *dist(xx,yy); + d2w_min = r * r; + alt0 = *water(xx,yy); + + /* near river lower aridity */ + if (arid > 0) + { + if (d2w_min < 5) + { arid = global_aridity / 3;} + else if (d2w_min < 17) + { arid = (global_aridity * 2) / 3;} + } + /* Altitude has same effect as distance */ + r = rand()%(d2w_min/5 + 1) + arid + + (world(xx, yy)->ground.altitude - alt0) * 50 / alt_step; + do_rand_ecology(xx,yy,r); - connect_rivers(); + } + std::cout << " done" << std::endl; + /*smooth all edges in fresh map*/ + //std::cout << "smoothing graphics edges ..."; + //std::cout.flush(); + connect_transport(1, 1, world.len() - 2, world.len() - 2); + desert_water_frontiers(0, 0, world.len(), world.len()); + //std::cout << " done" << std::endl; } /* ---------------------------------------------------------------------- * * Private Functions * ---------------------------------------------------------------------- */ + +void create_new_city(int *originx, int *originy, city_settings *city, int old_setup_ground, int climate) +{ + srand(world.seed()); + if (city == NULL) //newline in case of reading savegame + { std::cout << std::endl;} + std::cout << "world id: " << world.seed() << std::endl; + + if (city != NULL) { //Only if we are not reconstructing from seed + clear_game(); + world.without_trees=city->without_trees; + } + + + coal_reserve_setup(); + + global_mountainity= 100 + rand () % 300; // roughly water slope = 25m / 1km (=from N to S) + //global_mountainity = 200; // nearly useless to have a random one (only impacts do_rand_ecology through world(x, y)->ground.altitude) + + switch (climate) { + case 0: + //old style map, with Y river: lets be very random on climate + global_aridity = rand() % 450 - 150; + break; + case 1: + // asked for desert + global_aridity = rand()%200 + 200; + break; + case 2: + // temperate + global_aridity = rand()%200; + break; + case 3: + //swamp + global_aridity = rand()%200 - 200; + global_mountainity = global_mountainity / 5; // swamps are flat lands + break; + + } + + if (old_setup_ground) + { + setup_river(); + setup_ground(); + } + else + { new_setup_river_ground();} + + setup_land(); + ore_reserve_setup(); + init_pbars(); + + if (city != NULL) { + if (city->with_village) random_start(originx, originy); + else *originx = *originy = world.len() / 2; + } + + update_pbar (PPOP, housed_population + people_pool, 1); + connect_transport(1, 1, world.len() - 2, world.len() - 2); + desert_water_frontiers(0, 0, world.len(), world.len()); +} static void initialize_tax_rates(void) { income_tax_rate = INCOME_TAX_RATE; @@ -275,30 +357,24 @@ dole_rate = DOLE_RATE; transport_cost_rate = TRANSPORT_COST_RATE; import_cost_rate = IM_PORT_COST_RATE; -} - -static void init_mappoint_array(void) -{ - int x; - for (x = 0; x < WORLD_SIDE_LEN; x++) { - mappoint_array_x[x] = x; - mappoint_array_y[x] = x; - } + // AL1 : export_tax_rate; is not used in 2.X always equal to zero ? FIXME ? } static void coal_reserve_setup(void) { int i, j, x, y, xx, yy; - for (i = 0; i < NUMOF_COAL_RESERVES / 5; i++) { - x = (rand() % (WORLD_SIDE_LEN - 12)) + 6; - y = (rand() % (WORLD_SIDE_LEN - 10)) + 6; + const int len = world.len(); + for (i = 0; i < NUMOF_COAL_RESERVES; i++) + { + x = (rand() % (len - 12)) + 6; + y = (rand() % (len - 10)) + 6; do { xx = (rand() % 3) - 1; yy = (rand() % 3) - 1; } while (xx == 0 && yy == 0); for (j = 0; j < 5; j++) { - MP_INFO(x, y).coal_reserve += rand() % COAL_RESERVE_SIZE; + world(x, y)->coal_reserve += rand() % COAL_RESERVE_SIZE; x += xx; y += yy; } @@ -307,31 +383,87 @@ static void ore_reserve_setup(void) { - int x, y; - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) - MP_INFO(x, y).ore_reserve = ORE_RESERVE; + const int area = world.len() * world.len(); + for (int index=0; index < area; index++ ) + { world(index)->ore_reserve = ORE_RESERVE;} } static void new_setup_river_ground(void) { - const int NLOOP = 7; - const int SZ=128; // must be = 2^NLOOP - const int SHIFT = (SZ - WORLD_SIDE_LEN) / 2; // center the visible map in the big one + /* Principle of land generation : + * we start with large blocks of land SZ x SZ, and take random height for each + * at each iteration we divide the block size by 2, and Altitude += rand() * fract^N_iter + * when fract > 1 the additional height is getting smaller at each iteration + * this prevent too many pics and holes + * then we smooth the land, in order to have several local maxima and minima, but not hudreds + * (else we go crazy with river path) + * + * Additional refinement: we rotate/mirror the map, in order to have the 2 lowest borders in front of us + * and the "mountains" far away (just in case we go to 3d view later :-) ) + */ + /* Square Diamond Algorithm + * cman79 May 2013 + * we start from SZ x SZ (SZ=s^n+1) + * 0.) put 4 random heights in the corner + * 1.) put average height + random offset at central tile (square step) + * 2.) put average height + rand offset at the centers of the edges + * repeat 1.) and 2.) for every small (half size) square + * The heigt of every tile is only set ONCE + * + * The alorith can be guided to follow any shape, + * in particular to join at the edges smoothly to another map + * + */ + const int len = world.len(); + const int area = len * len; + const int mask_size = 7; // useless to be larger than 3*sigma && Must be < SHIFT + int ii = 2; + int sz = 4; + while (sz <= len + mask_size) + { + sz *= 2; + ii++; + } + const int NLOOP = ii; + //const int SZ = sz; // must be = 2^NLOOP + //std::cout << "temporary map with SZ = " << SZ << std::endl; + const int SHIFT = (sz - world.len()) / 2; // center the visible map in the big one const float sigma = 3.5; // gaussian smoothing const float ods2 = 1. / (2. * sigma * sigma); - const int mask_size = 11; // useless to be larger than 3*sigma && Must be < SHIFT - const float fract = 0.9; + + const float fract = 0.7; // will be up to fract ^ NLOOP : be careful to stay near 1.0 + // if fract > 1.0, then small scale variations are getting bigger (recent mountain) + // if fract < 1.0 then small scales varaitions are getting smaller (old mountain) + // this is smoothed by the gaussian filter + + const int Keco = 30; // order of magnitude of each iteration is Keco * mountainity. + /* good values: + * sigma = 3.5 // sigma =2.5 => lots of local minima = small lakes ; + * maybe will be allowed later, when the problem of finding path to the sea and doing erosion has been solved + * + * fract = 0.9 && Keco = 20 is fine; + * fract = 0.8 && Keco = 30 // drawback big structure from first iteration can be visible + * fract and Keco have impact altitude => also on ecology where the table entry denpends on value of altitude + * + * FIXME : mountainity is not needed and causes too much variability + * FIXME : fract = 1.2 && Keco = 20 + * with high values of fract Keco and mountanity, we have integer overflow or sth alike in ecotable, + * so we loop in the table, doing crazy stripes on the land, or puttind desert in low altitude and swamp on top of mountain :-) + */ float mat[2 * mask_size + 1][2 * mask_size + 1]; - float g[SZ][SZ]; - float tmp[SZ][SZ]; + Array2D <int> g1(sz,sz); + Array2D <int> g2(sz,sz); + Array2D <float> f1(sz+1,sz+1); + Array2D <float> f2(sz,sz); float min = 10000000000000000000.; - float norm; - int i,j,k,l,m,n,size,h; - // build gaussian mask + float norm;//,norm1d; + int i,j,k,l,m,n,size; + + // build gaussian mask for smoothing norm = 0; + //norm1d=0; for ( i = 0; i < 2 * mask_size + 1; i++) { for ( j = 0; j < 2 * mask_size + 1; j++) { float r2 = (i - mask_size) * (i - mask_size) + (j - mask_size) * (j - mask_size); @@ -340,263 +472,580 @@ } } norm = 1. / norm; - // intialisation -#ifdef DEBUG - fprintf(stderr," mountainity = %i \n", global_mountainity); +#ifdef DEBUG_EXPERIMENTAL + // Fix random seed for easier debug + srand(1234); #endif - h = ( rand() % 10 + rand() % 10 ) * global_mountainity / 20; - for (i = 0; i < SZ; i++) { - for (j = 0; j < SZ; j++) { - g[i][j]=h; - tmp[i][j]=0; - } - } + //inialization for classic Block algorithm + //int h = ( rand() % Keco + rand() % Keco ) * global_mountainity ; + //f1.initialize(h); + + //initialization for Diamond Square Algorithm + f1.initialize(0); + *f1(0,0) = (float)(rand() % Keco + rand() % Keco ) * global_mountainity ; + *f1(0,sz) = (float)(rand() % Keco + rand() % Keco ) * global_mountainity ; + *f1(sz,0) = (float)(rand() % Keco + rand() % Keco ) * global_mountainity ; + *f1(sz,sz) = (float)(rand() % Keco + rand() % Keco ) * global_mountainity ; + // 1/5.3 gives roughly half of the times a little sea + int sea_level = (int)((*f1(0,0)+*f1(0,sz)+*f1(sz,0)+*f1(sz,sz))/5.3); + //square diamond Algorithm for lanscape generation /* fractal iteration for height */ n = 1; - for (k = 1; k <= NLOOP; k++) { - n *= 2; - size = SZ / n; + for (k = 1; k <= NLOOP; k++) + { + //n *= 2;//here in case of Block Algorithm + size = sz / n; // n x n block of size - for ( l = 0; l < n; l++ ) { - for ( m = 0; m < n; m++ ) { + //std::cout << "diamonds" << std::endl; + //Diamond Step + for ( l = 0; l < n; l++ ) + { + for ( m = 0; m < n; m++ ) + { +/* + //old block algorithm // one block - h = int ( double((rand() % 10 + rand() % 10) * global_mountainity) * pow(fract,k)); + h = int ( double((rand() % Keco + rand() % Keco - Keco) * global_mountainity) * pow(fract,k) ); for (i = 0 ; i < size; i++) for (j = 0 ; j < size; j++) - g[l * size + i][ m * size + j ] += h; + *f1(l * size + i, m * size + j ) += h; +*/ + int startx = l * size; + int starty = m * size; + int midx = startx + size/2; + int midy = starty + size/2; + int endx = startx + size; + int endy = starty + size; + //std::cout << "x " << startx <<"--" << midx << "--" << endx << std::endl; + //std::cout << "y " << starty <<"--" << midy << "--" << endy << std::endl; + if (!*f1(midx,midy)) + { + float left_top = *f1(startx, starty); + float left_down = *f1(startx, endy); + float right_top = *f1(endx, starty); + float right_down = *f1(endx, endy); + float center = (left_top + left_down + right_top + right_down)/4 + + float((rand() % Keco - Keco/2 ) * global_mountainity) * pow(fract,k); + *f1(midx, midy) = center; + } + } + } + //Square Step with periodic boundaries. + for ( l = 0; l < n; l++ ) + { + for ( m = 0; m < n; m++ ) + { + + int startx = l * size; + int starty = m * size; + int midx = startx + size/2; + int midy = starty + size/2; + int endx = startx + size; + int endy = starty + size; + + float left_top = *f1(startx, starty); + float left_down = *f1(startx, endy); + float right_top = *f1(endx, starty); + float right_down = *f1(endx, endy); + float center = *f1(midx, midy); + //up center + if ((m==0) && !*f1(midx, starty)) + { + float up_center = (left_top + right_top + center + *f1(midx, sz-size/2))/4; + *f1(midx, starty) = + up_center + float((rand()%Keco - Keco/2 ) * global_mountainity) * pow(fract,k); + } + //right edge + if(!*f1(endx, midy)) + { + float right_center; + if ( l < k-1) //inside map + { //to the right //middle + right_center = (right_top + right_down + center + *f1(midx + size, midy))/4; + } + else //at right edge + { + right_center = (right_top + right_down + center + *f1(size/2, midy))/4; + } + *f1(endx, midy) = + right_center + float((rand()%Keco - Keco/2) * global_mountainity) * pow(fract,k); + } + //down edge + if (!*f1(midx, endy)) + { + float down_center; + if (m < k-1) //inside map + { //middle // downwards + down_center = (left_down + right_down + center + *f1(midx, midy + size ))/4; + } + else //at lower edge + { + down_center = (left_down + right_down + center + *f1(midx, size/2 ))/4; + } + *f1(midx, endy) = + down_center + float((rand()%Keco - Keco/2 ) * global_mountainity) * pow(fract,k); + } + //left edge + if ((l==0) && !*f1(startx, midy)) + { + float left_center = (left_top + left_down + center +*f1(sz - size/2, midy) )/4; + *f1(startx, midy) = + left_center + float((rand()%Keco - Keco/2) * global_mountainity) * pow(fract,k); + //std::cout << "left " << *f1(startx, midy) << std::endl; + } } } + n *= 2; //here in case of Square-Diamond Alogorithm } //smooth is iterated to propagate a little the lowering of borders - for (n = 0; n < 2 ; n++) { + for (n = 0; n < 2; n++) + { // apply the mask - for (i = mask_size; i < SZ - mask_size; i++) - for (j = mask_size; j < SZ - mask_size; j++) { - tmp[i][j] = 0; + for (i = mask_size; i < sz - mask_size; i++) + for (j = mask_size; j < sz - mask_size; j++) { for ( k = -mask_size; k <= mask_size; k++ ) for ( l = -mask_size; l <= mask_size; l++ ) - tmp[i][j] += g[i + k][j - l] * mat[mask_size + k][mask_size + l]; - } - - for (i = mask_size; i< SZ - mask_size; i++) - for (j = mask_size; j< SZ - mask_size; j++) - g[i][j] = tmp[i][j] * norm; - - if (n == 0) { - // find the lowest borders - // switch the map to have lowest borders in SE an SW in ISO view - float Nmin = 0; - float Smin = 0; - float Emin = 0; - float Wmin = 0; - for ( i = 0; i < WORLD_SIDE_LEN ; i++) { - Nmin += g[SHIFT + i][SHIFT]; - Smin += g[SHIFT + i][SHIFT + WORLD_SIDE_LEN]; - Wmin += g[SHIFT][SHIFT + i]; - Emin += g[SHIFT + WORLD_SIDE_LEN][SHIFT + i]; - } - if (Nmin < Smin) { - for ( i = 0; i < SZ; i++) - for ( j = 0; j < SZ; j++) - tmp[i][j] = g[i][SZ - j -1]; - - for ( i = 0; i < SZ; i++) - for ( j = 0; j < SZ; j++) - g[i][j] = tmp[i][j]; - } - - if (Wmin < Emin) { - for ( i = 0; i < SZ; i++) - for ( j = 0; j < SZ; j++) - tmp[i][j] = g[SZ - i -1][j]; - - for ( i = 0; i < SZ; i++) - for ( j = 0; j < SZ; j++) - g[i][j] = tmp[i][j]; + *f2(i,j) += *f1(i + k,j + l) * mat[mask_size + k][mask_size + l]; } + for (i = mask_size; i< sz - mask_size; i++) + for (j = mask_size; j< sz - mask_size; j++) + *f1(i,j) = *f2(i,j) * norm; + + } + { + // find the lowest borders + // switch the map to have lowest borders in SE an SW in ISO view + float Nmin = 0; + float Smin = 0; + float Emin = 0; + float Wmin = 0; + for ( i = 0; i < len ; i++) + { + Nmin += *f1(SHIFT + i,SHIFT); + Smin += *f1(SHIFT + i,SHIFT + world.len()); + Wmin += *f1(SHIFT,SHIFT + i); + Emin += *f1(SHIFT + world.len(),SHIFT + i); + } + if (Nmin < Smin) + { + for ( i = 0; i < sz; i++) + for ( j = 0; j < sz; j++) + *f2(i,j) = *f1(i,sz - j -1); + + for ( i = 0; i < sz; i++) + for ( j = 0; j < sz; j++) + *f1(i,j) = *f2(i,j); } - // put the south and east border of the "big" map at the minimum visible height - for ( i = 0; i < WORLD_SIDE_LEN ; i++) - for ( j = 0; j < WORLD_SIDE_LEN ; j++) - if (g[SHIFT + i][SHIFT + j] < min) - min = g[SHIFT + i][SHIFT + j]; - - for ( i = 0; i < SZ; i++) - for (j = 0; j < (SZ - SHIFT - WORLD_SIDE_LEN); j++) { - g[i][SZ - 1 - j] = min; // south - g[SZ - 1 - j][i] = min; // east - } + if (Wmin < Emin) + { + for ( i = 0; i < sz; i++) + for ( j = 0; j < sz; j++) + *f2(i,j) = *f1(sz -i -1,j); + + for ( i = 0; i < sz; i++) + for ( j = 0; j < sz; j++) + *f1(i,j) = *f2(i,j); + } } + // put the south and east border of the "big" map at the minimum visible height + for ( i = 0; i < len ; i++) + for ( j = 0; j < len ; j++) + if ( *f1(SHIFT + i, SHIFT + j) < min) + min = *f1(SHIFT + i, SHIFT + j); + + + for ( i = 0; i < sz; i++) + for (j = 0; j < (sz - SHIFT - len); j++) + { + *f1(i, sz -1 -j) = min; + *f1(sz -1 -j, i ) = min; + } + + alt_min = int (min); + sea_level -= alt_min; alt_max = 0; // pick our map in the fractal one - for ( i = 0; i < WORLD_SIDE_LEN; i++) - for ( j = 0; j < WORLD_SIDE_LEN; j++) { - ALT(i,j) = int (g[SHIFT + i][SHIFT + j]) - alt_min + 1; - if ( ALT(i,j) > alt_max) - alt_max = ALT(i,j); - } + for (int index=0; index < area ; index++ ) + { + i = index % len; + j = index / len; + world(i, j)->ground.altitude += int (*f1(SHIFT + i, SHIFT + j)) - alt_min + 1;// + (len-j*j/len)*global_mountainity/2; + if ( world(i, j)->ground.altitude > alt_max) + alt_max = world(i, j)->ground.altitude; + } // take visible value for maximum color dynamic - alt_min = 0; // visible alt_min is 1, we will use 0 for gray border + alt_min = 0; // visible alt_min is 0, we will use -1 for gray border alt_step = (alt_max - alt_min)/10; - #ifdef DEBUG fprintf(stderr," alt min = %i; max = %i\n", alt_min, alt_max); #endif new_setup_river(); + + if (sea_level > alt_max/3) + { sea_level = alt_max/3;} + //now flood everything below sea_level + for (int index=0; index < area ; index++ ) + { + i = index % len; + j = index / len; + if ( world.is_visible(i,j) && world(i, j)->ground.altitude < sea_level) + { + world(i, j)->ground.altitude = sea_level; + set_river_tile(i,j); + } + } + //put water at invisible borders in the sea + for (int index=1; index < area ; index++ ) + //always skip (0,0) ensures brown background + { + i = index % len; + j = index / len; + if (((i == 0) && world(1,j)->is_river()) + || (i == len-1 && world(len-2,j)->is_river()) + || (j == 0 && world(1,j)->is_river()) + || (j == len-1 && world(i,len-2)->is_river())) + { set_river_tile(i,j);} + } + } -void new_setup_river(void) -{ +static void new_setup_river(void) +{ + // brute search of local minimum + const int len = world.len(); + const int area = len * len; + std::vector <int> lkidx; + + int i, j, k, l, m; + // Put the gray border (not visible) at alt_min - 1, for easier rivers handling. + for ( i = 0; i < len; i++) + { + world(i, 0)->ground.altitude = alt_min ; + world(i, world.len() - 1)->ground.altitude = alt_min ; + world(0, i)->ground.altitude = alt_min ; + world(world.len() - 1, i)->ground.altitude = alt_min ; + } - int colx[WORLD_SIDE_LEN * WORLD_SIDE_LEN], coly[WORLD_SIDE_LEN * WORLD_SIDE_LEN]; - int topx[WORLD_SIDE_LEN * WORLD_SIDE_LEN], topy[WORLD_SIDE_LEN * WORLD_SIDE_LEN]; - int lakx[WORLD_SIDE_LEN * WORLD_SIDE_LEN], laky[WORLD_SIDE_LEN * WORLD_SIDE_LEN]; + l = 0; + for ( int index=0; index < area; index++) + { + int x = index % len; + int y = index / len; + if (world.is_visible(x,y) && world.minimum(x,y)) + { + l++; + lkidx.push_back(x + y * len); + } + } - int i, j, c, t, l; + // fill lake until it overfills and creates a river + m = ((100 - global_aridity/4)*l) / len; // ugly hardcoded values correpsonding to "climate" switch in create_new_city + if (m==0) + m=1; + + if (m>l) + m = l; + + if (m>area/400) + m = area/400; + + Permutator * permutator; + permutator = new Permutator(l,m); + for (i = 0; i<rand()%10; i++) + { + permutator->shuffle(); + } + /* + //In case we want extra random rivers instead of connected lakes + for(i=0;i<m;++i) + { + lkidx[i]=rand()%len + rand()%len * len; + } + */ + std::cout << "pooring " << m << " lakes into " << l << " random local minima ..."; + std::cout.flush(); + //sort_by_altitude(m, &lakx, &laky); + for (i = 0; i < m; i++) + { + j = permutator->getIndex(i); + if (world.minimum(lkidx[j] % len, lkidx[j] / len )) + { + k = overfill_lake(lkidx[j] % len, lkidx[j] / len ); + } + else + { + k=quick_river(lkidx[j] % len, lkidx[j] / len); + set_river_tile(lkidx[j] % len, lkidx[j] / len); + } + if (k != -1) + { + int x = k % len; + int y = k / len; + if (world(x,y)->is_visible() && world(x,y)->is_river()) + { + lkidx[j] = x + y * len; + i--; + //std::cout << "attaching lake x, y: " << x << ", " << y << std::endl; + } + } + } + std::cout << " done" << std::endl; + delete permutator; +} +static int overfill_lake(int start_x, int start_y)//, Shoreline *shore, int lake_id) +{ + // Starting point is a local minimum - // Put lakes/seas in the lowest part of the map - for ( i = 0; i < WORLD_SIDE_LEN; i++) - for ( j = 0; j < WORLD_SIDE_LEN; j++) - if (ALT(i,j) < 2 * alt_step) - set_river_tile(i,j); + if ( !world.is_visible(start_x, start_y) ) + { return -1;} + const int len = world.len(); + int index, level; + int flooding_level; + std::vector<int> river_dests; + std::vector<int> river_starts; + Array2D <int> i1(len,len); + std::deque<int> line; + std::vector<int> lake; + river_dests.clear(); + river_starts.clear(); + line.clear(); + lake.clear(); + //make sure a shallow min is an actual min + level = --world(start_x,start_y)->ground.altitude; + //int level0 = level; + *i1(start_x,start_y) = 1; + line.push_back(start_x + start_y * len); + lake.push_back(start_x + start_y * len); + int new_level = alt_max+1; + int lowest_exit_level = alt_max+1; + //int max_back_flooding = 10; + //int back_flooding = max_back_flooding; + //std::cout << std::endl; + //std::cout << "new lake x, y = " << start_x << ", "<< start_y << " alt : " << level << std::endl; + while (line.size()) + { + bool reset_lake = false; + index = line.front(); + line.pop_front(); + int xx = index % len; + int yy = index / len; + //assert(*i1(xx,yy) == 1); + level = world(xx,yy)->ground.altitude; +/* /Not needed if altitude == flooding level + if (world(xx,yy)->ground.water_alt > level) + { + level = world(xx,yy)->ground.water_alt; + } +*/ + //dont grow lakes in diagonal steps, + //it might result in disconnected rivers + for (int i=0; i<8; i++) + { + int x = xx + dx[i]; + int y = yy + dy[i]; + if (!world.is_visible(x,y) || *i1(x,y)==1) + { + continue; + } + new_level = world(x,y)->ground.altitude; +/* //Not needed if altitude == flooding level + if (world(x,y)->ground.water_alt > new_level) + { + new_level = world(x,y)->ground.water_alt; + } +*/ + if ((new_level >= level && new_level < lowest_exit_level)) + { + //rain drop test + int min_alt = new_level; + int loc_x = x; + int loc_y = y; + int s = 0; + bool done = false; + + // Let the drop run downhill a bit + while (world.is_visible(loc_x,loc_y) && (s < 16) && !done) + { + s++; + int x_min = loc_x; + int y_min = loc_y; + for (int ii=0; ii<8; ii++) + { + int tx = x_min + dxo[ii]; + int ty = y_min + dyo[ii]; + if (!world.is_inside(tx,ty)) + { continue;} + //Allow a little walking along edge of a plateau + if(min_alt >= world(tx, ty)->ground.altitude) + { + //dont go back into lake at first step i.e test if there is any second exit + if ( s == 1 && *i1(tx,ty)) + { continue;} + min_alt = world(tx, ty)->ground.altitude; + x_min = tx; + y_min = ty; + } + } + done = ((s>1 && (loc_x == x_min) && (loc_y == y_min)) || *i1(loc_x,loc_y)); + loc_x = x_min; + loc_y = y_min; +/* + if (done && *i1(loc_x,loc_y) && (s > 5)) + { + std::cout << "rain drop reached lake (x,y): steps:(x,y)\t(" << x << "," << y << "): "<< s-1; + std::cout << ":(" << loc_x << "," << loc_y << "): "<< std::endl; + } + if (done && !*i1(loc_x,loc_y)) + { + std::cout << "rain drop runs away (x,y): steps:(x,y)\t(" << x << "," << y << "): "<< s; + std::cout << ":(" << loc_x << "," << loc_y << "): "<< std::endl; + } - // Put the gray border (not visible) at alt_min, for easier rivers handling. - for ( i = 0; i < WORLD_SIDE_LEN; i++) { - ALT(i, 0) = alt_min; - ALT(i, WORLD_SIDE_LEN - 1) = alt_min; - ALT(0, i) = alt_min; - ALT(WORLD_SIDE_LEN - 1, i) = alt_min; - } + if (!world.is_visible(loc_x,loc_y)) + { + std::cout << "rain drop reached edge (x,y): steps:(x,y)\t(" << x << "," << y << "): "<< s; + std::cout << ":(" << loc_x << "," << loc_y << "): "<< std::endl; + } +*/ + } - // Hessian = second order derivatives in visible map - // => know curvature, local max, min, saddle points and find col (mountain pass) - c = 0; - l = 0; - t = 0; - for ( i = 1; i < WORLD_SIDE_LEN - 1 ; i++) - for ( j = 1; j < WORLD_SIDE_LEN - 1 ; j++) { - float e1, e2; - float dx2, dy2, dxy, dyx, delta; - - dx2 = float (ALT(i + 1,j) + ALT(i - 1,j) - 2 * ALT(i,j)); - dy2 = float (ALT(i,j + 1) + ALT(i,j - 1) - 2 * ALT(i,j)); - dxy = float ( (ALT(i+1 , j+1) + ALT(i-1, j-1) - ALT(i+1,j-1) - ALT(i-1,j+1)) * 0.25); - dyx = dxy; - // e1 e2 are the eigenvalues of Hessian, ie solutions of: - // X^2 - (dx2 + dy2).X + dx2.dy2 - dxy.dyx = 0 (wrt X) - delta = (dx2 + dy2)*(dx2 + dy2) - 4 * (dx2 * dy2 - dxy * dyx); - e1 = (dx2 + dy2) + sqrt(delta); - e2 = (dx2 + dy2) - sqrt(delta); - - if (e1 * e2 < 0) { - // saddle point = mountain pass _IF_ tangent plane is _nearly_ horizontal ! - - /* Tangent plane has equation alpha.(x-x0) + beta.(y-y0) - z = 0 - * Least square method to find alpha and beta considering 8 neighbours - * (just partial derivatives along x and y are not enought) - * After some calculus, alpha = (Sax.Syy - Say.Sxy)/(2.*(Sxx.Syy-Sxy*Syx)) - * beta is symetrical wrt x <-> y - */ - // precomputed terms for least square, on 8 neighbours - // (for i = 0; i < 8; i++) Sxy += (xi -x0) * (yi - y0); - // => Sxy = Syx = 0 :-) - // => simple result for alpha and beta. - - const float Sxx = 6.; // Syy = Sxx - float alpha, beta; - float Sax = 0.; - float Say = 0.; - for (int n = 0; n < 8; n++) { - Sax += float ((ALT(i + di[n], j + dj[n]) - ALT(i,j)) * di[n]); - Say += float ((ALT(i + di[n], j + dj[n]) - ALT(i,j)) * dj[n]); - } - alpha = Sax / Sxx; - beta = Say / Sxx; // because Syy = Sxx - - // Normal vector is (alpha, beta, -1) - // so plane is nearly horizontal if alpha^2 + beta^2 is "small" - if ( (alpha * alpha + beta * beta) < float(global_mountainity / 2) ) { - // mountain pass = col - colx[c] = i; - coly[c] = j; - c++; -//#define DEBUG_LAND -#ifdef DEBUG_LAND - fprintf(stderr," x %i, y %i, norm %f\n", i, j, alpha * alpha + beta * beta); - if (GROUP_IS_BARE(MP_GROUP(i,j))) - set_mappoint(i,j, CST_ROAD_LR); - //XXX AL1: why is there a segfault if we use CST_POWERL_H_D ? -#endif + // Now test if we reached the same or a different lake + if (!(*i1(loc_x,loc_y))) // overspill detected + { + reset_lake = true; + lowest_exit_level = new_level; } - } else if (e1 * e2 != 0) { - if ( e1 < 0) { - // local top - if ( ALT(i + 1,j) < ALT(i,j) && ALT(i - 1,j) < ALT(i,j) && - ALT(i,j + 1) < ALT(i,j) && ALT(i,j - 1) < ALT(i,j) ) { - - topx[t] = i; - topy[t] = j; - t++; -#ifdef DEBUG_LAND - if (GROUP_IS_BARE(MP_GROUP(i,j))) - set_mappoint(i,j, CST_FIRE_1); -#endif + else // no overspill add tile to lake + { + *i1(x,y) = 1; + line.push_back(x + y * len); + lake.push_back(x + y * len); + } + } + else if (new_level == lowest_exit_level) + { + river_starts.push_back(x + y * len); + if (i>3 && !*i1(xx,y) && !*i1(x,yy)) //we went diagonal + { + int xt = x; + int yt = y; + if (world(xx,y)->ground.altitude > world(x,yy)->ground.altitude) + { + yt = yy; } - } else { - // local min = potential lake => has water. - if ( ALT(i + 1,j) > ALT(i,j) && ALT(i - 1,j) > ALT(i,j) && - ALT(i,j + 1) > ALT(i,j) && ALT(i,j - 1) > ALT(i,j) ) { - - lakx[l] = i; - laky[l] = j; - l++; - if (GROUP_IS_BARE(MP_GROUP(i,j))) { - set_mappoint(i,j, CST_PARKLAND_LAKE); - MP_INFO(i,j).flags |= (FLAG_HAS_UNDERGROUND_WATER + FLAG_IS_RIVER); - } + else + { + xt = xx; } + world(xt,yt)->ground.altitude = world(x,y)->ground.altitude; + set_river_tile(xt,yt); } - } else { - // parabolic point -#ifdef DEBUG_LAND - if (GROUP_IS_BARE(MP_GROUP(i,j))) - set_mappoint(i,j, CST_RAIL_LR); -#endif } - - + } //end for + if (reset_lake) + { + //std::cout << "new water level: " << lowest_exit_level << std::endl; + line.clear(); + i1.initialize(0); + river_starts.clear(); + for (size_t i = 0; i < lake.size() ;i++) + { + int idx = lake[i]; + if (idx == -1) + { continue;} + int tx = idx % len; + int ty = idx / len; + if (world(tx,ty)->ground.altitude < lowest_exit_level) + { + line.push_back(tx + ty * len); + *i1(tx,ty) = 1; + } + else + { lake[i] = -1;} + } } + } //endwhile + if (lowest_exit_level == alt_max+1) + { + std::cout << std::endl << "cancelled lake x, y = " << start_x << ", "<< start_y << " alt : " << level << std::endl; + return -1; + } + flooding_level = lowest_exit_level; + + for (size_t it=0; it<lake.size(); it++) + { + index = lake[it]; + if(index==-1) + { continue;} + int x = index % len; + int y = index / len; + world(x,y)->ground.altitude = flooding_level; + set_river_tile(x,y); + //mark as lake + world(x,y)->flags |= FLAG_IS_LAKE; + } //end for lake.size() + //last_lake = start_x + start_y * len; + for (size_t i=0; i<river_starts.size(); i++) + { + index = river_starts[i]; + int x = index % len; + int y = index / len; + if (!world(x,y)->is_river()) + { + river_dests.push_back(quick_river(x,y)); + set_river_tile(x,y); + } + //else + //std::cout << "useless river start encountered" << std::endl; + } -#ifdef DEBUG_LAND - fprintf(stderr," pass c = %i, cx = %i, cy = %i\n", c, colx[c - 1], coly[c -1]); - fprintf(stderr," top t = %i, tx = %i, ty = %i\n", t, topx[t-1], topy[t-1]); - fprintf(stderr," lak l = %i, lx = %i, ly = %i\n", l, lakx[l-1], laky[l-1]); -#endif - - // put one river from each top. - sort_by_altitude(t, topx, topy); - for (i = 0; i < t; i++) - new_setup_one_river(i, c, colx, coly, t, topx, topy, l, lakx, laky); + if (river_dests.size()) + { + lowest_exit_level = alt_max+1; + size_t i_min = 0; + for(size_t i = 0; i < river_dests.size(); i++) + { + if (river_dests[i] != -1) + { + int index = river_dests[i]; + int x = index % len; + int y = index / len; + + if(lowest_exit_level > world(x,y)->ground.altitude) + //lowest naked river end + { + lowest_exit_level = world(x,y)->ground.altitude; + i_min = i; + } + } + } + return river_dests[i_min]; + } + return -1; } -static void set_river_tile( int i, int j) +void set_river_tile( int x, int y) { - MP_TYPE(i, j) = CST_WATER; - MP_GROUP(i, j) = GROUP_WATER; - MP_INFO(i, j).flags |= FLAG_IS_RIVER; + world(x, y)->type = CST_WATER; + world(x, y)->group = GROUP_WATER; + world(x, y)->flags |= FLAG_IS_RIVER; + world(x, y)->flags |= FLAG_HAS_UNDERGROUND_WATER; + world(x, y)->ground.water_alt = world(x, y)->ground.altitude; } -static void sort_by_altitude(int n, int *tabx, int *taby) +/* +static void sort_by_altitude(int n, std::vector <int> *tabx, std::vector <int> *taby) { + // sort ascending int tmp_x, tmp_y; bool sorted = false; @@ -604,164 +1053,140 @@ for (int i = 0; i < n && !sorted ; i++) { sorted = true; for (int j=1; j < n - i; j++) - if (ALT(tabx[j],taby[j]) < ALT(tabx[j-1], taby[j-1])) { - tmp_x = tabx[j-1]; - tmp_y = taby[j-1]; - tabx[j-1] = tabx[j]; - taby[j-1] = taby[j]; - tabx[j] = tmp_x; - taby[j] = tmp_y; + if (world((*tabx)[j],(*taby)[j])->ground.altitude < world((*tabx)[j-1], (*taby)[j-1])->ground.altitude) { + tmp_x = (*tabx)[j-1]; + tmp_y = (*taby)[j-1]; + (*tabx)[j-1] = (*tabx)[j]; + (*taby)[j-1] = (*taby)[j]; + (*tabx)[j] = tmp_x; + (*taby)[j] = tmp_y; sorted = false; } - /*fprintf(stderr," sorted = %i, n - i -1 = %i, ALT() = %i\n", - * sorted, n - i -1, ALT(tabx[n-i-1], taby[n -i -1])); - */ } } - -static void new_setup_one_river(int num_river, int c, int *colx, int *coly, int t, int *topx, int *topy, int l, int *lakx, int *laky) +*/ +static int quick_river( int xx, int yy) { - int x, y, xx, yy, alt, alt_max; - - /* find a place in altitude near top */ - xx = topx[t - num_river] + (1 + rand() % 2) * di[rand() % 8]; - yy = topy[t - num_river] + (1 + rand() % 2) * dj[rand() % 8]; - if ( xx < 0 || xx >= WORLD_SIDE_LEN) - xx = topx[t - num_river]; + int x_now, y_now, x_new, y_new, new_alt; + // start a river from point (xx, yy) + int max_len = 2 * world.len(); + int river_len = 0; + x_now = xx; + y_now = yy; + x_new = xx; + y_new = yy; + new_alt = world(x_now,y_now)->ground.altitude; + //std::cout << "new river: " << x_now << ", " << y_now;// << " alt = " << new_alt; + do + { + x_now = x_new; + y_now = y_new; + ++river_len; + int j = 0; + for(int i=0; i < 8; i++) + { + int x = x_now + dx[i]; + int y = y_now + dy[i]; + if (world.is_inside(x,y) && world(x,y)->ground.altitude < new_alt && !world(x,y)->is_river()) + { + new_alt = world(x,y)->ground.altitude; + x_new = x; + y_new = y; + j = i; - if ( yy < 0 || yy >= WORLD_SIDE_LEN) - yy = topy[t - num_river]; - - set_river_tile(xx,yy); - alt_max = ALT(xx, yy); - - /* follow most important slope and go downward */ - do { - int m = 0; - x = xx; - y = yy; - alt = ALT(x,y); - for (int n = 0; n < 8; n++) { - if (ALT(x + di[n], y + dj[n]) < alt) { - xx = x + di[n]; - yy = y + dj[n]; - alt = ALT(xx, yy); - m = n; - } - } - set_river_tile(xx,yy); - if (m>3) { - // we did diagonal move, so we need to connect river - if (ALT(x + di[m], y) > ALT(x, y + dj[m])) - set_river_tile(x, y + dj[m]); - else - set_river_tile(x + di[m], y); + } } - } while ( (xx != x) || (yy != y) ); - // We are in a local minimum + if (j>3) //we moved in the diagonal + { + //std::cout << "."; + if (world(x_now + dx[j], y_now)->ground.altitude > world(x_now, y_now + dy[j])->ground.altitude) + set_river_tile(x_now, y_now + dy[j]); + else + set_river_tile(x_now + dx[j], y_now); - if ( x == 0 || x == WORLD_SIDE_LEN - 1 || y == 0 || y == WORLD_SIDE_LEN - 1) { - // borders of the map are strictly the lowest points - return; + } + //std::cout << "."; + set_river_tile(x_new, y_new); + //std::cout << "next water: "<< x_new << ", " << y_new << " alt = " << new_alt << std::endl; + } + while ((x_new != x_now || y_new != y_now) && river_len < max_len); + //std::cout << x_new << ", " << y_new << std::endl; + //look for minimum around end (maybe the second last tile) + for(int i=0; i < 8; i++) + { + int x = x_now + dx[i]; + int y = y_now + dy[i]; + if (world.is_visible(x,y) && world(x,y)->ground.altitude < new_alt) + { + new_alt = world(x,y)->ground.altitude; + x_new = x; + y_new = y; + } } - - // TODO connect lakes to outside of the map - // make a small lake - sort_by_altitude(c, colx, coly); - sort_by_altitude(l, lakx, laky); - + return world.is_visible(x_new,y_new)? x_new + y_new * world.len(): -1; } + static void setup_river(void) { + std::cout << "carving river ..."; + std::cout.flush(); + const int len = world.len(); int x, y, i, j; int alt = 1; //lowest altitude in the map = surface of the river at mouth. - x = (1 * WORLD_SIDE_LEN + rand() % WORLD_SIDE_LEN) / 3; - y = WORLD_SIDE_LEN - 1; - ground[x][y].water_alt = alt; // 1 unit = 1 cm , + x = (1 * len + rand() % len) / 3; + y = len - 1; + world(x, y)->ground.water_alt = alt; // 1 unit = 1 cm , //for rivers .water_alt = .altitude = surface of the water //for "earth tile" .water_alt = alt of underground water // .altitude = alt of the ground // so .water_alt <= .altitude /* Mouth of the river, 3 tiles wide, 6 + %12 long */ - i = (rand() % 12) + 6; + i = (rand() % (len/8)) + len/18; for (j = 0; j < i; j++) { x += (rand() % 3) - 1; - MP_TYPE(x, y) = CST_WATER; - MP_GROUP(x, y) = GROUP_WATER; - MP_INFO(x, y).flags |= FLAG_IS_RIVER; - ground[x][y].altitude=alt; - - MP_TYPE(x + 1, y) = CST_WATER; - MP_GROUP(x + 1, y) = GROUP_WATER; - MP_INFO(x + 1, y).flags |= FLAG_IS_RIVER; - ground[x + 1][y].altitude=alt; - - MP_TYPE(x - 1, y) = CST_WATER; - MP_GROUP(x - 1, y) = GROUP_WATER; - MP_INFO(x - 1, y).flags |= FLAG_IS_RIVER; - ground[x -1][y].altitude=alt; - + set_river_tile(x , y ); + set_river_tile(x + 1 , y ); + set_river_tile(x - 1 , y ); y--; - alt += 1; // wide river, so very small slope } - - MP_TYPE(x, y) = CST_WATER; - MP_GROUP(x, y) = GROUP_WATER; - MP_INFO(x, y).flags |= FLAG_IS_RIVER; - ground[x][y].altitude=alt; - - MP_TYPE(x + 1, y) = CST_WATER; - MP_GROUP(x + 1, y) = GROUP_WATER; - MP_INFO(x + 1, y).flags |= FLAG_IS_RIVER; - ground[x + 1][y].altitude=alt; - - MP_TYPE(x - 1, y) = CST_WATER; - MP_GROUP(x - 1, y) = GROUP_WATER; - MP_INFO(x - 1, y).flags |= FLAG_IS_RIVER; - ground[x -1][y].altitude=alt; - - alt += 2; - + set_river_tile(x , y ); + set_river_tile(x + 1, y ); + set_river_tile(x - 1 , y ); #ifdef DEBUG fprintf(stderr," x= %d, y=%d, altitude = %d, mountainity = %d\n", x, y, alt, global_mountainity); #endif setup_river2(x - 1, y, -1, alt, global_mountainity); /* left tributary */ setup_river2(x + 1, y, 1, alt, global_mountainity); /* right tributary */ + std::cout << " done" << std::endl; } static void setup_river2(int x, int y, int d, int alt, int mountain) { + const int len = world.len(); int i, j, r; - i = (rand() % 55) + 15; + i = (rand() % (len/2)) + len/6; for (j = 0; j < i; j++) { r = (rand() % 3) - 1 + (d * (rand() % 3)); if (r < -1) { - alt += rand() % (mountain / 10); + //alt += rand() % (mountain / 10); r = -1; } else if (r > 1) { - alt += rand() % (mountain / 10); + //alt += rand() % (mountain / 10); r = 1; } x += r; - if (!GROUP_IS_BARE(MP_GROUP(x + (d + d), y)) - || !GROUP_IS_BARE(MP_GROUP(x + (d + d + d), y))) + if ( (world.is_inside(x + 2*d,y) && !world(x + 2*d, y)->is_bare()) + || (world.is_inside(x + 3*d,y) && !world(x + 3*d, y)->is_bare()) ) return; - if (x > 5 && x < WORLD_SIDE_LEN - 5) { - MP_TYPE(x, y) = CST_WATER; - MP_GROUP(x, y) = GROUP_WATER; - MP_INFO(x, y).flags |= FLAG_IS_RIVER; - ground[x][y].altitude = alt; + if (x > 5 && x < world.len() - 5) + { + set_river_tile(x , y ); alt += rand() % (mountain / 10); - - MP_TYPE(x + d, y) = CST_WATER; - MP_GROUP(x + d, y) = GROUP_WATER; - MP_INFO(x + d, y).flags |= FLAG_IS_RIVER; - ground[x + d][y].altitude = alt; - alt += rand () % (mountain / 10); + set_river_tile(x + d, y ); } - if (--y < 10 || x < 5 || x > WORLD_SIDE_LEN - 5) + if (--y < 10 || x < 5 || x > len - 5) break; } #ifdef DEBUG @@ -769,13 +1194,13 @@ #endif if (y > 20) { - if (x > 5 && x < WORLD_SIDE_LEN - 5) { + if (x > 5 && x < len - 5) { #ifdef DEBUG fprintf(stderr," x= %d, y=%d, altitude = %d\n", x, y, alt); #endif setup_river2(x, y, -1, alt, (mountain * 3)/2 ); } - if (x > 5 && x < WORLD_SIDE_LEN - 5) { + if (x > 5 && x < len - 5) { #ifdef DEBUG fprintf(stderr," x= %d, y=%d, altitude = %d\n", x, y, alt); #endif @@ -786,112 +1211,142 @@ static void setup_ground(void) { - int x,y; - int hmax =0; - int tmp[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - - /* fill the corrects fields: ground[x][y).stuff, global_aridity, global_mountainity */ - /* currently only dummy things in order to compile */ - -#define TMP(x,y) tmp[x][y] - - for (x = 1; x < WORLD_SIDE_LEN - 1; x++) { - for (y = 1; y < WORLD_SIDE_LEN - 1; y++) { - if ( !IS_RIVER(x,y) ) { - ALT(x,y) = 0; - TMP(x,y) = 0; - } else { - ground[x][y].water_alt = ALT(x,y); - //shore is higher than water - ALT(x,y) += 10 + rand() % (global_mountainity/7); - TMP(x,y) = ALT(x,y); - if (ALT(x,y) >= hmax) - hmax = ALT(x,y); - } - } - } -#ifdef DEBUG - fprintf(stderr,"\n river max = %d\n\n", hmax); - hmax=0; -#endif + const int len = world.len(); + const int area = len * len; - for (int i =0; i < 90; i++ ) { - int tot_cnt = 0; - for (x = 1; x < WORLD_SIDE_LEN - 1; x++) { - for (y = 1; y < WORLD_SIDE_LEN - 1; y++) { - if ( ALT(x,y) != 0 ) - continue; - int count = 0; - int lmax = 0; - tot_cnt ++; - for ( int k = -1; k <= 1; k++ ) - for ( int l = -1; l <= 1; l++) - if ( ALT(x+k, y+l) != 0 ) { - count ++; - if ( ALT(x+k, y+l) >= lmax ) - lmax = ALT(x+k, y+l); - } - - if (count != 0) - TMP(x,y) = lmax + rand () % (global_mountainity/3); - - if (TMP(x,y) >= hmax) - hmax = TMP(x,y); - } + int slope = global_mountainity/10; + if (slope == 0) + { slope = 1;} + //std::cout << "creating topology "; + std::cout.flush(); + Array2D <int> i1(len,len); + std::deque<int> line; + for (int index=0; index<area; index++) + { + int x = index % len; + int y = index / len; + if (!world.is_visible(x,y)) + { continue;} + if ( world(x, y)->is_river()) + { + *i1(x,y) = 0; + world(x,y)->ground.water_alt = world(x,y)->ground.altitude = (len-y*y/len) * slope; + line.push_back(index); + } + else + { + *i1(x,y) = len; + } + } + //std::cout << "."; + //std::cout.flush(); + while (line.size()) + { + int index = line.front(); + line.pop_front(); + int x = index % len; + int y = index / len; + int dist = *i1(x,y)+1; + for (int i=0; i<8 ; ++i) + { + int tx = x + dx[i]; + int ty = y + dy[i]; + int new_dist = *i1(tx,ty); + if ( !world.is_visible(tx,ty) || world(tx,ty)->is_river() || new_dist <= dist) + { continue;} + world(tx,ty)->ground.altitude = ((len-ty*ty/len + dist/2 + 2*(len*len - (len-dist)*(len-dist))/len) * slope); + *i1(tx,ty) = dist; + line.push_back(tx + ty * len); } - for (x = 1; x < WORLD_SIDE_LEN - 1; x++) - for (y = 1; y < WORLD_SIDE_LEN - 1; y++) - ALT(x,y)=TMP(x,y); -#ifdef DEBUG - if ( (i%5) == 1 ) - fprintf(stderr," i= %2d, alt max = %d, tot_cnt = %d\n", i, hmax, tot_cnt); -#endif } + + //std::cout << "."; + //std::cout.flush(); alt_min = 2000000000; alt_max = -alt_min; - for (x = 1; x < WORLD_SIDE_LEN - 1; x++) - for (y = 1; y < WORLD_SIDE_LEN - 1; y++) { - if (alt_min > ALT(x,y)) - alt_min = ALT(x,y); - if (alt_max < ALT(x,y)) - alt_max = ALT(x,y); - } - alt_step = (alt_max - alt_min) /10; + for (int index=0; index<area; index++) + { + int x = index % len; + int y = index / len; + + if (!world.is_visible(x,y)) + { + continue; + } + if (alt_min > world(x, y)->ground.altitude) + { alt_min = world(x, y)->ground.altitude;} + if (alt_max < world(x, y)->ground.altitude) + { alt_max = world(x, y)->ground.altitude;} + } + alt_step = (alt_max - alt_min) /10; + //std::cout << ". done" << std::endl; } - +/* +static void remove_river(void) +{ + const int len = world.len(); + const int area = len * len; + for (int index = 0; index < area ; ++ index) + { + if(world(index)->flags & FLAG_IS_RIVER) + { + world(index)->type = CST_GREEN; + world(index)->group = GROUP_BARE; + world(index)->flags &= ~FLAG_IS_RIVER; + world(index)->flags &= ~FLAG_HAS_UNDERGROUND_WATER; + world(index)->ground.water_alt = 0; + } + } +} +*/ static void nullify_mappoint(int x, int y) { - MP_TYPE(x, y) = CST_GREEN; - MP_GROUP(x, y) = GROUP_BARE; - MP_SIZE(x, y) = 1; - MP_POL(x, y) = 0; - MP_INFO(x, y).population = 0; - MP_INFO(x, y).flags = 0; - MP_INFO(x, y).coal_reserve = 0; - MP_INFO(x, y).ore_reserve = 0; - MP_INFO(x, y).int_1 = 0; - MP_INFO(x, y).int_2 = 0; - MP_INFO(x, y).int_3 = 0; - MP_INFO(x, y).int_4 = 0; - MP_INFO(x, y).int_5 = 0; - MP_INFO(x, y).int_6 = 0; - MP_INFO(x, y).int_7 = 0; - - ground[x][y].altitude = 0; - ground[x][y].ecotable = 0; - ground[x][y].wastes = 0; - ground[x][y].pollution = 0; - ground[x][y].water_alt = 0; - ground[x][y].water_pol = 0; - ground[x][y].water_wast = 0; - ground[x][y].water_next = 0; - ground[x][y].int1 = 0; - ground[x][y].int2 = 0; - ground[x][y].int3 = 0; - ground[x][y].int4 = 0; + MapTile * tile = world(x,y); + ConstructionGroup *constGrp = 0; + if(tile->construction) + { + constGrp = tile->construction->constructionGroup; + do_bulldoze_area(x, y); + //turn fresh desert into grass + tile->type = CST_GREEN; + tile->group = GROUP_BARE; + } + else + { + tile->reportingConstruction = NULL; + tile->type = CST_GREEN; + tile->group = GROUP_BARE; + } +#ifdef DEBUG + assert( !(tile->framesptr) ); +#endif + if (tile->framesptr) + { + std::cout << "Invalid ExtraFrames at x,y: " << x << "," << y << " " << constGrp->name << std::endl; + tile->framesptr->clear(); + delete tile->framesptr; + tile->framesptr = NULL; + } + tile->flags = 0; + tile->coal_reserve = 0; + tile->ore_reserve = 0; + tile->pollution = 0; + + tile->ground.altitude = 0; + tile->ground.ecotable = 0; + tile->ground.wastes = 0; + tile->ground.pollution = 0; + tile->ground.water_alt = 0; + tile->ground.water_pol = 0; + tile->ground.water_wast = 0; + tile->ground.water_next = 0; + tile->ground.int1 = 0; + tile->ground.int2 = 0; + tile->ground.int3 = 0; + tile->ground.int4 = 0; } @@ -900,15 +1355,16 @@ int x, y, xx, yy, flag, watchdog; /* first find a place that has some water. */ - watchdog = 90; /* if too many tries, random placement. */ + watchdog = 500; /* if too many tries, random placement. */ do { do { - xx = rand() % (WORLD_SIDE_LEN - 25); - yy = rand() % (WORLD_SIDE_LEN - 25); + xx = rand() % (world.len() - 25); + yy = rand() % (world.len() - 25); flag = 0; for (y = yy + 2; y < yy + 23; y++) for (x = xx + 2; x < xx + 23; x++) - if (IS_RIVER(x, y)) { + if (world(x, y)->flags & FLAG_IS_RIVER) + { flag = 1; x = xx + 23; /* break out of loop */ y = yy + 23; /* break out of loop */ @@ -919,7 +1375,8 @@ /* Don't put the village on a river, but don't care of * isolated random water tiles putted by setup_land */ - if (IS_RIVER(x, y)) { + if (world(x, y)->flags & FLAG_IS_RIVER) + { flag = 0; x = xx + 22; /* break out of loop */ y = yy + 22; /* break out of loop */ @@ -934,68 +1391,185 @@ *originy = yy; /* Draw the start scene. */ - set_mappoint(xx + 5, yy + 5, CST_FARM_O0); - /* The first two farms have more underground water */ - for (int i = 0; i < MP_SIZE(xx + 5, yy + 5); i++) - for (int j = 0; j < MP_SIZE(xx + 5, yy + 5); j++) - if (!HAS_UGWATER(xx + 5 + i, yy + 5 + j) && (rand() % 2)) - MP_INFO(xx + 5 + i, yy + 5 + j).flags |= FLAG_HAS_UNDERGROUND_WATER; - - set_mappoint(xx + 9, yy + 6, CST_RESIDENCE_ML); - MP_INFO(xx + 9, yy + 6).population = 50; - MP_INFO(xx + 9, yy + 6).flags |= (FLAG_FED + FLAG_EMPLOYED + FLAG_WATERWELL_COVER); - - set_mappoint(xx + 9, yy + 9, CST_POTTERY_0); - - set_mappoint(xx + 16, yy + 9, CST_WATERWELL); - do_waterwell_cover(xx + 16, yy + 9); - - set_mappoint(xx + 14, yy + 6, CST_RESIDENCE_ML); - MP_INFO(xx + 14, yy + 6).population = 50; - MP_INFO(xx + 14, yy + 6).flags |= (FLAG_FED + FLAG_EMPLOYED + FLAG_WATERWELL_COVER); /* The first two farms have more underground water */ - set_mappoint(xx + 17, yy + 5, CST_FARM_O0); - for (int i = 0; i < MP_SIZE(xx + 17, yy + 5); i++) - for (int j = 0; j < MP_SIZE(xx + 17, yy + 5); j++) - if (!HAS_UGWATER(xx + 17 + i, yy + 5 + j) && (rand() % 2)) - MP_INFO(xx + 17 + i, yy + 5 + j).flags |= FLAG_HAS_UNDERGROUND_WATER; - - set_mappoint(xx + 14, yy + 9, CST_MARKET_EMPTY); - marketx[numof_markets] = xx + 14; - markety[numof_markets] = yy + 9; - numof_markets++; - /* Bootstrap markets with some stuff. */ - MP_INFO(xx + 14, yy + 9).int_1 = 2000; - MP_INFO(xx + 14, yy + 9).int_2 = 10000; - MP_INFO(xx + 14, yy + 9).int_3 = 100; - MP_INFO(xx + 14, yy + 9).int_5 = 10000; - MP_INFO(xx + 14, yy + 9).flags - |= (FLAG_MB_FOOD + FLAG_MS_FOOD + FLAG_MB_JOBS - + FLAG_MS_JOBS + FLAG_MB_COAL + FLAG_MS_COAL + FLAG_MB_ORE - + FLAG_MS_ORE + FLAG_MB_GOODS + FLAG_MS_GOODS + FLAG_MB_STEEL + FLAG_MS_STEEL); + for (int i = 0; i < 4; i++) + for (int j = 0; j < 4; j++) + if (rand() > RAND_MAX/2) + { + world(xx + 6 + i, yy + 5 + j)->flags |= FLAG_HAS_UNDERGROUND_WATER; + } + organic_farmConstructionGroup.placeItem(xx + 6, yy + 5); //first Farm + for (int i = 0; i < 4; i++) + for (int j = 0; j < 4 ; j++) + if (rand() > RAND_MAX/2) + { + world(xx + 17 + i, yy + 5 + j)->flags |= FLAG_HAS_UNDERGROUND_WATER; + } + organic_farmConstructionGroup.placeItem(xx + 17, yy + 5); //second Farm + residenceMLConstructionGroup.placeItem(xx + 10, yy + 6); + dynamic_cast < Residence * > (world(xx + 10, yy + 6)->construction) ->local_population = 50; + potteryConstructionGroup.placeItem(xx + 9, yy + 9); + + world(xx + 16, yy + 9 )->flags |= FLAG_HAS_UNDERGROUND_WATER; + waterwellConstructionGroup.placeItem(xx + 16, yy + 9); + residenceMLConstructionGroup.placeItem(xx + 14, yy + 6); + dynamic_cast < Residence * > (world(xx + 14, yy + 6)->construction) ->local_population = 50; + + marketConstructionGroup.placeItem(xx + 14, yy + 9); /* build tracks */ - for (x = 2; x < 23; x++) { - set_mappoint(xx + x, yy + 11, CST_TRACK_LR); - MP_INFO(xx + x, yy + 11).flags |= FLAG_IS_TRANSPORT; - } - for (y = 2; y < 11; y++) { - set_mappoint(xx + 13, yy + y, CST_TRACK_LR); - MP_INFO(xx + 13, yy + y).flags |= FLAG_IS_TRANSPORT; - } - for (y = 12; y < 23; y++) { - set_mappoint(xx + 15, yy + y, CST_TRACK_LR); - MP_INFO(xx + 15, yy + y).flags |= FLAG_IS_TRANSPORT; + for (x = 2; x < 23; x++) + { + world(xx + x, yy + 11)->setTerrain(GROUP_DESERT); + trackConstructionGroup.placeItem(xx + x, yy + 11); + } + for (y = 2; y < 11; y++) + { + world(xx + 13, yy + y)->setTerrain(GROUP_DESERT); + trackConstructionGroup.placeItem(xx + 13, yy + y); + } + for (y = 12; y < 23; y++) + { + world(xx + 15, yy + y)->setTerrain(GROUP_DESERT); + trackConstructionGroup.placeItem(xx + 15, yy + y); } /* build communes */ - set_mappoint(xx + 6, yy + 12, CST_COMMUNE_1); - set_mappoint(xx + 6, yy + 17, CST_COMMUNE_1); - set_mappoint(xx + 11, yy + 12, CST_COMMUNE_1); - set_mappoint(xx + 11, yy + 17, CST_COMMUNE_1); - set_mappoint(xx + 16, yy + 12, CST_COMMUNE_1); - set_mappoint(xx + 16, yy + 17, CST_COMMUNE_1); + communeConstructionGroup.placeItem(xx + 6, yy + 12); + communeConstructionGroup.placeItem(xx + 6, yy + 17); + communeConstructionGroup.placeItem(xx + 11, yy + 12); + communeConstructionGroup.placeItem(xx + 11, yy + 17); + communeConstructionGroup.placeItem(xx + 16, yy + 12); + communeConstructionGroup.placeItem(xx + 16, yy + 17); + + sust_old_population = (housed_population + people_pool); +} + +static void do_rand_ecology(int x, int y, int r) +{ + int r3 = rand(); + if (r >= 300) + { + /* very dry land */ + int r2 = r3 % 10; + if (r2 <= 6) + world(x, y)->setTerrain(GROUP_DESERT); + else if ((r2 <= 8) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else + world(x, y)->setTerrain(GROUP_TREE); + } + else if (r >= 160) + { + int r2 = r3 % 10; + if (r2 <= 2) + world(x, y)->setTerrain(GROUP_DESERT); + else if ((r2 <= 6) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else + world(x, y)->setTerrain(GROUP_TREE); + } + else if (r >= 80) + { + int r2 = r3 % 10; + if (r2 <= 1) + world(x, y)->setTerrain(GROUP_DESERT); + else if ((r2 <= 4) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 6) + world(x, y)->setTerrain(GROUP_TREE); + else + world(x, y)->setTerrain(GROUP_TREE2); + } + else if (r >= 40) + { + int r2 = r3 % 40; + if (r2 == 0) + world(x, y)->setTerrain(GROUP_DESERT); + else if ((r2 <= 12) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 24) + world(x, y)->setTerrain(GROUP_TREE); + else if (r2 <= 36) + world(x, y)->setTerrain(GROUP_TREE2); + else + world(x, y)->setTerrain(GROUP_TREE3); + } + else if (r >= 0) + { + /* normal land */ + int r2 = r3 % 40; + if ((r2 <= 10) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 20) + world(x, y)->setTerrain(GROUP_TREE); + else if (r2 <= 30) + world(x, y)->setTerrain(GROUP_TREE2); + else + world(x, y)->setTerrain(GROUP_TREE3); + } + else if (r >= -40) + { + /* forest */ + int r2 = r3 % 40; + if ((r2 <= 5) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 10) + world(x, y)->setTerrain(GROUP_TREE); + else if (r2 <= 25) + world(x, y)->setTerrain(GROUP_TREE2); + else + world(x, y)->setTerrain(GROUP_TREE3); + } + else if (r >= -80) + { + int r2 = r3 % 40; + if (r2 <= 0) + world(x, y)->setTerrain(GROUP_WATER); + else if ((r2 <= 6) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 15) + world(x, y)->setTerrain(GROUP_TREE); + else if (r2 <= 28) + world(x, y)->setTerrain(GROUP_TREE2); + else + world(x, y)->setTerrain(GROUP_TREE3); + } + else if (r >= -120) + { + int r2 = r3 % 40; + if (r2 <= 1) + world(x, y)->setTerrain(GROUP_WATER); + else if ((r2 <= 6) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 16) + world(x, y)->setTerrain(GROUP_TREE); + else if (r2 <= 30) + world(x, y)->setTerrain(GROUP_TREE2); + else + world(x, y)->setTerrain(GROUP_TREE3); + } + else + { + /* wetland */ + int r2 = r3 % 40; + if (r2 <= 3) + world(x, y)->setTerrain(GROUP_WATER); + else if ((r2 <= 8) || world.without_trees) + world(x, y)->setTerrain(GROUP_BARE); + else if (r2 <= 20) + world(x, y)->setTerrain(GROUP_TREE); + else if (r2 <= 35) + world(x, y)->setTerrain(GROUP_TREE2); + else + world(x, y)->setTerrain(GROUP_TREE3); + } + if (world(x, y)->getGroup() != GROUP_DESERT) + { + world(x, y)->flags |= FLAG_HAS_UNDERGROUND_WATER; + } } +/** @file lincity/init_game.cpp */ diff -Nru lincity-ng-2.0/src/lincity/init_game.h lincity-ng-2.9~git20150314/src/lincity/init_game.h --- lincity-ng-2.0/src/lincity/init_game.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/init_game.h 2015-05-05 16:32:51.000000000 +0000 @@ -7,8 +7,24 @@ #ifndef __init_game_h__ #define __init_game_h__ +typedef struct _CitySettings city_settings; + +struct _CitySettings { + bool with_village; + bool without_trees; +}; + +void destroy_game(void); void clear_game(void); void setup_land(void); -void new_city(int *originx, int *originy, int random_village); +void create_new_city(int *originx, int *originy, city_settings *city, int old_setup_ground, int climate); + +void new_city(int *originx, int *originy, city_settings *city); +void new_desert_city(int *originx, int *originy, city_settings *city); +void new_temperate_city(int *originx, int *originy, city_settings *city); +void new_swamp_city(int *originx, int *originy, city_settings *city); #endif /* __init_game_h__ */ + +/** @file lincity/init_game.h */ + diff -Nru lincity-ng-2.0/src/lincity/Jamfile lincity-ng-2.9~git20150314/src/lincity/Jamfile --- lincity-ng-2.0/src/lincity/Jamfile 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/Jamfile 2015-05-05 16:32:51.000000000 +0000 @@ -7,6 +7,6 @@ Library lincity_lib : $(SOURCES) : noinstall ; C++Flags lincity_lib : -DDEFAULT_LIBDIR=\\\"$(appdatadir)\\\" ; IncludeDir lincity_lib : . ; -ExternalLibs lincity_lib : ICONV ZLIB ; +ExternalLibs lincity_lib : LIBXML SDL SDLIMAGE SDLMIXER SDLTTF SDLGFX ICONV ZLIB ; TRANSLATABLE_SOURCES += [ SearchSource $(SOURCES) ] ; diff -Nru lincity-ng-2.0/src/lincity/lcconfig.h lincity-ng-2.9~git20150314/src/lincity/lcconfig.h --- lincity-ng-2.0/src/lincity/lcconfig.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lcconfig.h 2015-05-05 16:32:51.000000000 +0000 @@ -19,3 +19,6 @@ #endif #endif /* __lcconfig_h__ */ + +/** @file lincity/lcconfig.h */ + diff -Nru lincity-ng-2.0/src/lincity/lclib.cpp lincity-ng-2.9~git20150314/src/lincity/lclib.cpp --- lincity-ng-2.0/src/lincity/lclib.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lclib.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -33,7 +33,7 @@ { return current_time / NUMOF_DAYS_IN_YEAR; } - +/* void format_number5(char *str, int num) { int num_sign = num >= 0 ? 1 : -1; @@ -56,17 +56,22 @@ } } } - +*/ void num_to_ansi(char *s, size_t size, long num) { int triplets = 0; float numf = (float)num; - while (numf > 1000 || numf < -1000) { - numf /= 1000; - triplets++; + if (numf > 9999 || numf < -9999) + { + while (numf > 999 || numf < -999) + { + numf /= 1000; + triplets++; + } } + switch (triplets) { case 0: triplets = ' '; @@ -79,10 +84,10 @@ break; // mega case 3: triplets = 'G'; - break; // giga + break; // giga case 4: triplets = 'T'; - break; // tera + break; // tera case 5: triplets = 'P'; break; // peta @@ -99,19 +104,19 @@ } } else { if (triplets == ' ') { - snprintf(s, size, "%3.1f", numf); + snprintf(s, size, "%4.0f", numf); } else { snprintf(s, size, "%3.1f%c", numf, triplets); } } } - +/* void num_to_ansi_unit(char *s, size_t size, long num, char unit) { int triplets = 0; float numf = (float)num; - while (numf > 1000) { + while (numf > 1000 || numf < -1000) { numf /= 1000; triplets++; } @@ -128,10 +133,10 @@ break; // mega case 3: triplets = 'G'; - break; // giga + break; // giga case 4: triplets = 'T'; - break; // tera + break; // tera case 5: triplets = 'P'; break; // peta @@ -140,15 +145,15 @@ break; } - if (size == 4) /* to make up for format_pos_number4 */ + if (size == 4) //to make up for format_pos_number4 if (numf < 10) - snprintf(s, size, "%4.1f%c%c", numf, triplets, unit); + snprintf(s, size, "%-4.1f%c%c", numf, triplets, unit); else - snprintf(s, size, "%4.0f%c%c", numf, triplets, unit); + snprintf(s, size, "%-4.0f%c%c", numf, triplets, unit); else - snprintf(s, size, "%5.1f%c%c", numf, triplets, unit); + snprintf(s, size, "%-5.1f%c%c", numf, triplets, unit); } - +*/ /* commify: take a number and convert it to a string grouped into triplets with commas; returns number of characters written, excluding trailing zero */ @@ -202,18 +207,19 @@ } *str = '\0'; } - +/* void format_pos_number4(char *str, int num) { num_to_ansi(str, 4, num); } - +*/ +/* void format_power(char *str, size_t size, long power) { - /* Lincity power unit is 1kW */ + // Lincity power unit is 1kW num_to_ansi_unit(str, size, power * 1000, 'W'); } - +*/ int min_int(int i1, int i2) { return i1 < i2 ? i1 : i2; @@ -236,3 +242,6 @@ return tmp; } + +/** @file lincity/lclib.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/lclib.h lincity-ng-2.9~git20150314/src/lincity/lclib.h --- lincity-ng-2.0/src/lincity/lclib.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lclib.h 2015-05-05 16:32:51.000000000 +0000 @@ -13,9 +13,9 @@ const char *current_month(int current_time); int current_year(int current_time); -void format_number5(char *str, int num); -void format_pos_number4(char *str, int num); -void format_power(char *str, size_t size, long power); +//void format_number5(char *str, int num); +//void format_pos_number4(char *str, int num); +//void format_power(char *str, size_t size, long power); void *lcalloc(size_t size); int commify(char *str, size_t size, int argnum); void pad_with_blanks(char *str, int size); @@ -25,3 +25,6 @@ int max_int(int i1, int i2); #endif + +/** @file lincity/lclib.h */ + diff -Nru lincity-ng-2.0/src/lincity/lc_locale.cpp lincity-ng-2.9~git20150314/src/lincity/lc_locale.cpp --- lincity-ng-2.0/src/lincity/lc_locale.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lc_locale.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -33,3 +33,6 @@ #endif /* ENABLE_NLS */ return; } + +/** @file lincity/lc_locale.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/lc_locale.h lincity-ng-2.9~git20150314/src/lincity/lc_locale.h --- lincity-ng-2.0/src/lincity/lc_locale.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lc_locale.h 2015-05-05 16:32:51.000000000 +0000 @@ -4,3 +4,6 @@ void lincity_set_locale(void); #endif + +/** @file lincity/lc_locale.h */ + diff -Nru lincity-ng-2.0/src/lincity/lcstring.h lincity-ng-2.9~git20150314/src/lincity/lcstring.h --- lincity-ng-2.0/src/lincity/lcstring.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lcstring.h 2015-05-05 16:32:51.000000000 +0000 @@ -18,3 +18,6 @@ #endif #endif /* __lcstring_h__ */ + +/** @file lincity/lcstring.h */ + diff -Nru lincity-ng-2.0/src/lincity/lctypes.h lincity-ng-2.9~git20150314/src/lincity/lctypes.h --- lincity-ng-2.0/src/lincity/lctypes.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lctypes.h 2015-05-05 16:32:51.000000000 +0000 @@ -713,10 +713,7 @@ #define CST_NONE 1000 -/* - // ********************************* - // 400 is the maximum at the moment. - // ********************************* -*/ - #endif /* __lctypes_h__ */ + +/** @file lincity/lctypes.h */ + diff -Nru lincity-ng-2.0/src/lincity/lin-city.h lincity-ng-2.9~git20150314/src/lincity/lin-city.h --- lincity-ng-2.0/src/lincity/lin-city.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lin-city.h 2015-05-05 16:32:51.000000000 +0000 @@ -15,13 +15,13 @@ When your money reaches 1 million or more, to make it easier to read, it is split into two parts; a millions part, and the rest. For example 12,355232 You can choose any character you like, - but I have given some other examples. Just comment out the one + but I have given some other examples. Just comment out the one above, and uncomment one below. IT MUST NOT BE NULL. #define MONEY_SEPARATOR '.' #define MONEY_SEPARATOR ' ' #define MONEY_SEPARATOR ':' */ -#define MONEY_SEPARATOR ',' +#define MONEY_SEPARATOR ',' // AL1 unsused in 2.x , but it would be very good to use it => TODO /* ************************************************ @@ -31,7 +31,10 @@ #if defined (_MSC_VER) # define snprintf _snprintf #endif + +/* AL1 : unused in 2.x #define USE_X11_PIXMAPS +*/ #ifndef TRUE # define TRUE 1 @@ -45,917 +48,88 @@ #define WARNING -2 /* comment out the the next three lines for _slightly_ faster X drawing. */ +/* AL1 : unused in 2.x #if defined LC_X11 || defined WIN32 # define ALLOW_PIX_DOUBLING #endif +*/ -#if defined (LC_X11) || defined (WIN32) -# define BORDERX 30 -# define BORDERY 30 -#endif - -#define TEXT_FG_COLOUR (white(24)) -#define TEXT_BG_COLOUR 105 -#define YN_DIALBOX_BG_COLOUR (red(10)) -#define LOAD_BG_COLOUR (cyan(10)) -#define SAVE_BG_COLOUR (magenta(10)) -#define NW_BG_COLOUR (green(10)) - -/* GCS: We are about to run out of bits on the flags, so in the future we - might need to implement compression. For example, FLAG_IS_RIVER is - only used for GROUP_WATER, FLAG_MB_COAL for GROUP_MARKET, and so on. */ -/* WCK: Compression would work, but that's complicated. I would rather move - FLAG_M?_* into an int_? variable. And add more int_? variables. That keeps - it simple and squeezes some life out of 32 bits. I don't think we need to - hurry. I'd rather replace the whole scheme. */ - -#define FLAG_LEFT (1) // Used for transports, power lines, rivers, and desert borders. -#define FLAG_UP (2) // Algorithm relies on the numerical values of -#define FLAG_RIGHT (4) // the flags. (a check is done at compile time) -#define FLAG_DOWN (8) // +//#define FLAG_LEFT (1) // Used for transports, power lines, rivers, and desert borders. +//#define FLAG_UP (2) // Algorithm relies on the numerical values of +#define FLAG_POWER_CABLES_0 (1) +#define FLAG_POWER_CABLES_90 (2) +//#define FLAG_RIGHT (4) // the flags. (a check is done at compile time) +//#define FLAG_DOWN (8) // #define FLAG_POWERED (0x10) #define FLAG_FED (0x20) #define FLAG_EMPLOYED (0x40) #define FLAG_IS_TRANSPORT (0x80) -#define FLAG_MB_FOOD (0x100) -#define FLAG_MS_FOOD (0x200) -#define FLAG_MB_JOBS (0x400) -#define FLAG_MS_JOBS (0x800) -#define FLAG_MB_COAL (0x1000) -#define FLAG_MS_COAL (0x2000) -#define FLAG_MB_ORE (0x4000) -#define FLAG_MS_ORE (0x8000) -#define FLAG_MB_GOODS (0x10000) -#define FLAG_MS_GOODS (0x20000) -#define FLAG_MB_STEEL (0x40000) -#define FLAG_MS_STEEL (0x80000) +//#define FLAG_MB_FOOD (0x100) +#define FLAG_MARKET_COVER (0x100) //mapTile only +#define FLAG_NEVER_EVACUATE (0x100) //contruction only +#define FLAG_ALTERED (0x200) //mapTile only +#define FLAG_EVACUATE (0x200) //construction only +#define FLAG_IS_GHOST (0x400) //temporary construction like fireplace +#define FLAG_ROCKET_READY (0x800) //construction (Rocket Pad) only +//#define FLAG_MB_COAL (0x1000) +//#define FLAG_MS_COAL (0x2000) +//#define FLAG_MB_ORE (0x4000) +//#define FLAG_MS_ORE (0x8000) +//#define FLAG_MB_GOODS (0x10000) +//#define FLAG_MS_GOODS (0x20000) +//#define FLAG_MB_STEEL (0x40000) +//#define FLAG_MS_STEEL (0x80000) #define FLAG_FIRE_COVER (0x100000) #define FLAG_HEALTH_COVER (0x200000) #define FLAG_CRICKET_COVER (0x400000) #define FLAG_IS_RIVER (0x800000) -#define FLAG_HAD_POWER (0x1000000) -#define FLAG_MULTI_TRANSPORT (0x2000000) /* Is it a multitransport? */ /* AL1: unused in NG 1.1 */ +#define FLAG_IS_LAKE (0x1000000) //Tiles only +#define FLAG_HAD_POWER (0x1000000) //Constructions only +//#define FLAG_MULTI_TRANSPORT (0x2000000) /* Is it a multitransport? */ /* AL1: unused in NG 1.1 */ #define FLAG_LACK_JOBS (0x4000000) /* 1.92 svn , replace previous unused one. */ -#define FLAG_POWER_LINE (0x8000000) -#define FLAG_WATERWELL_COVER (0x10000000) +#define FLAG_TRANSPARENT (0x8000000) //show terrain underneath, constructions only +#define FLAG_INVISIBLE (0x8000000) //if a maptile is hidden, Maptiles only +//#define FLAG_POWER_LINE (0x8000000) +//#define FLAG_WATERWELL_COVER (0x10000000) //unused since now STUFF_WATER is used instead #define FLAG_HAS_UNDERGROUND_WATER (0x20000000) #define FLAG_ASKED_FOR_POWER (0x40000000) #define FLAG_GOT_POWER (0x80000000) /* 2^31 = last flag */ //nearly duplicate of FLAG_POWERED 0x10 -/* XXX: It would appear that the following T_ are used exactly two times each, - in market.c. */ -#define T_FOOD 0 -#define T_JOBS 1 -#define T_COAL 2 -#define T_GOODS 3 -#define T_ORE 4 -#define T_STEEL 5 -#define T_WASTE 6 - -/* XXX: screen.h? */ - -#define MINI_SCREEN_NORMAL_FLAG (0) -#define MINI_SCREEN_POL_FLAG (1) -#define MINI_SCREEN_UB40_FLAG (2) -#define MINI_SCREEN_STARVE_FLAG (3) -#define MINI_SCREEN_PORT_FLAG (4) -#define MINI_SCREEN_POWER_FLAG (5) -#define MINI_SCREEN_FIRE_COVER (6) -#define MINI_SCREEN_CRICKET_COVER (7) -#define MINI_SCREEN_HEALTH_COVER (8) -#define MINI_SCREEN_COAL_FLAG (9) - -#define MAIN_SCREEN_NORMAL_FLAG (1) -#define MAIN_SCREEN_EQUALS_MINI (2) - -#define WORLD_SIDE_LEN 100 /* Minimap size is hardcoded 200 pixel => some job to do ... */ -#define NUMOF_DAYS_IN_MONTH 100 -#define NUMOF_DAYS_IN_YEAR (NUMOF_DAYS_IN_MONTH*12) -#define FAST_TIME_FOR_YEAR 9 -#define MED_TIME_FOR_YEAR 20 -#define SLOW_TIME_FOR_YEAR 60 - -/* interest rate *10 ie 10 is 1% */ -#define INTEREST_RATE 15 - -#define HELPERRORPAGE "error.hlp" -#define HELPBACKGROUNDCOLOUR (white(8)) -#define HELPBUTTON_COLOUR (white(25)) -#define MAX_NUMOF_HELP_BUTTONS 40 -#define MAX_LENOF_HELP_FILENAME 40 -#define MAX_HELP_HISTORY 20 -#define CS_MOUSE_BUTTON_DELAY 5 -#define RIGHT_MOUSE_MOVE_VAL 5 - +//volatile flags from savegames are ignorred, and will be reset at loading +#define VOLATILE_FLAGS (FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90 ) #define GOOD 1 #define BAD (-1) #define RESULTS 0 -/************* Buildings stuff *********************/ +//#define SHUFFLE_MAPPOINT_COUNT 4 -#define WINDMILL_POWER 450 -#define WINDMILL_JOBS 10 -/* WINDMILL_RCOST is days per quid */ -#define WINDMILL_RCOST 3 -#define ANTIQUE_WINDMILL_ANIM_SPEED 160 -#define MODERN_WINDMILL_ANIM_SPEED 120 - -#define OLD_MAX_NUMOF_SUBSTATIONS 100 -#define MAX_NUMOF_SUBSTATIONS 512 -#define SUBSTATION_RANGE 10 -#define POWER_USE_PER_PERSON 3 -#define POWER_RES_OVERHEAD 30 -#define POWERS_COAL_OUTPUT 22000 -#define MAX_COAL_AT_POWER_STATION 100000 - -#define MAX_ORE_AT_INDUSTRY_L 20000 -#define MAX_JOBS_AT_INDUSTRY_L 500 -#define MAX_GOODS_AT_INDUSTRY_L 65000 -#define INDUSTRY_L_GET_JOBS 120 -#define INDUSTRY_L_GET_ORE 600 -#define INDUSTRY_L_GET_STEEL 60 -#define INDUSTRY_L_JOBS_LOAD_ORE 1 -#define INDUSTRY_L_JOBS_LOAD_STEEL 4 -#define INDUSTRY_L_ORE_USED 125 -#define INDUSTRY_L_STEEL_USED 12 -#define INDUSTRY_L_JOBS_USED 30 -#define INDUSTRY_L_MAKE_GOODS 225 -#define MAX_STEEL_AT_INDUSTRY_L 2000 -#define MIN_JOBS_AT_INDUSTRY_L (INDUSTRY_L_JOBS_LOAD_ORE\ -+INDUSTRY_L_JOBS_LOAD_STEEL+INDUSTRY_L_JOBS_USED) -#define INDUSTRY_L_ANIM_SPEED 290 -#define INDUSTRY_L_POL_PER_GOOD 0.05 -#define INDUSTRY_L_POLLUTION 10 - -#define MAX_ORE_AT_INDUSTRY_H 10000 -#define MAX_COAL_AT_INDUSTRY_H 1000 -#define MAX_MADE_AT_INDUSTRY_H MAX_ORE_AT_INDUSTRY_H/16 -#define POWER_MAKE_STEEL 200 -#define INDUSTRY_H_ANIM_SPEED 290 - -#define DAYS_PER_POLLUTION 14 -#define POWERS_COAL_POLLUTION 20 -#define INDUSTRY_H_POLLUTION 10 -#define COALMINE_POLLUTION 3 -#define PORT_POLLUTION 1 -#define RAIL_POLLUTION 1 -#define DAYS_PER_RAIL_POLLUTION 30 -#define ROAD_POLLUTION 1 -#define DAYS_PER_ROAD_POLLUTION 20 -#define UNNAT_DEATHS_COST 500 -#define POL_DIV 64 /* GCS -- from engine.c */ - -#define FINANCE_X 91 -#define FINANCE_W 120 -#define FINANCE_Y 200 -#define FINANCE_H 56 -#define INCOME_TAX_RATE 8 -#define COAL_TAX_RATE 20 -#define GOODS_TAX_RATE 1 -#define DOLE_RATE 15 -#define TRANSPORT_COST_RATE 14 -#define IM_PORT_COST_RATE 1 -#define PORT_FOOD_RATE 1 -#define PORT_JOBS_RATE 5 -#define PORT_COAL_RATE 50 -#define PORT_ORE_RATE 1 -#define PORT_GOODS_RATE 3 -#define PORT_STEEL_RATE 100 -/* - These next two control the stuff bought or sold as a % of what's on the - transport. 1000=100% 500=50% etc. -*/ -#define PORT_EXPORT_RATE 500 -#define PORT_IMPORT_RATE 500 - -#define NUMOF_DISCOUNT_TRIGGERS 6 -#define EX_DISCOUNT_TRIGGER_1 25000 -#define EX_DISCOUNT_TRIGGER_2 50000 -#define EX_DISCOUNT_TRIGGER_3 100000 -#define EX_DISCOUNT_TRIGGER_4 200000 -#define EX_DISCOUNT_TRIGGER_5 400000 -#define EX_DISCOUNT_TRIGGER_6 800000 +#define FAST_TIME_FOR_YEAR 9 +#define MED_TIME_FOR_YEAR 20 +#define SLOW_TIME_FOR_YEAR 60 #define MIN_RES_POPULATION 10 -#define MAX_TECH_LEVEL 1000000 -#define TECH_LEVEL_LOSS_START 11000 + /* tech-level/TECH_LEVEL_LOSS is lost every month when above TECH_LEVEL_LOSS_START */ +#define MAX_TECH_LEVEL 1000000 +#define TECH_LEVEL_LOSS_START 11000 #define TECH_LEVEL_LOSS 500 #define TECH_LEVEL_UNAIDED 2 -#define MODERN_WINDMILL_TECH 450000 -#define BUILD_MONUMENT_JOBS 350000 -#define MONUMENT_GET_JOBS 100 -#define MONUMENT_DAYS_PER_TECH 3 -#define MONUMENT_TECH_EXPIRE 400 -#define MONUMENT_ANIM_SPEED 300 - -#define BLACKSMITH_JOBS 35 -#define BLACKSMITH_GET_COAL 6 -#define MAX_GOODS_AT_BLACKSMITH 200 -#define MAX_COAL_AT_BLACKSMITH 100 -#define BLACKSMITH_STEEL_USED 1 -#define BLACKSMITH_COAL_USED 1 -#define GOODS_MADE_BY_BLACKSMITH 50 -#define BLACKSMITH_BATCH (GOODS_MADE_BY_BLACKSMITH*100) -#define BLACKSMITH_ANIM_THRESHOLD 10 -#define BLACKSMITH_ANIM_SPEED 200 - -#define MILL_JOBS 35 -#define MAX_GOODS_AT_MILL 200 -#define MAX_FOOD_AT_MILL 500 -#define MAX_COAL_AT_MILL 50 -#define GOODS_MADE_BY_MILL 75 -#define MILL_GET_FOOD 51 -#define MILL_GET_COAL 4 -#define MILL_POWER_PER_COAL 60 -#define FOOD_USED_BY_MILL (GOODS_MADE_BY_MILL/2) -#define COAL_USED_BY_MILL 1 -#define MILL_ANIM_THRESHOLD 10 -#define MILL_ANIM_SPEED 300 - -#define SCHOOL_JOBS 50 -#define SCHOOL_GOODS 75 -#define JOBS_MAKE_TECH_SCHOOL 200 -#define GOODS_MAKE_TECH_SCHOOL 75 -#define TECH_MADE_BY_SCHOOL 2 -#define MAX_JOBS_AT_SCHOOL 400 -#define MAX_GOODS_AT_SCHOOL 200 -#define SCHOOL_RUNNING_COST 2 - -#define DAYS_BETWEEN_COVER (NUMOF_DAYS_IN_MONTH*3) -#define DAYS_BETWEEN_FIRES (NUMOF_DAYS_IN_YEAR*2) -#define FIRESTATION_JOBS 6 -#define FIRESTATION_GET_JOBS 7 -#define MAX_JOBS_AT_FIRESTATION (FIRESTATION_JOBS*NUMOF_DAYS_IN_YEAR) -#define FIRESTATION_GOODS 2 -#define FIRESTATION_GET_GOODS 3 -#define MAX_GOODS_AT_FIRESTATION (FIRESTATION_GOODS*NUMOF_DAYS_IN_YEAR) -#define FIRESTATION_RANGE 18 -#define FIRESTATION_RUNNING_COST 1 -#define FIRESTATION_RUNNING_COST_MUL 6 -#define FIRESTATION_ANIMATION_SPEED 250 -#define FIRE_ANIMATION_SPEED 350 -#define FIRE_DAYS_PER_SPREAD (NUMOF_DAYS_IN_YEAR/8) -#define FIRE_LENGTH (NUMOF_DAYS_IN_YEAR*5) -#define AFTER_FIRE_LENGTH (NUMOF_DAYS_IN_YEAR*10) - -#define CRICKET_JOBS 8 -#define CRICKET_GET_JOBS 9 -#define MAX_JOBS_AT_CRICKET (CRICKET_JOBS*NUMOF_DAYS_IN_YEAR) -#define CRICKET_GOODS 2 -#define CRICKET_GET_GOODS 3 -#define MAX_GOODS_AT_CRICKET (CRICKET_GOODS*NUMOF_DAYS_IN_YEAR) -#define CRICKET_RANGE 10 -#define CRICKET_RUNNING_COST 1 -#define CRICKET_ANIMATION_SPEED 750 - -#define MAX_GOODS_AT_POTTERY 200 -#define POTTERY_ORE_MAKE_GOODS 11 -#define POTTERY_COAL_MAKE_GOODS 2 -#define POTTERY_JOBS 35 -#define MAX_ORE_AT_POTTERY (POTTERY_ORE_MAKE_GOODS*60) -#define POTTERY_GET_ORE (POTTERY_ORE_MAKE_GOODS*20) -#define MAX_COAL_AT_POTTERY (POTTERY_COAL_MAKE_GOODS*60) -#define POTTERY_GET_COAL (POTTERY_COAL_MAKE_GOODS*21) -#define MAX_JOBS_AT_POTTERY (POTTERY_JOBS*20) -#define POTTERY_GET_JOBS (POTTERY_JOBS*2) -#define POTTERY_MADE_GOODS 35 -#define POTTERY_ANIM_SPEED 280 -#define POTTERY_CLOSE_TIME 20 - -#define UNIVERSITY_JOBS 250 -#define UNIVERSITY_JOBS_STORE 5000 -#define UNIVERSITY_GOODS 750 -#define UNIVERSITY_GOODS_STORE 7000 -#define UNIVERSITY_RUNNING_COST 23 -#define UNIVERSITY_TECH_MADE 4 - -#define ROCKET_PAD_JOBS 1000 -#define ROCKET_PAD_JOBS_STORE 10000 -#define ROCKET_PAD_GOODS 10000 -#define ROCKET_PAD_GOODS_STORE 500000 -#define ROCKET_PAD_STEEL 500 -#define ROCKET_PAD_STEEL_STORE 12000 -#define ROCKET_PAD_RUNNING_COST 200 -#define ROCKET_PAD_LAUNCH 100 -#define ROCKET_ANIMATION_SPEED 450 -#define ROCKET_LAUNCH_BAD 1 -#define ROCKET_LAUNCH_GOOD 2 -#define ROCKET_LAUNCH_EVAC 3 - -#define TIP_DEGRADE_TIME 200 * NUMOF_DAYS_IN_YEAR - -#define MAX_WASTE_AT_RECYCLE 20000 -#define BURN_WASTE_AT_RECYCLE (MAX_WASTE_AT_RECYCLE/200) -#define MAX_ORE_AT_RECYCLE (MAX_ORE_ON_RAIL*2) -#define GOODS_RECYCLED 500 -#define RECYCLE_GOODS_JOBS (GOODS_RECYCLED/50) -#define RECYCLE_RUNNING_COST 3 - -#define HEALTH_CENTRE_JOBS 6 -#define HEALTH_CENTRE_GET_JOBS 7 -#define MAX_JOBS_AT_HEALTH_CENTRE (HEALTH_CENTRE_JOBS*NUMOF_DAYS_IN_YEAR) -#define HEALTH_CENTRE_GOODS 40 -#define HEALTH_CENTRE_GET_GOODS 41 -#define MAX_GOODS_AT_HEALTH_CENTRE (HEALTH_CENTRE_GOODS*NUMOF_DAYS_IN_YEAR) -#define HEALTH_RUNNING_COST 2 -#define HEALTH_RUNNING_COST_MUL 9 -#define HEALTH_CENTRE_RANGE 15 - -#define OREMINE_ANIMATION_SPEED 200 - -#define OLD_MAX_NUMOF_MARKETS 100 -#define MAX_NUMOF_MARKETS 512 -#define MARKET_RANGE 10 -#define MAX_FOOD_ON_TRACK 2048 -#define MAX_FOOD_ON_ROAD (MAX_FOOD_ON_TRACK*4) -#define MAX_FOOD_ON_RAIL (MAX_FOOD_ON_TRACK*16) -#define MAX_FOOD_IN_MARKET (MAX_FOOD_ON_RAIL*8) -#define MARKET_FOOD_SEARCH_TRIGGER (MAX_FOOD_IN_MARKET/5) -#define MAX_JOBS_ON_TRACK 1024 -#define MAX_JOBS_ON_ROAD (MAX_JOBS_ON_TRACK*5) -#define MAX_JOBS_ON_RAIL (MAX_JOBS_ON_TRACK*25) -#define MAX_JOBS_IN_MARKET (MAX_JOBS_ON_RAIL*3) -#define MARKET_JOBS_SEARCH_TRIGGER (MAX_JOBS_IN_MARKET/5) -#define MARKET_ANIM_SPEED 750 -#define EMPLOYER_RANGE 10 -#define WORKING_POP_PERCENT 45 -#define JOB_SWING 15 -#define HC_JOB_SWING 10 -#define CRICKET_JOB_SWING 4 - -#define ORGANIC_FARM_FOOD_OUTPUT 550 -#define ORGANIC_FARM_ANIM_SPEED 3000 -#define FARM_JOBS_USED 13 -#define ORG_FARM_RANGE 10 -#define ORG_FARM_POWER_REC 50 -/* gets waste only when powered */ -#define ORG_FARM_WASTE_GET 6 -#define MIN_FOOD_SOLD_FOR_ANIM 200 -#define DAYS_PER_STARVE 20 - -#define NUMOF_COAL_RESERVES 100 -#define COAL_RESERVE_SIZE 10000 -#define ORE_RESERVE 1000 -#define MIN_ORE_RESERVE_FOR_MINE (ORE_RESERVE) -#define MAX_COAL_AT_MINE 100000 -#define MAX_ORE_AT_MINE 100000 -/* COAL_RESERVE_SEARCH_LEN acts in both directions, so 5 is 10*10 */ -#define COAL_RESERVE_SEARCH_LEN 8 -#define JOBS_DIG_COAL 900 -#define JOBS_DIG_ORE 200 -#define JOBS_COALPS_GENERATE 100 -#define MAX_JOBS_AT_COALPS 2000 -#define JOBS_LOAD_COAL 18 -#define JOBS_LOAD_ORE 9 -#define JOBS_LOAD_STEEL 15 -#define JOBS_AT_COMMUNE_GATE 4 -#define COMMUNE_ANIM_SPEED 750 -#define COMMUNE_POP 5 - -#define MAX_COAL_ON_TRACK 64 -#define MAX_COAL_ON_ROAD (MAX_COAL_ON_TRACK*8) -#define MAX_COAL_ON_RAIL (MAX_COAL_ON_TRACK*64) -#define MAX_COAL_IN_MARKET (MAX_COAL_ON_RAIL*2) -#define MARKET_COAL_SEARCH_TRIGGER (MAX_COAL_IN_MARKET/5) - -#define MAX_GOODS_ON_TRACK 2048 -#define MAX_GOODS_ON_ROAD (MAX_GOODS_ON_TRACK*5) -#define ROAD_GOODS_USED_MASK 0x1f -#define MAX_GOODS_ON_RAIL (MAX_GOODS_ON_TRACK*25) -#define RAIL_GOODS_USED_MASK 0xf -#define MAX_GOODS_IN_MARKET (MAX_GOODS_ON_RAIL*4) -#define MARKET_GOODS_SEARCH_TRIGGER (MAX_GOODS_IN_MARKET/5) -#define MAX_ORE_ON_TRACK 4096 -#define MAX_ORE_ON_ROAD (MAX_ORE_ON_TRACK*4) -#define MAX_ORE_ON_RAIL (MAX_ORE_ON_TRACK*16) -#define MAX_ORE_IN_MARKET (MAX_ORE_ON_RAIL*2) -#define MARKET_ORE_SEARCH_TRIGGER (MAX_ORE_IN_MARKET/5) - -#define MAX_STEEL_ON_TRACK 128 -#define MAX_STEEL_ON_ROAD (MAX_STEEL_ON_TRACK*4) -#define MAX_STEEL_ON_RAIL (MAX_STEEL_ON_TRACK*16) -#define RAIL_STEEL_USED_MASK 0x7f -#define MAX_STEEL_AT_INDUSTRY_H (MAX_STEEL_ON_RAIL*10) - -#define MAX_WASTE_ON_TRACK 1024 -#define MAX_WASTE_ON_ROAD (MAX_WASTE_ON_TRACK*5) -#define MAX_WASTE_ON_RAIL (MAX_WASTE_ON_TRACK*25) -#define MAX_WASTE_IN_MARKET (MAX_WASTE_ON_RAIL*3) -#define MARKET_WASTE_SEARCH_TRIGGER (MAX_WASTE_IN_MARKET/5) -#define MAX_WASTE_AT_TIP 10000000 -#define WASTE_BURN_ON_TRANSPORT 20 -#define TRANSPORT_BURN_WASTE_COUNT 75000 -#define WATERWELL_RANGE 20 - -/* - JOBS_MAKE_STEEL is the steel made per job at the steel works - what's it doing here? - */ -#define JOBS_MAKE_STEEL 70 -/* - ORE_MAKE_STEEL is the ore used per unit of STEEL at a steel works - what's it doing here? - */ -#define ORE_MAKE_STEEL 17 -#define MAX_STEEL_IN_MARKET (MAX_STEEL_ON_RAIL*2) -#define MARKET_STEEL_SEARCH_TRIGGER (MAX_STEEL_IN_MARKET/5) - -#define SUST_ORE_COAL_COL 34 -#define SUST_PORT_COL white(24) -#define SUST_MONEY_COL green(26) -#define SUST_POP_COL cyan(24) -#define SUST_TECH_COL yellow(26) -#define SUST_FIRE_COL red(26) -#define SUST_ORE_COAL_YEARS_NEEDED 180 -#define SUST_PORT_YEARS_NEEDED 180 -#define SUST_MONEY_YEARS_NEEDED 60 -#define SUST_POP_YEARS_NEEDED 60 -#define SUST_TECH_YEARS_NEEDED 120 -#define SUST_FIRE_YEARS_NEEDED 60 - -#define SUST_MIN_POPULATION 5000 -#define SUST_MIN_TECH_LEVEL (MAX_TECH_LEVEL/2) - -#define STATS_X 232 -#define STATS_Y 428 -#define STATS_W 304 -#define STATS_H 32 - -#define GRAPHS_B_COLOUR (white(6)) - -//#define MARKET_CB_W (18*8) -#define MARKET_CB_W (17*8 - 2) -#define MARKET_CB_H (23*8) - -#define SHUFFLE_MAPPOINT_COUNT 4 - -/******* Buildings // GROUPS ************/ -#define NUM_OF_TYPES 404 -#define NUM_OF_GROUPS 50 -#define GROUP_NAME_LEN 20 - -#define GROUP_BARE 0 -#define GROUP_BARE_COLOUR (green(12)) -#define GROUP_BARE_COST 0 -#define GROUP_BARE_COST_MUL 1 -#define GROUP_BARE_BUL_COST 1 -#define GROUP_BARE_TECH 0 -#define GROUP_BARE_FIREC 0 - -#define GROUP_POWER_LINE 1 -#define GROUP_POWER_LINE_COLOUR (yellow(26)) -#define GROUP_POWER_LINE_COST 100 -#define GROUP_POWER_LINE_COST_MUL 2 -#define GROUP_POWER_LINE_BUL_COST 100 -#define GROUP_POWER_LINE_TECH 200 -#define GROUP_POWER_LINE_FIREC 0 - -#define GROUP_SOLAR_POWER 2 -#define GROUP_SOLAR_POWER_COLOUR (yellow(22)) -#define GROUP_SOLAR_POWER_COST 500000 -#define GROUP_SOLAR_POWER_COST_MUL 5 -#define GROUP_SOLAR_POWER_BUL_COST 100000 -#define GROUP_SOLAR_POWER_TECH 500 -#define GROUP_SOLAR_POWER_FIREC 33 -#define SOLAR_POWER_JOBS 50 -#define POWERS_SOLAR_OUTPUT 1800 - -#define GROUP_SUBSTATION 3 -#define GROUP_SUBSTATION_COLOUR (yellow(18)) -#define GROUP_SUBSTATION_COST 500 -#define GROUP_SUBSTATION_COST_MUL 2 -#define GROUP_SUBSTATION_BUL_COST 100 -#define GROUP_SUBSTATION_TECH 200 -#define GROUP_SUBSTATION_FIREC 50 - -#define GROUP_RESIDENCE_LL 4 -#define GROUP_RESIDENCE_LL_COLOUR (cyan(24)) -#define GROUP_RESIDENCE_LL_COST 1000 -#define GROUP_RESIDENCE_LL_COST_MUL 25 -#define GROUP_RESIDENCE_LL_BUL_COST 1000 -#define GROUP_RESIDENCE_LL_TECH 0 -#define GROUP_RESIDENCE_LL_FIREC 75 - -/* RESIDENCE?_BRM is the birth rate modifier */ -/* RESIDENCE?_DRM is the death rate modifier */ -#define RESIDENCE_BASE_BR 100 -#define RESIDENCE_BASE_DR (68*12) -#define RESIDENCE_BRM_HEALTH 5 -#define RESIDENCE1_BRM (RESIDENCE_BASE_BR*12) -#define RESIDENCE1_DRM ((RESIDENCE_BASE_DR*3)/4) -#define RESIDENCE2_BRM 0 -#define RESIDENCE2_DRM 0 -#define RESIDENCE3_BRM (RESIDENCE_BASE_BR+RESIDENCE_BASE_BR/4) -#define RESIDENCE3_DRM ((RESIDENCE_BASE_DR)/2) -#define RESIDENCE4_BRM (RESIDENCE_BASE_BR*18) -#define RESIDENCE4_DRM ((RESIDENCE_BASE_DR*3)/4) -#define RESIDENCE5_BRM (RESIDENCE_BASE_BR/2) -#define RESIDENCE5_DRM ((RESIDENCE_BASE_DR)/4) -#define RESIDENCE6_BRM 0 -#define RESIDENCE6_DRM ((RESIDENCE_BASE_DR)/4) -/* RESIDENCE_PPM is the people_pool mobitily. Higher number=less mobile. */ -#define RESIDENCE_PPM 20 - -#define GROUP_ORGANIC_FARM 5 -#define GROUP_ORGANIC_FARM_COLOUR (green(30)) -#define GROUP_ORGANIC_FARM_COST 1000 -#define GROUP_ORGANIC_FARM_COST_MUL 20 -#define GROUP_ORGANIC_FARM_BUL_COST 100 -#define GROUP_ORGANIC_FARM_TECH 0 -#define GROUP_ORGANIC_FARM_FIREC 20 - -#define GROUP_MARKET 6 -#define GROUP_MARKET_COLOUR (blue(28)) -#define GROUP_MARKET_COST 100 -#define GROUP_MARKET_COST_MUL 25 -#define GROUP_MARKET_BUL_COST 100 -#define GROUP_MARKET_TECH 0 -#define GROUP_MARKET_FIREC 80 - -#define GROUP_TRACK 7 -#define GROUP_TRACK_COLOUR 32 /* 32 is a brown */ -#define GROUP_TRACK_COST 1 -#define GROUP_TRACK_COST_MUL 25 -#define GROUP_TRACK_BUL_COST 10 -#define GROUP_TRACK_TECH 0 -#define GROUP_TRACK_FIREC 4 - -#define GROUP_COALMINE 8 -#define GROUP_COALMINE_COLOUR 0 -#define GROUP_COALMINE_COST 10000 -#define GROUP_COALMINE_COST_MUL 25 -#define GROUP_COALMINE_BUL_COST 10000 -#define GROUP_COALMINE_TECH 85 -#define GROUP_COALMINE_FIREC 85 - -#define GROUP_RAIL 9 -#define GROUP_RAIL_COLOUR (magenta(18)) -#define GROUP_RAIL_COST 500 -#define GROUP_RAIL_COST_MUL 10 -#define GROUP_RAIL_BUL_COST 1000 -#define GROUP_RAIL_TECH 180 -#define GROUP_RAIL_FIREC 6 - -#define GROUP_COAL_POWER 10 -#define GROUP_COAL_POWER_COLOUR 0 -#define GROUP_COAL_POWER_COST 100000 -#define GROUP_COAL_POWER_COST_MUL 5 -#define GROUP_COAL_POWER_BUL_COST 200000 -#define GROUP_COAL_POWER_TECH 200 -#define GROUP_COAL_POWER_FIREC 80 - -#define GROUP_ROAD 11 -#define GROUP_ROAD_COLOUR (white(18)) -#define GROUP_ROAD_COST 100 -#define GROUP_ROAD_COST_MUL 25 -#define GROUP_ROAD_BUL_COST 50 -#define GROUP_ROAD_TECH 50 -#define GROUP_ROAD_FIREC 4 - -#define GROUP_INDUSTRY_L 12 -#define GROUP_INDUSTRY_L_COLOUR (cyan(18)) -#define GROUP_INDUSTRY_L_COST 20000 -#define GROUP_INDUSTRY_L_COST_MUL 25 -#define GROUP_INDUSTRY_L_BUL_COST 20000 -#define GROUP_INDUSTRY_L_TECH 160 -#define GROUP_INDUSTRY_L_FIREC 70 - -#define GROUP_UNIVERSITY 13 -#define GROUP_UNIVERSITY_COLOUR (blue(22)) -#define GROUP_UNIVERSITY_COST 20000 -#define GROUP_UNIVERSITY_COST_MUL 25 -#define GROUP_UNIVERSITY_BUL_COST 20000 -#define GROUP_UNIVERSITY_TECH 150 -#define GROUP_UNIVERSITY_FIREC 40 - -#define GROUP_COMMUNE 14 -#define GROUP_COMMUNE_COLOUR (green(30)) -#define GROUP_COMMUNE_COST 1 -#define GROUP_COMMUNE_COST_MUL 2 -#define GROUP_COMMUNE_BUL_COST 1000 -#define GROUP_COMMUNE_TECH 0 -#define GROUP_COMMUNE_FIREC 30 - -#define GROUP_OREMINE 15 -#define GROUP_OREMINE_COLOUR (red(18)) -#define GROUP_OREMINE_COST 500 -#define GROUP_OREMINE_COST_MUL 10 -#define GROUP_OREMINE_BUL_COST 500000 -#define GROUP_OREMINE_TECH 0 -#define GROUP_OREMINE_FIREC 0 - -#define GROUP_TIP 16 -#define GROUP_TIP_COLOUR (white(16)) -#define GROUP_TIP_COST 10000 -#define GROUP_TIP_COST_MUL 25 -#define GROUP_TIP_BUL_COST 1000000 -#define GROUP_TIP_TECH 0 -#define GROUP_TIP_FIREC 50 - -#define GROUP_PORT 17 -#define GROUP_PORT_COLOUR (blue(28)) -#define GROUP_PORT_COST 100000 -#define GROUP_PORT_COST_MUL 2 -#define GROUP_PORT_BUL_COST 1000 -#define GROUP_PORT_TECH 35 -#define GROUP_PORT_FIREC 50 - -#define GROUP_INDUSTRY_H 18 -#define GROUP_INDUSTRY_H_COLOUR (7) /* colour 7 is an orange, sort of */ -#define GROUP_INDUSTRY_H_COST 50000 -#define GROUP_INDUSTRY_H_COST_MUL 20 -#define GROUP_INDUSTRY_H_BUL_COST 70000 -#define GROUP_INDUSTRY_H_TECH 170 -#define GROUP_INDUSTRY_H_FIREC 80 - -#define GROUP_PARKLAND 19 -#define GROUP_PARKLAND_COLOUR (green(31)) -#define GROUP_PARKLAND_COST 1000 -#define GROUP_PARKLAND_COST_MUL 25 -#define GROUP_PARKLAND_BUL_COST 1000 -#define GROUP_PARKLAND_TECH 2 -#define GROUP_PARKLAND_FIREC 1 - -#define GROUP_RECYCLE 20 -#define GROUP_RECYCLE_COLOUR (green(28)) -#define GROUP_RECYCLE_COST 100000 -#define GROUP_RECYCLE_COST_MUL 5 -#define GROUP_RECYCLE_BUL_COST 1000 -#define GROUP_RECYCLE_TECH 232 -#define GROUP_RECYCLE_FIREC 10 - -#define GROUP_WATER 21 -#define GROUP_WATER_COLOUR (blue(31)) -#define GROUP_WATER_COST 1000000 -#define GROUP_WATER_COST_MUL 2 -#define GROUP_WATER_BUL_COST 1000000 -#define GROUP_WATER_TECH 0 -#define GROUP_RIVER (GROUP_WATER) /* oops -- GCS: Why oops? */ -#define GROUP_WATER_FIREC 0 - -#define GROUP_HEALTH 22 -#define GROUP_HEALTH_COLOUR (green(24)) -#define GROUP_HEALTH_COST 100000 -#define GROUP_HEALTH_COST_MUL 2 -#define GROUP_HEALTH_BUL_COST 1000 -#define GROUP_HEALTH_TECH 110 -#define GROUP_HEALTH_FIREC 2 - -#define GROUP_ROCKET 23 -#define GROUP_ROCKET_COLOUR (magenta(20)) -#define GROUP_ROCKET_COST 700000 -#define GROUP_ROCKET_COST_MUL 2 -#define GROUP_ROCKET_BUL_COST 1 -#define GROUP_ROCKET_TECH 750 -#define GROUP_ROCKET_FIREC 0 - -#define GROUP_WINDMILL 24 -#define GROUP_WINDMILL_COLOUR (green(25)) -#define GROUP_WINDMILL_COST 20000 -#define GROUP_WINDMILL_COST_MUL 25 -#define GROUP_WINDMILL_BUL_COST 1000 -#define GROUP_WINDMILL_TECH 30 -#define GROUP_WINDMILL_FIREC 10 - -#define GROUP_MONUMENT 25 -#define GROUP_MONUMENT_COLOUR (white(15)) -#define GROUP_MONUMENT_COST 10000 -#define GROUP_MONUMENT_COST_MUL 25 -#define GROUP_MONUMENT_BUL_COST 1000000 -#define GROUP_MONUMENT_TECH 0 -#define GROUP_MONUMENT_FIREC 0 - -#define GROUP_SCHOOL 26 -#define GROUP_SCHOOL_COLOUR (white(15)) -#define GROUP_SCHOOL_COST 10000 -#define GROUP_SCHOOL_COST_MUL 25 -#define GROUP_SCHOOL_BUL_COST 10000 -#define GROUP_SCHOOL_TECH 1 -#define GROUP_SCHOOL_FIREC 40 - -#define GROUP_BLACKSMITH 27 -#define GROUP_BLACKSMITH_COLOUR (white(15)) -#define GROUP_BLACKSMITH_COST 5000 -#define GROUP_BLACKSMITH_COST_MUL 25 -#define GROUP_BLACKSMITH_BUL_COST 1000 -#define GROUP_BLACKSMITH_TECH 3 -#define GROUP_BLACKSMITH_FIREC 60 - -#define GROUP_MILL 28 -#define GROUP_MILL_COLOUR (white(15)) -#define GROUP_MILL_COST 10000 -#define GROUP_MILL_COST_MUL 25 -#define GROUP_MILL_BUL_COST 1000 -#define GROUP_MILL_TECH 25 -#define GROUP_MILL_FIREC 60 - -#define GROUP_POTTERY 29 -#define GROUP_POTTERY_COLOUR (red(12)) -#define GROUP_POTTERY_COST 1000 -#define GROUP_POTTERY_COST_MUL 25 -#define GROUP_POTTERY_BUL_COST 1000 -#define GROUP_POTTERY_TECH 0 -#define GROUP_POTTERY_FIREC 50 - -#define GROUP_FIRESTATION 30 -#define GROUP_FIRESTATION_COLOUR (red(20)) -#define GROUP_FIRESTATION_COST 20000 -#define GROUP_FIRESTATION_COST_MUL 10 -#define GROUP_FIRESTATION_BUL_COST 1000 -#define GROUP_FIRESTATION_TECH 22 -#define GROUP_FIRESTATION_FIREC 0 - -#define GROUP_CRICKET 31 -#define GROUP_CRICKET_COLOUR (white(20)) -#define GROUP_CRICKET_COST 2000 -#define GROUP_CRICKET_COST_MUL 3 -#define GROUP_CRICKET_BUL_COST 1000 -#define GROUP_CRICKET_TECH 12 -#define GROUP_CRICKET_FIREC 20 - -#define GROUP_BURNT 32 -#define GROUP_BURNT_COLOUR (red(30)) -#define GROUP_BURNT_COST 0 /* Unused */ -#define GROUP_BURNT_COST_MUL 1 /* Unused */ -#define GROUP_BURNT_BUL_COST 1000 -#define GROUP_BURNT_TECH 0 /* Unused */ -#define GROUP_BURNT_FIREC 0 - -#define GROUP_SHANTY 33 -#define GROUP_SHANTY_COLOUR (red(22)) -#define GROUP_SHANTY_COST 0 /* Unused */ -#define GROUP_SHANTY_COST_MUL 1 /* Unused */ -#define GROUP_SHANTY_BUL_COST 100000 -#define GROUP_SHANTY_TECH 0 /* Unused */ -#define GROUP_SHANTY_FIREC 25 - -#define SHANTY_MIN_PP 150 -#define SHANTY_POP 50 -#define DAYS_BETWEEN_SHANTY (NUMOF_DAYS_IN_MONTH*5) -#define SHANTY_GET_FOOD 50 -#define SHANTY_GET_JOBS 5 -#define SHANTY_GET_GOODS 50 -#define SHANTY_GET_COAL 1 -#define SHANTY_GET_ORE 10 -#define SHANTY_GET_STEEL 1 - -#define GROUP_FIRE 34 -#define GROUP_FIRE_COLOUR (red(30)) -#define GROUP_FIRE_COST 0 /* Unused */ -#define GROUP_FIRE_COST_MUL 1 /* Unused */ -#define GROUP_FIRE_BUL_COST 1000 -#define GROUP_FIRE_TECH 0 /* Unused */ -#define GROUP_FIRE_FIREC 0 - -#define GROUP_USED 35 -#define GROUP_USED_COLOUR (green(12)) /* Unused */ -#define GROUP_USED_COST 0 /* Unused */ -#define GROUP_USED_COST_MUL 1 /* Unused */ -#define GROUP_USED_BUL_COST 0 /* Unused */ -#define GROUP_USED_TECH 0 /* Unused */ -#define GROUP_USED_FIREC 0 /* Unused */ - -#define GROUP_RESIDENCE_ML 36 -#define GROUP_RESIDENCE_ML_COLOUR (cyan(24)) -#define GROUP_RESIDENCE_ML_COST 2000 -#define GROUP_RESIDENCE_ML_COST_MUL 25 -#define GROUP_RESIDENCE_ML_BUL_COST 1000 -#define GROUP_RESIDENCE_ML_TECH 0 -#define GROUP_RESIDENCE_ML_FIREC 75 - -#define GROUP_RESIDENCE_HL 37 -#define GROUP_RESIDENCE_HL_COLOUR (cyan(24)) -#define GROUP_RESIDENCE_HL_COST 4000 -#define GROUP_RESIDENCE_HL_COST_MUL 25 -#define GROUP_RESIDENCE_HL_BUL_COST 1000 -#define GROUP_RESIDENCE_HL_TECH 0 -#define GROUP_RESIDENCE_HL_FIREC 75 - -#define GROUP_RESIDENCE_LH 38 -#define GROUP_RESIDENCE_LH_COLOUR (cyan(24)) -#define GROUP_RESIDENCE_LH_COST 800 -#define GROUP_RESIDENCE_LH_COST_MUL 25 -#define GROUP_RESIDENCE_LH_BUL_COST 1000 -#define GROUP_RESIDENCE_LH_TECH 0 /* ?? */ -#define GROUP_RESIDENCE_LH_FIREC 75 - -#define GROUP_RESIDENCE_MH 39 -#define GROUP_RESIDENCE_MH_COLOUR (cyan(24)) -#define GROUP_RESIDENCE_MH_COST 1600 -#define GROUP_RESIDENCE_MH_COST_MUL 25 -#define GROUP_RESIDENCE_MH_BUL_COST 1000 -#define GROUP_RESIDENCE_MH_TECH 0 -#define GROUP_RESIDENCE_MH_FIREC 75 - -#define GROUP_RESIDENCE_HH 40 -#define GROUP_RESIDENCE_HH_COLOUR (cyan(24)) -#define GROUP_RESIDENCE_HH_COST 3200 -#define GROUP_RESIDENCE_HH_COST_MUL 25 -#define GROUP_RESIDENCE_HH_BUL_COST 1000 -#define GROUP_RESIDENCE_HH_TECH 0 -#define GROUP_RESIDENCE_HH_FIREC 75 - -#define GROUP_WATERWELL 41 -#define GROUP_WATERWELL_COLOUR (blue(31)) -#define GROUP_WATERWELL_COST 1 -#define GROUP_WATERWELL_COST_MUL 2 -#define GROUP_WATERWELL_BUL_COST 1 -#define GROUP_WATERWELL_TECH 0 -#define GROUP_WATERWELL_FIREC 0 - -#define GROUP_DESERT 42 -#define GROUP_DESERT_COLOUR (yellow(18)) -#define GROUP_DESERT_COST 0 -#define GROUP_DESERT_COST_MUL 1 -#define GROUP_DESERT_BUL_COST 1 -#define GROUP_DESERT_TECH 0 -#define GROUP_DESERT_FIREC 0 - -#define GROUP_TREE 43 -#define GROUP_TREE_COLOUR (green(12)) -#define GROUP_TREE_COST 0 -#define GROUP_TREE_COST_MUL 1 -#define GROUP_TREE_BUL_COST 1 -#define GROUP_TREE_TECH 0 -#define GROUP_TREE_FIREC 0 - -#define GROUP_TREE2 44 -#define GROUP_TREE2_COLOUR (green(12)) -#define GROUP_TREE2_COST 0 -#define GROUP_TREE2_COST_MUL 1 -#define GROUP_TREE2_BUL_COST 1 -#define GROUP_TREE2_TECH 0 -#define GROUP_TREE2_FIREC 0 - -#define GROUP_TREE3 45 -#define GROUP_TREE3_COLOUR (green(12)) -#define GROUP_TREE3_COST 0 -#define GROUP_TREE3_COST_MUL 1 -#define GROUP_TREE3_BUL_COST 1 -#define GROUP_TREE3_TECH 0 -#define GROUP_TREE3_FIREC 0 - -#define BRIDGE_FACTOR 500 /* a bridge is that much more expensive than the land transport */ - -#define GROUP_TRACK_BRIDGE 46 -#define GROUP_TRACK_BRIDGE_COLOUR 32 /* 32 is a brown */ -#define GROUP_TRACK_BRIDGE_COST GROUP_TRACK_COST * BRIDGE_FACTOR -#define GROUP_TRACK_BRIDGE_COST_MUL 2 -#define GROUP_TRACK_BRIDGE_BUL_COST GROUP_TRACK_BUL_COST * BRIDGE_FACTOR -#define GROUP_TRACK_BRIDGE_TECH GROUP_TRACK_TECH -#define GROUP_TRACK_BRIDGE_FIREC 0 /* unused */ - -#define GROUP_ROAD_BRIDGE 47 -#define GROUP_ROAD_BRIDGE_COLOUR (white(18)) -#define GROUP_ROAD_BRIDGE_COST GROUP_ROAD_COST * BRIDGE_FACTOR -#define GROUP_ROAD_BRIDGE_COST_MUL 2 -#define GROUP_ROAD_BRIDGE_BUL_COST GROUP_ROAD_BUL_COST * BRIDGE_FACTOR -#define GROUP_ROAD_BRIDGE_TECH GROUP_ROAD_TECH -#define GROUP_ROAD_BRIDGE_FIREC 0 - -#define GROUP_RAIL_BRIDGE 48 -#define GROUP_RAIL_BRIDGE_COLOUR (magenta(18)) -#define GROUP_RAIL_BRIDGE_COST GROUP_RAIL_COST * BRIDGE_FACTOR -#define GROUP_RAIL_BRIDGE_COST_MUL 2 -#define GROUP_RAIL_BRIDGE_BUL_COST GROUP_RAIL_BUL_COST * BRIDGE_FACTOR -#define GROUP_RAIL_BRIDGE_TECH GROUP_RAIL_TECH -#define GROUP_RAIL_BRIDGE_FIREC 0 - -#define GROUP_IS_RESIDENCE(group) \ - ((group == GROUP_RESIDENCE_LL) || \ - (group == GROUP_RESIDENCE_ML) || \ - (group == GROUP_RESIDENCE_HL) || \ - (group == GROUP_RESIDENCE_LH) || \ - (group == GROUP_RESIDENCE_MH) || \ - (group == GROUP_RESIDENCE_HH)) - -#define GROUP_IS_BARE(group) \ - ((group == GROUP_BARE) || \ - (group == GROUP_DESERT) || \ - (group == GROUP_TREE) || \ - (group == GROUP_TREE2) || \ - (group == GROUP_TREE3)) - -#define red(x) (32 + x) -#define green(x) (64 + x) -#define yellow(x) (96 + x) -#define blue(x) (128 + x) -#define magenta(x) (160 + x) -#define cyan(x) (192 + x) -#define white(x) (224 + x) +#define EX_DISCOUNT_TRIGGER_1 25000 +#define EX_DISCOUNT_TRIGGER_2 50000 +#define EX_DISCOUNT_TRIGGER_3 100000 +#define EX_DISCOUNT_TRIGGER_4 200000 +#define EX_DISCOUNT_TRIGGER_5 400000 +#define EX_DISCOUNT_TRIGGER_6 800000 -/* - ******* end of lin-city.h *********** - ***************************************** -*/ -/* FIXME : isn't it forbidden to include .h in .h ? :-) */ #include "lintypes.h" #endif /* __lin_city_h__ */ + +/** @file lincity/lin-city.h */ + diff -Nru lincity-ng-2.0/src/lincity/lintypes.cpp lincity-ng-2.9~git20150314/src/lincity/lintypes.cpp --- lincity-ng-2.0/src/lincity/lintypes.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lintypes.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -3,19 +3,1588 @@ * This file is part of lincity. * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * ---------------------------------------------------------------------- */ + +#include "lintypes.h" +#include "ConstructionManager.h" +#include "ConstructionCount.h" + #include <string.h> /* XXX: portability issue? for strcpy */ #include "lcconfig.h" #include "lin-city.h" +#include "engine.h" #include "engglobs.h" #include "lctypes.h" -#include "lintypes.h" #include "tinygettext/gettext.hpp" #include "fileutil.h" #include "gui_interface/readpng.h" #include "loadsave.h" +#include "xmlloadsave.h" +#include "all_buildings.h" +#include "transport.h" +#include "modules/all_modules.h" +#include <iostream> +#include "lincity-ng/Sound.hpp" +#include "Vehicles.h" +#include "lincity-ng/MainLincity.hpp" +#include "lincity-ng/Config.hpp" + +extern int lincitySpeed; // is defined in lincity-ng/MainLincity.cpp + +//Ground Declarations + +Ground::Ground() +{ + altitude = 0; + ecotable = 0; + wastes = 0; + pollution = 0; + water_alt = 0; + water_wast = 0; + water_next = 0; + int1 = 0; + int2 = 0; + int3 = 0; + int4 = 0; +} + +Ground::~Ground() {} + +//MapTile Declarations + +MapTile::MapTile():ground() +{ + construction = NULL; + reportingConstruction = NULL; + framesptr = NULL; + flags = 0; + type = 0; + group = 0; + pollution = 0; + ore_reserve = 0; + coal_reserve = 0; +} + +MapTile::~MapTile() +{ + //Here the order matters + if(construction) + { delete construction;} + if (framesptr) + { + framesptr->clear(); + delete framesptr; + } +} + +void MapTile::setTerrain(unsigned short new_group) +{ + this->type = 0; + this->group = new_group; + if(new_group == GROUP_WATER) + { flags |= FLAG_HAS_UNDERGROUND_WATER;} +} + +ConstructionGroup* MapTile::getTileConstructionGroup() +{ + switch (group) + { + case GROUP_BARE: return &bareConstructionGroup; break; + case GROUP_DESERT: return &desertConstructionGroup; break; + case GROUP_WATER: return &waterConstructionGroup; break; + case GROUP_TREE: return &treeConstructionGroup; break; + case GROUP_TREE2: return &tree2ConstructionGroup; break; + case GROUP_TREE3: return &tree3ConstructionGroup; break; + default: + std::cout << "invalid group of maptile at: (" << world.map_x(this) <<"," << world.map_y(this) << ")" << std::endl; + return &desertConstructionGroup; + } +} + +ResourceGroup* MapTile::getTileResourceGroup() +{ + static bool initialized = false; + static ResourceGroup* bare = 0; + static ResourceGroup* desert = 0; + static ResourceGroup* water = 0; + static ResourceGroup* tree = 0; + static ResourceGroup* tree2 = 0; + static ResourceGroup* tree3 = 0; + + if (!initialized) + { + initialized = true; + //These must match the Group names from all_modules.cpp NOT all_buldings.cpp + bare = ResourceGroup::resMap["Green"]; + desert = ResourceGroup::resMap["Desert"]; + water = ResourceGroup::resMap["Water"]; + tree = ResourceGroup::resMap["Tree"]; + tree2 = ResourceGroup::resMap["Tree2"]; + tree3 = ResourceGroup::resMap["Tree3"]; + + } + switch (group) + { + case GROUP_BARE: return bare; break; + case GROUP_DESERT: return desert; break; + case GROUP_WATER: return water; break; + case GROUP_TREE: return tree; break; + case GROUP_TREE2: return tree2; break; + case GROUP_TREE3: return tree3; break; + default: + std::cout << "invalid group of maptile at: (" << world.map_x(this) <<"," << world.map_y(this) << ")" << std::endl; + return desert; + } +} + +ConstructionGroup* MapTile::getConstructionGroup() //constructionGroup of bare land or the covering construction +{ return (reportingConstruction ? reportingConstruction->constructionGroup : getTileConstructionGroup());} + +ConstructionGroup* MapTile::getTopConstructionGroup() //constructionGroup of bare land or the actual construction +{ return (construction ? construction->constructionGroup : getTileConstructionGroup());} + +ConstructionGroup* MapTile::getLowerstVisibleConstructionGroup() +{ + if(!reportingConstruction || reportingConstruction->flags & FLAG_TRANSPARENT) + { return getTileConstructionGroup();} + else + { return getConstructionGroup();} +} + +unsigned short MapTile::getType() //type of bare land or the covering construction +{ return (reportingConstruction ? reportingConstruction->frameIt->frame : type);} + +unsigned short MapTile::getTopType() //type of bare land or the actual construction +{ return (construction ? construction->frameIt->frame : type);} + +unsigned short MapTile::getLowerstVisibleType() +{ + if(!reportingConstruction || reportingConstruction->flags & FLAG_TRANSPARENT) + { return type;} + else + { return reportingConstruction->frameIt->frame;} +} + +unsigned short MapTile::getGroup() //group of bare land or the covering construction +{ return (reportingConstruction ? reportingConstruction->constructionGroup->group : group);} + +unsigned short MapTile::getTransportGroup() //group of bare land or the covering construction +{ + unsigned short grp = getGroup(); + if (is_transport()) + { + switch(grp) + { + case GROUP_TRACK_BRIDGE: + grp = GROUP_TRACK; + break; + case GROUP_ROAD_BRIDGE: + grp = GROUP_ROAD; + break; + case GROUP_RAIL_BRIDGE: + grp = GROUP_RAIL; + break; + default: + break; + } + } + return grp; +} + +unsigned short MapTile::getTopGroup() //group of bare land or the actual construction +{ + if(!construction) //simple case + { return group;} + else if(construction == reportingConstruction) //regular construction + { return construction->constructionGroup->group;} + else // in case a construction has a chile e.g. waste burning on transport + { return (reportingConstruction ? reportingConstruction->constructionGroup->group : group);} +} + +unsigned short MapTile::getLowerstVisibleGroup() +{ + if(!reportingConstruction || reportingConstruction->flags & FLAG_TRANSPARENT) + { return group;} + else + { return reportingConstruction->constructionGroup->group;} +} + + +bool MapTile::is_bare() //true if we there is neither a covering construction nor water +{ return (!reportingConstruction) && (group != GROUP_WATER);} + +bool MapTile::is_water() //true on bridges or lakes (also under bridges) +{ return (group == GROUP_WATER);} + +bool MapTile::is_lake() //true on lakes (also under bridges) +{ return (group == GROUP_WATER) && !(flags & FLAG_IS_RIVER);} + +bool MapTile::is_river() // true on rivers (also under bridges) +{ return (flags & FLAG_IS_RIVER);} + +bool MapTile::is_visible() // true if tile is not covered by another construction. Only useful for minimap Gameview is rotated to upperleft +{ return (construction || !reportingConstruction);} + +bool MapTile::is_transport() //true on tracks, road, rails and bridges +{ return (reportingConstruction && reportingConstruction->flags & FLAG_IS_TRANSPORT);} + +bool MapTile::is_residence() //true on residences +{ + return (reportingConstruction &&( + (reportingConstruction->constructionGroup->group == GROUP_RESIDENCE_LL) + || (reportingConstruction->constructionGroup->group == GROUP_RESIDENCE_ML) + || (reportingConstruction->constructionGroup->group == GROUP_RESIDENCE_HL) + || (reportingConstruction->constructionGroup->group == GROUP_RESIDENCE_LH) + || (reportingConstruction->constructionGroup->group == GROUP_RESIDENCE_MH) + || (reportingConstruction->constructionGroup->group == GROUP_RESIDENCE_HH) ) ); +} + +void MapTile::writeTemplate() +{ + std::string xml_tag; + if ((!binary_mode && xml_template_libary.count("tile") == 0) + || (binary_mode && bin_template_libary.count(GROUP_DESERT) == 0) ) + { + + XMLTemplate * xml_tmp = new XMLTemplate("tile"); + if (!binary_mode) + { + xml_tmp->putTag("group"); + xml_tmp->add_len(sizeof(group)); + xml_tmp->putTag("type"); + xml_tmp->add_len(sizeof(type)); + xml_tmp->putTag("map_x"); + xml_tmp->add_len(sizeof(int));//has to match local var in saveMembers + xml_tmp->putTag("map_y"); + xml_tmp->add_len(sizeof(int));//has to match local var in saveMembers + } + xml_tmp->putTag("flags"); + xml_tmp->add_len(sizeof(flags)); + xml_tmp->putTag("air_pol"); + xml_tmp->add_len(sizeof(pollution)); + xml_tmp->putTag("ore"); + xml_tmp->add_len(sizeof(ore_reserve)); + xml_tmp->putTag("coal"); + xml_tmp->add_len(sizeof(coal_reserve)); + xml_tmp->putTag("altitude"); + xml_tmp->add_len(sizeof(ground.altitude)); + xml_tmp->putTag("ecotable"); + xml_tmp->add_len(sizeof(ground.ecotable)); + xml_tmp->putTag("wastes"); + xml_tmp->add_len(sizeof(ground.wastes)); + xml_tmp->putTag("grd_pol"); + xml_tmp->add_len(sizeof(ground.pollution)); + xml_tmp->putTag("water_alt"); + xml_tmp->add_len(sizeof(ground.water_alt)); + xml_tmp->putTag("water_pol"); + xml_tmp->add_len(sizeof(ground.water_pol)); + xml_tmp->putTag("water_next"); + xml_tmp->add_len(sizeof(ground.water_next)); + xml_tmp->putTag("int1"); + xml_tmp->add_len(sizeof(ground.int1)); + xml_tmp->putTag("int2"); + xml_tmp->add_len(sizeof(ground.int2)); + xml_tmp->putTag("int3"); + xml_tmp->add_len(sizeof(ground.int3)); + xml_tmp->putTag("int4"); + xml_tmp->add_len(sizeof(ground.int4)); + if (binary_mode) + { xml_tmp->set_group(GROUP_DESERT);} + } +} + + +void MapTile::saveMembers(std::ostream *os) +{ + type = type % getTileResourceGroup()->graphicsInfoVector.size(); + int x = world.map_x(this); + int y = world.map_y(this); + unsigned short head = GROUP_DESERT; + size_t cm = 0; + std::string xml_tag; + if ((!binary_mode && xml_template_libary.count("tile") == 0) + || (binary_mode && bin_template_libary.count(head) == 0) ) + { + writeTemplate(); + //std::cout << "creating xml template for tile" << std::endl; + } + XMLTemplate * xml_tmp; + if (binary_mode) + { xml_tmp = bin_template_libary[head];} + else + { + xml_tmp = xml_template_libary["tile"]; + if (os == &std::cout) + { xml_tmp->report(os);} + } + xml_tmp->rewind(); + + if (!binary_mode) + { + *os << "<tile>"; + os->flush(); + while (!xml_tmp->reached_end()) + { + xml_tag = xml_tmp->getTag(); + if (xml_tag == "map_x") {*os << x;} + else if (xml_tag == "map_y") {*os << y;} + //mapTile + else if (xml_tag == "flags") {*os << flags;} + else if (xml_tag == "type") {*os << type;} + else if (xml_tag == "group") {*os << group;} + else if (xml_tag == "air_pol") {*os << pollution;} + else if (xml_tag == "ore") {*os << ore_reserve;} + else if (xml_tag == "coal") {*os << coal_reserve;} + //ground + else if (xml_tag == "altitude") {*os << ground.altitude;} + else if (xml_tag == "ecotable") {*os << ground.ecotable;} + else if (xml_tag == "wastes") {*os << ground.wastes;} + else if (xml_tag == "grd_pol") {*os << ground.pollution;} + else if (xml_tag == "water_alt") {*os << ground.water_alt;} + else if (xml_tag == "water_pol") {*os << ground.water_pol;} + else if (xml_tag == "water_wast") {*os << ground.water_wast;} + else if (xml_tag == "water_next") {*os << ground.water_next;} + else if (xml_tag == "int1") {*os << ground.int1;} + else if (xml_tag == "int2") {*os << ground.int2;} + else if (xml_tag == "int3") {*os << ground.int3;} + else if (xml_tag == "int4") {*os << ground.int4;} + else + { + std::cout<<"Unknown Template entry "<< xml_tag << " while exporting <MapTile>"<<std::endl; + } + + *os << '\t'; + os->flush(); + xml_tmp->step(); + } + *os << "</tile>" << std::endl; + } + else + { + int idx = x + y * world.len(); + os->write( (char*)&head,sizeof(head)); //Head aka GROUP_DESERT + os->write( (char*)&group,sizeof(group)); + os->write( (char*)&type,sizeof(type)); + os->write( (char*)&idx,sizeof(idx)); + + while (!xml_tmp->reached_end()) + { + xml_tag = xml_tmp->getTag(); + xml_tmp->step(); + //mapTile + if (xml_tag == "flags") {os->write( (char*)&flags,sizeof(flags));cm+=sizeof(flags);} + else if (xml_tag == "air_pol") {os->write( (char*)&pollution,sizeof(pollution));cm+=sizeof(pollution);} + else if (xml_tag == "ore") {os->write( (char*)&ore_reserve,sizeof(ore_reserve));cm+=sizeof(ore_reserve);} + else if (xml_tag == "coal") {os->write( (char*)&coal_reserve,sizeof(coal_reserve));cm+=sizeof(coal_reserve);} + //ground + else if (xml_tag == "altitude") {os->write( (char*)&ground.altitude,sizeof(ground.altitude));cm+=sizeof(ground.altitude);} + else if (xml_tag == "ecotable") {os->write( (char*)&ground.ecotable,sizeof(ground.ecotable));cm+=sizeof(ground.ecotable);} + else if (xml_tag == "wastes") {os->write( (char*)&ground.wastes,sizeof(ground.wastes));cm+=sizeof(ground.wastes);} + else if (xml_tag == "grd_pol") {os->write( (char*)&ground.pollution,sizeof(ground.pollution));cm+=sizeof(ground.pollution);} + else if (xml_tag == "water_alt") {os->write( (char*)&ground.water_alt,sizeof(ground.water_alt));cm+=sizeof(ground.water_alt);} + else if (xml_tag == "water_pol") {os->write( (char*)&ground.water_pol,sizeof(ground.water_pol));cm+=sizeof(ground.water_pol);} + else if (xml_tag == "water_wast") {os->write( (char*)&ground.water_wast,sizeof(ground.water_wast));cm+=sizeof(ground.water_wast);} + else if (xml_tag == "water_next") {os->write( (char*)&ground.water_next,sizeof(ground.water_next));cm+=sizeof(ground.water_next);} + else if (xml_tag == "int1") {os->write( (char*)&ground.int1,sizeof(ground.int1));cm+=sizeof(ground.int1);} + else if (xml_tag == "int2") {os->write( (char*)&ground.int2,sizeof(ground.int2));cm+=sizeof(ground.int2);} + else if (xml_tag == "int3") {os->write( (char*)&ground.int3,sizeof(ground.int3));cm+=sizeof(ground.int3);} + else if (xml_tag == "int4") {os->write( (char*)&ground.int4,sizeof(ground.int4));cm+=sizeof(ground.int4);} + else + { + std::cout<<"Unknown Template entry "<< xml_tag << " while exporting <MapTile>"<<std::endl; + } + } + //std::cout << "cm/len: " << cm << "/" << xml_tmp->len() << std::endl; + assert(cm == xml_tmp->len()); + } +} + +std::list<ExtraFrame>::iterator MapTile::createframe(void) +{ + if(!framesptr) + { framesptr = new std::list<ExtraFrame>;} + framesptr->resize(framesptr->size() + 1); + std::list<ExtraFrame>::iterator frit = framesptr->end(); + std::advance(frit, -1); + return frit; //the last position +} + +void MapTile::killframe(std::list<ExtraFrame>::iterator it) +{ + //what would actually happen if "it" belongs to another maptile? + framesptr->erase(it); + if (framesptr->empty()) + { + delete framesptr; + framesptr = NULL; + } +} + + +//Construction Declarations + +const char *commodityNames[] = + { + N_("Food"), + N_("Jobs"), + N_("Coal"), + N_("Goods"), + N_("Ore"), + N_("Steel"), + N_("Waste"), + N_("kWh"), + N_("MWh"), + N_("Water"), + "Unknown", + "Unknown", + "Unknown", + }; + +std::string Construction::getStuffName(Commodities stuff_id) +{ + return commodityNames[stuff_id]; +} + +void Construction::list_commodities(int * i) +{ + /* + Lists all current commodities of a construction in MPS area + Groups commodities by incomming, outgoing, twoway and inactive + */ + + std::map<Construction::Commodities, int>::iterator stuff_it; + if (! (flags & FLAG_EVACUATE)) + { + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + if(constructionGroup->commodityRuleCount[stuff_it->first].take + && ! constructionGroup->commodityRuleCount[stuff_it->first].give + && *i < 14) + { + mps_store_ssddp(*i,"--> ",commodityNames[stuff_it->first], stuff_it->second, constructionGroup->commodityRuleCount[stuff_it->first].maxload); + ++*i; + }//endif + } //endfor + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + if(constructionGroup->commodityRuleCount[stuff_it->first].give + && ! constructionGroup->commodityRuleCount[stuff_it->first].take + && *i<14) + { + mps_store_ssddp(*i,"<-- ",commodityNames[stuff_it->first], stuff_it->second, constructionGroup->commodityRuleCount[stuff_it->first].maxload); + ++*i; + }//endif + }//endfor + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + if(constructionGroup->commodityRuleCount[stuff_it->first].give + && constructionGroup->commodityRuleCount[stuff_it->first].take + && *i<14) + { + mps_store_ssddp(*i,"<->",commodityNames[stuff_it->first], stuff_it->second, constructionGroup->commodityRuleCount[stuff_it->first].maxload); + ++*i; + }//endif + }//endfor + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + if((!constructionGroup->commodityRuleCount[stuff_it->first].give + && !constructionGroup->commodityRuleCount[stuff_it->first].take) + && *i<14) + { + mps_store_ssddp(*i,"--- ",commodityNames[stuff_it->first], stuff_it->second, constructionGroup->commodityRuleCount[stuff_it->first].maxload); + ++*i; + }//endif + }//endfor + } + else // FLAG_EVACUATE + { + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + if(*i<14) + { + mps_store_ssddp(*i,"<< ",commodityNames[stuff_it->first], stuff_it->second, constructionGroup->commodityRuleCount[stuff_it->first].maxload); + ++*i; + }//endif + }//endfor + } +} + +void Construction::initialize_commodities(void) +{ + std::map<Commodities,CommodityRule>::iterator stuff_it; + for(stuff_it = constructionGroup->commodityRuleCount.begin() ; stuff_it != constructionGroup->commodityRuleCount.end() ; stuff_it++) + { + commodityCount[stuff_it->first] = 0; + setMemberSaved(&commodityCount[stuff_it->first], commodityNames[stuff_it->first]); + } +} + +void Construction::init_resources() +{ + frameIt = world(x,y)->createframe(); + ResourceGroup *resGroup = ResourceGroup::resMap[constructionGroup->resourceID]; + if (resGroup) + { + soundGroup = resGroup; + //graphicsGroup = resGroup; + frameIt->resourceGroup = resGroup; + //std::cout << "graphics for " << constructionGroup->name << "at " << x << ", " << y << std::endl; + } +#ifdef DEBUG + else + { + std::cout << "missing sounds and graphics for:" << constructionGroup->name << std::endl; + } +#endif +} + +void Construction::bootstrap_commodities(int percent) +{ + std::map<Commodities,CommodityRule>::iterator stuff_it; + for(stuff_it = constructionGroup->commodityRuleCount.begin() ; stuff_it != constructionGroup->commodityRuleCount.end() ; stuff_it++) + { + if (stuff_it->first != STUFF_WASTE) + { commodityCount[stuff_it->first] = percent * stuff_it->second.maxload /100;} + } +} + +void Construction::report_commodities(void) +{ + std::map<Commodities, int>::iterator stuff_it; + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + tstat_census[stuff_it->first] += stuff_it->second; + tstat_capacities[stuff_it->first] += constructionGroup->commodityRuleCount[stuff_it->first].maxload; + } + +} + +void Construction::setCommodityRulesSaved(std::map<Commodities,CommodityRule> * stuffRuleCount) +{ + std::map<Commodities,CommodityRule>::iterator stuff_it; + std::string giveStr = "give_"; + std::string takeStr = "take_"; + for( stuff_it = stuffRuleCount->begin() ; stuff_it != stuffRuleCount->end() ; stuff_it++) + { + setMemberSaved(&(stuff_it->second.give), giveStr + commodityNames[stuff_it->first]); + setMemberSaved(&(stuff_it->second.take), takeStr + commodityNames[stuff_it->first]); + } +} + +int Construction::loadMember(std::string const &xml_tag, std::string const &xml_val) +{ + std::istringstream iss; + iss.str(xml_val); + if(memberRuleCount.count(xml_tag)) + { + switch (memberRuleCount[xml_tag].memberType) + { + case TYPE_BOOL: + iss>>*static_cast<bool *>(memberRuleCount[xml_tag].ptr); + break; + case TYPE_INT: + iss>>*static_cast<int *>(memberRuleCount[xml_tag].ptr); + break; + case TYPE_USHORT: + iss>>*static_cast<unsigned short *>(memberRuleCount[xml_tag].ptr); + break; + case TYPE_DOUBLE: + iss>>*static_cast<double *>(memberRuleCount[xml_tag].ptr); + break; + case TYPE_FLOAT: + iss>>*static_cast<float *>(memberRuleCount[xml_tag].ptr); + break; + } + return 1; + } + else + { + //return silently in case of non optional xml tags + return 0; + } +} + +int Construction::readbinaryMember(std::string const &xml_tag, gzFile fp) +{ + size_t s_t = 0; +// if(memberRuleCount.count(xml_tag)) +// { + switch (memberRuleCount[xml_tag].memberType) + { + case TYPE_BOOL: + s_t = sizeof(bool); + break; + case TYPE_INT: + s_t = sizeof(int); + break; + case TYPE_USHORT: + s_t = sizeof(short); + break; + case TYPE_DOUBLE: + s_t = sizeof(double); + break; + case TYPE_FLOAT: + s_t = sizeof(float); + break; + } + gzread(fp,(char*)(memberRuleCount[xml_tag].ptr),s_t); + return s_t; +/* } + else + { + assert(false); + return 0; + } +*/ +} + +void Construction::writeTemplate() +{ + + std::string name; + XMLTemplate * xml_tmp; + unsigned short head = constructionGroup->group; + if ((flags&FLAG_IS_TRANSPORT) && !binary_mode) + { name = "Transport";} + else + { name = constructionGroup->name;} + + if ((!binary_mode && xml_template_libary.count(name) == 0)|| + (binary_mode && bin_template_libary.count(head) == 0)) + { + xml_tmp = new XMLTemplate(name); + if (!binary_mode) + { + xml_tmp->putTag("Group"); + //xml_tmp->putTag("type"); + xml_tmp->putTag("map_x"); + xml_tmp->putTag("map_y"); + } + std::map<std::string, MemberRule>::iterator member_it; + for(member_it = memberRuleCount.begin() ; member_it != memberRuleCount.end() ; member_it++) + { + xml_tmp->putTag(member_it->first); + size_t s_t = 4; + switch (member_it->second.memberType) + { + case TYPE_BOOL: + s_t = sizeof(bool); + break; + case TYPE_INT: + s_t = sizeof(int); + break; + case TYPE_USHORT: + s_t = sizeof(unsigned short); + break; + case TYPE_DOUBLE: + s_t = sizeof(double); + break; + case TYPE_FLOAT: + s_t = sizeof(float); + break; + } + xml_tmp->add_len(s_t); + } + xml_tmp->rewind(); + if (binary_mode) + { xml_tmp->set_group(head);} + } +} + +void Construction::saveMembers(std::ostream *os) +{ + //make sure all frames are actually valid + if (frameIt->resourceGroup->images_loaded && frameIt->resourceGroup->graphicsInfoVector.size()) + { frameIt->frame = frameIt->frame % frameIt->resourceGroup->graphicsInfoVector.size();} + std::string name; + unsigned short head = constructionGroup->group; + if (flags&FLAG_IS_TRANSPORT && !binary_mode) + { name = "Transport";} + else + { name = constructionGroup->name;} + if ((!binary_mode && xml_template_libary.count(name) == 0)|| + (binary_mode && bin_template_libary.count(head) == 0)) + { writeTemplate();} + XMLTemplate * xml_tmp; + + if (binary_mode) + { xml_tmp = bin_template_libary[head];} + else + { + xml_tmp = xml_template_libary[name]; + if (os == &std::cout) + { xml_tmp->report(os);} + } + xml_tmp->rewind(); + size_t checksum = 0; + std::map<std::string, MemberRule>::iterator member_it; + if (binary_mode) + { //Mandatory header for binary files (before actual template) + int idx = x + y * world.len(); + os->write( (char*) &head, sizeof(head)); + os->write( (char*) &constructionGroup->group, sizeof(constructionGroup->group)); + //compability hack for type based bin games + if(XML_LOADSAVE_VERSION < 1328) + { os->write( (char*) &constructionGroup->group, sizeof(constructionGroup->group));} + os->write( (char*) &idx, sizeof(idx)); + } + else + { // Header for txt mode (part of template) + *os <<"<" << name << ">" << constructionGroup->group << "\t"; + xml_tmp->step(); + //*os << type << "\t"; + //xml_tmp->step(); + *os << x << "\t"; + xml_tmp->step(); + *os << y << "\t"; + xml_tmp->step(); + os->flush(); + } + while (!xml_tmp->reached_end()) + { + member_it = memberRuleCount.find(xml_tmp->getTag()); + if (member_it != memberRuleCount.end()) + { + + if (!binary_mode) + { + switch (member_it->second.memberType) + { + case TYPE_BOOL: + *os << *static_cast<bool *>(member_it->second.ptr); + break; + case TYPE_INT: + *os << *static_cast<int *>(member_it->second.ptr); + break; + case TYPE_USHORT: + *os << *static_cast<unsigned short *>(member_it->second.ptr); + break; + case TYPE_DOUBLE: + *os << *static_cast<double *>(member_it->second.ptr); + break; + case TYPE_FLOAT: + *os << *static_cast<float *>(member_it->second.ptr); + break; + } + *os << '\t'; + } + else //binary mode + { + size_t s_t = 4; + switch (member_it->second.memberType) + { + case TYPE_BOOL: + s_t = sizeof(bool); + break; + case TYPE_INT: + s_t = sizeof(int); + break; + case TYPE_USHORT: + s_t = sizeof(unsigned short); + break; + case TYPE_DOUBLE: + s_t = sizeof(double); + break; + case TYPE_FLOAT: + s_t = sizeof(float); + break; + } + os->write( (char*) member_it->second.ptr,s_t); + checksum += s_t; + } + } + else + { std::cout << "ignored " << xml_tmp->getTag() << " in " << name << " template." <<std::endl;} + xml_tmp->step(); + } + if (!binary_mode) + { *os << "</" << name << ">" << std::endl;} + else + { + if (xml_tmp->len() != checksum) + { + std::cout << xml_tmp->len() << " != " << checksum << std::endl; + assert(checksum == xml_tmp->len()); + } + } +} + +//use this before deleting a construction. Construction requests check independently against NULL +void Construction::detach() +{ + //std::cout << "detaching: " << constructionGroup->name << std::endl; + ::constructionCount.remove_construction(this); + if(world(x,y)->construction == this) + { + world(x,y)->construction = NULL; + world(x,y)->killframe(frameIt); +/* + world(x,y)->framesptr->erase(frameIt); + if(world(x,y)->framesptr->empty()) + { + delete world(x,y)->framesptr; + world(x,y)->framesptr = NULL; + } +*/ + } + + for (unsigned short i = 0; i < constructionGroup->size; ++i) + { + for (unsigned short j = 0; j < constructionGroup->size; ++j) + { + world(x + j, y + i)->flags &= (~FLAG_INVISIBLE); + // constructions may have children e.g. waste burning markets/shanties + Construction* child = world(x+j,y+i)->construction; + if(child) + { + //std::cout << "killing child: " << world(x+j,y+i)->construction->constructionGroup->name << std::endl; + ::constructionCount.remove_construction(child); + world(x+j,y+i)->killframe(child->frameIt); + delete child; + child = NULL; + world(x+j,y+i)->construction = NULL; + } + world(x+j,y+i)->reportingConstruction = NULL; + } + } + deneighborize(); +} + +void Construction::deneighborize() +{ + for(size_t i = 0; i < neighbors.size(); ++i) + { + std::vector<Construction*> *neib = &(neighbors[i]->neighbors); + std::vector<Construction*>::iterator neib_it = neib->begin(); + while(neib_it != neib->end() && *neib_it != this) + {++neib_it;} +/*#ifdef DEBUG + assert(neib_it != neib->end()); +#endif*/ + neib->erase(neib_it); + } + neighbors.clear(); + for(size_t i = 0; i < partners.size(); ++i) + { + std::vector<Construction*> *partner = &(partners[i]->partners); + std::vector<Construction*>::iterator partner_it = partner->begin(); + while(partner_it != partner->end() && *partner_it != this) + {++partner_it;} +/*#ifdef DEBUG + assert(partner_it != partner->end()); +#endif*/ + partner->erase(partner_it); + } + partners.clear(); + if (constructionGroup->group == GROUP_POWER_LINE) + { + world(x + 1, y)->flags &= ~FLAG_POWER_CABLES_90; + world(x - 1, y)->flags &= ~FLAG_POWER_CABLES_90; + world(x, y + 1)->flags &= ~FLAG_POWER_CABLES_0; + world(x, y - 1)->flags &= ~FLAG_POWER_CABLES_0; + } +} + + +void Construction::neighborize() +{ +//skip ghosts (aka burning waste) and powerlines here + if(!(flags & (FLAG_IS_GHOST)) + && (constructionGroup->group != GROUP_FIRE) + && (constructionGroup->group != GROUP_POWER_LINE) ) + { + if(flags & FLAG_IS_TRANSPORT)//search adjacent tiles only + { + Construction* cst = NULL; + Construction* cst1 = NULL; + Construction* cst2 = NULL; + Construction* cst3 = NULL; + Construction* cst4 = NULL; + unsigned short size = constructionGroup->size; + for (unsigned short edge = 0; edge < size; ++edge) + { + //here we rely on invisible edge tiles + cst = world(x - 1,y + edge)->reportingConstruction; + if(cst && cst != cst1 && !(cst->flags & (FLAG_IS_GHOST)) + && (cst->constructionGroup->group != GROUP_FIRE) + && (cst->constructionGroup->group != GROUP_POWER_LINE) ) + { link_to(cst1 = cst);} + cst = world(x + edge,y - 1)->reportingConstruction; + if(cst && cst != cst2 && !(cst->flags & (FLAG_IS_GHOST)) + && (cst->constructionGroup->group != GROUP_FIRE) + && (cst->constructionGroup->group != GROUP_POWER_LINE) ) + { link_to(cst2 = cst);} + cst = world(x + size,y + edge)->reportingConstruction; + if(cst && cst != cst3 && !(cst->flags & (FLAG_IS_GHOST)) + && (cst->constructionGroup->group != GROUP_FIRE) + && (cst->constructionGroup->group != GROUP_POWER_LINE) ) + { link_to(cst3 = cst);} + cst = world(x + edge,y + size)->reportingConstruction; + if(cst && cst != cst4 && !(cst->flags & (FLAG_IS_GHOST)) + && (cst->constructionGroup->group != GROUP_FIRE) + && (cst->constructionGroup->group != GROUP_POWER_LINE) ) + { link_to(cst4 = cst);} + } + } + else // search full market range for constructions + { + int tmp; + int lenm1 = world.len()-1; + tmp = x - GROUP_MARKET_RANGE - GROUP_MARKET_SIZE + 1; + int xs = (tmp < 1) ? 1 : tmp; + tmp = y - GROUP_MARKET_RANGE - GROUP_MARKET_SIZE + 1; + int ys = (tmp < 1)? 1 : tmp; + tmp = x + GROUP_MARKET_RANGE + 1; + int xe = (tmp > lenm1) ? lenm1 : tmp; + tmp = y + GROUP_MARKET_RANGE + 1; + int ye = (tmp > lenm1)? lenm1 : tmp; + + for(int yy = ys; yy < ye; ++yy) + { + for(int xx = xs; xx < xe; ++xx) + { + //dont search at home + if(((xx == x ) && (yy == y))) + { continue;} + if(world(xx,yy)->construction) //be unique + { + Construction *cst = world(xx,yy)->reportingConstruction; //stick with reporting + if((cst->constructionGroup->group == GROUP_FIRE) + || (cst->constructionGroup->group == GROUP_POWER_LINE) ) + { continue;} + //will attempt to make a link + link_to(cst); + } + } + + } + } + } +} + +void Construction::link_to(Construction* other) +{ +/* + std::cout << "new link requested : " << constructionGroup->name << "(" << x << "," << y << ") - " + << other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; +*/ +//Theses tests are only for rules of the game, simulation would run happily with duplicate/oneway links +/*#ifdef DEBUG + std::vector<Construction*>::iterator neib_it = neighbors.begin(); + bool ignore = false; + while(neib_it != neighbors.end() && *neib_it != other) + {++neib_it;} + + if(neib_it != neighbors.end()) + { + std::cout << "duplicate neighbor : " << constructionGroup->name << "(" << x << "," << y << ") - " + << other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + ignore = true; + } + neib_it = partners.begin(); + while(neib_it != partners.end() && *neib_it != other) + {++neib_it;} + + if(neib_it != partners.end()) + { + std::cout << "duplicate partner : " << constructionGroup->name << "(" << x << "," << y << ") - " + << other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + ignore = true; + } + if (this == other) + { + std::cout << "home link error : " << constructionGroup->name << "(" << x << "," << y << ") - " + << other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + ignore = true; + } + if(ignore) + { return;} +#endif*/ + bool useful = false; + Commodities stuff_ID; + std::map<Commodities, int>::iterator stuff_it; + for(stuff_it = commodityCount.begin() ;!useful && stuff_it != commodityCount.end() ; stuff_it++ ) + { + stuff_ID = stuff_it->first; + if(other->commodityCount.count(stuff_ID)) + { + useful=((constructionGroup->commodityRuleCount[stuff_ID].take && + other->constructionGroup->commodityRuleCount[stuff_ID].give) + || + (constructionGroup->commodityRuleCount[stuff_ID].give && + other->constructionGroup->commodityRuleCount[stuff_ID].take)); + } + } + if (useful) + { + if(constructionGroup->group == GROUP_POWER_LINE) + { + neighbors.push_back(other); + other->neighbors.push_back(this); + //std::cout << "power link : " << constructionGroup->name << "(" << x << "," << y << ") - " + //<< other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + return; + } + int vec_x = other->x - x; + int vec_y = other->y - y; + int ns = other->constructionGroup->size; + int s = constructionGroup->size; + //Check if *this is adjacent to *other + if(!(((vec_x == s) || (vec_x == -ns)) && ((vec_y == s) || (vec_y == -ns))) && + (((vec_x <= s) && (vec_x >= -ns)) && ((vec_y <= s) && (vec_y >= -ns)))) + { + neighbors.push_back(other); + other->neighbors.push_back(this); + //std::cout << "neighbor : " << constructionGroup->name << "(" << x << "," << y << ") - " + //<< other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + } + //transport may never be a distant partner + else if(! ((flags | other->flags) & FLAG_IS_TRANSPORT)) + { + if ((other->constructionGroup->group == GROUP_MARKET)^(constructionGroup->group == GROUP_MARKET)) + { + partners.push_back(other); + other->partners.push_back(this); + //std::cout << "partner : " << constructionGroup->name << "(" << x << "," << y << ") - " + //<< other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + } + //else + //std::cout << "rejected connection : " << constructionGroup->name << "(" << x << "," << y << ") - " + //<< other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + } + //else + //std::cout << "to far transport : " << constructionGroup->name << "(" << x << "," << y << ") - " + //<< other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; + } + //else + //std::cout << "useless connection : " << constructionGroup->name << "(" << x << "," << y << ") - " + //<< other->constructionGroup->name << "(" << other->x << "," << other->y << ")" << std::endl; +} + +int Construction::countPowercables(int mask) +{ + //must match mask definition from connect_transport() in transport.cpp + //y-1 //mask & 8 + //x-1 //mask & 4 + //x+size //mask & 2 + //y+size //mask & 1 + unsigned short size = constructionGroup->size; + int count = 0; + + for(unsigned short i = 0; i < size; ++i) + { + if( (mask & 8) && + world(x + i, y - 1)->flags & FLAG_POWER_CABLES_0 ) + {++count;} + + if( (mask & 4) && + world(x - 1, y + i)->flags & FLAG_POWER_CABLES_90 ) + { ++count;} + + if( (mask & 2) + && world(x + size, y + i)->flags & FLAG_POWER_CABLES_90 ) + { ++count;} + + if( (mask & 1) && + world(x + i, y + size)->flags & FLAG_POWER_CABLES_0 ) + { ++count;} + + } //end for size +/* //TODO needs changes in GameView in order to be actually drawn + if (constructionGroup == &substationConstructionGroup ) + { + //here size = 2 + world(x+1,y)->flags &= (world(x + 2, y)->flags & FLAG_POWER_CABLES_90); + world(x,y+1)->flags &= (world(x, y + 2)->flags & FLAG_POWER_CABLES_0); + } +*/ + return count; +} + + + + +int Construction::tellstuff(Commodities stuff_ID, int center_ratio) //called by Minimap and connecttransport +{ + if (commodityCount.count(stuff_ID)) + { + int loc_lvl = commodityCount[stuff_ID]; + int loc_cap = constructionGroup->commodityRuleCount[stuff_ID].maxload; + if ((flags & FLAG_EVACUATE) && (center_ratio != -2)) + { return (loc_lvl>1)?loc_lvl:-1;} + +/*#ifdef DEBUG + if (loc_lvl > loc_cap) + { + std::cout<<"fixed "<<commodityNames[stuff_ID]<<" > maxload at "<<constructionGroup->name<<" x,y = "<<x<<","<<y<<std::endl; + commodityCount[stuff_ID] = loc_cap; + loc_lvl = loc_cap; + } + if (loc_lvl < 0) + { + std::cout<<"fixed "<<commodityNames[stuff_ID]<<" < 0 at "<<constructionGroup->name<<" x,y = "<<x<<","<<y<<std::endl; + commodityCount[stuff_ID] = loc_cap; + loc_lvl = 0; + } + + if (loc_cap < 1) + { + std::cout<<"maxload "<<commodityNames[stuff_ID]<<" <= 0 error at "<<constructionGroup->name<<" x,y = "<<x<<","<<y<<std::endl; + } +#endif*/ + int loc_ratio = loc_lvl * TRANSPORT_QUANTA / (loc_cap); + //Tell actual stock if we would tentatively participate in transport + if ((center_ratio < 0) || ( + loc_ratio>center_ratio?constructionGroup->commodityRuleCount[stuff_ID].give: + constructionGroup->commodityRuleCount[stuff_ID].take) ) + { return (loc_ratio);} + } + return -1; +} + +void Construction::trade() +{ + int ratio, cap, lvl, center_lvl, center_cap; + int traffic, max_traffic; + Commodities stuff_ID; + const size_t neighsize = neighbors.size(); + bool lvls[neighsize]; + std::map<Commodities, int>::iterator stuff_it; + Transport *transport = NULL; + Powerline *powerline = NULL; + if(flags & FLAG_IS_TRANSPORT) + { transport = dynamic_cast<Transport*>(this);} + else if(constructionGroup->group == GROUP_POWER_LINE) + { powerline = dynamic_cast<Powerline*>(this);} + /*begin for over all different stuff*/ + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++ ) + { + stuff_ID = stuff_it->first; + center_lvl = stuff_it->second; + center_cap = constructionGroup->commodityRuleCount[stuff_ID].maxload; + if(flags & FLAG_EVACUATE) + { + if(center_lvl > 0) + { center_lvl = center_cap;} + else + { continue;} // next commodity + } + //first order approximation for ratio + ratio = (center_lvl * TRANSPORT_QUANTA / (center_cap) ); + lvl = center_lvl; + cap = center_cap; + for(unsigned int i = 0; i < neighsize; ++i) + { + Construction *pear = neighbors[i]; + lvls[i] = false; + if(pear->commodityCount.count(stuff_ID)) + { + int lvlsi = pear->commodityCount[stuff_ID]; + int capsi = pear->constructionGroup->commodityRuleCount[stuff_ID].maxload; + if(!(pear->flags & FLAG_EVACUATE)) + { + int pearat = lvlsi * TRANSPORT_QUANTA / capsi; + //only consider stuff that would tentatively move + if(((pearat > ratio)&&!(constructionGroup->commodityRuleCount[stuff_ID].take && + pear->constructionGroup->commodityRuleCount[stuff_ID].give)) || + ((pearat < ratio)&&!(constructionGroup->commodityRuleCount[stuff_ID].give && + pear->constructionGroup->commodityRuleCount[stuff_ID].take))) + { continue;} + lvl += lvlsi; + cap += capsi; + } + lvls[i] = true; + } + } + ratio = lvl * TRANSPORT_QUANTA / cap; + max_traffic = 0; + int old_center = center_lvl; + //make flow towards ratio + for(unsigned int i = 0; i < neighsize; ++i) + { + if(lvls[i]) + { + traffic = neighbors[i]->equilibrate_stuff(¢er_lvl, center_cap, ratio, stuff_ID, constructionGroup); + if( traffic > max_traffic ) + { max_traffic = traffic;} + } + } + int flow = center_lvl - old_center; + //do some smoothing to suppress fluctuations from random order + // max possible 92.8% + if(transport) //Special for transport + { + transport->trafficCount[stuff_ID] = (9 * transport->trafficCount[stuff_ID] + max_traffic) / 10; + if(lincitySpeed != fast_time_for_year + && getConfig()->carsEnabled + && 100 * max_traffic * TRANSPORT_RATE / TRANSPORT_QUANTA > 2 + && world(x,y)->getTransportGroup() == GROUP_ROAD) + { + int yield = 50 * max_traffic * TRANSPORT_RATE / TRANSPORT_QUANTA; + if(lincitySpeed == MED_TIME_FOR_YEAR) // compensate for overall animation + { yield = (yield+1)/2;} + switch (stuff_ID) + { + case STUFF_JOBS : + if((rand()%COMMUTER_TRAFFIC_RATE) < (yield+1)/2 + && world(x,y)->framesptr //useful check in case the road is bulldozed + && world(x,y)->framesptr->size() < 2) //only generate cars on emtpy streets + { new Vehicle(x, y, VEHICLE_BLUECAR, + (flow > 0)? VEHICLE_STRATEGY_MAXIMIZE : VEHICLE_STRATEGY_MINIMIZE);} + break; + default: + break; + } + } + } + else if(powerline) //Special for powerlines + { + powerline->trafficCount[stuff_ID] = (9 * powerline->trafficCount[stuff_ID] + max_traffic) / 10; + for(unsigned int i = 0; i < neighsize; ++i) + { + if((powerline->anim_counter == 0) + && !(neighbors[i]->constructionGroup->group == GROUP_POWER_LINE) + && neighbors[i]->constructionGroup->commodityRuleCount[stuff_ID].give + && (neighbors[i]->commodityCount[stuff_ID] > 0)) + { powerline->anim_counter = POWER_MODULUS + rand()%POWER_MODULUS;} + if((powerline->flashing && (neighbors[i]->constructionGroup->group == GROUP_POWER_LINE))) + { ConstructionManager::submitRequest(new PowerLineFlashRequest(neighbors[i]));} + } + } + + stuff_it->second += flow; //update center_lvl + } //endfor all different STUFF +} + +int Construction::equilibrate_stuff(int *rem_lvl, int rem_cap , int ratio, Commodities stuff_ID, ConstructionGroup * rem_cstGroup) +{ + if (commodityCount.count(stuff_ID) ) // we know stuff_id + { + int flow, traffic; + int *loc_lvl; + int loc_cap; + loc_lvl = &(commodityCount[stuff_ID]); + loc_cap = constructionGroup->commodityRuleCount[stuff_ID].maxload; + if (!(flags & FLAG_EVACUATE)) + { + flow = (ratio * (loc_cap) / TRANSPORT_QUANTA) - (*loc_lvl); + if (((flow > 0) && (!(constructionGroup->commodityRuleCount[stuff_ID].take && + rem_cstGroup->commodityRuleCount[stuff_ID].give) )) + || ((flow < 0) && !(constructionGroup->commodityRuleCount[stuff_ID].give && + rem_cstGroup->commodityRuleCount[stuff_ID].take) )) + { //construction refuses the flow + return 0; + } + if (flow > 0) + { + if (flow * TRANSPORT_RATE > rem_cap ) + { flow = rem_cap / TRANSPORT_RATE;} + if (flow > *rem_lvl) + { flow = *rem_lvl;} + } + else if (flow < 0) + { + if(-flow * TRANSPORT_RATE > rem_cap) + { flow = - rem_cap / TRANSPORT_RATE;} + if(-flow > (rem_cap-*rem_lvl)) + { flow = -(rem_cap-*rem_lvl);} + } + //std::cout.flush(); + if (!(flags & FLAG_IS_TRANSPORT) && (flow > 0) + && (constructionGroup->group != GROUP_MARKET)) + //something is given to a consumer + { + switch (stuff_ID) + { + case (STUFF_JOBS) : + income_tax += flow; + break; + case (STUFF_GOODS) : + goods_tax += flow; + goods_used += flow; + break; + case (STUFF_COAL) : + coal_tax += flow; + break; + default: + break; + } + } + } + else // we are evacuating + { + flow = -(rem_cap-*rem_lvl); + if (-flow > *loc_lvl) + { flow = -*loc_lvl;} + } + traffic = flow * TRANSPORT_QUANTA / rem_cap; + // incomming and outgoing traffic dont cancel but add up + if (traffic < 0) + { + traffic = -traffic; + } + *loc_lvl += flow; + *rem_lvl -= flow; + return traffic; + } + return -1; //there was nothing to handle +} + +void Construction::playSound() +{ + int s = soundGroup->chunks.size(); + if(soundGroup->sounds_loaded && s) + { getSound()->playASound( soundGroup->chunks[ rand()%s ] );} +} + + + +//ConstructionGroup Declarations + +int ConstructionGroup::getCosts() { + return static_cast<int> + (cost * (1.0f + (cost_mul * tech_level) / static_cast<float>(MAX_TECH_LEVEL))); +} + +int ConstructionGroup::placeItem(int x, int y) +{ + + //std::cout << "building: " << tmpConstr->constructionGroup->name << "(" << x << "," << y << ")" << std::endl; + //enforce empty site + //unsigned short size = tmpConstr->constructionGroup->size; + for (unsigned short i = 0; i < size; i++) + { + for (unsigned short j = 0; j < size; j++) + { + if (world(x+j, y+i)->reportingConstruction) + { + ConstructionManager::executeRequest + ( new ConstructionDeletionRequest(world(x+j, y+i)->reportingConstruction)); + } + } + } + + + Construction *tmpConstr = createConstruction(x, y); +#ifdef DEBUG + if (tmpConstr == NULL) + { + std::cout << "failed to create " << name << " at " << "(" << x << ", " << y << ")" << std::endl; + return -1; + } + //default resources if no manual settings for construction + if (!tmpConstr->soundGroup) + { + std::cout << "Warning no explicit sound, graphics resources specified for " + << name << " at " << "(" << x << ", " << y << ")" << std::endl; + tmpConstr->init_resources(); + } +#endif + + + for (unsigned short i = 0; i < size; i++) + { + for (unsigned short j = 0; j < size; j++) + { + //never change water upon building something + if ( !world(x + j, y + i)->is_water() ) + { + if( !(tmpConstr->flags & FLAG_TRANSPARENT)) + { + world(x + j, y + i)->setTerrain(GROUP_DESERT); + world(x + j, y + i)->flags |= FLAG_INVISIBLE; //hide maptiles + } + else + { + world(x + j, y + i)->flags &= (~FLAG_INVISIBLE); //always show maptiles + if (world(x + j, y + i)->group != GROUP_DESERT) + { world(x + j, y + i)->setTerrain(GROUP_BARE);} + } + } + world(x + j, y + i)->reportingConstruction = tmpConstr; + } //endfor j + }// endfor i + world(x, y)->construction = tmpConstr; + constructionCount.add_construction(tmpConstr); //register for Simulation + + //now look for neighbors + //skip ghosts (aka burning waste) and powerlines here + if(!(tmpConstr->flags & FLAG_IS_GHOST) + && (tmpConstr->constructionGroup->group != GROUP_FIRE) + && (tmpConstr->constructionGroup->group != GROUP_POWER_LINE) ) + { tmpConstr->neighborize();} + return 0; +} + +extern void ok_dial_box(const char *, int, const char *); + +bool ConstructionGroup::is_allowed_here(int x, int y, bool msg) +{ + + //handle transport quickly + if(world.is_visible(x, y) && (group == GROUP_TRACK || group == GROUP_ROAD || group == GROUP_RAIL)) + { return (world(x,y)->is_bare() || + (world(x,y)->getGroup() == GROUP_POWER_LINE) || + (world(x,y)->is_water() && !world(x,y)->is_transport()) || + ((world(x,y)->is_transport() && world(x,y)->getTransportGroup() != group))); + } + + //now check for special rules + switch (group) + { + case GROUP_SOLAR_POWER: + if (total_money <= 0) { + if (msg) + ok_dial_box("no-credit-solar-power.mes", BAD, 0L); + return false; + } + break; + + case GROUP_UNIVERSITY: + if (total_money <= 0) + { + if (msg) + ok_dial_box("no-credit-university.mes", BAD, 0L); + return false; + } + else if ((Counted<School>::getInstanceCount()/4 - Counted<University>::getInstanceCount()) < 1) + { + if (msg) + ok_dial_box("warning.mes", BAD, _("Not enough students, build more schools.")); + return false; + } + break; + + case GROUP_RECYCLE: + if (total_money <= 0) { + if (msg) + ok_dial_box("no-credit-recycle.mes", BAD, 0L); + return false; + } + break; + + case GROUP_ROCKET: + if (total_money <= 0) { + if (msg) + ok_dial_box("no-credit-rocket.mes", BAD, 0L); + return false; + } + break; + + //The Harbour needs a River on the East side. + //and relies on invisible tiles if attempted at edge + case GROUP_PORT: + for(int j = 0; j < size; j++ ) + { + if (!( world(x + size, y + j)->flags & FLAG_IS_RIVER ) ) + { + if (msg) + ok_dial_box("warning.mes", BAD, _("Port must be connected to river all along right side.")); + return false; + } + } + break; + + //Waterwell needs ... water :-) + case GROUP_WATERWELL: + { + bool has_ugw = false; + for (int i = 0; i < size; i++) + for (int j = 0; j < size; j++) + has_ugw = has_ugw | (world(x + j,y + i)->flags & FLAG_HAS_UNDERGROUND_WATER); + if (!has_ugw) + { + if (msg) + ok_dial_box("warning.mes", BAD, _("You can't build a water well here: it is all desert.")); + return false; + } + } + break; + //Oremine + /* GCS: mines over old mines is OK if there is enough remaining + * ore, as is the case when there is partial overlap. */ + case GROUP_OREMINE: + { + int total_ore = 0; + for (int i = 0; i < size; i++) + { + for (int j = 0; j < size; j++) + { + total_ore += world(x+j, y+i)->ore_reserve; + } + } + if (total_ore < MIN_ORE_RESERVE_FOR_MINE) { + if (msg) ok_dial_box("warning.mes", BAD, _("You can't build a mine here: there is no ore left at this site")); + return false; // not enought ore + } + } + break; + + //Parkland + case GROUP_PARKLAND: + if (!(world(x, y)->flags & FLAG_HAS_UNDERGROUND_WATER)) + { + if (msg) + ok_dial_box("warning.mes", BAD, _("You can't build a park here: it is a desert, parks need water")); + return false; + } + if (total_money <= 0) { + if (msg) + ok_dial_box("no-credit-parkland.mes", BAD, 0L); + return false; + } + break; + //Other cases + } + //double check cash + if (no_credit && (total_money < 1)) + { + if (msg) + { + ok_dial_box("warning.mes", BAD, _("You cannot build this item on credit!")); + } + return false; + } + //At last check for bare building site + for(int j = 0; j<size; j++) + { + for(int i = 0; i<size; i++) + { + if(!world(x+i, y+j)->is_bare()) + { return false;} + } + } + return true; +} + + + +void ConstructionGroup::printGroups() +{ + std::map<unsigned short, ConstructionGroup *>::iterator iterator; + for (iterator = groupMap.begin(); iterator != groupMap.end(); iterator++) + { + std::cout << "group #" << iterator->first << ": " << iterator->second->name << std::endl; + } +} + +std::map<unsigned short, ConstructionGroup *> ConstructionGroup::groupMap; +std::map<std::string, ConstructionGroup *> ConstructionGroup::resourceMap; +std::map<std::string, ResourceGroup *> ResourceGroup::resMap; + +//Legacy Stuff + struct TYPE main_types[NUM_OF_TYPES]; +/* AL1 : 2.x : RANGE of buildings is not included in this struct GROUP + * + * this is a bit annoying => would need to be fixed when(if?) + * all the struct and associated macros are cleaned (map, MP_INFO etc.) + * + * for now (2.1 svn rev 1585) just put it in range.h + * + */ + struct GROUP main_groups[NUM_OF_GROUPS] = { /* 0 */ {N_("Empty"), /* name */ @@ -29,22 +1598,24 @@ 0, /* cost */ 0 /* tech */ }, + /* 1 */ {N_("Power line"), FALSE, /* need credit? */ GROUP_POWER_LINE, - 1, /* size */ + GROUP_POWER_LINE_SIZE, GROUP_POWER_LINE_COLOUR, GROUP_POWER_LINE_COST_MUL, GROUP_POWER_LINE_BUL_COST, GROUP_POWER_LINE_FIREC, GROUP_POWER_LINE_COST, GROUP_POWER_LINE_TECH}, + /* 2 */ {N_("Solar PS"), TRUE, /* need credit? */ GROUP_SOLAR_POWER, - 4, /* size */ + GROUP_SOLAR_POWER_SIZE, GROUP_SOLAR_POWER_COLOUR, GROUP_SOLAR_POWER_COST_MUL, GROUP_SOLAR_POWER_BUL_COST, @@ -55,7 +1626,7 @@ {N_("Substation"), FALSE, /* need credit? */ GROUP_SUBSTATION, - 2, /* size */ + GROUP_SUBSTATION_SIZE, GROUP_SUBSTATION_COLOUR, GROUP_SUBSTATION_COST_MUL, GROUP_SUBSTATION_BUL_COST, @@ -66,7 +1637,7 @@ {N_("Residential LL"), FALSE, /* need credit? */ GROUP_RESIDENCE_LL, - 3, /* size */ + GROUP_RESIDENCE_SIZE, GROUP_RESIDENCE_LL_COLOUR, GROUP_RESIDENCE_LL_COST_MUL, GROUP_RESIDENCE_LL_BUL_COST, @@ -77,7 +1648,7 @@ {N_("Farm"), FALSE, /* need credit? */ GROUP_ORGANIC_FARM, - 4, /* size */ + GROUP_ORGANIC_FARM_SIZE, GROUP_ORGANIC_FARM_COLOUR, GROUP_ORGANIC_FARM_COST_MUL, GROUP_ORGANIC_FARM_BUL_COST, @@ -88,7 +1659,7 @@ {N_("Market"), FALSE, /* need credit? */ GROUP_MARKET, - 2, /* size */ + GROUP_MARKET_SIZE, GROUP_MARKET_COLOUR, GROUP_MARKET_COST_MUL, GROUP_MARKET_BUL_COST, @@ -99,7 +1670,7 @@ {N_("Track"), FALSE, /* need credit? */ GROUP_TRACK, - 1, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_TRACK_COLOUR, GROUP_TRACK_COST_MUL, GROUP_TRACK_BUL_COST, @@ -110,7 +1681,7 @@ {N_("Coalmine"), FALSE, /* need credit? */ GROUP_COALMINE, - 4, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_COALMINE_COLOUR, GROUP_COALMINE_COST_MUL, GROUP_COALMINE_BUL_COST, @@ -121,7 +1692,7 @@ {N_("Railway"), FALSE, /* need credit? */ GROUP_RAIL, - 1, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_RAIL_COLOUR, GROUP_RAIL_COST_MUL, GROUP_RAIL_BUL_COST, @@ -132,7 +1703,7 @@ {N_("Coal PS"), FALSE, /* need credit? */ GROUP_COAL_POWER, - 4, /* size */ + GROUP_COAL_POWER_SIZE, GROUP_COAL_POWER_COLOUR, GROUP_COAL_POWER_COST_MUL, GROUP_COAL_POWER_BUL_COST, @@ -143,7 +1714,7 @@ {N_("Road"), FALSE, /* need credit? */ GROUP_ROAD, - 1, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_ROAD_COLOUR, GROUP_ROAD_COST_MUL, GROUP_ROAD_BUL_COST, @@ -154,7 +1725,7 @@ {N_("Lt. Industry"), FALSE, /* need credit? */ GROUP_INDUSTRY_L, - 3, /* size */ + GROUP_INDUSTRY_L_SIZE, GROUP_INDUSTRY_L_COLOUR, GROUP_INDUSTRY_L_COST_MUL, GROUP_INDUSTRY_L_BUL_COST, @@ -165,7 +1736,7 @@ {N_("University"), FALSE, /* need credit? */ GROUP_UNIVERSITY, - 3, /* size */ + GROUP_UNIVERSITY_SIZE, GROUP_UNIVERSITY_COLOUR, GROUP_UNIVERSITY_COST_MUL, GROUP_UNIVERSITY_BUL_COST, @@ -176,7 +1747,7 @@ {N_("Commune"), FALSE, /* need credit? */ GROUP_COMMUNE, - 4, /* size */ + GROUP_COMMUNE_SIZE, GROUP_COMMUNE_COLOUR, GROUP_COMMUNE_COST_MUL, GROUP_COMMUNE_BUL_COST, @@ -187,7 +1758,7 @@ {N_("Ore mine"), FALSE, /* need credit? */ GROUP_OREMINE, - 4, /* size */ + GROUP_OREMINE_SIZE, GROUP_OREMINE_COLOUR, GROUP_OREMINE_COST_MUL, GROUP_OREMINE_BUL_COST, @@ -198,7 +1769,7 @@ {N_("Rubbish tip"), FALSE, /* need credit? */ GROUP_TIP, - 4, /* size */ + GROUP_TIP_SIZE, GROUP_TIP_COLOUR, GROUP_TIP_COST_MUL, GROUP_TIP_BUL_COST, @@ -209,7 +1780,7 @@ {N_("Port"), FALSE, /* need credit? */ GROUP_PORT, - 4, /* size */ + GROUP_PORT_SIZE, GROUP_PORT_COLOUR, GROUP_PORT_COST_MUL, GROUP_PORT_BUL_COST, @@ -220,7 +1791,7 @@ {N_("Hv. Industry"), FALSE, /* need credit? */ GROUP_INDUSTRY_H, - 4, /* size */ + GROUP_INDUSTRY_H_SIZE, GROUP_INDUSTRY_H_COLOUR, GROUP_INDUSTRY_H_COST_MUL, GROUP_INDUSTRY_H_BUL_COST, @@ -231,7 +1802,7 @@ {N_("Park"), TRUE, /* need credit? */ GROUP_PARKLAND, - 1, /* size */ + GROUP_PARKLAND_SIZE, GROUP_PARKLAND_COLOUR, GROUP_PARKLAND_COST_MUL, GROUP_PARKLAND_BUL_COST, @@ -242,7 +1813,7 @@ {N_("Recycle"), TRUE, /* need credit? */ GROUP_RECYCLE, - 2, /* size */ + GROUP_RECYCLE_SIZE, GROUP_RECYCLE_COLOUR, GROUP_RECYCLE_COST_MUL, GROUP_RECYCLE_BUL_COST, @@ -253,7 +1824,7 @@ {N_("Water"), FALSE, /* need credit? */ GROUP_WATER, - 1, /* size */ + 1, GROUP_WATER_COLOUR, GROUP_WATER_COST_MUL, GROUP_WATER_BUL_COST, @@ -264,7 +1835,7 @@ {N_("Health centre"), FALSE, /* need credit? */ GROUP_HEALTH, - 2, /* size */ + GROUP_HEALTH_SIZE, GROUP_HEALTH_COLOUR, GROUP_HEALTH_COST_MUL, GROUP_HEALTH_BUL_COST, @@ -275,7 +1846,7 @@ {N_("Rocket pad"), TRUE, /* need credit? */ GROUP_ROCKET, - 4, /* size */ + GROUP_ROCKET_SIZE, GROUP_ROCKET_COLOUR, GROUP_ROCKET_COST_MUL, GROUP_ROCKET_BUL_COST, @@ -286,7 +1857,7 @@ {N_("Windmill"), FALSE, /* need credit? */ GROUP_WINDMILL, - 2, /* size */ + GROUP_WINDMILL_SIZE, GROUP_WINDMILL_COLOUR, GROUP_WINDMILL_COST_MUL, GROUP_WINDMILL_BUL_COST, @@ -297,7 +1868,7 @@ {N_("Monument"), FALSE, /* need credit? */ GROUP_MONUMENT, - 2, /* size */ + GROUP_MONUMENT_SIZE, GROUP_MONUMENT_COLOUR, GROUP_MONUMENT_COST_MUL, GROUP_MONUMENT_BUL_COST, @@ -308,7 +1879,7 @@ {N_("School"), FALSE, /* need credit? */ GROUP_SCHOOL, - 2, /* size */ + GROUP_SCHOOL_SIZE, GROUP_SCHOOL_COLOUR, GROUP_SCHOOL_COST_MUL, GROUP_SCHOOL_BUL_COST, @@ -319,7 +1890,7 @@ {N_("Blacksmith"), FALSE, /* need credit? */ GROUP_BLACKSMITH, - 2, /* size */ + GROUP_BLACKSMITH_SIZE, GROUP_BLACKSMITH_COLOUR, GROUP_BLACKSMITH_COST_MUL, GROUP_BLACKSMITH_BUL_COST, @@ -330,7 +1901,7 @@ {N_("Mill"), FALSE, /* need credit? */ GROUP_MILL, - 2, /* size */ + GROUP_MILL_SIZE, GROUP_MILL_COLOUR, GROUP_MILL_COST_MUL, GROUP_MILL_BUL_COST, @@ -341,7 +1912,7 @@ {N_("Pottery"), FALSE, /* need credit? */ GROUP_POTTERY, - 2, /* size */ + GROUP_POTTERY_SIZE, GROUP_POTTERY_COLOUR, GROUP_POTTERY_COST_MUL, GROUP_POTTERY_BUL_COST, @@ -352,7 +1923,7 @@ {N_("Fire sta'n"), FALSE, /* need credit? */ GROUP_FIRESTATION, - 2, /* size */ + GROUP_FIRESTATION_SIZE, GROUP_FIRESTATION_COLOUR, GROUP_FIRESTATION_COST_MUL, GROUP_FIRESTATION_BUL_COST, @@ -363,7 +1934,7 @@ {N_("Sports field"), FALSE, /* need credit? */ GROUP_CRICKET, - 2, /* size */ + GROUP_CRICKET_SIZE, GROUP_CRICKET_COLOUR, GROUP_CRICKET_COST_MUL, GROUP_CRICKET_BUL_COST, @@ -387,7 +1958,7 @@ {N_("Shanty town"), FALSE, /* need credit? */ GROUP_SHANTY, - 2, /* size */ + GROUP_SHANTY_SIZE, GROUP_SHANTY_COLOUR, GROUP_SHANTY_COST_MUL, GROUP_SHANTY_BUL_COST, @@ -399,7 +1970,7 @@ {N_("Fire"), FALSE, /* need credit? */ GROUP_FIRE, - 1, /* size */ + GROUP_FIRE_SIZE, GROUP_FIRE_COLOUR, GROUP_FIRE_COST_MUL, GROUP_FIRE_BUL_COST, @@ -422,7 +1993,7 @@ {N_("Residential ML"), FALSE, /* need credit? */ GROUP_RESIDENCE_ML, - 3, /* size */ + GROUP_RESIDENCE_SIZE, GROUP_RESIDENCE_ML_COLOUR, GROUP_RESIDENCE_ML_COST_MUL, GROUP_RESIDENCE_ML_BUL_COST, @@ -433,7 +2004,7 @@ {N_("Residential HL"), FALSE, /* need credit? */ GROUP_RESIDENCE_HL, - 3, /* size */ + GROUP_RESIDENCE_SIZE, GROUP_RESIDENCE_HL_COLOUR, GROUP_RESIDENCE_HL_COST_MUL, GROUP_RESIDENCE_HL_BUL_COST, @@ -444,7 +2015,7 @@ {N_("Residential LH"), FALSE, /* need credit? */ GROUP_RESIDENCE_LH, - 3, /* size */ + GROUP_RESIDENCE_SIZE, GROUP_RESIDENCE_LH_COLOUR, GROUP_RESIDENCE_LH_COST_MUL, GROUP_RESIDENCE_LH_BUL_COST, @@ -455,7 +2026,7 @@ {N_("Residential MH"), FALSE, /* need credit? */ GROUP_RESIDENCE_MH, - 3, /* size */ + GROUP_RESIDENCE_SIZE, GROUP_RESIDENCE_MH_COLOUR, GROUP_RESIDENCE_MH_COST_MUL, GROUP_RESIDENCE_MH_BUL_COST, @@ -466,7 +2037,7 @@ {N_("Residential HH"), FALSE, /* need credit? */ GROUP_RESIDENCE_HH, - 3, /* size */ + GROUP_RESIDENCE_SIZE, GROUP_RESIDENCE_HH_COLOUR, GROUP_RESIDENCE_HH_COST_MUL, GROUP_RESIDENCE_HH_BUL_COST, @@ -477,7 +2048,7 @@ {N_("Water well"), FALSE, /* need credit? */ GROUP_WATERWELL, - 2, /* size */ + GROUP_WATERWELL_SIZE, /* size */ GROUP_WATERWELL_COLOUR, GROUP_WATERWELL_COST_MUL, GROUP_WATERWELL_BUL_COST, @@ -540,7 +2111,7 @@ {N_("Track Bridge"), FALSE, /* need credit? */ GROUP_TRACK_BRIDGE, - 1, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_TRACK_BRIDGE_COLOUR, GROUP_TRACK_BRIDGE_COST_MUL, GROUP_TRACK_BRIDGE_BUL_COST, @@ -552,7 +2123,7 @@ {N_("Road Bridge"), FALSE, /* need credit? */ GROUP_ROAD_BRIDGE, - 1, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_ROAD_BRIDGE_COLOUR, GROUP_ROAD_BRIDGE_COST_MUL, GROUP_ROAD_BRIDGE_BUL_COST, @@ -564,7 +2135,7 @@ {N_("Rail Bridge"), FALSE, /* need credit? */ GROUP_RAIL_BRIDGE, - 1, /* size */ + GROUP_TRANSPORT_SIZE, GROUP_RAIL_BRIDGE_COLOUR, GROUP_RAIL_BRIDGE_COST_MUL, GROUP_RAIL_BRIDGE_BUL_COST, @@ -572,7 +2143,19 @@ GROUP_RAIL_BRIDGE_COST, GROUP_RAIL_BRIDGE_TECH}, - /* 49 */ + /* 49 */ + {N_("Wind Power"), + TRUE, /* need credit? */ + GROUP_WIND_POWER, + GROUP_WIND_POWER_SIZE, + GROUP_WIND_POWER_COLOUR, + GROUP_WIND_POWER_COST_MUL, + GROUP_WIND_POWER_BUL_COST, + GROUP_WIND_POWER_FIREC, + GROUP_WIND_POWER_COST, + GROUP_WIND_POWER_TECH}, + + /* 50 */ /* End of Data */ {"EOF", FALSE, /* need credit? */ @@ -586,35 +2169,23 @@ 0} }; -void init_types(void) -{ - char png_file[LC_PATH_MAX], txt_file[LC_PATH_MAX]; - sprintf(png_file, "%s%c%s", opening_path, PATH_SLASH, "icons.png"); - sprintf(txt_file, "%s%c%s", opening_path, PATH_SLASH, "iconlist.txt"); - - load_png_graphics(txt_file, png_file); - - main_types[CST_USED].group = GROUP_USED; - main_types[CST_USED].graphic = 0; /* Won't be dereferenced! */ -} - -int get_group_of_type(short type) +unsigned short get_group_of_type(unsigned short type) { if (type == CST_NONE) - return GROUP_BARE; + { return GROUP_BARE;} return main_types[type].group; } void set_map_groups(void) { - int x, y; - for (x = 0; x < WORLD_SIDE_LEN; x++) { - for (y = 0; y < WORLD_SIDE_LEN; y++) { - MP_GROUP(x, y) = get_group_of_type(MP_TYPE(x, y)); - } - } + const int len = world.len(); + const int area = len * len; + for (int index = 0; index < area; ++index) + { world(index)->group = get_group_of_type(world(index)->type);} } +/* + int get_group_cost(short group) { return (int)((float)main_groups[group].cost @@ -633,3 +2204,6 @@ { return get_group_cost((short)get_group_of_type(type)); } +*/ +/** @file lincity/lintypes.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/lintypes.h lincity-ng-2.9~git20150314/src/lincity/lintypes.h --- lincity-ng-2.0/src/lincity/lintypes.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/lintypes.h 2015-05-05 16:32:51.000000000 +0000 @@ -6,90 +6,105 @@ #ifndef __lintypes_h__ #define __lintypes_h__ -int get_group_of_type(short selected_type); -void set_map_groups(void); -int get_type_cost(short type); +#define WORLD_SIDE_LEN 100 +#define OLD_MAX_NUMOF_SUBSTATIONS 100 +#define MAX_NUMOF_SUBSTATIONS 512 + +#define NUMOF_COAL_RESERVES ((world.len() * world.len()) / 400) +#define NUM_OF_TYPES 404 +#define NUM_OF_GROUPS 51 + +#define OLD_MAX_NUMOF_MARKETS 100 +#define MAX_NUMOF_MARKETS 512 + +#define NUMOF_DAYS_IN_MONTH 100 +#define NUMOF_DAYS_IN_YEAR (NUMOF_DAYS_IN_MONTH*12) + +#define NUMOF_DISCOUNT_TRIGGERS 6 + +//pages for report 0,1,2,3,...,LAST_REPORT_PAGE +#define LAST_REPORT_PAGE 3 + +/* + int get_group_cost(short group); +int get_type_cost(short type); void get_type_name(short type, char *s); - +*/ +unsigned short get_group_of_type(unsigned short selected_type); +void set_map_groups(void); /********** Data structures ***************/ - -struct GROUP { - const char *name; /* name of group */ - unsigned short no_credit; /* TRUE if need credit to build */ - unsigned short group; /* This is redundant: it must match - the index into the table */ - unsigned short size; - int colour; /* summary map colour */ - int cost_mul; /* group cost multiplier */ - int bul_cost; /* group bulldoze cost */ - int fire_chance; /* probability of fire */ - int cost; /* group cost */ - int tech; /* group cost */ +#include <list> +#include <vector> +#include <map> +#include <string> +#include <cstring> +#include <sstream> +#include <zlib.h> +#include "ConstructionCount.h" +#include "engglobs.h" +#include <SDL_mixer.h> +#include <SDL.h> +#include <SDL_image.h> +#include "gui/Texture.hpp" +#include "tinygettext/gettext.hpp" + +class Construction; +class ResourceGroup; + +struct ExtraFrame{ + ExtraFrame(void){ + move_x = 0; + move_y = 0; + frame = 0; + resourceGroup = 0; + } + + int move_x; // >0 moves frame to the right + int move_y; // >0 moves frame downwards + int frame; //frame >= 0 will be rendered as overlay + ResourceGroup *resourceGroup; //overlay frame is choosen from its GraphicsInfoVector }; -struct TYPE { - int group; /* What group does this type belong to? */ - char *graphic; /* Bitmap of the graphic */ +// Class to count instanced objects of each construction type + +template <typename Class> +class Counted +{ +public: + Counted() + { + instanceCount++; + nextId++; + } + ~Counted() + { + --instanceCount; + //reset unique only Id after the last Construction is gone + if (instanceCount == 0) + { nextId = 0;} + } + static unsigned int getInstanceCount() { + return instanceCount; + } + static unsigned int getNextId() { + return nextId; + } +private: + static unsigned int instanceCount, nextId; }; -struct map_point_info_struct { - int population; - int flags; - unsigned short coal_reserve; - unsigned short ore_reserve; - int int_1; - int int_2; - int int_3; - int int_4; - int int_5; - int int_6; - int int_7; -}; -typedef struct map_point_info_struct Map_Point_Info; - -/* Set these flags to true when they need to be updated on the screen */ -struct update_scoreboard_struct { - int mps; - int mini; - int date; - int money; - int monthly; - int yearly_1; - int yearly_2; - long int message_area; -}; -typedef struct update_scoreboard_struct Update_Scoreboard; - -/* GCS -- One of these days I will get this right. */ -struct map_struct { - short type[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - short group[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - int pollution[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - Map_Point_Info info[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - int date[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - int tech[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - int anim[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - int im_index[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - int activity[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; -}; -typedef struct map_struct Map; - - -#define MP_TYPE(x,y) map.type[x][y] -#define MP_GROUP(x,y) map.group[x][y] -#define MP_POL(x,y) map.pollution[x][y] -#define MP_INFO(x,y) map.info[x][y] -#define MP_DATE(x,y) map.date[x][y] // date of built -#define MP_TECH(x,y) map.tech[x][y] // Tech at build time -#define MP_ANIM(x,y) map.anim[x][y] // real_time for next anim //does not need to be saved - -#define MP_SIZE(x,y) main_groups[MP_GROUP(x,y)].size -#define MP_COLOR(x,y) main_groups[MP_GROUP(x,y)].colour -#define MP_GROUP_IS_RESIDENCE(x,y) (GROUP_IS_RESIDENCE(MP_GROUP(x,y))) -#define HAS_UGWATER(x,y) (MP_INFO(x,y).flags & FLAG_HAS_UNDERGROUND_WATER) -struct ground_struct { +template <typename Class> +unsigned int Counted<Class>::instanceCount; +template <typename Class> +unsigned int Counted<Class>::nextId; + +class Ground +{ +public: + Ground(); + ~Ground(); int altitude; //surface of ground. unused currently int ecotable; //done at init time: pointer to the table for vegetation int wastes; //wastes underground @@ -101,9 +116,414 @@ int int1; //reserved for future (?) use int int2; int int3; - int int4; //used as tmp in setup_ground //FIXME : this is too ugly + int int4; +}; + +class ConstructionGroup; + +class MapTile { +public: + MapTile(); + ~MapTile(); + Ground ground; //the Ground associated to an instance of MapTile + Construction *construction; //the actual construction (e.g. for simulation) + Construction *reportingConstruction; //the construction covering the tile + unsigned short type; //type of terrain (underneath constructions) + unsigned short group; //group of the terrain (underneath constructions) + int flags; //flags are defined in lin-city.h + unsigned short coal_reserve; //underground coal + unsigned short ore_reserve; //underground ore + int pollution; //air pollution (under ground pollution is in ground[][]) + std::list<ExtraFrame> *framesptr; //Overlays to be rendered on top of type, mostly NULL + //use memberfunctions to add and remove sprites + + void setTerrain(unsigned short group); //places type & group at MapTile + std::list<ExtraFrame>::iterator createframe(); //creates new empty ExtraFrames + //to be used by Contstructions and Vehicles + void killframe(std::list<ExtraFrame>::iterator it); //kills an extraframe + + unsigned short getType(); //type of bare land or the covering construction + unsigned short getTopType(); //type of bare land or the actual construction + unsigned short getLowerstVisibleType(); //like getType but type of terrain underneath transparent constructions + unsigned short getGroup(); //group of bare land or the covering construction + unsigned short getTopGroup(); //group of bare land or the actual construction + unsigned short getLowerstVisibleGroup(); //like getGroup but group of terrain underneath transparent constructions + unsigned short getTransportGroup(); //like getGroup but bridges are reported normal transport tiles + ConstructionGroup* getTileConstructionGroup(); //constructionGroup of the maptile + ResourceGroup* getTileResourceGroup(); //resourceGroup of a tile + ConstructionGroup* getConstructionGroup(); //constructionGroup of maptile or the covering construction + ConstructionGroup* getTopConstructionGroup(); //constructionGroup of maptile or the actual construction + ConstructionGroup* getLowerstVisibleConstructionGroup(); + + bool is_bare(); //true if we there is neither a covering construction nor water + bool is_lake(); //true on lakes (also under bridges) + bool is_river(); //true on rivers (also under bridges) + bool is_water(); //true on bridges or lakes (also under bridges) + bool is_visible(); //true if tile is not covered by another construction. Only useful for minimap Gameview is rotated to upperleft + bool is_transport(); //true on tracks, road, rails and bridges + bool is_residence(); //true if any residence covers the tile + void writeTemplate(); //create maptile template + void saveMembers(std::ostream *os);//write maptile AND ground members as XML to stram +}; + + +class MemberRule{ +public: + int memberType; //type of ConstructionMember + void *ptr; //address of ConstructionMember +}; + +template <typename MemberType> +class MemberTraits { }; + +struct CommodityRule{ + int maxload; + bool take; + bool give; +}; + + + + +class Construction { +public: + virtual ~Construction() {} + virtual void update() = 0; + virtual void report() = 0; + + + ConstructionGroup *constructionGroup; + //ResourceGroup *graphicsGroup; + ResourceGroup *soundGroup; + + //unsigned short type; + int x, y; + int ID; + int flags; //flags are defined in lin-city.h + + enum Commodities + { + STUFF_FOOD, + STUFF_JOBS, + STUFF_COAL, + STUFF_GOODS, + STUFF_ORE, + STUFF_STEEL, + STUFF_WASTE, + STUFF_KWH, + STUFF_MWH, + STUFF_WATER + }; + + enum MemberTypes + { + TYPE_BOOL, + TYPE_INT, + TYPE_USHORT, + TYPE_DOUBLE, + TYPE_FLOAT + }; + + std::map<Commodities, int> commodityCount; //map that holds all kinds of stuff + std::map<std::string, MemberRule> memberRuleCount; //what to do with stuff at this construction + std::vector<Construction*> neighbors; //adjacent for transport + std::vector<Construction*> partners; //remotely for markets + std::list<ExtraFrame>::iterator frameIt; + static std::string getStuffName(Commodities stuff_id); //translated name of a commodity + void init_resources(void); //sets sounds and graphics according to constructionGroup + void list_commodities(int *); //prints a sorted list all commodities in report() + void report_commodities(void); //adds commodities and capacities to gloabl stat counter + void initialize_commodities(void); //sets all commodities to 0 and marks them as saved members + void bootstrap_commodities(int percentage); // sets all commodities except STUFF_WASTE to percentage. + int loadMember(std::string const &xml_tag, std::string const &xml_val); + int readbinaryMember(std::string const &xml_tag, gzFile fp); + template <typename MemberType> + void setMemberSaved(MemberType *ptr, std::string const &xml_tag) + { + memberRuleCount[xml_tag].memberType = MemberTraits<MemberType>::TYPE_ID; + memberRuleCount[xml_tag].ptr = static_cast<void *>(ptr); + } + + void setCommodityRulesSaved(std::map<Commodities,CommodityRule> * stuffRuleCount); + void writeTemplate(); //create xml template for savegame + void saveMembers(std::ostream *os); //writes all needed and optionally set Members as XML to stream + void detach(); //removes all references from world, ::constructionCount + void deneighborize(); //cancells all neighbors and partners mutually + void neighborize(); //adds all neigborconnections once (call twice for double connections) + int countPowercables(int mask); //removes all but one suspended cable on each edge + void link_to(Construction* other); //establishes mutual connection to neighbor or partner + int tellstuff( Commodities stuff_ID, int level); //tell the filling level of commodity + void trade(); //exchange commodities with neigbhors + int equilibrate_stuff(int *rem_lvl, int rem_cap , int ratio, Commodities stuff_ID, ConstructionGroup * rem_cstGroup); + //equilibrates stuff with an external reservoir (e.g. another construction invoking this method) + void playSound();//plays random chunk from constructionGroup +}; + +extern const char *commodityNames[]; +//global Vars for statistics on commodities +extern std::map<Construction::Commodities, int> tstat_capacities; +extern std::map<Construction::Commodities, int> tstat_census; + +#define MEMBER_TYPE_TRAITS(MemberType, TypeId) \ +template <> \ +class MemberTraits<MemberType> { \ +public: \ + enum { TYPE_ID = TypeId }; \ +}; + +MEMBER_TYPE_TRAITS(int, Construction::TYPE_INT) +MEMBER_TYPE_TRAITS(bool, Construction::TYPE_BOOL) +MEMBER_TYPE_TRAITS(unsigned short, Construction::TYPE_USHORT) +MEMBER_TYPE_TRAITS(double, Construction::TYPE_DOUBLE) +MEMBER_TYPE_TRAITS(float, Construction::TYPE_FLOAT) + +class ConstructionGroup; + +template <typename ConstructionClass> +class RegisteredConstruction: public Construction, public Counted<ConstructionClass> +{ +public: + RegisteredConstruction<ConstructionClass>( int x, int y) + { + //this->type = 0;//safe default + this->soundGroup = 0;//to be set by init_resources() + //this->graphicsGroup = 0;//to be set in ConstgructionGroup::placeItem + //setMemberSaved(&(this->type),"type"); + this->x = x; + this->y = y; + this->ID = Counted<ConstructionClass>::getNextId(); + this->flags = '\0'; + setMemberSaved(&(this->flags),"flags"); +#ifdef DEBUG + neighbors.clear(); + partners.clear(); +#endif + } + ~RegisteredConstruction<ConstructionClass>(){} +}; + +class GraphicsInfo +{ + public: + GraphicsInfo(void){ + texture = (Texture*)'\0'; + image = (SDL_Surface*)'\0'; + x = 0; + y = 0; + } + + Texture* texture; + SDL_Surface* image; + int x, y; +}; + +//all instances are added to resMap +class ResourceGroup { +public: + + ResourceGroup(const std::string &tag) + { + graphicsInfoVector.clear(); + chunks.clear(); + resourceID = tag; + images_loaded = false; + sounds_loaded = false; + is_vehicle = false; + //std::cout << "new resourceGroup: " << tag << std::endl; + if (resMap.count(tag)) + { std::cout << "rejecting " << tag << " as another ResourceGroup"<< std::endl;} + else + { resMap[tag] = this;} + } + ~ResourceGroup() + { + std::vector<GraphicsInfo>::iterator it; + for(it = graphicsInfoVector.begin(); it != graphicsInfoVector.end(); ++it) + { + if(it->texture) + { + delete it->texture; + it->texture = 0; + } + } + if ( resMap.count(resourceID)) + { + resMap.erase(resourceID); + //std::cout << "sayonara: " << resourceID << std::endl; + } + else + { std::cout << "error: unreachable resourceGroup: " << resourceID << std::endl;} + } + std::string resourceID; + bool images_loaded; + bool sounds_loaded; + bool is_vehicle; //vehicles are always rendered on upper left tile + std::vector<Mix_Chunk *> chunks; + std::vector<GraphicsInfo> graphicsInfoVector; + void growGraphicsInfoVector(void) + { graphicsInfoVector.resize(graphicsInfoVector.size() + 1);} + static std::map<std::string, ResourceGroup*> resMap; +}; + +class ConstructionGroup { +public: + ConstructionGroup( + const char *name, + bool no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ) { + this->name = name; + this->no_credit = no_credit; + this->group = group; + this->size = size; + this->colour = colour; + this->cost_mul = cost_mul; + this->bul_cost = bul_cost; + this->fire_chance = fire_chance; + this->cost = cost; + this->tech = tech; + this->range = range; + //this->images_loaded = false; + //this->sounds_loaded = false; + } + ~ConstructionGroup() + {/* + std::vector<GraphicsInfo>::iterator it; + for(it = graphicsInfoVector.begin(); it != graphicsInfoVector.end(); ++it) + { + if(it->texture) + { + delete it->texture; + it->texture = 0; + } + }*/ + } + + std::map<Construction::Commodities, CommodityRule> commodityRuleCount; + //std::vector<Mix_Chunk *> chunks; + //std::vector<GraphicsInfo> graphicsInfoVector; + int getCosts(); + bool is_allowed_here(int x, int y, bool msg);//check if construction could be placed + //void growGraphicsInfoVector(void); + + virtual int placeItem(int x, int y); + + // this method must be overriden by the concrete ConstructionGroup classes. + virtual Construction *createConstruction(int x, int y) = 0; + + std::string getName(void){ + return dictionaryManager->get_dictionary().translate( name ); + } + + std::string resourceID; /* name for matching resources from XML*/ + const char *name; /* inGame name of group */ + bool no_credit; /* TRUE if need credit to build */ + unsigned short group; /* This is redundant: it must match + the index into the table */ + unsigned short size; /* shape in x and y */ + int colour; /* summary map colour */ + int cost_mul; /* group cost multiplier */ + int bul_cost; /* group bulldoze cost */ + int fire_chance; /* probability of fire */ + int cost; /* group cost */ + int tech; /* group tech */ + int range; /* range beyond size*/ + //bool images_loaded; + //bool sounds_loaded; + + static void addConstructionGroup(ConstructionGroup *constructionGroup) + { + if ( groupMap.count(constructionGroup->group) ) + { + std::cout << "rejecting " << constructionGroup->name << " as " + << constructionGroup->group << " from ConstructionGroup::groupMap" + << std::endl; + } + else + { groupMap[constructionGroup->group] = constructionGroup;} + + + } + + static void addResourceID(std::string resID, ConstructionGroup *constructionGroup) + { + + if ( resourceMap.count(resID)) + { + std::cout << "rejecting " << constructionGroup->name << " as " + << constructionGroup->resourceID << " from ConstructionGroup::resouceMap" + << std::endl; + } + else + { + constructionGroup->resourceID = resID; + resourceMap[constructionGroup->resourceID] = constructionGroup; + new ResourceGroup(resID); //adds itself to ResourceGroup::resmap + } + } + + static void clearGroupMap() + { + // removes all entries from groupMap + groupMap.clear(); + } + + static void clearResourcepMap() + { + // removes all entries from resourceMap + resourceMap.clear(); + } + + + static ConstructionGroup *getConstructionGroup(unsigned short group) + { + if (groupMap.count(group)) + return groupMap[group]; + else + return NULL; + } + + static void printGroups(); + + static int countConstructionGroup(unsigned short group) { + return groupMap.count(group); + } + + static std::map<std::string, ConstructionGroup*> resourceMap; +protected: + // Map associating group ids with the respective construction group objects + static std::map<unsigned short, ConstructionGroup*> groupMap; + +}; + + + + +struct GROUP { + const char *name; // name of group + unsigned short no_credit; // TRUE if need credit to build + unsigned short group; // This is redundant: it must match + // the index into the table + unsigned short size; + int colour; // summary map colour + int cost_mul; // group cost multiplier + int bul_cost; // group bulldoze cost + int fire_chance; // probability of fire + int cost; // group cost + int tech; // group tech +}; + + +struct TYPE { + int group; // What group does this type belong to? + char *graphic; // Bitmap of the graphic }; -#define ALT(x,y) ground[x][y].altitude #endif /* __lintypes_h__ */ + +/** @file lincity/lintypes.h */ + diff -Nru lincity-ng-2.0/src/lincity/loadsave.cpp lincity-ng-2.9~git20150314/src/lincity/loadsave.cpp --- lincity-ng-2.0/src/lincity/loadsave.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/loadsave.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -6,9 +6,11 @@ /* this is for saving */ +#include <fstream> +#include <sstream> #include <stdio.h> #include <stdlib.h> -#include <zlib.h> +//#include <zlib.h> //moved to lintypes.h #include <iostream> #include "tinygettext/gettext.hpp" #include "gui_interface/screen_interface.h" @@ -16,6 +18,8 @@ #include "stats.h" #include "init_game.h" #include "transport.h" +#include "modules/all_modules.h" +#include "../lincity-ng/Config.hpp" #include <fcntl.h> #include <sys/types.h> @@ -74,11 +78,14 @@ #include "lin-city.h" #include "engglobs.h" #include "fileutil.h" -#include "power.h" +#include <physfs.h> #include "gui_interface/pbar_interface.h" #include "lincity-ng/ErrorInterface.hpp" #include "stats.h" +#include "modules/all_modules.h" #include "loadsave.h" +#include "xmlloadsave.h" + #if defined (WIN32) && !defined (NDEBUG) #define START_FAST_SPEED 1 @@ -91,6 +98,7 @@ #define SI_YELLOW 255 #define MP_SANITY_CHECK 1 +#define COMPATIBLE_WORLD_SIDE_LEN 100 /* Extern resources */ extern int yn_dial_box(const char *, const char *, const char *, const char *); @@ -98,8 +106,14 @@ extern void prog_box(const char *, int); extern void print_total_money(void); -extern int count_groups(int); -extern void desert_frontier(int originx, int originy, int w, int h); +extern void desert_water_frontiers(int originx, int originy, int w, int h); +extern void set_river_tile( int x, int y); + + +/* -----------------------------------------------* + * Private Functions + * -----------------------------------------------*/ + /* ---------------------------------------------------------------------- * * Public functions @@ -107,404 +121,470 @@ void save_city(char *cname) { - char *s; - int l; - - if ((l = strlen(cname)) < 2) - return; - if ((s = (char *)malloc(lc_save_dir_len + l + 16)) == 0) - malloc_failure(); - - sprintf(s, "%s%c%s", lc_save_dir, PATH_SLASH, cname); - - save_city_2(s); - free(s); + std::string fullname = PHYSFS_getWriteDir(); + fullname += PHYSFS_getDirSeparator(); + fullname += cname; + save_city_2(fullname); } -void save_city_2(char *cname) +void save_city_2(std::string xml_file_name) { - int x, y, p; - int dumbint = 0; - gzFile ofile = gzopen(cname, "wb"); - if (ofile == NULL) { - printf(_("Save file <%s> - "), cname); - do_error(_("Can't open save file!")); - } - /* Now we have upgraded game */ - ldsv_version = WATERWELL_V2; - gzprintf(ofile, "%d\n", ldsv_version); - - for (x = 0; x < WORLD_SIDE_LEN; x++) - for (y = 0; y < WORLD_SIDE_LEN; y++) { - /* TY po fl cr or i1 i2 i3 i4 i5 i6 i7 PL al ec ws gp wa wp ww wn g1 g2 g3 g4 DA TK AN d4 d5 d6 d7 d8 d9 */ - gzprintf(ofile, "%u %d %d %u %u %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n" - , MP_TYPE(x, y) - , MP_INFO(x, y).population - , MP_INFO(x, y).flags - , MP_INFO(x, y).coal_reserve - , MP_INFO(x, y).ore_reserve - , MP_INFO(x, y).int_1 - , MP_INFO(x, y).int_2 - , MP_INFO(x, y).int_3 - , MP_INFO(x, y).int_4 - , MP_INFO(x, y).int_5 - , MP_INFO(x, y).int_6 - , MP_INFO(x, y).int_7 - , MP_POL(x, y) - , ground[x][y].altitude - , ground[x][y].ecotable - , ground[x][y].wastes - , ground[x][y].pollution - , ground[x][y].water_alt - , ground[x][y].water_pol - , ground[x][y].water_wast - , ground[x][y].water_next - , ground[x][y].int1 - , ground[x][y].int2 - , ground[x][y].int3 - , ground[x][y].int4 - , MP_DATE(x,y) // d1 = date of built - , MP_TECH(x,y) // d2 = tech at build time - , MP_ANIM(x,y) // d3 = animation_time (see reset_animation_time mess :) - , dumbint // d4 could be image index for smooth animation, cf windmill anim_tile - , dumbint // d5 percentage of activity to choose family of pic - , dumbint // d6 - , dumbint // d7 - , dumbint // d8 - , dumbint // d9 - ); - } - - gzprintf(ofile, "%d\n", main_screen_originx); - gzprintf(ofile, "%d\n", main_screen_originy); - - gzprintf(ofile, "%d\n", total_time); - for (x = 0; x < MAX_NUMOF_SUBSTATIONS; x++) { - gzprintf(ofile, "%d\n", substationx[x]); - gzprintf(ofile, "%d\n", substationy[x]); - } - gzprintf(ofile, "%d\n", numof_substations); - for (x = 0; x < MAX_NUMOF_MARKETS; x++) { - gzprintf(ofile, "%d\n", marketx[x]); - gzprintf(ofile, "%d\n", markety[x]); - } - gzprintf(ofile, "%d\n", numof_markets); - gzprintf(ofile, "%d\n", people_pool); - gzprintf(ofile, "%o\n", total_money); - gzprintf(ofile, "%d\n", income_tax_rate); - gzprintf(ofile, "%d\n", coal_tax_rate); - gzprintf(ofile, "%d\n", dole_rate); - gzprintf(ofile, "%d\n", transport_cost_rate); - gzprintf(ofile, "%d\n", goods_tax_rate); - gzprintf(ofile, "%d\n", export_tax); - gzprintf(ofile, "%d\n", export_tax_rate); - gzprintf(ofile, "%d\n", import_cost); - gzprintf(ofile, "%d\n", import_cost_rate); - gzprintf(ofile, "%d\n", tech_level); - gzprintf(ofile, "%d\n", tpopulation); - gzprintf(ofile, "%d\n", tstarving_population); - gzprintf(ofile, "%d\n", tunemployed_population); - gzprintf(ofile, "%d\n", 0); /* waste_goods is obsolete */ - gzprintf(ofile, "%d\n", power_made); - gzprintf(ofile, "%d\n", power_used); - gzprintf(ofile, "%d\n", coal_made); - gzprintf(ofile, "%d\n", coal_used); - gzprintf(ofile, "%d\n", goods_made); - gzprintf(ofile, "%d\n", goods_used); - gzprintf(ofile, "%d\n", ore_made); - gzprintf(ofile, "%d\n", ore_used); - gzprintf(ofile, "%d\n", 0); /* Removed diff_old_population, version 1.12 */ - - /* Changed, version 1.12 */ - gzprintf(ofile, "%d\n", monthgraph_size); - for (x = 0; x < monthgraph_size; x++) { - gzprintf(ofile, "%d\n", monthgraph_pop[x]); - gzprintf(ofile, "%d\n", monthgraph_starve[x]); - gzprintf(ofile, "%d\n", monthgraph_nojobs[x]); - gzprintf(ofile, "%d\n", monthgraph_ppool[x]); - } - gzprintf(ofile, "%d\n", rockets_launched); - gzprintf(ofile, "%d\n", rockets_launched_success); - gzprintf(ofile, "%d\n", coal_survey_done); - - for (x = 0; x < PBAR_DATA_SIZE; x++) - for (p = 0; p < NUM_PBARS; p++) - gzprintf(ofile, "%d\n", pbars[p].data[x]); - - for (p = 0; p < NUM_PBARS; p++) { - gzprintf(ofile, "%d\n", pbars[p].oldtot); - gzprintf(ofile, "%d\n", pbars[p].diff); - } + size_t found; + found = xml_file_name.find(".gz"); + + if (found > xml_file_name.length()-3) + { xml_file_name += ".gz";} + xml_loadsave.saveXMLfile(xml_file_name); +#ifdef DEBUG + //TODO abandon support for writing old style savegame + if (world.len() == COMPATIBLE_WORLD_SIDE_LEN) + { + int dumbint = 0; + found = xml_file_name.find(".gz"); + if (found < xml_file_name.length()) + { xml_file_name = xml_file_name.substr(0,found);} + gzFile ofile = gzopen(xml_file_name.c_str(), "wb"); + if (ofile == NULL) { + printf("%s <%s> - ", _("Save file"), xml_file_name.c_str()); + do_error(_("Can't open save file!")); + } + /* Now we have upgraded game */ + ldsv_version = WATERWELL_V2; + gzprintf(ofile, "%d\n", ldsv_version); + + for (int x = 0; x < world.len(); x++) + { + for (int y = 0; y < world.len(); y++) + { + /* TY po fl cr or i1 i2 i3 i4 i5 i6 i7 PL al ec ws gp wa wp ww wn g1 g2 g3 g4 DA TK AN d4 d5 d6 d7 d8 d9 */ + gzprintf(ofile, "%u %d %d %u %u %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n" + , world(x, y)->is_visible() ? world(x, y)->getTopType() : CST_USED + , 0 //MP_INFO(x, y).population + , world(x, y)->flags + , world(x, y)->coal_reserve + , world(x, y)->ore_reserve + , 0 //MP_INFO(x, y).int_1 + , 0 //MP_INFO(x, y).int_2 + , 0 //MP_INFO(x, y).int_3 + , 0 //MP_INFO(x, y).int_4 + , 0 //MP_INFO(x, y).int_5 + , 0 //MP_INFO(x, y).int_6 + , 0 //MP_INFO(x, y).int_7 + , world(x, y)->pollution + , world(x, y)->ground.altitude + , world(x, y)->ground.ecotable + , world(x, y)->ground.wastes + , world(x, y)->ground.pollution + , world(x, y)->ground.water_alt + , world(x, y)->ground.water_pol + , world(x, y)->ground.water_wast + , world(x, y)->ground.water_next + , world(x, y)->ground.int1 + , world(x, y)->ground.int2 + , world(x, y)->ground.int3 + , world(x, y)->ground.int4 + , 0 //MP_DATE(x,y) // d1 = date of built + , 0 //MP_TECH(x,y) // d2 = tech at build time + , 0 //MP_ANIM(x,y) // d3 = animation_time (see reset_animation_time mess :) + , dumbint // d4 could be image index for smooth animation, cf windmill anim_tile + , dumbint // d5 percentage of activity to choose family of pic + , dumbint // d6 + , dumbint // d7 + , dumbint // d8 + , dumbint // d9 + ); + }//end for y + }//end for x + gzprintf(ofile, "%d\n", main_screen_originx); + gzprintf(ofile, "%d\n", main_screen_originy); + + gzprintf(ofile, "%d\n", total_time); + for (int x = 0; x < MAX_NUMOF_SUBSTATIONS; x++) { + gzprintf(ofile, "%d\n", 0);//substationx[x] + gzprintf(ofile, "%d\n", 0);//substationy[x] + } + gzprintf(ofile, "%d\n", 0);//numof_substations); + for (int x = 0; x < MAX_NUMOF_MARKETS; x++) { + gzprintf(ofile, "%d\n", 0);//marketx[x] + gzprintf(ofile, "%d\n", 0);//markety[x] + } + gzprintf(ofile, "%d\n", 0);//numof_markets); + gzprintf(ofile, "%d\n", people_pool); + gzprintf(ofile, "%o\n", total_money); + gzprintf(ofile, "%d\n", income_tax_rate); + gzprintf(ofile, "%d\n", coal_tax_rate); + gzprintf(ofile, "%d\n", dole_rate); + gzprintf(ofile, "%d\n", transport_cost_rate); + gzprintf(ofile, "%d\n", goods_tax_rate); + gzprintf(ofile, "%d\n", export_tax); + gzprintf(ofile, "%d\n", export_tax_rate); + gzprintf(ofile, "%d\n", import_cost); + gzprintf(ofile, "%d\n", import_cost_rate); + gzprintf(ofile, "%d\n", tech_level); + gzprintf(ofile, "%d\n", tpopulation); + gzprintf(ofile, "%d\n", tstarving_population); + gzprintf(ofile, "%d\n", tunemployed_population); + gzprintf(ofile, "%d\n", 0); /* waste_goods is obsolete */ + gzprintf(ofile, "%d\n", 0); // power_made); + gzprintf(ofile, "%d\n", 0); // power_used); + gzprintf(ofile, "%d\n", 0); // coal_made); + gzprintf(ofile, "%d\n", 0); // coal_used); + gzprintf(ofile, "%d\n", 0); // goods_made); + gzprintf(ofile, "%d\n", 0); // goods_used); + gzprintf(ofile, "%d\n", 0); // ore_made); + gzprintf(ofile, "%d\n", 0); // ore_used); + gzprintf(ofile, "%d\n", 0); /* Removed diff_old_population, version 1.12 */ + + /* Changed, version 1.12 */ + gzprintf(ofile, "%d\n", monthgraph_size); + for (int x = 0; x < monthgraph_size; x++) { + gzprintf(ofile, "%d\n", monthgraph_pop[x]); + gzprintf(ofile, "%d\n", monthgraph_starve[x]); + gzprintf(ofile, "%d\n", monthgraph_nojobs[x]); + gzprintf(ofile, "%d\n", monthgraph_ppool[x]); + } + gzprintf(ofile, "%d\n", rockets_launched); + gzprintf(ofile, "%d\n", rockets_launched_success); + gzprintf(ofile, "%d\n", coal_survey_done); + + for (int x = 0; x < PBAR_DATA_SIZE; x++) + for (int p = 0; p < NUM_PBARS; p++) + gzprintf(ofile, "%d\n", pbars[p].data[x]); + + for (int p = 0; p < NUM_PBARS; p++) { + gzprintf(ofile, "%d\n", pbars[p].oldtot); + gzprintf(ofile, "%d\n", pbars[p].diff); + } - gzprintf(ofile, "%d\n", cheat_flag); - gzprintf(ofile, "%d\n", total_pollution_deaths); - gzprintf(ofile, "%f\n", pollution_deaths_history); - gzprintf(ofile, "%d\n", total_starve_deaths); - gzprintf(ofile, "%f\n", starve_deaths_history); - gzprintf(ofile, "%d\n", total_unemployed_years); - gzprintf(ofile, "%f\n", unemployed_history); - gzprintf(ofile, "%d\n", max_pop_ever); - gzprintf(ofile, "%d\n", total_evacuated); - gzprintf(ofile, "%d\n", total_births); + gzprintf(ofile, "%d\n", cheat_flag); + gzprintf(ofile, "%d\n", total_pollution_deaths); + gzprintf(ofile, "%f\n", pollution_deaths_history); + gzprintf(ofile, "%d\n", total_starve_deaths); + gzprintf(ofile, "%f\n", starve_deaths_history); + gzprintf(ofile, "%d\n", total_unemployed_years); + gzprintf(ofile, "%f\n", unemployed_history); + gzprintf(ofile, "%d\n", max_pop_ever); + gzprintf(ofile, "%d\n", total_evacuated); + gzprintf(ofile, "%d\n", total_births); - for (x = 0; x < NUMOF_MODULES; x++) - gzprintf(ofile, "%d\n", module_help_flag[x]); + for (int x = 0; x < NUMOF_MODULES; x++) + gzprintf(ofile, "%d\n", 0); - if (strlen(given_scene) > 1) - gzprintf(ofile, "%s\n", given_scene); - else - gzprintf(ofile, "dummy\n"); /* 1 */ + if (strlen(given_scene) > 1) + gzprintf(ofile, "%s\n", given_scene); + else + gzprintf(ofile, "dummy\n"); /* 1 */ - gzprintf(ofile, "%d\n", highest_tech_level); /* 2 */ + gzprintf(ofile, "%d\n", highest_tech_level); /* 2 */ - gzprintf(ofile, "sust %d %d %d %d %d %d %d %d %d %d\n", sust_dig_ore_coal_count, sust_port_count, sust_old_money_count, sust_old_population_count, sust_old_tech_count, sust_fire_count, sust_old_money, sust_old_population, sust_old_tech, sustain_flag); /* 3 */ + gzprintf(ofile, "sust %d %d %d %d %d %d %d %d %d %d\n", sust_dig_ore_coal_count, sust_port_count, sust_old_money_count, sust_old_population_count, sust_old_tech_count, sust_fire_count, sust_old_money, sust_old_population, sust_old_tech, sustain_flag); /* 3 */ - gzprintf(ofile, "arid %d %d\n", global_aridity, global_mountainity); /* 4 */ + gzprintf(ofile, "arid %d %d\n", global_aridity, global_mountainity); /* 4 */ - gzprintf(ofile, "dummy\n"); /* 5 */ + gzprintf(ofile, "dummy\n"); /* 5 */ - gzprintf(ofile, "dummy\n"); /* 6 */ + gzprintf(ofile, "dummy\n"); /* 6 */ - gzprintf(ofile, "dummy\n"); /* 7 */ + gzprintf(ofile, "dummy\n"); /* 7 */ - gzprintf(ofile, "dummy\n"); /* 8 */ + gzprintf(ofile, "dummy\n"); /* 8 */ - gzprintf(ofile, "dummy\n"); /* 9 */ + gzprintf(ofile, "dummy\n"); /* 9 */ - gzprintf(ofile, "dummy\n"); /* 10 */ + gzprintf(ofile, "dummy\n"); /* 10 */ - gzclose(ofile); + gzclose(ofile); + std::cout << "old saved " << xml_file_name << std::endl; + } +#endif } void load_city_2(char *cname) { - int i, x, y, p; + int i, x, y, p, r; int dumbint = 0; int num_pbars, pbar_data_size; int pbar_tmp; int dummy; gzFile gzfile; char s[512]; - + unsigned found; clear_game(); - gzfile = gzopen(cname, "rb"); - if (gzfile == NULL) { - printf(_("Can't open <%s> (gzipped)"), cname); - do_error("Can't open it!"); - } - - sscanf(gzgets(gzfile, s, 256), "%d", &ldsv_version); - if (ldsv_version < WATERWELL_V2) { - gzclose(gzfile); - load_city_old( cname ); - /* Fix desert frontier for old saved games and scenarios */ - desert_frontier(0, 0, WORLD_SIDE_LEN, WORLD_SIDE_LEN); - return; - } - - fprintf(stderr, " ldsv_version = %i \n", ldsv_version); - use_waterwell = true; - + std::string xml_file_name; + xml_file_name = cname; + found = xml_file_name.find(".gz"); + if (found > xml_file_name.length() - 3) + { xml_file_name += ".gz";} init_pbars(); - num_pbars = NUM_PBARS; + num_pbars = OLD_NUM_PBARS; pbar_data_size = PBAR_DATA_SIZE; - init_inventory(); - print_time_for_year(); + r = xml_loadsave.loadXMLfile(xml_file_name); + if (r == -1) + { + std::cout << "importing: "<< cname << std::endl; + //old savegames are always WORLD_SIDE_LEN == 100 + world.len(COMPATIBLE_WORLD_SIDE_LEN); + clear_game(); + binary_mode = false; //set save default for old files + seed_compression = false; //set save default for old files + gzfile = gzopen(cname, "rb"); + if (gzfile == NULL) + { + printf("%s <%s> (%s)",_("Can't open"),cname, _("gzipped")); + do_error("Can't open it!"); + } - // Easier debugging from saved game: #Line = 100 x + y + 1 (first line = ldsv_version) - for (x = 0; x < WORLD_SIDE_LEN; x++) { - for (y = 0; y < WORLD_SIDE_LEN; y++) { - gzgets(gzfile, s, 512); - // TY po fl cr or i1 i2 i3 i4 i5 i6 i7 PL al ec ws gp wa wp ww wn g1 g2 g3 g4 DA TK AN d4 d5 d6 d7 d8 d9 - sscanf(s, "%hi %d %i %hu %hu %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d" - , &MP_TYPE(x, y) - , &MP_INFO(x, y).population - , &MP_INFO(x, y).flags - , &MP_INFO(x, y).coal_reserve - , &MP_INFO(x, y).ore_reserve - , &MP_INFO(x, y).int_1 - , &MP_INFO(x, y).int_2 - , &MP_INFO(x, y).int_3 - , &MP_INFO(x, y).int_4 - , &MP_INFO(x, y).int_5 - , &MP_INFO(x, y).int_6 - , &MP_INFO(x, y).int_7 - , &MP_POL(x, y) - , &ground[x][y].altitude - , &ground[x][y].ecotable - , &ground[x][y].wastes - , &ground[x][y].pollution - , &ground[x][y].water_alt - , &ground[x][y].water_pol - , &ground[x][y].water_wast - , &ground[x][y].water_next - , &ground[x][y].int1 - , &ground[x][y].int2 - , &ground[x][y].int3 - , &ground[x][y].int4 - , &MP_DATE(x,y) // d1 = date of built - , &MP_TECH(x,y) // d2 = tech at build time - , &MP_ANIM(x,y) // d3 = animation_time (see reset_animation_time mess :) - , &dumbint // d4 could be image index for smooth animation, cf windmill anim_tile - , &dumbint // d5 percentage of activity to choose family of pic - , &dumbint // d6 - , &dumbint // d7 - , &dumbint // d8 - , &dumbint // d9 - ); - if (get_group_of_type(MP_TYPE(x, y)) == GROUP_MARKET) - inventory(x, y); + sscanf(gzgets(gzfile, s, 256), "%d", &ldsv_version); + if (ldsv_version < WATERWELL_V2) + { + gzclose(gzfile); + load_city_old( cname ); + /* Fix desert frontier for old saved games and scenarios */ + connect_transport(1, 1, world.len() - 2, world.len() - 2); + desert_water_frontiers(0, 0, world.len(), world.len()); + return; } - } - set_map_groups(); - sscanf(gzgets(gzfile, s, 256), "%d", &main_screen_originx); - sscanf(gzgets(gzfile, s, 256), "%d", &main_screen_originy); + fprintf(stderr, " ldsv_version = %i \n", ldsv_version); + use_waterwell = true; - sscanf(gzgets(gzfile, s, 256), "%d", &total_time); - for (x = 0; x < MAX_NUMOF_SUBSTATIONS; x++) { - sscanf(gzgets(gzfile, s, 256), "%d", &substationx[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &substationy[x]); - } - sscanf(gzgets(gzfile, s, 256), "%d", &numof_substations); + // Easier debugging from saved game: #Line = 100 x + y + 1 (first line = ldsv_version) + for (x = 0; x < COMPATIBLE_WORLD_SIDE_LEN; x++) + { + for (y = 0; y < COMPATIBLE_WORLD_SIDE_LEN; y++) + { + gzgets(gzfile, s, 512); + // TY po fl cr or i1 i2 i3 i4 i5 i6 i7 PL al ec ws gp wa wp ww wn g1 g2 g3 g4 DA TK AN d4 d5 d6 d7 d8 d9 + sscanf(s, "%hu %d %i %hu %hu %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d" + , &(world(x, y)->type) + , &dummy //&MP_INFO(x, y).population + , &(world(x, y)->flags) + , &(world(x, y)->coal_reserve) + , &(world(x, y)->ore_reserve) + , &dummy //&MP_INFO(x, y).int_1 + , &dummy //&MP_INFO(x, y).int_2 + , &dummy //&MP_INFO(x, y).int_3 + , &dummy //&MP_INFO(x, y).int_4 + , &dummy //&MP_INFO(x, y).int_5 + , &dummy //&MP_INFO(x, y).int_6 + , &dummy //&MP_INFO(x, y).int_7 + , &(world(x, y)->pollution) + , &world(x, y)->ground.altitude + , &world(x, y)->ground.ecotable + , &world(x, y)->ground.wastes + , &world(x, y)->ground.pollution + , &world(x, y)->ground.water_alt + , &world(x, y)->ground.water_pol + , &world(x, y)->ground.water_wast + , &world(x, y)->ground.water_next + , &world(x, y)->ground.int1 + , &world(x, y)->ground.int2 + , &world(x, y)->ground.int3 + , &world(x, y)->ground.int4 + , &dummy//&MP_DATE(x,y) // d1 = date of built + , &dummy//&MP_TECH(x,y) // d2 = tech at build time + , &dummy//&MP_ANIM(x,y) // d3 = animation_time (see reset_animation_time mess :) + , &dumbint // d4 could be image index for smooth animation, cf windmill anim_tile + , &dumbint // d5 percentage of activity to choose family of pic + , &dumbint // d6 + , &dumbint // d7 + , &dumbint // d8 + , &dumbint // d9 + ); + world(x, y)->group = get_group_of_type(world(x, y)->type); - for (x = 0; x < MAX_NUMOF_MARKETS; x++) { - sscanf(gzgets(gzfile, s, 256), "%d", &marketx[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &markety[x]); - } - sscanf(gzgets(gzfile, s, 256), "%d", &numof_markets); - sscanf(gzgets(gzfile, s, 256), "%d", &people_pool); - sscanf(gzgets(gzfile, s, 256), "%o", &total_money); - sscanf(gzgets(gzfile, s, 256), "%d", &income_tax_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &coal_tax_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &dole_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &transport_cost_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &goods_tax_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &export_tax); - sscanf(gzgets(gzfile, s, 256), "%d", &export_tax_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &import_cost); - sscanf(gzgets(gzfile, s, 256), "%d", &import_cost_rate); - sscanf(gzgets(gzfile, s, 256), "%d", &tech_level); - sscanf(gzgets(gzfile, s, 256), "%d", &tpopulation); - sscanf(gzgets(gzfile, s, 256), "%d", &tstarving_population); - sscanf(gzgets(gzfile, s, 256), "%d", &tunemployed_population); - sscanf(gzgets(gzfile, s, 256), "%d", &x); /* waste_goods obsolete */ - sscanf(gzgets(gzfile, s, 256), "%d", &power_made); - sscanf(gzgets(gzfile, s, 256), "%d", &power_used); - sscanf(gzgets(gzfile, s, 256), "%d", &coal_made); - sscanf(gzgets(gzfile, s, 256), "%d", &coal_used); - sscanf(gzgets(gzfile, s, 256), "%d", &goods_made); - sscanf(gzgets(gzfile, s, 256), "%d", &goods_used); - sscanf(gzgets(gzfile, s, 256), "%d", &ore_made); - sscanf(gzgets(gzfile, s, 256), "%d", &ore_used); - sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &diff_old_population */ + } + } + //set_map_groups(); - /* Update variables calculated from those above */ - housed_population = tpopulation / ((total_time % NUMOF_DAYS_IN_MONTH) + 1); + sscanf(gzgets(gzfile, s, 256), "%d", &main_screen_originx); + sscanf(gzgets(gzfile, s, 256), "%d", &main_screen_originy); + + sscanf(gzgets(gzfile, s, 256), "%d", &total_time); - /* Get size of monthgraph array */ - sscanf(gzgets(gzfile, s, 256), "%d", &i); - for (x = 0; x < i; x++) { - /* If more entries in file than will fit on screen, - then we need to skip past them. */ - if (x >= monthgraph_size) { - sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_pop[x] */ - sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_starve[x] */ - sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_nojobs[x] */ - sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_ppool[x] */ - } else { - sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_pop[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_starve[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_nojobs[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_ppool[x]); + for (x = 0; x < MAX_NUMOF_SUBSTATIONS; x++) + { + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&substationx[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&substationy[x]); } - } - /* If screen bigger than number of entries in file, pad with zeroes */ - while (x < monthgraph_size) { - monthgraph_pop[x] = 0; - monthgraph_starve[x] = 0; - monthgraph_nojobs[x] = 0; - monthgraph_ppool[x] = 0; - x++; - } - sscanf(gzgets(gzfile, s, 256), "%d", &rockets_launched); - sscanf(gzgets(gzfile, s, 256), "%d", &rockets_launched_success); - sscanf(gzgets(gzfile, s, 256), "%d", &coal_survey_done); - - for (x = 0; x < pbar_data_size; x++) { - for (p = 0; p < num_pbars; p++) { - sscanf(gzgets(gzfile, s, 256), "%d", &(pbar_tmp)); - update_pbar(p, pbar_tmp, 1); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&numof_substations); + + for (x = 0; x < MAX_NUMOF_MARKETS; x++) + { + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&marketx[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&markety[x]); + } + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&numof_markets); + sscanf(gzgets(gzfile, s, 256), "%d", &people_pool); + sscanf(gzgets(gzfile, s, 256), "%d", &total_money); + sscanf(gzgets(gzfile, s, 256), "%d", &income_tax_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &coal_tax_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &dole_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &transport_cost_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &goods_tax_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &export_tax); + sscanf(gzgets(gzfile, s, 256), "%d", &export_tax_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &import_cost); + sscanf(gzgets(gzfile, s, 256), "%d", &import_cost_rate); + sscanf(gzgets(gzfile, s, 256), "%d", &tech_level); + sscanf(gzgets(gzfile, s, 256), "%d", &tpopulation); + sscanf(gzgets(gzfile, s, 256), "%d", &tstarving_population); + sscanf(gzgets(gzfile, s, 256), "%d", &tunemployed_population); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* waste_goods obsolete */ + sscanf(gzgets(gzfile, s, 256), "%d", &power_made); + sscanf(gzgets(gzfile, s, 256), "%d", &power_used); + sscanf(gzgets(gzfile, s, 256), "%d", &coal_made); + sscanf(gzgets(gzfile, s, 256), "%d", &coal_used); + sscanf(gzgets(gzfile, s, 256), "%d", &goods_made); + sscanf(gzgets(gzfile, s, 256), "%d", &goods_used); + sscanf(gzgets(gzfile, s, 256), "%d", &ore_made); + sscanf(gzgets(gzfile, s, 256), "%d", &ore_used); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &diff_old_population */ + + //build new constructions according to type info + int constuctionCounter = 0; + for (x = 0; x < COMPATIBLE_WORLD_SIDE_LEN; x++) + { + for (y = 0; y < COMPATIBLE_WORLD_SIDE_LEN; y++) + { + unsigned short type = world(x, y)->type; + unsigned short group = world(x,y)->group; + world(x,y)->flags &= ~VOLATILE_FLAGS; + if (world(x, y)->flags & FLAG_IS_RIVER) + { set_river_tile( x, y);} + + if((group == GROUP_TRACK_BRIDGE) || (group == GROUP_ROAD_BRIDGE) + || (group == GROUP_RAIL_BRIDGE)) + { world(x, y)->setTerrain(CST_WATER);} + + if (ConstructionGroup::countConstructionGroup(group)) + { + ConstructionGroup::getConstructionGroup(group)->placeItem(x, y); + if(world(x,y)->is_residence()) + { + Residence *residence = dynamic_cast<Residence*>(world(x,y)->construction); + residence->local_population = 95 * residence->max_population / 100; + } + world(x,y)->construction->bootstrap_commodities(50); + constuctionCounter++; + } + else if(type == CST_USED) + { + world(x, y)->setTerrain(CST_DESERT); + }//endif countConstruction + }// end for y + }// end for x + std::cout<<"Generated and initialzed "<<constuctionCounter<<" modern Constructions"<<std::endl; + //} + + + + /* Get size of monthgraph array */ + sscanf(gzgets(gzfile, s, 256), "%d", &i); + for (x = 0; x < i; x++) + { + /* If more entries in file than will fit on screen, + then we need to skip past them. */ + if (x >= monthgraph_size) + { + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_pop[x] */ + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_starve[x] */ + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_nojobs[x] */ + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_ppool[x] */ + } + else + { + sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_pop[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_starve[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_nojobs[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &monthgraph_ppool[x]); + } + } + /* If screen bigger than number of entries in file, pad with zeroes */ + while (x < monthgraph_size) + { + monthgraph_pop[x] = 0; + monthgraph_starve[x] = 0; + monthgraph_nojobs[x] = 0; + monthgraph_ppool[x] = 0; + x++; + } + sscanf(gzgets(gzfile, s, 256), "%d", &rockets_launched); + sscanf(gzgets(gzfile, s, 256), "%d", &rockets_launched_success); + sscanf(gzgets(gzfile, s, 256), "%d", &coal_survey_done); + + for (x = 0; x < pbar_data_size; x++) + { + for (p = 0; p < num_pbars; p++) + { + sscanf(gzgets(gzfile, s, 256), "%d", &(pbar_tmp)); + update_pbar(p, pbar_tmp, 1); + } } - } - for (p = 0; p < num_pbars; p++) - pbars[p].data_size = pbar_data_size; + for (p = 0; p < num_pbars; p++) + { pbars[p].data_size = pbar_data_size;} - for (p = 0; p < num_pbars; p++) { - sscanf(gzgets(gzfile, s, 256), "%d", &(pbars[p].oldtot)); - sscanf(gzgets(gzfile, s, 256), "%d", &(pbars[p].diff)); - } + for (p = 0; p < num_pbars; p++) + { + sscanf(gzgets(gzfile, s, 256), "%d", &(pbars[p].oldtot)); + sscanf(gzgets(gzfile, s, 256), "%d", &(pbars[p].diff)); + } - sscanf(gzgets(gzfile, s, 256), "%d", &cheat_flag); - sscanf(gzgets(gzfile, s, 256), "%d", &total_pollution_deaths); - sscanf(gzgets(gzfile, s, 256), "%f", &pollution_deaths_history); - sscanf(gzgets(gzfile, s, 256), "%d", &total_starve_deaths); - sscanf(gzgets(gzfile, s, 256), "%f", &starve_deaths_history); - sscanf(gzgets(gzfile, s, 256), "%d", &total_unemployed_years); - sscanf(gzgets(gzfile, s, 256), "%f", &unemployed_history); - sscanf(gzgets(gzfile, s, 256), "%d", &max_pop_ever); - sscanf(gzgets(gzfile, s, 256), "%d", &total_evacuated); - sscanf(gzgets(gzfile, s, 256), "%d", &total_births); - - for (x = 0; x < NUMOF_MODULES; x++) - sscanf(gzgets(gzfile, s, 256), "%d", &(module_help_flag[x])); - - sscanf(gzgets(gzfile, s, 256), "%128s", given_scene); - if (strncmp(given_scene, "dummy", 5) == 0 || strlen(given_scene) < 3) - given_scene[0] = 0; - sscanf(gzgets(gzfile, s, 256), "%128s", s); - if (strncmp(given_scene, "dummy", 5) != 0) - sscanf(s, "%d", &highest_tech_level); - else - highest_tech_level = 0; - - gzgets(gzfile, s, 200); - if (sscanf - (s, "sust %d %d %d %d %d %d %d %d %d %d", &sust_dig_ore_coal_count, &sust_port_count, &sust_old_money_count, - &sust_old_population_count, &sust_old_tech_count, &sust_fire_count, &sust_old_money, &sust_old_population, - &sust_old_tech, &sustain_flag) == 10) { - sust_dig_ore_coal_tip_flag = sust_port_flag = 1; - } else - sustain_flag = sust_dig_ore_coal_count = sust_port_count - = sust_old_money_count = sust_old_population_count - = sust_old_tech_count = sust_fire_count = sust_old_money = sust_old_population = sust_old_tech = 0; + sscanf(gzgets(gzfile, s, 256), "%d", &cheat_flag); + sscanf(gzgets(gzfile, s, 256), "%d", &total_pollution_deaths); + sscanf(gzgets(gzfile, s, 256), "%f", &pollution_deaths_history); + sscanf(gzgets(gzfile, s, 256), "%d", &total_starve_deaths); + sscanf(gzgets(gzfile, s, 256), "%f", &starve_deaths_history); + sscanf(gzgets(gzfile, s, 256), "%d", &total_unemployed_years); + sscanf(gzgets(gzfile, s, 256), "%f", &unemployed_history); + sscanf(gzgets(gzfile, s, 256), "%d", &max_pop_ever); + sscanf(gzgets(gzfile, s, 256), "%d", &total_evacuated); + sscanf(gzgets(gzfile, s, 256), "%d", &total_births); + + for (x = 0; x < NUMOF_MODULES; x++) + { sscanf(gzgets(gzfile, s, 256), "%d", &dummy);} + + sscanf(gzgets(gzfile, s, 256), "%128s", given_scene); + if (strncmp(given_scene, "dummy", 5) == 0 || strlen(given_scene) < 3) + { given_scene[0] = 0;} + sscanf(gzgets(gzfile, s, 256), "%128s", s); + if (strncmp(given_scene, "dummy", 5) != 0) + { sscanf(s, "%d", &highest_tech_level);} + else + { highest_tech_level = 0;} + + gzgets(gzfile, s, 200); + if (sscanf + (s, "sust %d %d %d %d %d %d %d %d %d %d", &sust_dig_ore_coal_count, &sust_port_count, &sust_old_money_count, + &sust_old_population_count, &sust_old_tech_count, &sust_fire_count, &sust_old_money, &sust_old_population, + &sust_old_tech, &sustain_flag) == 10) + { + sust_dig_ore_coal_tip_flag = sust_port_flag = 1; + } + else + { sustain_flag = sust_dig_ore_coal_count = sust_port_count + = sust_old_money_count = sust_old_population_count + = sust_old_tech_count = sust_fire_count = sust_old_money = sust_old_population = sust_old_tech = 0; + } - gzgets(gzfile, s, 80); - sscanf(s, "arid %d %d", &global_aridity, &global_mountainity); + gzgets(gzfile, s, 80); + sscanf(s, "arid %d %d", &global_aridity, &global_mountainity); - gzclose(gzfile); + gzclose(gzfile); + std::cout << "old loaded " << cname << std::endl; + } + /* Update variables calculated from those above */ + housed_population = tpopulation / ((total_time % NUMOF_DAYS_IN_MONTH) + 1); /* FIXME: AL1 this is initialisation stuff, should go elsewhere */ // Engine stuff if (tech_level > MODERN_WINDMILL_TECH) - modern_windmill_flag = 1; - - numof_shanties = count_groups(GROUP_SHANTY); - numof_communes = count_groups(GROUP_COMMUNE); - - /* set up the university intake. */ - x = count_groups(GROUP_UNIVERSITY); - if (x > 0) { - university_intake_rate = (count_groups(GROUP_SCHOOL) * 20) / x; - if (university_intake_rate > 100) - university_intake_rate = 100; - } else - university_intake_rate = 50; + { modern_windmill_flag = 1;} print_total_money(); @@ -512,44 +592,35 @@ //get alt_min, alt_max alt_min = 2000000000; alt_max = -alt_min; - for ( y = 0; y < WORLD_SIDE_LEN; y++){ - for ( x = 0; x < WORLD_SIDE_LEN; x++) { - MP_ANIM(x,y) = 0; - if (MP_GROUP(x, y) == GROUP_FIRE){ - MP_INFO(x, y).int_3 = 0; - } - if (alt_min > ALT(x,y)){ - alt_min = ALT(x,y); + + for ( y = 0; y < world.len(); y++){ + for ( x = 0; x < world.len(); x++) { + if (alt_min > world(x, y)->ground.altitude) + { + alt_min = world(x, y)->ground.altitude; } - if (alt_max < ALT(x,y)){ - alt_max = ALT(x,y); + if (alt_max < world(x, y)->ground.altitude) + { + alt_max = world(x, y)->ground.altitude; } } } + alt_step = (alt_max - alt_min) /10; - map_power_grid(true); /* WCK: Is this safe to do here? - * AL1: No, in NG_1.1 - * In case of error message with ok_dial_box - * the dialog cannot appear because the screen - * is not set up => crash. - * FIXME: move all initialisation elsewhere, in - * engine.cpp or simulate.cpp. - */ // UI stuff - if (main_screen_originx > WORLD_SIDE_LEN - getMainWindowWidth() / 16 - 1) - main_screen_originx = WORLD_SIDE_LEN - getMainWindowWidth() / 16 - 1; + if (main_screen_originx > COMPATIBLE_WORLD_SIDE_LEN - getConfig()->videoX / 16 - 1) + main_screen_originx = COMPATIBLE_WORLD_SIDE_LEN - getConfig()->videoX / 16 - 1; - if (main_screen_originy > WORLD_SIDE_LEN - getMainWindowHeight() / 16 - 1) - main_screen_originy = WORLD_SIDE_LEN - getMainWindowHeight() / 16 - 1; + if (main_screen_originy > COMPATIBLE_WORLD_SIDE_LEN - getConfig()->videoY / 16 - 1) + main_screen_originy = COMPATIBLE_WORLD_SIDE_LEN - getConfig()->videoY / 16 - 1; - unhighlight_module_button(selected_module); - selected_module = sbut[7]; /* 7 is track. Watch out though! */ - highlight_module_button(selected_module); - set_selected_module(CST_TRACK_LR); - connect_transport(1, 1, WORLD_SIDE_LEN - 2, WORLD_SIDE_LEN - 2); + connect_transport(1, 1, world.len() - 2, world.len() - 2); /* Fix desert frontier for old saved games and scenarios */ - desert_frontier(0, 0, WORLD_SIDE_LEN, WORLD_SIDE_LEN); + desert_water_frontiers(0, 0, world.len(), world.len()); } + +/** @file lincity/loadsave.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/loadsave.h lincity-ng-2.9~git20150314/src/lincity/loadsave.h --- lincity-ng-2.0/src/lincity/loadsave.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/loadsave.h 2015-05-05 16:32:51.000000000 +0000 @@ -5,6 +5,8 @@ /* This is the loading/saving facility */ +#include "string.h" + #ifndef __loadsave_h__ #define __loadsave_h__ @@ -28,9 +30,12 @@ //void load_saved_city(char *s); void save_city(char *); -void save_city_2(char *); +void save_city_2(std::string); void load_city_2(char *); extern void load_city_old(char *); #endif /* __loadsave_h__ */ + +/** @file lincity/loadsave.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/all_modules.cpp lincity-ng-2.9~git20150314/src/lincity/modules/all_modules.cpp --- lincity-ng-2.0/src/lincity/modules/all_modules.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/all_modules.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,156 @@ +#include "all_modules.h" + +void initializeModules() { + ConstructionGroup::clearGroupMap(); + ConstructionGroup::addConstructionGroup(&fireStationConstructionGroup); + ConstructionGroup::addConstructionGroup(&healthCentreConstructionGroup); + ConstructionGroup::addConstructionGroup(&cricketConstructionGroup); + ConstructionGroup::addConstructionGroup(&potteryConstructionGroup); + ConstructionGroup::addConstructionGroup(&monumentConstructionGroup); + ConstructionGroup::addConstructionGroup(&blacksmithConstructionGroup); + ConstructionGroup::addConstructionGroup(&waterwellConstructionGroup); + ConstructionGroup::addConstructionGroup(&communeConstructionGroup); + ConstructionGroup::addConstructionGroup(&windmillConstructionGroup); + ConstructionGroup::addConstructionGroup(&windpowerConstructionGroup); + ConstructionGroup::addConstructionGroup(&coal_powerConstructionGroup); + ConstructionGroup::addConstructionGroup(&solarPowerConstructionGroup); + ConstructionGroup::addConstructionGroup(&substationConstructionGroup); + ConstructionGroup::addConstructionGroup(&millConstructionGroup); + ConstructionGroup::addConstructionGroup(&organic_farmConstructionGroup); + ConstructionGroup::addConstructionGroup(&residenceLLConstructionGroup); + ConstructionGroup::addConstructionGroup(&residenceMLConstructionGroup); + ConstructionGroup::addConstructionGroup(&residenceHLConstructionGroup); + ConstructionGroup::addConstructionGroup(&residenceLHConstructionGroup); + ConstructionGroup::addConstructionGroup(&residenceMHConstructionGroup); + ConstructionGroup::addConstructionGroup(&residenceHHConstructionGroup); + ConstructionGroup::addConstructionGroup(&schoolConstructionGroup); + ConstructionGroup::addConstructionGroup(&universityConstructionGroup); + ConstructionGroup::addConstructionGroup(&trackConstructionGroup); + ConstructionGroup::addConstructionGroup(&roadConstructionGroup); + ConstructionGroup::addConstructionGroup(&railConstructionGroup); + ConstructionGroup::addConstructionGroup(&trackbridgeConstructionGroup); + ConstructionGroup::addConstructionGroup(&roadbridgeConstructionGroup); + ConstructionGroup::addConstructionGroup(&railbridgeConstructionGroup); + ConstructionGroup::addConstructionGroup(&powerlineConstructionGroup); + ConstructionGroup::addConstructionGroup(&parklandConstructionGroup); + ConstructionGroup::addConstructionGroup(&parkpondConstructionGroup); + ConstructionGroup::addConstructionGroup(&oremineConstructionGroup); + ConstructionGroup::addConstructionGroup(&coalmineConstructionGroup); + ConstructionGroup::addConstructionGroup(&tipConstructionGroup); + ConstructionGroup::addConstructionGroup(&recycleConstructionGroup); + ConstructionGroup::addConstructionGroup(&portConstructionGroup); + ConstructionGroup::addConstructionGroup(&fireConstructionGroup); + ConstructionGroup::addConstructionGroup(&industryLightConstructionGroup); + ConstructionGroup::addConstructionGroup(&industryHeavyConstructionGroup); + ConstructionGroup::addConstructionGroup(&marketConstructionGroup); + ConstructionGroup::addConstructionGroup(&rocketPadConstructionGroup); + ConstructionGroup::addConstructionGroup(&shantyConstructionGroup); + + + ConstructionGroup::clearResourcepMap(); + ConstructionGroup::addResourceID("Water", &waterConstructionGroup); + ConstructionGroup::addResourceID("Green", &bareConstructionGroup); + ConstructionGroup::addResourceID("Tree", &treeConstructionGroup); + ConstructionGroup::addResourceID("Tree2", &tree2ConstructionGroup); + ConstructionGroup::addResourceID("Tree3", &tree3ConstructionGroup); + ConstructionGroup::addResourceID("Desert", &desertConstructionGroup); + + ConstructionGroup::addResourceID("Blacksmith", &blacksmithConstructionGroup); + ConstructionGroup::addResourceID("FireStation", &fireStationConstructionGroup); + ConstructionGroup::addResourceID("Health", &healthCentreConstructionGroup); + ConstructionGroup::addResourceID("SportsCroud", &cricketConstructionGroup); + ConstructionGroup::addResourceID("Pottery", &potteryConstructionGroup); + //ConstructionGroup::addResourceID("Monument", &monumentFinishedConstructionGroup); + ConstructionGroup::addResourceID("MonumentConstruction", &monumentConstructionGroup); + new ResourceGroup("Monument"); + ConstructionGroup::addResourceID("Waterwell", &waterwellConstructionGroup); + ConstructionGroup::addResourceID("Commune", &communeConstructionGroup); + ConstructionGroup::addResourceID("WindMill", &windmillConstructionGroup); + ConstructionGroup::addResourceID("WindMillHTech", &windpowerConstructionGroup); + new ResourceGroup("WindMillHTechRG"); + new ResourceGroup("WindMillHTechG"); +// ConstructionGroup::addResourceID("WindMillHTechRG", &windpower_RG_ConstructionGroup); +// ConstructionGroup::addResourceID("WindMillHTechG", &windpower_G_ConstructionGroup); + ConstructionGroup::addResourceID("PowerCoalEmpty", &coal_powerConstructionGroup); + new ResourceGroup("PowerCoalLow"); + new ResourceGroup("PowerCoalMed"); + new ResourceGroup("PowerCoalFull"); + //ConstructionGroup::addResourceID("PowerCoalLow", &coal_power_low_ConstructionGroup); + //ConstructionGroup::addResourceID("PowerCoalMed", &coal_power_med_ConstructionGroup); + //ConstructionGroup::addResourceID("PowerCoalFull", &coal_power_full_ConstructionGroup); + ConstructionGroup::addResourceID("PowerSolar", &solarPowerConstructionGroup); + new ResourceGroup("Substation"); + ConstructionGroup::addResourceID("SubstationOff", &substationConstructionGroup); + //ConstructionGroup::addResourceID("Substation", &substation_RG_ConstructionGroup); + new ResourceGroup("SubstationOn"); + //ConstructionGroup::addResourceID("SubstationOn", &substation_G_ConstructionGroup); + ConstructionGroup::addResourceID("Mill", &millConstructionGroup); + ConstructionGroup::addResourceID("Farm", &organic_farmConstructionGroup); + ConstructionGroup::addResourceID("ResidentialLowLow", &residenceLLConstructionGroup); + ConstructionGroup::addResourceID("ResidentialMedLow", &residenceMLConstructionGroup); + ConstructionGroup::addResourceID("ResidentialHighLow", &residenceHLConstructionGroup); + ConstructionGroup::addResourceID("ResidentialLow", &residenceLHConstructionGroup); + ConstructionGroup::addResourceID("ResidentialMedHigh", &residenceMHConstructionGroup); + ConstructionGroup::addResourceID("ResidentialHighHigh", &residenceHHConstructionGroup); + ConstructionGroup::addResourceID("School", &schoolConstructionGroup); + ConstructionGroup::addResourceID("University", &universityConstructionGroup); + ConstructionGroup::addResourceID("Track", &trackConstructionGroup); + ConstructionGroup::addResourceID("Road", &roadConstructionGroup); + ConstructionGroup::addResourceID("Rail", &railConstructionGroup); + ConstructionGroup::addResourceID("TrackBridge", &trackbridgeConstructionGroup); + ConstructionGroup::addResourceID("RoadBridge", &roadbridgeConstructionGroup); + ConstructionGroup::addResourceID("RailBridge", &railbridgeConstructionGroup); + ConstructionGroup::addResourceID("PowerLine", &powerlineConstructionGroup); + ConstructionGroup::addResourceID("ParklandPlane", &parklandConstructionGroup); + ConstructionGroup::addResourceID("ParklandLake", &parkpondConstructionGroup); + ConstructionGroup::addResourceID("OreMine", &oremineConstructionGroup); + ConstructionGroup::addResourceID("CoalMine", &coalmineConstructionGroup); + new ResourceGroup("CoalMineLow"); + new ResourceGroup("CoalMineMed"); + new ResourceGroup("CoalMineFull"); + //ConstructionGroup::addResourceID("CoalMineLow", &coalmine_L_ConstructionGroup); + //ConstructionGroup::addResourceID("CoalMineMed", &coalmine_M_ConstructionGroup); + //ConstructionGroup::addResourceID("CoalMineFull", &coalmine_H_ConstructionGroup); + ConstructionGroup::addResourceID("Tip", &tipConstructionGroup); + ConstructionGroup::addResourceID("Recycle", &recycleConstructionGroup); + ConstructionGroup::addResourceID("Harbor", &portConstructionGroup); + ConstructionGroup::addResourceID("Fire", &fireConstructionGroup); + new ResourceGroup("FireWasteLand"); + //ConstructionGroup::addResourceID("FireWasteLand", &fireWasteLandConstructionGroup); + ConstructionGroup::addResourceID("IndustryLight", &industryLightConstructionGroup); + new ResourceGroup("IndustryLightQ"); + new ResourceGroup("IndustryLightL"); + new ResourceGroup("IndustryLightM"); + new ResourceGroup("IndustryLightH"); + //ConstructionGroup::addResourceID("IndustryLightQ", &industryLight_Q_ConstructionGroup); + //ConstructionGroup::addResourceID("IndustryLightL", &industryLight_L_ConstructionGroup); + //ConstructionGroup::addResourceID("IndustryLightM", &industryLight_M_ConstructionGroup); + //ConstructionGroup::addResourceID("IndustryLightH", &industryLight_H_ConstructionGroup); + ConstructionGroup::addResourceID("IndustryHigh", &industryHeavyConstructionGroup); + new ResourceGroup("IndustryHighL"); + new ResourceGroup("IndustryHighM"); + new ResourceGroup("IndustryHighH"); + //ConstructionGroup::addResourceID("IndustryHighL", &industryHeavy_L_ConstructionGroup); + //ConstructionGroup::addResourceID("IndustryHighM", &industryHeavy_M_ConstructionGroup); + //ConstructionGroup::addResourceID("IndustryHighH", &industryHeavy_H_ConstructionGroup); + ConstructionGroup::addResourceID("MarketEmpty", &marketConstructionGroup); + new ResourceGroup("MarketLow"); + new ResourceGroup("MarketMed"); + new ResourceGroup("MarketFull"); + //ConstructionGroup::addResourceID("MarketLow", &market_low_ConstructionGroup); + //ConstructionGroup::addResourceID("MarketMed", &market_med_ConstructionGroup); + //ConstructionGroup::addResourceID("MarketFull", &market_full_ConstructionGroup); + ConstructionGroup::addResourceID("Rocket", &rocketPadConstructionGroup); + ConstructionGroup::addResourceID("Shanty", &shantyConstructionGroup); + + //resources for extra sprites + new ResourceGroup("ChildOnSwing"); //used at School + new ResourceGroup("BlackSmoke"); //used at Coalpower Station + new ResourceGroup("GraySmoke"); //used at light Industry + + //resources for vehicles + new ResourceGroup("Bluecar"); + ResourceGroup::resMap["Bluecar"]->is_vehicle = true; + + +} diff -Nru lincity-ng-2.0/src/lincity/modules/all_modules.h lincity-ng-2.9~git20150314/src/lincity/modules/all_modules.h --- lincity-ng-2.0/src/lincity/modules/all_modules.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/all_modules.h 2015-05-05 16:32:51.000000000 +0000 @@ -12,7 +12,6 @@ #include "heavy_industry.h" #include "light_industry.h" #include "mill.h" -#include "modules.h" #include "monument.h" #include "oremine.h" #include "organic_farm.h" @@ -20,21 +19,29 @@ #include "port.h" #include "pottery.h" #include "power_line.h" -#include "rail.h" +//#include "rail.h" //superseeded by track_road_rail_powerline.h #include "recycle.h" #include "residence.h" -#include "road.h" +//#include "road.h" //superseeded by track_road_rail_powerline.h #include "rocket_pad.h" #include "school.h" #include "shanty.h" #include "solar_power.h" #include "substation.h" #include "tip.h" -#include "track.h" +#include "track_road_rail.h" +//#include "track.h" //superseeded by track_road_rail_powerline.h #include "university.h" #include "water.h" #include "windmill.h" +#include "windpower.h" #include "market.h" #include "waterwell.h" +void initializeModules(); + #endif + + +/** @file lincity/modules/all_modules.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/blacksmith.cpp lincity-ng-2.9~git20150314/src/lincity/modules/blacksmith.cpp --- lincity-ng-2.0/src/lincity/modules/blacksmith.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/blacksmith.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,95 +5,83 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "blacksmith.h" -//#include "cliglobs.h" -void do_blacksmith(int x, int y) +BlacksmithConstructionGroup blacksmithConstructionGroup( + N_("Blacksmith"), + FALSE, /* need credit? */ + GROUP_BLACKSMITH, + GROUP_BLACKSMITH_SIZE, + GROUP_BLACKSMITH_COLOUR, + GROUP_BLACKSMITH_COST_MUL, + GROUP_BLACKSMITH_BUL_COST, + GROUP_BLACKSMITH_FIREC, + GROUP_BLACKSMITH_COST, + GROUP_BLACKSMITH_TECH, + GROUP_BLACKSMITH_RANGE +); + +Construction *BlacksmithConstructionGroup::createConstruction(int x, int y) { + return new Blacksmith(x, y, this); +} + +void Blacksmith::update() { - /* - // int_1 contains the goods at the blacksmith - // int_2 contains the goods made - for the animation - // int_3 contains the coal store - // int_4 unused - // int_5 is the % made so far this month - // int_6 is the % capacity last month - // int_7 contains the jobs stored at the blacksmith - // MP_ANIM(x,y) is the animation trigger time (since 1.91) - */ - if (MP_INFO(x, y).int_3 < MAX_COAL_AT_BLACKSMITH) - if (get_coal(x, y, BLACKSMITH_GET_COAL) != 0) - MP_INFO(x, y).int_3 += BLACKSMITH_GET_COAL; - - if (MP_INFO(x, y).int_1 < MAX_GOODS_AT_BLACKSMITH && MP_INFO(x, y).int_3 >= BLACKSMITH_COAL_USED) { - if (get_steel(x, y, BLACKSMITH_STEEL_USED) != 0) { - MP_INFO(x, y).int_1 += GOODS_MADE_BY_BLACKSMITH; - MP_INFO(x, y).int_3 -= BLACKSMITH_COAL_USED; + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + if (pauseCounter++ < 0) + { return;} + if ((commodityCount[STUFF_GOODS] + GOODS_MADE_BY_BLACKSMITH <= MAX_GOODS_AT_BLACKSMITH ) + && (commodityCount[STUFF_COAL] >= BLACKSMITH_COAL_USED) + && (commodityCount[STUFF_STEEL] >= BLACKSMITH_STEEL_USED) + && (commodityCount[STUFF_JOBS] >= BLACKSMITH_JOBS)) + { + commodityCount[STUFF_GOODS] += GOODS_MADE_BY_BLACKSMITH; + commodityCount[STUFF_COAL] -= BLACKSMITH_COAL_USED; + commodityCount[STUFF_STEEL] -= BLACKSMITH_STEEL_USED; + commodityCount[STUFF_JOBS] -= BLACKSMITH_JOBS; + working_days++; + if ((goods_made += GOODS_MADE_BY_BLACKSMITH) >= BLACKSMITH_BATCH) + { + animate = true; + world(x,y)->pollution++; + goods_made = 0; } } - - if (MP_INFO(x, y).int_7 < BLACKSMITH_JOBS) { - if (get_jobs(x, y, BLACKSMITH_JOBS)) - MP_INFO(x, y).int_7 = BLACKSMITH_JOBS; + else + { + frameIt->frame = 0; + animate = false; + pauseCounter = -BLACKSMITH_CLOSE_TIME; + return; } - - if (MP_INFO(x, y).int_7 >= BLACKSMITH_JOBS) { - if (MP_INFO(x, y).int_1 > GOODS_MADE_BY_BLACKSMITH) { - if (put_goods(x, y, GOODS_MADE_BY_BLACKSMITH - 1) != 0) { - MP_INFO(x, y).int_1 -= (GOODS_MADE_BY_BLACKSMITH - 1); - MP_INFO(x, y).int_2 += (GOODS_MADE_BY_BLACKSMITH - 1); - MP_INFO(x, y).int_5++; - MP_INFO(x, y).int_7 -= BLACKSMITH_JOBS; - } + //animation + if (animate && real_time > anim) + { + anim = real_time + BLACKSMITH_ANIM_SPEED; + if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { + frameIt->frame = 1; + animate = false; } - } else { - MP_TYPE(x, y) = CST_BLACKSMITH_0; } - if (MP_INFO(x, y).int_2 > BLACKSMITH_BATCH && real_time >= MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + BLACKSMITH_ANIM_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_BLACKSMITH_0): - MP_TYPE(x, y) = CST_BLACKSMITH_1; - break; - case (CST_BLACKSMITH_1): - MP_TYPE(x, y) = CST_BLACKSMITH_2; - break; - case (CST_BLACKSMITH_2): - MP_TYPE(x, y) = CST_BLACKSMITH_3; - break; - case (CST_BLACKSMITH_3): - MP_TYPE(x, y) = CST_BLACKSMITH_4; - break; - case (CST_BLACKSMITH_4): - MP_TYPE(x, y) = CST_BLACKSMITH_5; - break; - case (CST_BLACKSMITH_5): - MP_TYPE(x, y) = CST_BLACKSMITH_6; - break; - case (CST_BLACKSMITH_6): - MP_TYPE(x, y) = CST_BLACKSMITH_1; - MP_INFO(x, y).int_2 = 0; - MP_POL(x, y)++; - break; - } - } - if (total_time % 100 == 0) { - MP_INFO(x, y).int_6 = MP_INFO(x, y).int_5; - MP_INFO(x, y).int_5 = 0; - } } -void mps_blacksmith(int x, int y) +void Blacksmith::report() { int i = 0; - mps_store_title(i++, _("Blacksmith")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_6); + mps_store_sfp(i++, N_("busy"), (float) busy); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_1 * 100.0 / MAX_GOODS_AT_BLACKSMITH); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_AT_BLACKSMITH); + list_commodities(&i); } + +/** @file lincity/modules/blacksmith.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/blacksmith.h lincity-ng-2.9~git20150314/src/lincity/modules/blacksmith.h --- lincity-ng-2.0/src/lincity/modules/blacksmith.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/blacksmith.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,88 @@ -/* ---------------------------------------------------------------------- * - * blacksmith.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_BLACKSMITH_COLOUR (white(15)) +#define GROUP_BLACKSMITH_COST 5000 +#define GROUP_BLACKSMITH_COST_MUL 25 +#define GROUP_BLACKSMITH_BUL_COST 1000 +#define GROUP_BLACKSMITH_TECH 3 +#define GROUP_BLACKSMITH_FIREC 60 +#define GROUP_BLACKSMITH_RANGE 0 +#define GROUP_BLACKSMITH_SIZE 2 -#ifndef __blacksmith_h__ -#define __blacksmith_h__ +#define BLACKSMITH_JOBS 35 -void do_blacksmith(int x, int y); -void mps_blacksmith(int x, int y); +#define BLACKSMITH_STEEL_USED 1 +#define BLACKSMITH_COAL_USED 1 +#define GOODS_MADE_BY_BLACKSMITH 50 +#define MAX_JOBS_AT_BLACKSMITH (BLACKSMITH_JOBS*20) +#define MAX_COAL_AT_BLACKSMITH (BLACKSMITH_COAL_USED*20) +#define MAX_STEEL_AT_BLACKSMITH (BLACKSMITH_STEEL_USED*20) +#define MAX_GOODS_AT_BLACKSMITH (GOODS_MADE_BY_BLACKSMITH*20) +#define BLACKSMITH_CLOSE_TIME 25 + +#define BLACKSMITH_BATCH (GOODS_MADE_BY_BLACKSMITH*100) +//#define BLACKSMITH_ANIM_THRESHOLD 10 +#define BLACKSMITH_ANIM_SPEED 200 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class BlacksmithConstructionGroup: public ConstructionGroup { +public: + BlacksmithConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_BLACKSMITH; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_BLACKSMITH; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_BLACKSMITH; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_BLACKSMITH; + commodityRuleCount[Construction::STUFF_GOODS].take = false; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + } + // overriding method that creates a blacksmith + virtual Construction *createConstruction(int x, int y); +}; + +extern BlacksmithConstructionGroup blacksmithConstructionGroup; + +class Blacksmith: public RegisteredConstruction<Blacksmith> { // Blacksmith inherits from its RegisteredConstruction +public: + Blacksmith(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Blacksmith>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->pauseCounter = 0; + this->busy = 0; + this->working_days = 0; + this->animate = false; + this->goods_made = 0; + initialize_commodities(); + } + virtual ~Blacksmith() { } + virtual void update(); + virtual void report(); + + int goods_made; + int anim; + int pauseCounter; + int working_days, busy; + bool animate; +}; + + +/** @file lincity/modules/blacksmith.h */ -#endif /* __blacksmith_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/coalmine.cpp lincity-ng-2.9~git20150314/src/lincity/modules/coalmine.cpp --- lincity-ng-2.0/src/lincity/modules/coalmine.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/coalmine.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,161 +5,123 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" + #include "coalmine.h" -void do_coalmine(int x, int y) +// Coalmine: +CoalmineConstructionGroup coalmineConstructionGroup( + N_("Coal Mine"), + FALSE, /* need credit? */ + GROUP_COALMINE, + GROUP_COALMINE_SIZE, + GROUP_COALMINE_COLOUR, + GROUP_COALMINE_COST_MUL, + GROUP_COALMINE_BUL_COST, + GROUP_COALMINE_FIREC, + GROUP_COALMINE_COST, + GROUP_COALMINE_TECH, + GROUP_COALMINE_RANGE +); + +//CoalmineConstructionGroup coalmine_L_ConstructionGroup = coalmineConstructionGroup; +//CoalmineConstructionGroup coalmine_M_ConstructionGroup = coalmineConstructionGroup; +//CoalmineConstructionGroup coalmine_H_ConstructionGroup = coalmineConstructionGroup; + +Construction *CoalmineConstructionGroup::createConstruction(int x, int y) { - /* - // int_1 is the coal at the surface - // int_2 is the coal reserve under the ground. More than one mine can claim the coal under ground! - // int_3 is the jobs collected. - // int_4 is for displaying info, %jobs available to dig - // int_5 is for %jobs available to put on transport - */ - int xx, yy, xs, ys, xe, ye, cr; - MP_INFO(x,y).int_4 = 0; - - if (MP_INFO(x, y).int_1 < (MAX_COAL_AT_MINE - 1000)) { - if (MP_INFO(x, y).int_2 < 0) - return; /* run out of reserves */ - - xs = x - COAL_RESERVE_SEARCH_LEN; - if (xs < 0) - xs = 0; - ys = y - COAL_RESERVE_SEARCH_LEN; - if (ys < 0) - ys = 0; - xe = x + COAL_RESERVE_SEARCH_LEN; - if (xe > WORLD_SIDE_LEN) - xe = WORLD_SIDE_LEN; - ye = y + COAL_RESERVE_SEARCH_LEN; - if (ye > WORLD_SIDE_LEN) - ye = WORLD_SIDE_LEN; - cr = 0; - for (yy = ys; yy < ye; yy++) - for (xx = xs; xx < xe; xx++) - cr += MP_INFO(xx, yy).coal_reserve; - MP_INFO(x, y).int_2 = cr; - if (cr > 0) { - if (get_jobs(x, y, JOBS_DIG_COAL - MP_INFO(x, y).int_3) != 0) { - MP_INFO(x, y).int_3 = 0; - MP_INFO(x,y).int_4 = JOBS_DIG_COAL ; - - for (yy = ys; yy < ye; yy++) - for (xx = xs; xx < xe; xx++) - if (MP_INFO(xx, yy).coal_reserve > 0) { - MP_INFO(xx, yy).coal_reserve--; - MP_INFO(x, y).int_1 += 1000; - coal_made += 1000; - coal_tax += 1000; - sust_dig_ore_coal_tip_flag = 0; - MP_POL(x, y) += COALMINE_POLLUTION; - yy = ye; - xx = xe; /* break out */ - - } - } else if (get_jobs(x, y, JOBS_DIG_COAL / 10) != 0) { - MP_INFO(x, y).int_3 += JOBS_DIG_COAL / 10; - MP_INFO(x,y).int_4 += MP_INFO(x, y).int_3; - } else if (get_jobs(x, y, JOBS_DIG_COAL / 50) != 0) { - MP_INFO(x, y).int_3 += JOBS_DIG_COAL / 50; - MP_INFO(x,y).int_4 += MP_INFO(x, y).int_3; - } - } else { - MP_INFO(x, y).int_1 = 0; - MP_INFO(x, y).int_2 = -1; - } - } else { - MP_INFO(x,y).int_4 = JOBS_DIG_COAL ; // lot of coal at surface, so we don't dig, - // but say we did for better stats - } + return new Coalmine(x, y, this); +} - /* put it on the railway */ - if (MP_GROUP(x - 1, y) == GROUP_RAIL - && MP_INFO(x - 1, y).int_3 < MAX_COAL_ON_RAIL - && MP_INFO(x, y).int_1 >= (MAX_COAL_ON_RAIL - MP_INFO(x - 1, y).int_3)) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_1 -= (MAX_COAL_ON_RAIL - MP_INFO(x - 1, y).int_3); - MP_INFO(x - 1, y).int_3 = MAX_COAL_ON_RAIL; - MP_INFO(x,y).int_4 += JOBS_LOAD_COAL; - } - } - if (MP_GROUP(x, y - 1) == GROUP_RAIL - && MP_INFO(x, y - 1).int_3 < MAX_COAL_ON_RAIL - && MP_INFO(x, y).int_1 >= (MAX_COAL_ON_RAIL - MP_INFO(x, y - 1).int_3)) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_1 -= (MAX_COAL_ON_RAIL - MP_INFO(x, y - 1).int_3); - MP_INFO(x, y - 1).int_3 = MAX_COAL_ON_RAIL; - MP_INFO(x,y).int_4 += JOBS_LOAD_COAL; - } - } - /* put it on the road */ - if (MP_GROUP(x - 1, y) == GROUP_ROAD - && MP_INFO(x - 1, y).int_3 < MAX_COAL_ON_ROAD - && MP_INFO(x, y).int_1 >= (MAX_COAL_ON_ROAD - MP_INFO(x - 1, y).int_3)) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_1 -= (MAX_COAL_ON_ROAD - MP_INFO(x - 1, y).int_3); - MP_INFO(x - 1, y).int_3 = MAX_COAL_ON_ROAD; - MP_INFO(x,y).int_4 += JOBS_LOAD_COAL; - } - } - if (MP_GROUP(x, y - 1) == GROUP_ROAD - && MP_INFO(x, y - 1).int_3 < MAX_COAL_ON_ROAD - && MP_INFO(x, y).int_1 >= (MAX_COAL_ON_ROAD - MP_INFO(x, y - 1).int_3)) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_1 -= (MAX_COAL_ON_ROAD - MP_INFO(x, y - 1).int_3); - MP_INFO(x, y - 1).int_3 = MAX_COAL_ON_ROAD; - MP_INFO(x,y).int_4 += JOBS_LOAD_COAL; - } - } - /* put it on the tracks */ - if (MP_GROUP(x - 1, y) == GROUP_TRACK - && MP_INFO(x - 1, y).int_3 < MAX_COAL_ON_TRACK - && MP_INFO(x, y).int_1 >= (MAX_COAL_ON_TRACK - MP_INFO(x - 1, y).int_3)) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_1 -= (MAX_COAL_ON_TRACK - MP_INFO(x - 1, y).int_3); - MP_INFO(x - 1, y).int_3 = MAX_COAL_ON_TRACK; - MP_INFO(x,y).int_4 += JOBS_LOAD_COAL; +void Coalmine::update() +{ + bool coal_found = false; + //scan available coal_reserve in range + current_coal_reserve = 0; + for (int yy = ys; yy < ye ; yy++) + { + for (int xx = xs; xx < xe ; xx++) + { current_coal_reserve += world(xx,yy)->coal_reserve;} + } + // mine some coal + if ((current_coal_reserve > 0) + && (commodityCount[STUFF_COAL] <= TARGET_COAL_LEVEL * (MAX_COAL_AT_MINE - COAL_PER_RESERVE)/100) + && (commodityCount[STUFF_JOBS] >= COALMINE_JOBS)) + { + for (int yy = ys; (yy < ye) && !coal_found; yy++) + { + for (int xx = xs; (xx < xe) && !coal_found; xx++) + { + if (world(xx,yy)->coal_reserve > 0) + { + world(xx,yy)->coal_reserve--; + world(xx,yy)->pollution += COALMINE_POLLUTION; + world(xx,yy)->flags |= FLAG_ALTERED; + commodityCount[STUFF_COAL] += COAL_PER_RESERVE; + commodityCount[STUFF_JOBS] -= COALMINE_JOBS; + if (current_coal_reserve < initial_coal_reserve) + { sust_dig_ore_coal_tip_flag = 0;} + coal_found = true; + working_days++; + } + } } } - if (MP_GROUP(x, y - 1) == GROUP_TRACK - && MP_INFO(x, y - 1).int_3 < MAX_COAL_ON_TRACK - && MP_INFO(x, y).int_1 >= (MAX_COAL_ON_TRACK - MP_INFO(x, y - 1).int_3)) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_1 -= (MAX_COAL_ON_TRACK - MP_INFO(x, y - 1).int_3); - MP_INFO(x, y - 1).int_3 = MAX_COAL_ON_TRACK; - MP_INFO(x,y).int_4 += JOBS_LOAD_COAL; + else if ((commodityCount[STUFF_COAL] - COAL_PER_RESERVE > TARGET_COAL_LEVEL * (MAX_COAL_AT_MINE)/100) + && (commodityCount[STUFF_JOBS] >= COALMINE_JOBS)) + { + for (int yy = ys; (yy < ye) && !coal_found; yy++) + { + for (int xx = xs; (xx < xe) && !coal_found; xx++) + { + if (world(xx,yy)->coal_reserve < COAL_RESERVE_SIZE) + { + world(xx,yy)->coal_reserve++; + world(xx,yy)->flags |= FLAG_ALTERED; + commodityCount[STUFF_COAL] -= COAL_PER_RESERVE; + commodityCount[STUFF_JOBS] -= COALMINE_JOBS; + coal_found = true; + working_days++; + } + } } } - - /* choose a graphic */ - if (MP_INFO(x, y).int_1 > (MAX_COAL_AT_MINE - (MAX_COAL_AT_MINE / 5))) - MP_TYPE(x, y) = CST_COALMINE_FULL; - else if (MP_INFO(x, y).int_1 > (MAX_COAL_AT_MINE / 2)) - MP_TYPE(x, y) = CST_COALMINE_MED; - else if (MP_INFO(x, y).int_1 > 0) - MP_TYPE(x, y) = CST_COALMINE_LOW; - else - MP_TYPE(x, y) = CST_COALMINE_EMPTY; + //Monthly update of activity + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + //choose type depending on availabe coal + if (commodityCount[STUFF_COAL] > (MAX_COAL_AT_MINE - (MAX_COAL_AT_MINE / 4)))//75% + { frameIt->resourceGroup = ResourceGroup::resMap["CoalMineFull"];} + else if (commodityCount[STUFF_COAL] > (MAX_COAL_AT_MINE / 2))//50% + { frameIt->resourceGroup = ResourceGroup::resMap["CoalMineMed"];} + else if (commodityCount[STUFF_COAL] > 0)//something + { frameIt->resourceGroup = ResourceGroup::resMap["CoalMineLow"];} + else//nothing + { frameIt->resourceGroup = ResourceGroup::resMap["CoalMine"];} + soundGroup = frameIt->resourceGroup; + + //Evacuate Mine if no more deposits + if (current_coal_reserve == 0 ) + { flags |= FLAG_EVACUATE;} + + //Abandon the Coalmine if it is really empty + if ((current_coal_reserve == 0) + &&(commodityCount[STUFF_JOBS] == 0) + &&(commodityCount[STUFF_COAL] == 0) ) + { ConstructionManager::submitRequest(new ConstructionDeletionRequest(this));} } -void mps_coalmine(int x, int y) +void Coalmine::report() { int i = 0; - - mps_store_title(i++, _("Coal Mine")); - i++; - - // Average of %job for 2 tasks - mps_store_sfp(i++, _("Jobs"), (MP_INFO(x, y).int_4 * 100 )/ ( JOBS_DIG_COAL + JOBS_LOAD_COAL) ); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), busy); + mps_store_sddp(i++, N_("Deposits"), current_coal_reserve, initial_coal_reserve); i++; + list_commodities(&i); +} - mps_store_sfp(i++, _("Stock"), MP_INFO(x, y).int_1 * 100 / MAX_COAL_AT_MINE); - if (MP_INFO(x, y).int_2 > 0) { - mps_store_sd(i++, _("Reserve"), MP_INFO(x, y).int_2); - } else { - mps_store_ss(i++, _("Reserve"), _("EMPTY")); - } +/** @file lincity/modules/coalmine.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/coalmine.h lincity-ng-2.9~git20150314/src/lincity/modules/coalmine.h --- lincity-ng-2.0/src/lincity/modules/coalmine.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/coalmine.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,105 @@ -/* ---------------------------------------------------------------------- * - * coalmine.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_COALMINE_COLOUR 0 +#define GROUP_COALMINE_COST 10000 +#define GROUP_COALMINE_COST_MUL 25 +#define GROUP_COALMINE_BUL_COST 10000 +#define GROUP_COALMINE_TECH 85 +#define GROUP_COALMINE_FIREC 85 +#define GROUP_COALMINE_RANGE 6 +#define GROUP_COALMINE_SIZE 4 -#ifndef __coalmine_h__ -#define __coalmine_h__ -void do_coalmine(int x, int y); -void mps_coalmine(int x, int y); +#define COALMINE_POLLUTION 3 +#define COAL_PER_RESERVE 1000 +#define JOBS_DIG_COAL 900 +#define COALMINE_JOBS (JOBS_DIG_COAL + JOBS_LOAD_COAL) +#define MAX_JOBS_AT_COALMINE (20 * COALMINE_JOBS) +#define MAX_COAL_AT_MINE (20 * COAL_PER_RESERVE) + + +#define TARGET_COAL_LEVEL 80 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + + +class CoalmineConstructionGroup: public ConstructionGroup { +public: + CoalmineConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_COALMINE; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_MINE; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = true; + } + // overriding method that creates an Coalmine + virtual Construction *createConstruction(int x, int y); +}; + +extern CoalmineConstructionGroup coalmineConstructionGroup; +//extern CoalmineConstructionGroup coalmine_L_ConstructionGroup; +//extern CoalmineConstructionGroup coalmine_M_ConstructionGroup; +//extern CoalmineConstructionGroup coalmine_H_ConstructionGroup; + +class Coalmine: public RegisteredConstruction<Coalmine> { // Coalmine inherits from its RegisteredConstruction +public: + Coalmine(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Coalmine>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->working_days = 0; + this->busy = 0; + this->current_coal_reserve = 0; // has to be auto updated since coalmines may compete + initialize_commodities(); + + int coal = 0; + int lenm1 = world.len()-1; + int tmp; + tmp = x - constructionGroup->range; + this->xs = (tmp < 1) ? 1 : tmp; + tmp = y - constructionGroup->range; + this->ys = (tmp < 1)? 1 : tmp; + tmp = x + constructionGroup->range + constructionGroup->size; + this->xe = (tmp > lenm1) ? lenm1 : tmp; + tmp = y + constructionGroup->range + constructionGroup->size; + this->ye = (tmp > lenm1)? lenm1 : tmp; + + for (int yy = ys; yy < ye ; yy++) + { + for (int xx = xs; xx < xe ; xx++) + { coal += world(xx,yy)->coal_reserve;} + } + //always provide some coal so player can + //store sustainable coal + if (coal < 20) + { + world(x,y)->coal_reserve += 20-coal; + coal = 20; + } + this->initial_coal_reserve = coal; + setMemberSaved(&this->initial_coal_reserve,"initial_coal_reserve"); + this->current_coal_reserve = coal; + } + virtual ~Coalmine() { } + virtual void update(); + virtual void report(); + + int xs, ys, xe, ye; + int initial_coal_reserve; + int current_coal_reserve; + int working_days, busy; +}; + +/** @file lincity/modules/coalmine.h */ -#endif /* __coalmine_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/coal_power.cpp lincity-ng-2.9~git20150314/src/lincity/modules/coal_power.cpp --- lincity-ng-2.0/src/lincity/modules/coal_power.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/coal_power.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,97 +5,116 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -#include "../power.h" #include "coal_power.h" -#include "../transport.h" +#include <stdlib.h> -/*** Coal Power ***/ -/* - // int_1 is the maximum possible power (depends on MP_TECH) - // int_2 is the coal at the power station - // int_3 is the stored jobs... Must be an interesting warehouse - // int_4 unused - // int_5 is the projected output. - // int_6 is the grid ID - // int_7 is grid_timestamp - // - // MP_TECH is the tech level when built - -*/ +Coal_powerConstructionGroup coal_powerConstructionGroup( + N_("Coal Power Station"), + FALSE, /* need credit? */ + GROUP_COAL_POWER, + GROUP_COAL_POWER_SIZE, + GROUP_COAL_POWER_COLOUR, + GROUP_COAL_POWER_COST_MUL, + GROUP_COAL_POWER_BUL_COST, + GROUP_COAL_POWER_FIREC, + GROUP_COAL_POWER_COST, + GROUP_COAL_POWER_TECH, + GROUP_COAL_POWER_RANGE +); + +//helper groups for graphics and sound sets, dont add them to ConstructionGroup::groupMap +//Coal_powerConstructionGroup coal_power_low_ConstructionGroup = coal_powerConstructionGroup; +//Coal_powerConstructionGroup coal_power_med_ConstructionGroup = coal_powerConstructionGroup; +//Coal_powerConstructionGroup coal_power_full_ConstructionGroup = coal_powerConstructionGroup; -void do_power_source_coal(int x, int y) -{ - - /* Need coal? Try transport. */ - if (MP_INFO(x, y).int_2 < MAX_COAL_AT_POWER_STATION) { +Construction *Coal_powerConstructionGroup::createConstruction(int x, int y) { + return new Coal_power(x, y, this); +} - /* left side */ - if (XY_IS_TRANSPORT(x - 1, y + 1) && MP_INFO(x - 1, y + 1).int_3 > 0) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - MP_INFO(x, y).int_2 += (MP_INFO(x - 1, y + 1).int_3 / 2 + ((MP_INFO(x - 1, y + 1).int_3) % 2)); - MP_INFO(x - 1, y + 1).int_3 /= 2; - MP_POL(x, y)++; +void Coal_power::update() +{ + int mwh_made = (commodityCount[STUFF_MWH] + mwh_output <= MAX_MWH_AT_COALPS)?mwh_output:MAX_MWH_AT_COALPS-commodityCount[STUFF_MWH]; + int jobs_used = JOBS_COALPS_GENERATE*(mwh_made/100)/(mwh_output/100); + int coal_used = POWERS_COAL_OUTPUT / POWER_PER_COAL * (mwh_made/100) /(mwh_output/100); + if ((commodityCount[STUFF_JOBS] >= jobs_used ) + && (commodityCount[STUFF_COAL] >= coal_used) + && (mwh_made >= POWERS_COAL_OUTPUT)) + { + commodityCount[STUFF_JOBS] -= jobs_used; + commodityCount[STUFF_COAL] -= coal_used; + commodityCount[STUFF_MWH] += mwh_made; + world(x,y)->pollution += POWERS_COAL_POLLUTION *(mwh_made/100)/(mwh_output/100); + working_days += (mwh_made/100); + } + //monthly update + if (total_time % 100 == 0) + { + busy = working_days / (mwh_output/100); + animate = (frameIt->resourceGroup->images_loaded); + std::list<ExtraFrame>::iterator frit = fr_begin; + if(animate) + { + int active = 8*busy/90; + int s = frit->resourceGroup->graphicsInfoVector.size(); + for(int i = 0; frit != fr_end; std::advance(frit, 1), ++i) + { + if (i < active) + { + if( s && + ( (frit->frame < 0) || ( (rand() % 256) > 16) ) ) + // always randomize new plumes and sometimes existing ones + { frit->frame = rand() % s;} + } + else + { frit->frame = -1;} } } - /* top side */ - else if (XY_IS_TRANSPORT(x + 1, y - 1) && MP_INFO(x + 1, y - 1).int_3 > 0) { - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) - MP_INFO(x, y).int_2 += (MP_INFO(x + 1, y - 1).int_3 / 2 + ((MP_INFO(x + 1, y - 1).int_3) % 2)); - MP_INFO(x + 1, y - 1).int_3 /= 2; - MP_POL(x, y)++; + else + { + for(frit = fr_begin; frit != fr_end ; std::advance(frit, 1)) + { frit->frame = -1;} } + working_days = 0; } + /* choose a graphic */ + + if (commodityCount[STUFF_COAL] > (MAX_COAL_AT_COALPS*4/5)) + { frameIt->resourceGroup = ResourceGroup::resMap["PowerCoalFull"];} + else if (commodityCount[STUFF_COAL] > (MAX_COAL_AT_COALPS / 2)) + { frameIt->resourceGroup = ResourceGroup::resMap["PowerCoalMed"];} + else if (commodityCount[STUFF_COAL] > (MAX_COAL_AT_COALPS / 10)) + { frameIt->resourceGroup = ResourceGroup::resMap["PowerCoalLow"];} + else + { frameIt->resourceGroup = ResourceGroup::resMap["PowerCoalEmpty"];} + soundGroup = frameIt->resourceGroup; - /* Need jobs? get_jobs. */ - if ((MP_INFO(x, y).int_3 + JOBS_COALPS_GENERATE + 10) - < MAX_JOBS_AT_COALPS) - if (get_jobs(x, y, JOBS_COALPS_GENERATE + 10) != 0) - MP_INFO(x, y).int_3 += JOBS_COALPS_GENERATE + 10; - - /* Generate Power */ - if (MP_INFO(x, y).int_2 > POWERS_COAL_OUTPUT / 500 && MP_INFO(x, y).int_3 > JOBS_COALPS_GENERATE) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_1; - MP_INFO(x, y).int_3 -= JOBS_COALPS_GENERATE; - MP_INFO(x, y).int_2 -= POWERS_COAL_OUTPUT / 500; - coal_used += POWERS_COAL_OUTPUT / 500; - MP_POL(x, y) += POWERS_COAL_POLLUTION; - grid[MP_INFO(x, y).int_6]->avail_power += MP_INFO(x, y).int_1; + if (animate && (real_time > anim)) + { + anim = real_time + SMOKE_ANIM_SPEED; + std::list<ExtraFrame>::iterator frit; + for(frit = fr_begin; frit != fr_end; std::advance(frit, 1)) + { + if (frit->frame >= 0) + { + if(++(frit->frame) >= (int)frit->resourceGroup->graphicsInfoVector.size()) + { frit->frame = 0;} + } + } } - /* Animation */ - /* choose a graphic */ - if (MP_INFO(x, y).int_2 > (MAX_COAL_AT_POWER_STATION - (MAX_COAL_AT_POWER_STATION / 5))) - MP_TYPE(x, y) = CST_POWERS_COAL_FULL; - else if (MP_INFO(x, y).int_2 > (MAX_COAL_AT_POWER_STATION / 2)) - MP_TYPE(x, y) = CST_POWERS_COAL_MED; - else if (MP_INFO(x, y).int_2 > (MAX_COAL_AT_POWER_STATION / 10)) - MP_TYPE(x, y) = CST_POWERS_COAL_LOW; - else - MP_TYPE(x, y) = CST_POWERS_COAL_EMPTY; } -void mps_coal_power(int x, int y) +void Coal_power::report() { int i = 0; - - char s[12]; - - mps_store_title(i++, _("Coal Power Station")); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), busy); + mps_store_sfp(i++, N_("Tech"), (float)(tech * 100.0) / MAX_TECH_LEVEL); + mps_store_sd(i++, N_("Output"), mwh_output); i++; + list_commodities(&i); +} - format_power(s, sizeof(s), MP_INFO(x, y).int_1); - mps_store_title(i++, _("Max Output")); - mps_store_title(i++, s); - i++; - format_power(s, sizeof(s), MP_INFO(x, y).int_5); - mps_store_title(i++, _("Current Output")); - mps_store_title(i++, s); - i++; +/** @file lincity/modules/coal_power.cpp */ - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_2 * 100.0 / MAX_COAL_AT_POWER_STATION); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_3 * 100.0 / MAX_JOBS_AT_COALPS); - mps_store_sfp(i++, _("Tech"), MP_TECH(x, y) * 100.0 / MAX_TECH_LEVEL); - mps_store_sd(i++, _("Grid ID"), MP_INFO(x, y).int_6); -} diff -Nru lincity-ng-2.0/src/lincity/modules/coal_power.h lincity-ng-2.9~git20150314/src/lincity/modules/coal_power.h --- lincity-ng-2.0/src/lincity/modules/coal_power.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/coal_power.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,132 @@ -/* ---------------------------------------------------------------------- * - * coal_power.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_COAL_POWER_COLOUR 0 +#define GROUP_COAL_POWER_COST 100000 +#define GROUP_COAL_POWER_COST_MUL 5 +#define GROUP_COAL_POWER_BUL_COST 200000 +#define GROUP_COAL_POWER_TECH 200 +#define GROUP_COAL_POWER_FIREC 80 +#define GROUP_COAL_POWER_RANGE 0 +#define GROUP_COAL_POWER_SIZE 4 -#ifndef __coal_power_h__ -#define __coal_power_h__ +#define POWERS_COAL_OUTPUT 11000 //x2 for kWh +#define MAX_MWH_AT_COALPS (20 * POWERS_COAL_OUTPUT) +#define POWER_PER_COAL 250 +#define MAX_COAL_AT_COALPS (20 * POWERS_COAL_OUTPUT / POWER_PER_COAL) +#define POWERS_COAL_POLLUTION 20 +#define JOBS_COALPS_GENERATE 100 +#define MAX_JOBS_AT_COALPS (20 * JOBS_COALPS_GENERATE) +#define SMOKE_ANIM_SPEED 300 -void do_power_source_coal(int x, int y); -void mps_coal_power(int, int); -#endif /* __coal_power_h__ */ +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + +class Coal_powerConstructionGroup: public ConstructionGroup { +public: + Coal_powerConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_COALPS; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_COALPS; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_AT_COALPS; + commodityRuleCount[Construction::STUFF_MWH].take = false; + commodityRuleCount[Construction::STUFF_MWH].give = true; + } + // overriding method that creates a Coal_power + virtual Construction *createConstruction(int x, int y); +}; + +extern Coal_powerConstructionGroup coal_powerConstructionGroup; +//extern Coal_powerConstructionGroup coal_power_low_ConstructionGroup; +//extern Coal_powerConstructionGroup coal_power_med_ConstructionGroup; +//extern Coal_powerConstructionGroup coal_power_full_ConstructionGroup; + + +class Coal_power: public RegisteredConstruction<Coal_power> { // Coal_power inherits from its own RegisteredConstruction +public: + Coal_power(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Coal_power>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + world(x,y)->framesptr->resize(world(x,y)->framesptr->size()+8); + std::list<ExtraFrame>::iterator frit = frameIt; + std::advance(frit, 1); + fr_begin = frit; + frit->move_x = 5; + frit->move_y = -378; + std::advance(frit, 1); + frit->move_x = 29; + frit->move_y = -390; + std::advance(frit, 1); + frit->move_x = 52; + frit->move_y = -397; + std::advance(frit, 1); + frit->move_x = 76; + frit->move_y = -409; + std::advance(frit, 1); + frit->move_x = 65; + frit->move_y = -348; + std::advance(frit, 1); + frit->move_x = 89; + frit->move_y = -360; + std::advance(frit, 1); + frit->move_x = 112; + frit->move_y = -371; + std::advance(frit, 1); + frit->move_x = 136; + frit->move_y = -383; + std::advance(frit, 1); + fr_end = frit; + for (frit = fr_begin; frit != world(x,y)->framesptr->end() && frit != fr_end; std::advance(frit, 1)) + { + frit->resourceGroup = ResourceGroup::resMap["BlackSmoke"]; + frit->frame = -1; // hide smoke + } + this->anim = 0; + this->animate = false; + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->working_days = 0; + this->busy = 0; + this->mwh_output = (int)(POWERS_COAL_OUTPUT + (((double)tech_level * POWERS_COAL_OUTPUT) / MAX_TECH_LEVEL)); + setMemberSaved(&this->mwh_output, "mwh_output"); + initialize_commodities(); + } + virtual ~Coal_power() //remove 2 or more extraframes + { + if(world(x,y)->framesptr) + { + world(x,y)->framesptr->erase(fr_begin, fr_end); + if(world(x,y)->framesptr->empty()) + { + delete world(x,y)->framesptr; + world(x,y)->framesptr = NULL; + } + } + } + virtual void update(); + virtual void report(); + + std::list<ExtraFrame>::iterator fr_begin, fr_end; + int anim; + bool animate; + int mwh_output; + int tech; + int working_days, busy; +}; + + +/** @file lincity/modules/coal_power.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/commune.cpp lincity-ng-2.9~git20150314/src/lincity/modules/commune.cpp --- lincity-ng-2.0/src/lincity/modules/commune.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/commune.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,184 +5,144 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "commune.h" -#include <cstdlib> -#include <math.h> -void do_commune(int x, int y) -{ - /* - // int_1 unused - // int_2 is the steelflag/trackflag - // int_3 is the coal sold in the last 100 days 200 units is 100% - // steel adds more. - // int_4 is the months without selling much coal,steel,ore - // int_5 is the coal, ore, steel waste flags for last month - // int_6 is the coal, ore, steel waste flags so far this month - // - // MP_ANIM is the animation trigger time since 1.91 - */ - /* GCS -- I folded the trackflag into int_2, changing the logic slightly. - This change only affects the animation. */ - int trackflag = 0; - int coalprod = 2; - /* stick coal and ore on tracks, in SMALL doses. */ - if (use_waterwell) { - int w = 0; - int n = 0; - /* Check underground water, and reduce production accordingly */ - for (int i = 0; i < MP_SIZE(x, y); i++) { - for (int j = 0; j < MP_SIZE(x, y); j++) { - n++; - if (HAS_UGWATER(x + i, y + j)) - w++; - } - } - if (w < n / 3) - coalprod = 0; - else if (w < (2 * n) / 3) - coalprod = 1; - } - if (coalprod > 0) { - if (put_coal(x, y, coalprod) != 0) { - trackflag = 1; - MP_INFO(x, y).int_3++; - MP_INFO(x, y).int_6 |= 1; - } - } - if (put_ore(x, y, 6) != 0) { - trackflag = 1; - MP_INFO(x, y).int_3++; - MP_INFO(x, y).int_6 |= 2; - } - /* recycle a bit of waste */ - if (get_waste(x, y, 20) != 0) { - trackflag = 1; - MP_INFO(x, y).int_3++; - MP_INFO(x, y).int_6 |= 8; - } - if (total_time % 10 == 0) { - MP_INFO(x, y).int_2 = 1; - if (put_steel(x, y, 2) != 0) { - MP_INFO(x, y).int_3++; - MP_INFO(x, y).int_6 |= 4; - } else { - MP_INFO(x, y).int_2 = 0; - } - if (trackflag) { - MP_INFO(x, y).int_2 = 0; - } - } +CommuneConstructionGroup communeConstructionGroup( + N_("Forest"), + FALSE, /* need credit? */ + GROUP_COMMUNE, + GROUP_COMMUNE_SIZE, + GROUP_COMMUNE_COLOUR, + GROUP_COMMUNE_COST_MUL, + GROUP_COMMUNE_BUL_COST, + GROUP_COMMUNE_FIREC, + GROUP_COMMUNE_COST, + GROUP_COMMUNE_TECH, + GROUP_COMMUNE_RANGE +); - /* each month. /AL1: is there a reason for day 48 ? */ - if (total_time % 100 == 1) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_6; - MP_INFO(x, y).int_6 = 0; - if (MP_INFO(x, y).int_5 & 4) { //producing steel - if (MP_TYPE(x, y) < CST_COMMUNE_7) { - MP_TYPE(x, y) += 5; - } - } else { - if (MP_TYPE(x, y) >= CST_COMMUNE_7) { - MP_TYPE(x, y) -= 5; - } - } +Construction *CommuneConstructionGroup::createConstruction(int x, int y) { + return new Commune(x, y, this); +} - if (MP_INFO(x, y).int_3 > 0) { /* >0% */ - MP_INFO(x, y).int_3 = 0; - if (--MP_INFO(x, y).int_4 < 0) - MP_INFO(x, y).int_4 = 0; - } else { - MP_INFO(x, y).int_3 = 0; - MP_INFO(x, y).int_4++; +void Commune::update() +{ + int tmpUgwCount = ugwCount; + int tmpCoalprod = coalprod; + const unsigned short s = constructionGroup->size; + const unsigned short a = s*s; + if(commodityCount[STUFF_WATER]>= (a-ugwCount)*WATER_FOREST) + { + tmpUgwCount = a; + tmpCoalprod = COMMUNE_COAL_MADE; + commodityCount[STUFF_WATER] -= (a-ugwCount)*WATER_FOREST; + } + if(//(total_time & 1) && //make coal every second day + (tmpCoalprod > 0) + && (commodityCount[STUFF_COAL] + tmpCoalprod <= MAX_COAL_AT_COMMUNE )) + { + commodityCount[STUFF_COAL] += tmpCoalprod; + monthly_stuff_made++; + } + if(commodityCount[STUFF_ORE] + COMMUNE_ORE_MADE <= MAX_ORE_AT_COMMUNE) + { + commodityCount[STUFF_ORE] += COMMUNE_ORE_MADE; + monthly_stuff_made++; + } + /* recycle a bit of waste if there is plenty*/ + if (commodityCount[STUFF_WASTE] >= 3 * COMMUNE_WASTE_GET) + { + commodityCount[STUFF_WASTE] -= COMMUNE_WASTE_GET; + monthly_stuff_made++; + if(commodityCount[STUFF_ORE] + COMMUNE_ORE_FROM_WASTE <= MAX_ORE_AT_COMMUNE ) + { commodityCount[STUFF_ORE] += COMMUNE_ORE_FROM_WASTE;} + } + if (total_time % 10 == 0) + { + if(monthly_stuff_made) + { animate = true;} + int modulus = ((total_time%20)?1:0); + for(int idx = 0; idx < tmpUgwCount; idx++) + { + int i = x + idx % s; + int j = y + idx / s; + if((i+j)%2==modulus && world(i,j)->pollution) + { --world(i,j)->pollution;} + } + if (!steel_made && commodityCount[STUFF_STEEL] + COMMUNE_STEEL_MADE <= MAX_STEEL_AT_COMMUNE) + { + monthly_stuff_made++; + steel_made = true; + commodityCount[STUFF_STEEL] += COMMUNE_STEEL_MADE; + } + else + { steel_made = false;} + } + + if (total_time % 100 == 1) + {//each month + if (steel_made) + {//producing steel + if (frameIt->frame < 6) + { frameIt->frame += 5;} + } + else if (frameIt->frame >= 6) // not producing steel + { frameIt->frame -= 5;} + last_month_output = monthly_stuff_made; + monthly_stuff_made = 0; + if (last_month_output) + {//we were busy + monthly_stuff_made = 0; + if (lazy_months > 0) + { --lazy_months;} + } + else + {//we are lazy + frameIt->frame = 0; + lazy_months++; /* Communes without production only last 10 years */ - if (MP_INFO(x, y).int_4 > 120) { /* 10 years */ - if (use_waterwell) { - int s = MP_SIZE(x, y); - /* first destroy the commune, then fill it with correct tiles - * maybe paranoid, but tile is 4x4 thus becomes 16 tiles 1x1 - */ - do_bulldoze_area(CST_DESERT, x, y); - for (int i = 0; i < s; i++) { - for (int j = 0; j < s; j++) - if (HAS_UGWATER(x + i, y + j)) - do_bulldoze_area(CST_PARKLAND_PLANE, x + i, y + j); - else - do_bulldoze_area(CST_DESERT, x + i, y + j); - } - } else { - do_bulldoze_area(CST_PARKLAND_PLANE, x, y); - } - return; - } - } - } - + if (lazy_months > 120) + { ConstructionManager::submitRequest(new CommuneDeletionRequest(this));} + }//end we are lazy + }//end each month /* animate */ - if (real_time >= MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + COMMUNE_ANIM_SPEED - 25 + (rand() % 50); - switch (MP_TYPE(x, y)) { - case (CST_COMMUNE_1): - MP_TYPE(x, y) = CST_COMMUNE_2; - break; - case (CST_COMMUNE_2): - MP_TYPE(x, y) = CST_COMMUNE_3; - break; - case (CST_COMMUNE_3): - MP_TYPE(x, y) = CST_COMMUNE_4; - break; - case (CST_COMMUNE_4): - MP_TYPE(x, y) = CST_COMMUNE_5; - break; - case (CST_COMMUNE_5): - MP_TYPE(x, y) = CST_COMMUNE_6; - break; - case (CST_COMMUNE_6): - MP_TYPE(x, y) = CST_COMMUNE_2; - break; - case (CST_COMMUNE_7): - MP_TYPE(x, y) = CST_COMMUNE_8; - break; - case (CST_COMMUNE_8): - MP_TYPE(x, y) = CST_COMMUNE_9; - break; - case (CST_COMMUNE_9): - MP_TYPE(x, y) = CST_COMMUNE_10; - break; - case (CST_COMMUNE_10): - MP_TYPE(x, y) = CST_COMMUNE_11; - break; - case (CST_COMMUNE_11): - MP_TYPE(x, y) = CST_COMMUNE_7; - break; - default: - MP_TYPE(x, y) = CST_COMMUNE_1; - break; + if (animate && real_time >= anim) + { + anim = real_time + COMMUNE_ANIM_SPEED - 25 + (rand() % 50); + if (frameIt->frame < 6) //not producing steel + { + if( ++(frameIt->frame) >= 6 ) + { + animate = false; + frameIt->frame = 1; + } } - if (MP_INFO(x, y).int_5 == 0) { //not producing anything - MP_TYPE(x, y) = CST_COMMUNE_1; + else //producing steel + { + if( ++(frameIt->frame) >= 10 ) + { + animate = false; + frameIt->frame = 6; + } } + if (frameIt->frame >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { frameIt->frame = 1;} } - } -void mps_commune(int x, int y) +void Commune::report() { int i = 0; - const char *p; - - mps_store_title(i++, _("Commune")); - i++; - i++; - mps_store_title(i++, _("Activity")); - i++; - p = (MP_INFO(x, y).int_5 & 1) ? _("Yes") : _("No"); - mps_store_ss(i++, _("Coal"), p); - p = (MP_INFO(x, y).int_5 & 2) ? _("Yes") : _("No"); - mps_store_ss(i++, _("Ore"), p); - p = (MP_INFO(x, y).int_5 & 4) ? _("Yes") : _("No"); - mps_store_ss(i++, _("Steel"), p); - p = (MP_INFO(x, y).int_5 & 8) ? _("Yes") : _("No"); - mps_store_ss(i++, _("Waste"), p); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sddp(i++, N_("Fertility"), ugwCount, constructionGroup->size * constructionGroup->size); + mps_store_sfp(i++, N_("busy"), (float)last_month_output / 3.05); + mps_store_sd(i++, N_("Pollution"), world(x,y)->pollution); + if(lazy_months) + { mps_store_sddp(i++, N_("lazy months"), lazy_months, 120);} + else + { mps_store_title(i++, "");} + list_commodities(&i); } + +/** @file lincity/modules/commune.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/commune.h lincity-ng-2.9~git20150314/src/lincity/modules/commune.h --- lincity-ng-2.0/src/lincity/modules/commune.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/commune.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,113 @@ -/* ---------------------------------------------------------------------- * - * commune.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_COMMUNE_COLOUR (green(30)) +#define GROUP_COMMUNE_COST 1 +#define GROUP_COMMUNE_COST_MUL 2 +#define GROUP_COMMUNE_BUL_COST 1000 +#define GROUP_COMMUNE_TECH 0 +#define GROUP_COMMUNE_FIREC 30 +#define GROUP_COMMUNE_RANGE 0 +#define GROUP_COMMUNE_SIZE 4 -#ifndef __commune_h__ -#define __commune_h__ +//#define JOBS_AT_COMMUNE_GATE 4 +#define COMMUNE_ANIM_SPEED 750 +#define COMMUNE_POP 5 //Used at shanty -void do_commune(int x, int y); -void mps_commune(int x, int y); +#define COMMUNE_COAL_MADE 3 +#define MAX_COAL_AT_COMMUNE (20*COMMUNE_COAL_MADE) +#define COMMUNE_ORE_MADE 6 +#define COMMUNE_ORE_FROM_WASTE 1 +#define MAX_ORE_AT_COMMUNE (20*(COMMUNE_ORE_MADE + COMMUNE_ORE_FROM_WASTE)) +#define COMMUNE_STEEL_MADE 2 +#define MAX_STEEL_AT_COMMUNE (20*COMMUNE_STEEL_MADE) +#define COMMUNE_WASTE_GET 20 +#define MAX_WASTE_AT_COMMUNE (20*COMMUNE_WASTE_GET) +#define WATER_FOREST 5 +#define COMMUNE_WATER_GET (16 * WATER_FOREST) +#define MAX_WATER_AT_COMMUNE (20*COMMUNE_WATER_GET) + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include <cstdlib> + +class CommuneConstructionGroup: public ConstructionGroup { +public: + CommuneConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_COMMUNE; + commodityRuleCount[Construction::STUFF_COAL].take = false; + commodityRuleCount[Construction::STUFF_COAL].give = true; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_COMMUNE; + commodityRuleCount[Construction::STUFF_ORE].take = false; + commodityRuleCount[Construction::STUFF_ORE].give = true; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_COMMUNE; + commodityRuleCount[Construction::STUFF_STEEL].take = false; + commodityRuleCount[Construction::STUFF_STEEL].give = true; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_COMMUNE; + commodityRuleCount[Construction::STUFF_WASTE].take = true; + commodityRuleCount[Construction::STUFF_WASTE].give = false; + commodityRuleCount[Construction::STUFF_WATER].maxload = MAX_WATER_AT_COMMUNE; + commodityRuleCount[Construction::STUFF_WATER].give = false; + commodityRuleCount[Construction::STUFF_WATER].take = true; + } + // overriding method that creates a commune + virtual Construction *createConstruction(int x, int y); +}; + +extern CommuneConstructionGroup communeConstructionGroup; + +class Commune: public RegisteredConstruction<Commune> { // Commune inherits from Construction +public: + Commune(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Commune>(x ,y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; // or real_time? + this->animate = false; + this->steel_made = false; + this->monthly_stuff_made = 0; + this->last_month_output = 0; + this->lazy_months = 0; + initialize_commodities(); + // Check underground water, and reduce coal production accordingly + int w = 0; + for (int i = 0; i < constructionGroup->size; i++) + { + for (int j = 0; j < constructionGroup->size; j++) + { + if (world(x+j, y+i)->flags & FLAG_HAS_UNDERGROUND_WATER) + { w++;} + }// end j + }//end i + this->ugwCount = w; + if (w < 16 / 3) + { this->coalprod = COMMUNE_COAL_MADE/3;} + else if (w < (2 * 16) / 3) + { this->coalprod = COMMUNE_COAL_MADE/2;} + else + { this->coalprod = COMMUNE_COAL_MADE;} + } + virtual ~Commune() { } + virtual void update(); + virtual void report(); + + int anim; + int ugwCount; + int coalprod; + int monthly_stuff_made; + int last_month_output; + int lazy_months; + bool animate; + bool steel_made; +}; + +/** @file lincity/modules/commune.h */ -#endif /* __commune_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/cricket.cpp lincity-ng-2.9~git20150314/src/lincity/modules/cricket.cpp --- lincity-ng-2.0/src/lincity/modules/cricket.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/cricket.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,94 +5,94 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" + #include "cricket.h" -void do_cricket(int x, int y) -{ - /* - // int_1 is the jobs stored at the pavillion - // int_2 is the goods stored at the pavillion - // int_3 is the animation flag - // - // MP_ANIM is the time of the next frame since 1.91 - */ - if (MP_INFO(x, y).int_1 < (MAX_JOBS_AT_CRICKET - CRICKET_GET_JOBS)) - if (get_jobs(x, y, CRICKET_GET_JOBS) != 0) - MP_INFO(x, y).int_1 += CRICKET_GET_JOBS; - if (MP_INFO(x, y).int_2 < (MAX_GOODS_AT_CRICKET - CRICKET_GET_GOODS)) - if (get_goods(x, y, CRICKET_GET_GOODS) != 0) - MP_INFO(x, y).int_2 += CRICKET_GET_GOODS; - /* animate */ - if (MP_INFO(x, y).int_3 && real_time > MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + CRICKET_ANIMATION_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_CRICKET_1): - MP_TYPE(x, y) = CST_CRICKET_2; - break; - case (CST_CRICKET_2): - MP_TYPE(x, y) = CST_CRICKET_3; - break; - case (CST_CRICKET_3): - MP_TYPE(x, y) = CST_CRICKET_4; - break; - case (CST_CRICKET_4): - MP_TYPE(x, y) = CST_CRICKET_5; - break; - case (CST_CRICKET_5): - MP_TYPE(x, y) = CST_CRICKET_6; - break; - case (CST_CRICKET_6): - MP_TYPE(x, y) = CST_CRICKET_7; - break; - case (CST_CRICKET_7): - MP_TYPE(x, y) = CST_CRICKET_1; - MP_INFO(x, y).int_3 = 0; /* disable anim */ +// cricket place: +CricketConstructionGroup cricketConstructionGroup( + N_("Basketball court"), + FALSE, /* need credit? */ + GROUP_CRICKET, + GROUP_CRICKET_SIZE, + GROUP_CRICKET_COLOUR, + GROUP_CRICKET_COST_MUL, + GROUP_CRICKET_BUL_COST, + GROUP_CRICKET_FIREC, + GROUP_CRICKET_COST, + GROUP_CRICKET_TECH, + GROUP_CRICKET_RANGE +); + +Construction *CricketConstructionGroup::createConstruction(int x, int y) { + return new Cricket(x, y, this); +} - break; +void Cricket::update() +{ + ++daycount; + if (commodityCount[STUFF_JOBS] >= CRICKET_JOBS + && commodityCount[STUFF_GOODS] >= CRICKET_GOODS + && commodityCount[STUFF_WASTE] + (CRICKET_GOODS / 3) <= MAX_WASTE_AT_CRICKET) + { + commodityCount[STUFF_JOBS] -= CRICKET_JOBS; + commodityCount[STUFF_GOODS] -= CRICKET_GOODS; + commodityCount[STUFF_WASTE] += (CRICKET_GOODS / 3); + ++covercount; + ++working_days; + } + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + //animate + if (animate && real_time > anim) + { + anim = real_time + CRICKET_ANIMATION_SPEED; + if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { + frameIt->frame = 0; + animate = false; } } - /* That's all. Cover is done by different functions every 3 months or so. */ - cricket_cost += CRICKET_RUNNING_COST; + if(refresh_cover) + { cover();} } -void do_cricket_cover(int x, int y) +void Cricket::cover() { - int xx, x1, x2, y1, y2; - if (MP_INFO(x, y).int_1 < (CRICKET_JOBS * DAYS_BETWEEN_COVER) || - MP_INFO(x, y).int_2 < (CRICKET_GOODS * DAYS_BETWEEN_COVER)) + if(covercount + COVER_TOLERANCE_DAYS < daycount) + { + daycount = 0; + active = false; return; - MP_INFO(x, y).int_1 -= (CRICKET_JOBS * DAYS_BETWEEN_COVER); - MP_INFO(x, y).int_2 -= (CRICKET_GOODS * DAYS_BETWEEN_COVER); - MP_INFO(x, y).int_3 = 1; /* turn on animation */ - - x1 = x - CRICKET_RANGE; - if (x1 < 0) - x1 = 0; - x2 = x + CRICKET_RANGE; - if (x2 > WORLD_SIDE_LEN) - x2 = WORLD_SIDE_LEN; - y1 = y - CRICKET_RANGE; - if (y1 < 0) - y1 = 0; - y2 = y + CRICKET_RANGE; - if (y2 > WORLD_SIDE_LEN) - y2 = WORLD_SIDE_LEN; - for (; y1 < y2; y1++) - for (xx = x1; xx < x2; xx++) - MP_INFO(xx, y1).flags |= FLAG_CRICKET_COVER; + } + active = true; + covercount -= daycount; + daycount = 0; + animate = true; + for(int yy = ys; yy < ye; ++yy) + { + for(int xx = xs; xx < xe; ++xx) + { world(xx,yy)->flags |= FLAG_CRICKET_COVER;} + } } -void mps_cricket(int x, int y) +void Cricket::report() { int i = 0; + const char* p; - mps_store_title(i++, _("Sports field")); + mps_store_sd(i++,constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), busy); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / MAX_JOBS_AT_CRICKET); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / MAX_GOODS_AT_CRICKET); - + list_commodities(&i); + p = active?N_("Yes"):N_("No"); + mps_store_ss(i++, N_("Public sports"), p); } + +/** @file lincity/modules/cricket.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/cricket.h lincity-ng-2.9~git20150314/src/lincity/modules/cricket.h --- lincity-ng-2.0/src/lincity/modules/cricket.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/cricket.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,15 +1,95 @@ -/* ---------------------------------------------------------------------- * - * cricket.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __cricket_h__ -#define __cricket_h__ - -void do_cricket(int x, int y); -void do_cricket_cover(int x, int y); -void mps_cricket(int x, int y); +#define GROUP_CRICKET_COLOUR (white(20)) +#define GROUP_CRICKET_COST 2000 +#define GROUP_CRICKET_COST_MUL 3 +#define GROUP_CRICKET_BUL_COST 1000 +#define GROUP_CRICKET_TECH 12 +#define GROUP_CRICKET_FIREC 20 +#define GROUP_CRICKET_RANGE 9 +#define GROUP_CRICKET_SIZE 2 + +#define CRICKET_JOBS 8 +#define MAX_JOBS_AT_CRICKET (20 * CRICKET_JOBS) +#define CRICKET_GOODS 3 +#define MAX_GOODS_AT_CRICKET (20 * CRICKET_GOODS) +#define MAX_WASTE_AT_CRICKET (20 * CRICKET_GOODS / 3) +#define CRICKET_RUNNING_COST 1 +#define CRICKET_ANIMATION_SPEED 750 + +#define CRICKET_JOB_SWING 4 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class CricketConstructionGroup: public ConstructionGroup { +public: + CricketConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_CRICKET; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_CRICKET; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_CRICKET; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a Cricket + virtual Construction *createConstruction(int x, int y); +}; + +extern CricketConstructionGroup cricketConstructionGroup; + +class Cricket: public RegisteredConstruction<Cricket> { // cricket inherits from Construction +public: + Cricket(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Cricket>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->animate = false; + this->active = false; + setMemberSaved(&(this->active),"active"); + this->busy = 0; + this->daycount = 0; + this->working_days = 0; + setMemberSaved(&(this->daycount),"daycount"); + this->covercount = 0; + setMemberSaved(&(this->covercount),"covercount"); + initialize_commodities(); + + int tmp; + int lenm1 = world.len()-1; + tmp = x - constructionGroup->range; + this->xs = (tmp < 1) ? 1 : tmp; + tmp = y - constructionGroup->range; + this->ys = (tmp < 1)? 1 : tmp; + tmp = x + constructionGroup->range + constructionGroup->size; + this->xe = (tmp > lenm1) ? lenm1 : tmp; + tmp = y + constructionGroup->range + constructionGroup->size; + this->ye = (tmp > lenm1)? lenm1 : tmp; + } + + virtual ~Cricket() { } + virtual void update(); + virtual void report(); + void cover(); + + int xs, ys, xe, ye; + int daycount, covercount; + int anim; + bool animate, active; + int working_days, busy; +}; + +/** @file lincity/modules/cricket.h */ -#endif /* __cricket_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/fire.cpp lincity-ng-2.9~git20150314/src/lincity/modules/fire.cpp --- lincity-ng-2.0/src/lincity/modules/fire.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/fire.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,78 +5,113 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" + #include "fire.h" -#include <stdlib.h> +//#include "lincity-ng/Sound.hpp" + +FireConstructionGroup fireConstructionGroup( + N_("Fire"), + FALSE, /* need credit? */ + GROUP_FIRE, + GROUP_FIRE_SIZE, + GROUP_FIRE_COLOUR, + GROUP_FIRE_COST_MUL, + GROUP_FIRE_BUL_COST, + GROUP_FIRE_FIREC, + GROUP_FIRE_COST, + GROUP_FIRE_TECH, + GROUP_FIRE_RANGE +); -void do_fire(int x, int y) +//helper groups for graphics and sound sets, dont add them to ConstructionGroup::groupMap +//FireConstructionGroup fireWasteLandConstructionGroup = fireConstructionGroup; + +Construction *FireConstructionGroup::createConstruction(int x, int y) { + return new Fire(x, y, this); +} + +void Fire::update() { - /* - // int_1 unused - // int_2 is the fire length - // int_3 is the real_time before the fire can spread or -1 if triggered - // int_4 is the idle land length - // MP_ANIM is the next animation frame time, since 1.91 - */ int i; /* this so we don't get whole blocks changing in one go. */ - if (MP_INFO(x, y).int_2 == 0) + if (burning_days == 0) + { burning_days = rand() % (FIRE_LENGTH / 5);} - MP_INFO(x, y).int_2 = rand() % (FIRE_LENGTH / 5); - if (MP_INFO(x, y).int_2 > FIRE_LENGTH) { - if (MP_INFO(x, y).int_4 == 0) /* rand length here also */ - MP_INFO(x, y).int_4 = rand() % (AFTER_FIRE_LENGTH / 6); - MP_INFO(x, y).int_4++; - if (MP_INFO(x, y).int_4 > AFTER_FIRE_LENGTH) - if (use_waterwell) { - do_bulldoze_area(CST_DESERT, x, y); - } else { - do_bulldoze_area(CST_GREEN, x, y); - } else if (MP_INFO(x, y).int_4 > (3 * AFTER_FIRE_LENGTH) / 4) - MP_TYPE(x, y) = CST_FIRE_DONE4; - else if (MP_INFO(x, y).int_4 > (2 * AFTER_FIRE_LENGTH) / 4) - MP_TYPE(x, y) = CST_FIRE_DONE3; - else if (MP_INFO(x, y).int_4 > (AFTER_FIRE_LENGTH) / 4) - MP_TYPE(x, y) = CST_FIRE_DONE2; + if (burning_days > FIRE_LENGTH) + { + //is_burning = false; + if (smoking_days == 0) /* rand length here also */ + { smoking_days = rand() % (AFTER_FIRE_LENGTH / 6);} + if(frameIt->resourceGroup == ResourceGroup::resMap["Fire"]) + { + frameIt->resourceGroup = ResourceGroup::resMap["FireWasteLand"]; + soundGroup = frameIt->resourceGroup; + } + smoking_days++; + if (world(x,y)->flags & FLAG_FIRE_COVER) + { smoking_days += 4;} + if (smoking_days > AFTER_FIRE_LENGTH) + { ConstructionManager::submitRequest( new ConstructionDeletionRequest(this) ); } + else if (smoking_days > (3 * AFTER_FIRE_LENGTH) / 4) + { frameIt->frame = 3;} + else if (smoking_days > (2 * AFTER_FIRE_LENGTH) / 4) + { frameIt->frame = 2;} + else if (smoking_days > (AFTER_FIRE_LENGTH) / 4) + { frameIt->frame = 1;} else - MP_TYPE(x, y) = CST_FIRE_DONE1; + { frameIt->frame = 0;} return; } - MP_INFO(x, y).int_2++; - if (real_time > MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + FIRE_ANIMATION_SPEED; - if (MP_TYPE(x, y) == CST_FIRE_1) - MP_TYPE(x, y) = CST_FIRE_2; - else if (MP_TYPE(x, y) == CST_FIRE_2) - MP_TYPE(x, y) = CST_FIRE_3; - else if (MP_TYPE(x, y) == CST_FIRE_3) - MP_TYPE(x, y) = CST_FIRE_4; - else if (MP_TYPE(x, y) == CST_FIRE_4) - MP_TYPE(x, y) = CST_FIRE_5; - else if (MP_TYPE(x, y) == CST_FIRE_5) - MP_TYPE(x, y) = CST_FIRE_1; + + burning_days++; + if (world(x,y)->flags & FLAG_FIRE_COVER) + { burning_days += 4;} + days_before_spread--; + if( !(flags & FLAG_IS_GHOST) ) + { world(x,y)->pollution++;} + if (real_time > anim) + { + anim = real_time + FIRE_ANIMATION_SPEED; + if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { frameIt->frame = 0;} } - if (MP_INFO(x, y).int_3 == -1) { - if ((rand() % FIRE_DAYS_PER_SPREAD) == 1) { + if ((days_before_spread == 0) && !(flags & FLAG_IS_GHOST)) + { + days_before_spread = FIRE_DAYS_PER_SPREAD; + if ((rand() % 20) == 1) + { i = rand() % 4; - switch (i) { - case (0): - do_random_fire(x - 1, y, 0); + switch (i) + { + case (0): + do_random_fire(x - 1, y, 0); break; - case (1): - do_random_fire(x, y - 1, 0); + case (1): + do_random_fire(x, y - 1, 0); break; - case (2): - do_random_fire(x + 1, y, 0); + case (2): + do_random_fire(x + 1, y, 0); break; - case (3): - do_random_fire(x, y + 1, 0); + case (3): + do_random_fire(x, y + 1, 0); break; } } - } else if (MP_INFO(x, y).int_3 == 0) { - /* check here 'cos we can wait in the ok box for ever. */ - MP_INFO(x, y).int_3 = real_time + 15000; /* 15 secs seem fair */ - } else if (real_time >= MP_INFO(x, y).int_3) - MP_INFO(x, y).int_3 = -1; + } } + +void Fire::report() +{ + int i = 0; + + mps_store_sd(i++,constructionGroup->name, ID); + i++; + mps_store_sd(i++,N_("Air Pollution"), world(x,y)->pollution); + if (burning_days < FIRE_LENGTH) + { mps_store_sddp(i++,N_("burnt down"), burning_days, FIRE_LENGTH);} + else + { mps_store_sddp(i++,N_("degraded"), smoking_days, AFTER_FIRE_LENGTH);} +} + +/** @file lincity/modules/fire.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/fire.h lincity-ng-2.9~git20150314/src/lincity/modules/fire.h --- lincity-ng-2.0/src/lincity/modules/fire.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/fire.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,13 +1,68 @@ -/* ---------------------------------------------------------------------- * - * fire.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_FIRE_COLOUR (red(30)) +#define GROUP_FIRE_COST 0 /* Unused */ +#define GROUP_FIRE_COST_MUL 1 /* Unused */ +#define GROUP_FIRE_BUL_COST 1000 +#define GROUP_FIRE_TECH 0 /* Unused */ +#define GROUP_FIRE_FIREC 0 +#define GROUP_FIRE_RANGE 0 +#define GROUP_FIRE_SIZE 1 -#ifndef __fire_h__ -#define __fire_h__ +#define DAYS_BETWEEN_FIRES (NUMOF_DAYS_IN_YEAR*2) +#define FIRE_ANIMATION_SPEED (200 + rand()%350 -175) +#define FIRE_DAYS_PER_SPREAD (NUMOF_DAYS_IN_YEAR/8) +#define FIRE_LENGTH (NUMOF_DAYS_IN_YEAR*5) +#define AFTER_FIRE_LENGTH (NUMOF_DAYS_IN_YEAR*10) -void do_fire(int x, int y); +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include <stdlib.h> + + +class FireConstructionGroup: public ConstructionGroup { +public: + FireConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + + }; + // overriding method that creates a Fire + virtual Construction *createConstruction(int x, int y); +}; + +extern FireConstructionGroup fireConstructionGroup; +//extern FireConstructionGroup fireWasteLandConstructionGroup; + +class Fire: public RegisteredConstruction<Fire> { // Fire inherits from Construction +public: + Fire(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Fire>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->burning_days = 0; + setMemberSaved(&this->burning_days, "burning_days"); + this->smoking_days = 0; + setMemberSaved(&this->smoking_days, "smoking_days"); + this->anim = 0; + this->days_before_spread = FIRE_DAYS_PER_SPREAD; + setMemberSaved(&this->days_before_spread, "days_before_spread"); + + } + virtual void update(); + virtual void report(); + + int burning_days; + int smoking_days; + int days_before_spread; + int anim; +}; + +/** @file lincity/modules/fire.h */ -#endif /* __fire_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/firestation.cpp lincity-ng-2.9~git20150314/src/lincity/modules/firestation.cpp --- lincity-ng-2.0/src/lincity/modules/firestation.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/firestation.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,111 +5,97 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" + #include "firestation.h" -void do_firestation(int x, int y) -{ - /* - // int_1 is the jobs stored at the fire station - // int_2 is the goods stored at the fire station - // int_3 is the animation flag - // int_4 unused - // int_5 is the pause counter - // MP_ANIM is the time of the next frame since 1.91 - */ - /* XXX: should note whether we actually _produced_ fire cover in int_6 */ - if (MP_INFO(x, y).int_1 < (MAX_JOBS_AT_FIRESTATION - FIRESTATION_GET_JOBS)) - if (get_jobs(x, y, FIRESTATION_GET_JOBS) != 0) - MP_INFO(x, y).int_1 += FIRESTATION_GET_JOBS; - if (MP_INFO(x, y).int_2 < (MAX_GOODS_AT_FIRESTATION - FIRESTATION_GET_GOODS)) - if (get_goods(x, y, FIRESTATION_GET_GOODS) != 0) - MP_INFO(x, y).int_2 += FIRESTATION_GET_GOODS; - /* animate */ - if (MP_INFO(x, y).int_3 && real_time > MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + FIRESTATION_ANIMATION_SPEED; - if (MP_INFO(x, y).int_5 > 0) - MP_INFO(x, y).int_5--; - else { - switch (MP_TYPE(x, y)) { - case (CST_FIRESTATION_1): - MP_TYPE(x, y) = CST_FIRESTATION_2; - break; - case (CST_FIRESTATION_2): - MP_TYPE(x, y) = CST_FIRESTATION_3; - break; - case (CST_FIRESTATION_3): - MP_TYPE(x, y) = CST_FIRESTATION_4; - break; - case (CST_FIRESTATION_4): - MP_TYPE(x, y) = CST_FIRESTATION_5; - break; - case (CST_FIRESTATION_5): - MP_TYPE(x, y) = CST_FIRESTATION_6; - break; - case (CST_FIRESTATION_6): - MP_TYPE(x, y) = CST_FIRESTATION_7; - MP_INFO(x, y).int_5 = 10; /* pause */ - - break; - case (CST_FIRESTATION_7): - MP_TYPE(x, y) = CST_FIRESTATION_8; - break; - case (CST_FIRESTATION_8): - MP_TYPE(x, y) = CST_FIRESTATION_9; - break; - case (CST_FIRESTATION_9): - MP_TYPE(x, y) = CST_FIRESTATION_10; - break; - case (CST_FIRESTATION_10): - MP_TYPE(x, y) = CST_FIRESTATION_1; - MP_INFO(x, y).int_3 = 0; /* stop */ - break; +// FireStation: +FireStationConstructionGroup fireStationConstructionGroup( + N_("Fire Station"), + FALSE, /* need credit? */ + GROUP_FIRESTATION, + GROUP_FIRESTATION_SIZE, + GROUP_FIRESTATION_COLOUR, + GROUP_FIRESTATION_COST_MUL, + GROUP_FIRESTATION_BUL_COST, + GROUP_FIRESTATION_FIREC, + GROUP_FIRESTATION_COST, + GROUP_FIRESTATION_TECH, + GROUP_FIRESTATION_RANGE +); + +Construction *FireStationConstructionGroup::createConstruction(int x, int y ) { + return new FireStation(x, y, this); +} - } +void FireStation::update() +{ + ++daycount; + if (commodityCount[STUFF_JOBS] >= FIRESTATION_JOBS + && commodityCount[STUFF_GOODS] >= FIRESTATION_GOODS + && commodityCount[STUFF_WASTE] + (FIRESTATION_GOODS / 3) <= MAX_WASTE_AT_FIRESTATION) + { + commodityCount[STUFF_JOBS] -= FIRESTATION_JOBS; + commodityCount[STUFF_GOODS] -= FIRESTATION_GOODS; + commodityCount[STUFF_WASTE] += (FIRESTATION_GOODS / 3); + ++covercount; + ++working_days; + } + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + //animate + if (animate && real_time > anim) + { + anim = real_time + FIRESTATION_ANIMATION_SPEED; + ++(frameIt->frame); + if((frameIt->frame) == 6) + { anim += 10 * FIRESTATION_ANIMATION_SPEED;} + if(frameIt->frame >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { + frameIt->frame = 0; + animate = false; } } /* That's all. Cover is done by different functions every 3 months or so. */ - fire_cost += FIRESTATION_RUNNING_COST; + if(refresh_cover) + { cover();} } -void do_fire_cover(int x, int y) +void FireStation::cover() { - int xx, x1, x2, y1, y2; - if (MP_INFO(x, y).int_1 < (FIRESTATION_JOBS * DAYS_BETWEEN_COVER) || - MP_INFO(x, y).int_2 < (FIRESTATION_GOODS * DAYS_BETWEEN_COVER)) + if(covercount + COVER_TOLERANCE_DAYS < daycount) + { + daycount = 0; + active = false; return; - MP_INFO(x, y).int_1 -= (FIRESTATION_JOBS * DAYS_BETWEEN_COVER); - MP_INFO(x, y).int_2 -= (FIRESTATION_GOODS * DAYS_BETWEEN_COVER); - MP_INFO(x, y).int_3 = 1; /* turn on animation */ - - x1 = x - FIRESTATION_RANGE; - if (x1 < 0) - x1 = 0; - x2 = x + FIRESTATION_RANGE; - if (x2 > WORLD_SIDE_LEN) - x2 = WORLD_SIDE_LEN; - y1 = y - FIRESTATION_RANGE; - if (y1 < 0) - y1 = 0; - y2 = y + FIRESTATION_RANGE; - if (y2 > WORLD_SIDE_LEN) - y2 = WORLD_SIDE_LEN; - for (; y1 < y2; y1++) - for (xx = x1; xx < x2; xx++) - MP_INFO(xx, y1).flags |= FLAG_FIRE_COVER; + } + active = true; + covercount -= daycount; + daycount = 0; + animate = true; + for(int yy = ys; yy < ye; ++yy) + { + for(int xx = xs; xx < xe; ++xx) + { world(xx,yy)->flags |= FLAG_FIRE_COVER;} + } } -void mps_firestation(int x, int y) +void FireStation::report() { int i = 0; - - mps_store_title(i++, _("Fire Station")); + const char* p; + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), (float) busy); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / MAX_JOBS_AT_FIRESTATION); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / MAX_GOODS_AT_FIRESTATION); - + list_commodities(&i); + p = active?N_("Yes"):N_("No"); + mps_store_ss(i++, N_("Fire Protection"), p); } + +/** @file lincity/modules/firestation.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/firestation.h lincity-ng-2.9~git20150314/src/lincity/modules/firestation.h --- lincity-ng-2.0/src/lincity/modules/firestation.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/firestation.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,15 +1,94 @@ -/* ---------------------------------------------------------------------- * - * firestation.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __firestation_h__ -#define __firestation_h__ - -void do_firestation(int x, int y); -void do_fire_cover(int x, int y); -void mps_firestation(int x, int y); +#define GROUP_FIRESTATION_COLOUR (red(20)) +#define GROUP_FIRESTATION_COST 20000 +#define GROUP_FIRESTATION_COST_MUL 10 +#define GROUP_FIRESTATION_BUL_COST 1000 +#define GROUP_FIRESTATION_TECH 22 +#define GROUP_FIRESTATION_FIREC 0 +#define GROUP_FIRESTATION_RANGE 17 +#define GROUP_FIRESTATION_SIZE 2 + +#define FIRESTATION_JOBS 6 +#define MAX_JOBS_AT_FIRESTATION (20 * FIRESTATION_JOBS) +#define FIRESTATION_GOODS 3 +#define MAX_GOODS_AT_FIRESTATION (20 * FIRESTATION_GOODS) +#define MAX_WASTE_AT_FIRESTATION (20 * FIRESTATION_GOODS / 3) +#define FIRESTATION_RUNNING_COST 1 +#define FIRESTATION_RUNNING_COST_MUL 6 +#define FIRESTATION_ANIMATION_SPEED 250 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class FireStationConstructionGroup: public ConstructionGroup { +public: + FireStationConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_FIRESTATION; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_FIRESTATION; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_FIRESTATION; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a firestation + virtual Construction *createConstruction(int x, int y); +}; + +extern FireStationConstructionGroup fireStationConstructionGroup; + +class FireStation: public RegisteredConstruction<FireStation> { // FireStation inherits from RegisteredConstruction +public: + FireStation(int x, int y, ConstructionGroup *cstgrp) : RegisteredConstruction<FireStation>(x ,y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->animate = false; + this->active = false; + setMemberSaved(&(this->active),"active"); + this->busy = 0; + this->working_days = 0; + this->daycount = 0; + setMemberSaved(&(this->daycount),"daycount"); + this->covercount = 0; + setMemberSaved(&(this->covercount),"covercount"); + initialize_commodities(); + + int tmp; + int lenm1 = world.len()-1; + tmp = x - constructionGroup->range; + this->xs = (tmp < 1) ? 1 : tmp; + tmp = y - constructionGroup->range; + this->ys = (tmp < 1)? 1 : tmp; + tmp = x + constructionGroup->range + constructionGroup->size; + this->xe = (tmp > lenm1) ? lenm1 : tmp; + tmp = y + constructionGroup->range + constructionGroup->size; + this->ye = (tmp > lenm1)? lenm1 : tmp; + } + virtual ~FireStation() { } + virtual void update(); + virtual void report(); + void cover(); + + int xs, ys, xe, ye; + int daycount, covercount; + int anim; + bool animate, active; + int working_days, busy; +}; + +/** @file lincity/modules/firestation.h */ -#endif /* __firestation_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/health_centre.cpp lincity-ng-2.9~git20150314/src/lincity/modules/health_centre.cpp --- lincity-ng-2.0/src/lincity/modules/health_centre.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/health_centre.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,60 +5,82 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "health_centre.h" -void do_health_centre(int x, int y) -{ - /* - // int_1 is the jobs stored at the health centre - // int_2 is the goods stored at the health centre - */ - if (MP_INFO(x, y).int_1 < (MAX_JOBS_AT_HEALTH_CENTRE - HEALTH_CENTRE_GET_JOBS)) - if (get_jobs(x, y, HEALTH_CENTRE_GET_JOBS) != 0) - MP_INFO(x, y).int_1 += HEALTH_CENTRE_GET_JOBS; - if (MP_INFO(x, y).int_2 < (MAX_GOODS_AT_HEALTH_CENTRE - HEALTH_CENTRE_GET_GOODS)) - if (get_goods(x, y, HEALTH_CENTRE_GET_GOODS) != 0) - MP_INFO(x, y).int_2 += HEALTH_CENTRE_GET_GOODS; +// Health Centre: +HealthCentreConstructionGroup healthCentreConstructionGroup( + N_("Health Centre"), + FALSE, /* need credit? */ + GROUP_HEALTH, + GROUP_HEALTH_SIZE, + GROUP_HEALTH_COLOUR, + GROUP_HEALTH_COST_MUL, + GROUP_HEALTH_BUL_COST, + GROUP_HEALTH_FIREC, + GROUP_HEALTH_COST, + GROUP_HEALTH_TECH, + GROUP_HEALTH_RANGE +); - /* That's all. Cover is done by different functions every 3 months or so. */ +Construction *HealthCentreConstructionGroup::createConstruction(int x, int y ) { + return new HealthCentre(x, y, this); +} +void HealthCentre::update() +{ + ++daycount; + if (commodityCount[STUFF_JOBS] >= HEALTH_CENTRE_JOBS + && commodityCount[STUFF_GOODS] >= HEALTH_CENTRE_GOODS + && commodityCount[STUFF_WASTE] + (HEALTH_CENTRE_GOODS / 3) <= MAX_WASTE_AT_HEALTH_CENTRE) + { + commodityCount[STUFF_JOBS] -= HEALTH_CENTRE_JOBS; + commodityCount[STUFF_GOODS] -= HEALTH_CENTRE_GOODS; + commodityCount[STUFF_WASTE] += (HEALTH_CENTRE_GOODS / 3); + ++covercount; + ++working_days; + } + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + //TODO implement animation once graphics exist + /* That's all. Cover is done by different functions every 3 months or so. */ health_cost += HEALTH_RUNNING_COST; + if(refresh_cover) + { cover();} } -void do_health_cover(int x, int y) +void HealthCentre::cover() { - int xx, x1, x2, y1, y2; - if (MP_INFO(x, y).int_1 < (HEALTH_CENTRE_JOBS * DAYS_BETWEEN_COVER) || - MP_INFO(x, y).int_2 < (HEALTH_CENTRE_GOODS * DAYS_BETWEEN_COVER)) + if(covercount + COVER_TOLERANCE_DAYS < daycount) + { + daycount = 0; + active = false; return; - MP_INFO(x, y).int_1 -= (HEALTH_CENTRE_JOBS * DAYS_BETWEEN_COVER); - MP_INFO(x, y).int_2 -= (HEALTH_CENTRE_GOODS * DAYS_BETWEEN_COVER); - x1 = x - HEALTH_CENTRE_RANGE; - if (x1 < 0) - x1 = 0; - x2 = x + HEALTH_CENTRE_RANGE; - if (x2 > WORLD_SIDE_LEN) - x2 = WORLD_SIDE_LEN; - y1 = y - HEALTH_CENTRE_RANGE; - if (y1 < 0) - y1 = 0; - y2 = y + HEALTH_CENTRE_RANGE; - if (y2 > WORLD_SIDE_LEN) - y2 = WORLD_SIDE_LEN; - for (; y1 < y2; y1++) - for (xx = x1; xx < x2; xx++) - MP_INFO(xx, y1).flags |= FLAG_HEALTH_COVER; + } + active = true; + covercount -= daycount; + daycount = 0; + for(int yy = ys; yy < ye; ++yy) + { + for(int xx = xs; xx < xe; ++xx) + { world(xx,yy)->flags |= FLAG_HEALTH_COVER;} + } } -void mps_health_centre(int x, int y) -{ +void HealthCentre::report() { int i = 0; + const char* p; - mps_store_title(i++, _("Health Centre")); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), (float) busy); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / MAX_JOBS_AT_HEALTH_CENTRE); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / MAX_GOODS_AT_HEALTH_CENTRE); - + list_commodities(&i); + p = active?_("Yes"):_("No"); + mps_store_ss(i++, N_("Health Care"), p); } + +/** @file lincity/modules/health_centre.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/health_centre.h lincity-ng-2.9~git20150314/src/lincity/modules/health_centre.h --- lincity-ng-2.0/src/lincity/modules/health_centre.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/health_centre.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,15 +1,89 @@ -/* ---------------------------------------------------------------------- * - * health_centre.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __health_centre_h__ -#define __health_centre_h__ - -void do_health_centre(int x, int y); -void do_health_cover(int x, int y); -void mps_health_centre(int x, int y); +#define GROUP_HEALTH_COLOUR (green(24)) +#define GROUP_HEALTH_COST 100000 +#define GROUP_HEALTH_COST_MUL 2 +#define GROUP_HEALTH_BUL_COST 1000 +#define GROUP_HEALTH_TECH 110 +#define GROUP_HEALTH_FIREC 2 +#define GROUP_HEALTH_RANGE 14 +#define GROUP_HEALTH_SIZE 2 + +#define HEALTH_CENTRE_JOBS 6 +#define MAX_JOBS_AT_HEALTH_CENTRE (20 * HEALTH_CENTRE_JOBS) +#define HEALTH_CENTRE_GOODS 40 +#define MAX_GOODS_AT_HEALTH_CENTRE (20 * HEALTH_CENTRE_GOODS) +#define MAX_WASTE_AT_HEALTH_CENTRE (20 * HEALTH_CENTRE_GOODS / 3) +#define HEALTH_RUNNING_COST 2 +#define HEALTH_RUNNING_COST_MUL 9 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class HealthCentreConstructionGroup: public ConstructionGroup { +public: + HealthCentreConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_HEALTH_CENTRE; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_HEALTH_CENTRE; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_HEALTH_CENTRE; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a HealthCentre + virtual Construction *createConstruction(int x, int y); +}; + +extern HealthCentreConstructionGroup healthCentreConstructionGroup; + +class HealthCentre: public RegisteredConstruction<HealthCentre> { // HealthCentre inherits from its own RegisteredConstruction +public: + HealthCentre(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<HealthCentre>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->active = false; + setMemberSaved(&(this->active),"active"); + this->busy = 0; + this->daycount = 0; + this->working_days = 0; + setMemberSaved(&(this->daycount),"daycount"); + this->covercount = 0; + setMemberSaved(&(this->covercount),"covercount"); + initialize_commodities(); + + int tmp; + int lenm1 = world.len()-1; + tmp = x - constructionGroup->range; + this->xs = (tmp < 1) ? 1 : tmp; + tmp = y - constructionGroup->range; + this->ys = (tmp < 1)? 1 : tmp; + tmp = x + constructionGroup->range + constructionGroup->size; + this->xe = (tmp > lenm1) ? lenm1 : tmp; + tmp = y + constructionGroup->range + constructionGroup->size; + this->ye = (tmp > lenm1)? lenm1 : tmp; + } + virtual ~HealthCentre() { } + virtual void update(); + virtual void report(); + void cover(); + + int xs, ys, xe, ye; + int daycount, covercount; + bool active; + int working_days, busy; +}; + +/** @file lincity/modules/health_centre.h */ -#endif /* __health_centre_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/heavy_industry.cpp lincity-ng-2.9~git20150314/src/lincity/modules/heavy_industry.cpp --- lincity-ng-2.0/src/lincity/modules/heavy_industry.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/heavy_industry.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -7,283 +7,137 @@ #include "modules.h" #include "heavy_industry.h" +#include "../transport.h" -void do_industry_h(int x, int y) -{ - int rawm, steel = 0; - /* - // int_1 is the steel produced this month so far - // int_2 is the amount of steel in store - // int_3 is the amount of raw materials in store (ore) - // int_4 is the coal in store - // int_5 is the percent max production last month - // int_6 is unused - // int_7 is whether we get power from coal (1) or elsewhere (0) - // - // MP_ANIM is the time of the next animation frame. since 1.91 - */ - - /* See if there's any raw materials (ore) on the road/rail. If so, use some - jobs to get it. First get some ore... - */ - int load; - if (MP_INFO(x, y).int_3 < MAX_ORE_AT_INDUSTRY_H && ((MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) - != 0) && MP_INFO(x - 1, y).int_5 > 0) - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - load = std::min(MAX_ORE_AT_INDUSTRY_H - MP_INFO(x, y).int_3, - MP_INFO(x - 1, y).int_5 / 2 + ((MP_INFO(x - 1, y).int_5) % 2)); - MP_INFO(x, y).int_3 += load; - MP_INFO(x - 1, y).int_5 -= load; - } - if (MP_INFO(x, y).int_3 < MAX_ORE_AT_INDUSTRY_H && ((MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) - != 0) && MP_INFO(x, y - 1).int_5 > 0) - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - load = std::min(MAX_ORE_AT_INDUSTRY_H - MP_INFO(x, y).int_3, - MP_INFO(x, y - 1).int_5 / 2 + ((MP_INFO(x, y - 1).int_5) % 2)); - MP_INFO(x, y).int_3 += load; - MP_INFO(x, y - 1).int_5 -= load; - } - /* then get some coal if needed */ - if (MP_INFO(x, y).int_4 < MAX_COAL_AT_INDUSTRY_H && ((MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) - != 0) && MP_INFO(x - 1, y).int_3 > 0) - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - load = std::min(MAX_COAL_AT_INDUSTRY_H - MP_INFO(x, y).int_4, - MP_INFO(x - 1, y).int_3 / 2 + ((MP_INFO(x - 1, y).int_3) % 2)); - MP_INFO(x, y).int_4 += load; - MP_INFO(x - 1, y).int_3 -= load; - } - if (MP_INFO(x, y).int_4 < MAX_COAL_AT_INDUSTRY_H && ((MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) - != 0) && MP_INFO(x, y - 1).int_3 > 0) - if (get_jobs(x, y, JOBS_LOAD_COAL) != 0) { - load = std::min(MAX_COAL_AT_INDUSTRY_H - MP_INFO(x, y).int_4, - MP_INFO(x, y - 1).int_3 / 2 + ((MP_INFO(x, y - 1).int_3) % 2)); - MP_INFO(x, y).int_4 += load; - MP_INFO(x, y - 1).int_3 -= load; - } +// IndustryHeavy: +IndustryHeavyConstructionGroup industryHeavyConstructionGroup( + N_("Steel Works"), + FALSE, /* need credit? */ + GROUP_INDUSTRY_H, + GROUP_INDUSTRY_H_SIZE, + GROUP_INDUSTRY_H_COLOUR, + GROUP_INDUSTRY_H_COST_MUL, + GROUP_INDUSTRY_H_BUL_COST, + GROUP_INDUSTRY_H_FIREC, + GROUP_INDUSTRY_H_COST, + GROUP_INDUSTRY_H_TECH, + GROUP_INDUSTRY_H_RANGE +); + +//helper groups for graphics and sound sets, dont add them to ConstructionGroup::groupMap +//IndustryHeavyConstructionGroup industryHeavy_L_ConstructionGroup = industryHeavyConstructionGroup; +//IndustryHeavyConstructionGroup industryHeavy_M_ConstructionGroup = industryHeavyConstructionGroup; +//IndustryHeavyConstructionGroup industryHeavy_H_ConstructionGroup = industryHeavyConstructionGroup; - rawm = MP_INFO(x, y).int_3; - if (rawm > MAX_MADE_AT_INDUSTRY_H) - rawm = MAX_MADE_AT_INDUSTRY_H; - /* turn it into steel */ - if (rawm > 0 && MP_INFO(x, y).int_2 < (MAX_STEEL_ON_RAIL * 10)) { - if (get_jobs(x, y, ((rawm / 2) / JOBS_MAKE_STEEL) + 1) != 0) { - steel = (rawm) / ORE_MAKE_STEEL; - MP_POL(x, y) += INDUSTRY_H_POLLUTION / 2; - } else if (get_jobs(x, y, ((rawm / 4) / JOBS_MAKE_STEEL) + 1) != 0) { - steel = (rawm / 2) / ORE_MAKE_STEEL; - MP_POL(x, y) += INDUSTRY_H_POLLUTION / 4; - } else if (get_jobs(x, y, ((rawm / 10) / JOBS_MAKE_STEEL) + 1) != 0) { - steel = (rawm / 5) / ORE_MAKE_STEEL; - MP_POL(x, y) += INDUSTRY_H_POLLUTION / 10; - } - } - /* do this here rather than later 'cos maybe steel/=5 */ - MP_INFO(x, y).int_3 -= steel * ORE_MAKE_STEEL; - ore_used += steel * ORE_MAKE_STEEL; - /* check there was enough electricity, or back up to 1/10 of the - production. ie same work and material useage for less production. - XXX: there is no reason material usage should be the same - If no real power, see if we have enough coal to generate electricity. - */ - if (get_power(x, y, steel * POWER_MAKE_STEEL, 1) == 0) { - if (MP_INFO(x, y).int_4 < (steel * 2)) { - MP_INFO(x, y).flags &= (0xffffffff - FLAG_POWERED); - steel /= 5; - } else { - MP_INFO(x, y).int_4 -= (steel * 2); - coal_used += (steel * 2); - MP_INFO(x, y).flags |= FLAG_POWERED; - MP_INFO(x, y).int_7 = 1; - } - } else { - MP_INFO(x, y).flags |= FLAG_POWERED; - MP_INFO(x, y).int_7 = 0; - } - MP_INFO(x, y).int_1 += steel; - MP_INFO(x, y).int_2 += steel; - /* now sell the steel to the road/rail */ - if (MP_GROUP(x, y - 1) == GROUP_ROAD && (MAX_STEEL_ON_ROAD - MP_INFO(x, y - 1).int_6) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_STEEL_ON_ROAD - MP_INFO(x, y - 1).int_6); - MP_INFO(x, y - 1).int_6 = MAX_STEEL_ON_ROAD; - } else if (MP_GROUP(x, y - 1) == GROUP_RAIL && (MAX_STEEL_ON_RAIL - MP_INFO(x, y - 1).int_6) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_STEEL_ON_RAIL - MP_INFO(x, y - 1).int_6); - MP_INFO(x, y - 1).int_6 = MAX_STEEL_ON_RAIL; - } else if (MP_GROUP(x, y - 1) == GROUP_TRACK && (MAX_STEEL_ON_TRACK - MP_INFO(x, y - 1).int_6) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_STEEL_ON_TRACK - MP_INFO(x, y - 1).int_6); - MP_INFO(x, y - 1).int_6 = MAX_STEEL_ON_TRACK; - } - - if (MP_GROUP(x - 1, y) == GROUP_ROAD && (MAX_STEEL_ON_ROAD - MP_INFO(x - 1, y).int_6) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_STEEL_ON_ROAD - MP_INFO(x - 1, y).int_6); - MP_INFO(x - 1, y).int_6 = MAX_STEEL_ON_ROAD; - } else if (MP_GROUP(x - 1, y) == GROUP_RAIL && (MAX_STEEL_ON_RAIL - MP_INFO(x - 1, y).int_6) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_STEEL_ON_RAIL - MP_INFO(x - 1, y).int_6); - MP_INFO(x - 1, y).int_6 = MAX_STEEL_ON_RAIL; - } else if (MP_GROUP(x - 1, y) == GROUP_TRACK && (MAX_STEEL_ON_TRACK - MP_INFO(x - 1, y).int_6) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_STEEL_ON_TRACK - MP_INFO(x - 1, y).int_6); - MP_INFO(x - 1, y).int_6 = MAX_STEEL_ON_TRACK; - } +Construction *IndustryHeavyConstructionGroup::createConstruction(int x, int y) { + return new IndustryHeavy(x, y, this); +} - /* now choose a graphic every month */ - if ((total_time % NUMOF_DAYS_IN_MONTH) == NUMOF_DAYS_IN_MONTH - 1) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_1 / (MAX_MADE_AT_INDUSTRY_H / ORE_MAKE_STEEL); - MP_INFO(x, y).int_1 = 0; - if (MP_INFO(x, y).int_5 > 80) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_H_H1): - case (CST_INDUSTRY_H_H2): - case (CST_INDUSTRY_H_H3): - case (CST_INDUSTRY_H_H4): - case (CST_INDUSTRY_H_H5): - case (CST_INDUSTRY_H_H6): - case (CST_INDUSTRY_H_H7): - case (CST_INDUSTRY_H_H8): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_H_H1; - } - } else if (MP_INFO(x, y).int_5 > 30) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_H_M1): - case (CST_INDUSTRY_H_M2): - case (CST_INDUSTRY_H_M3): - case (CST_INDUSTRY_H_M4): - case (CST_INDUSTRY_H_M5): - case (CST_INDUSTRY_H_M6): - case (CST_INDUSTRY_H_M7): - case (CST_INDUSTRY_H_M8): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_H_M1; +void IndustryHeavy::update() +{ + // can we produce steel? + int steel = ( commodityCount[STUFF_JOBS] >= MAX_ORE_USED / JOBS_MAKE_STEEL + JOBS_LOAD_ORE + JOBS_LOAD_COAL + JOBS_LOAD_STEEL + && commodityCount[STUFF_ORE] >= MAX_ORE_USED + && commodityCount[STUFF_STEEL] + MAX_ORE_USED / ORE_MAKE_STEEL <= MAX_STEEL_AT_INDUSTRY_H) ? MAX_ORE_USED / ORE_MAKE_STEEL : 0; + + if (steel > 0) + { + //Steel works may either use KWH, MWH or COAL to produce steel + int used_MWH = 0, used_KWH = 0, used_COAL = 0; + int powered_steel = 0; + //First use up MWH + used_MWH = commodityCount[STUFF_MWH]; + if (used_MWH > (steel - powered_steel) * POWER_MAKE_STEEL / 2) + used_MWH = (steel - powered_steel) * POWER_MAKE_STEEL / 2; + powered_steel += 2 * used_MWH / POWER_MAKE_STEEL; + //Second use up KWH + if (steel > powered_steel) + { + used_KWH = commodityCount[STUFF_KWH]; + if (used_KWH > (steel - powered_steel) * POWER_MAKE_STEEL) + used_KWH = (steel - powered_steel) * POWER_MAKE_STEEL; + powered_steel += used_KWH / POWER_MAKE_STEEL; + //Third use up COAL + if (steel > powered_steel) + { + used_COAL = commodityCount[STUFF_COAL]; + if (used_COAL > (steel - powered_steel) * COAL_MAKE_STEEL) + used_COAL = (steel - powered_steel) * COAL_MAKE_STEEL; + powered_steel += used_COAL / COAL_MAKE_STEEL; + }//end Third + }//end Second + if (powered_steel == steel) + { + commodityCount[STUFF_MWH] -= used_MWH; + commodityCount[STUFF_KWH] -= used_KWH; + if(used_COAL)// coal power is more laborous + { + commodityCount[STUFF_COAL] -= used_COAL; + commodityCount[STUFF_JOBS] -= JOBS_LOAD_COAL; } - } else if (MP_INFO(x, y).int_5 > 0) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_H_L1): - case (CST_INDUSTRY_H_L2): - case (CST_INDUSTRY_H_L3): - case (CST_INDUSTRY_H_L4): - case (CST_INDUSTRY_H_L5): - case (CST_INDUSTRY_H_L6): - case (CST_INDUSTRY_H_L7): - case (CST_INDUSTRY_H_L8): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_H_L1; + } + else + { steel /= 5;} //inefficient and still dirty unpowered production + + if (steel>0) + { + commodityCount[STUFF_JOBS] -= (MAX_ORE_USED / JOBS_MAKE_STEEL); + //use jobs for loading the ore + commodityCount[STUFF_JOBS] -= JOBS_LOAD_ORE; + //use jobs for loading the steel + commodityCount[STUFF_JOBS] -= JOBS_LOAD_STEEL; + commodityCount[STUFF_ORE] -= MAX_ORE_USED; + commodityCount[STUFF_STEEL] += steel; + steel_this_month += steel; + //cause some pollution and waste depending on bonuses + world(x,y)->pollution += (int)(((double)(POL_PER_STEEL_MADE * steel) * (1 - bonus))); + commodityCount[STUFF_WASTE] += (int)(((double)(POL_PER_STEEL_MADE * steel) * bonus)*(1-extra_bonus)); + // if the trash bin is full reburn the filterd pollution + if (commodityCount[STUFF_WASTE] > MAX_WASTE_AT_INDUSTRY_H) + { + world(x,y)->pollution += (commodityCount[STUFF_WASTE] - MAX_WASTE_AT_INDUSTRY_H); + commodityCount[STUFF_WASTE] = MAX_WASTE_AT_INDUSTRY_H; } - } else - MP_TYPE(x, y) = CST_INDUSTRY_H_C; - } - /* now animate */ - if (real_time >= MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + INDUSTRY_H_ANIM_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_H_L1): - MP_TYPE(x, y) = CST_INDUSTRY_H_L2; - break; - case (CST_INDUSTRY_H_L2): - MP_TYPE(x, y) = CST_INDUSTRY_H_L3; - break; - case (CST_INDUSTRY_H_L3): - MP_TYPE(x, y) = CST_INDUSTRY_H_L4; - break; - case (CST_INDUSTRY_H_L4): - MP_TYPE(x, y) = CST_INDUSTRY_H_L5; - break; - case (CST_INDUSTRY_H_L5): - MP_TYPE(x, y) = CST_INDUSTRY_H_L6; - break; - case (CST_INDUSTRY_H_L6): - MP_TYPE(x, y) = CST_INDUSTRY_H_L7; - break; - case (CST_INDUSTRY_H_L7): - MP_TYPE(x, y) = CST_INDUSTRY_H_L8; - break; - case (CST_INDUSTRY_H_L8): - MP_TYPE(x, y) = CST_INDUSTRY_H_L1; - break; - - case (CST_INDUSTRY_H_M1): - MP_TYPE(x, y) = CST_INDUSTRY_H_M2; - break; - case (CST_INDUSTRY_H_M2): - MP_TYPE(x, y) = CST_INDUSTRY_H_M3; - break; - case (CST_INDUSTRY_H_M3): - MP_TYPE(x, y) = CST_INDUSTRY_H_M4; - break; - case (CST_INDUSTRY_H_M4): - MP_TYPE(x, y) = CST_INDUSTRY_H_M5; - break; - case (CST_INDUSTRY_H_M5): - MP_TYPE(x, y) = CST_INDUSTRY_H_M6; - break; - case (CST_INDUSTRY_H_M6): - MP_TYPE(x, y) = CST_INDUSTRY_H_M7; - break; - case (CST_INDUSTRY_H_M7): - MP_TYPE(x, y) = CST_INDUSTRY_H_M8; - break; - case (CST_INDUSTRY_H_M8): - MP_TYPE(x, y) = CST_INDUSTRY_H_M1; - break; - - case (CST_INDUSTRY_H_H1): - MP_TYPE(x, y) = CST_INDUSTRY_H_H2; - break; - case (CST_INDUSTRY_H_H2): - MP_TYPE(x, y) = CST_INDUSTRY_H_H3; - break; - case (CST_INDUSTRY_H_H3): - MP_TYPE(x, y) = CST_INDUSTRY_H_H4; - break; - case (CST_INDUSTRY_H_H4): - MP_TYPE(x, y) = CST_INDUSTRY_H_H5; - break; - case (CST_INDUSTRY_H_H5): - MP_TYPE(x, y) = CST_INDUSTRY_H_H6; - break; - case (CST_INDUSTRY_H_H6): - MP_TYPE(x, y) = CST_INDUSTRY_H_H7; - break; - case (CST_INDUSTRY_H_H7): - MP_TYPE(x, y) = CST_INDUSTRY_H_H8; - break; - case (CST_INDUSTRY_H_H8): - MP_TYPE(x, y) = CST_INDUSTRY_H_H1; - break; + }//endif steel still > 0 + }//endif steel > 0 - } + //monthly update + if (total_time % 100 == 0) + { + output_level = steel_this_month * ORE_MAKE_STEEL / MAX_ORE_USED; + steel_this_month = 0; + frameIt->frame = 0; + //choose graphics depending on output level + if (output_level > 80) + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryHighH"];} + else if (output_level > 30) + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryHighM"];} + else if (output_level > 0) + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryHighL"];} + else + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryHigh"];} + soundGroup = frameIt->resourceGroup; + }//end monthly update + //animation + if (real_time >= anim) + { + anim = real_time + INDUSTRY_H_ANIM_SPEED; + if(++(frameIt->frame) >= (int) frameIt->resourceGroup->graphicsInfoVector.size()) + { frameIt->frame = 0;} } } -void mps_heavy_industry(int x, int y) +void IndustryHeavy::report() { int i = 0; - const char *p; - mps_store_title(i++, _("Heavy Industry")); + mps_store_sd(i++, constructionGroup->name, ID); i++; + mps_store_sfp(i++, N_("busy"), (output_level)); + mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); + i++; + list_commodities(&i); +} - if ((MP_INFO(x, y).flags & FLAG_POWERED) != 0) { - if (MP_INFO(x, y).int_7 == 1) { - p = _("Coal"); - } else { - p = _("Grid"); - } - } else { - p = _("NO"); - } - - mps_store_ss(i++, _("Power"), p); +/** @file lincity/modules/heavy_industry.cpp */ - mps_store_sfp(i++, _("Store"), MP_INFO(x, y).int_2 * 100.0 / MAX_STEEL_AT_INDUSTRY_H); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_3 * 100.0 / MAX_ORE_AT_INDUSTRY_H); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_4 * 100.0 / MAX_COAL_AT_INDUSTRY_H); - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_5); -} diff -Nru lincity-ng-2.0/src/lincity/modules/heavy_industry.h lincity-ng-2.9~git20150314/src/lincity/modules/heavy_industry.h --- lincity-ng-2.0/src/lincity/modules/heavy_industry.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/heavy_industry.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,13 +1,120 @@ -/* ---------------------------------------------------------------------- * - * heavy_industry.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __heavy_industry_h__ -#define __heavy_industry_h__ - -void do_industry_h(int x, int y); -void mps_heavy_industry(int x, int y); -#endif /* __heavy_industry_h__ */ +#define GROUP_INDUSTRY_H_COLOUR (7) /* colour 7 is an orange, sort of */ +#define GROUP_INDUSTRY_H_COST 50000 +#define GROUP_INDUSTRY_H_COST_MUL 20 +#define GROUP_INDUSTRY_H_BUL_COST 70000 +#define GROUP_INDUSTRY_H_TECH 170 +#define GROUP_INDUSTRY_H_FIREC 80 +#define GROUP_INDUSTRY_H_RANGE 0 +#define GROUP_INDUSTRY_H_SIZE 4 + +#define JOBS_MAKE_STEEL 140 +#define ORE_MAKE_STEEL 17 +#define POWER_MAKE_STEEL 200 +#define COAL_MAKE_STEEL 2 +#define POL_PER_STEEL_MADE 0.25 +#define MAX_ORE_USED 612 +#define MAX_ORE_AT_INDUSTRY_H (20 * MAX_ORE_USED) +#define MAX_COAL_AT_INDUSTRY_H (2 * MAX_ORE_AT_INDUSTRY_H / ORE_MAKE_STEEL) +#define MAX_STEEL_AT_INDUSTRY_H (MAX_ORE_AT_INDUSTRY_H / ORE_MAKE_STEEL) +#define MAX_JOBS_AT_INDUSTRY_H (MAX_ORE_AT_INDUSTRY_H / JOBS_MAKE_STEEL + 20*(JOBS_LOAD_ORE + JOBS_LOAD_COAL + JOBS_LOAD_STEEL)) + +#define MAX_WASTE_AT_INDUSTRY_H (MAX_STEEL_AT_INDUSTRY_H * POL_PER_STEEL_MADE) +#define MAX_KWH_AT_INDUSTY_H (MAX_STEEL_AT_INDUSTRY_H * POWER_MAKE_STEEL) +#define MAX_MWH_AT_INDUSTY_H (MAX_STEEL_AT_INDUSTRY_H * POWER_MAKE_STEEL) + +#define INDUSTRY_H_ANIM_SPEED 290 +#define INDUSTRY_H_POLLUTION 10 + +#define MAX_MADE_AT_INDUSTRY_H 625 + +class IndustryHeavyConstructionGroup: public ConstructionGroup { +public: + IndustryHeavyConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_INDUSTRY_H; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_INDUSTRY_H; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_INDUSTRY_H; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_INDUSTRY_H; + commodityRuleCount[Construction::STUFF_STEEL].take = false; + commodityRuleCount[Construction::STUFF_STEEL].give = true; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_INDUSTRY_H; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_INDUSTY_H; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_AT_INDUSTY_H; + commodityRuleCount[Construction::STUFF_MWH].take = true; + commodityRuleCount[Construction::STUFF_MWH].give = false; + }; + // overriding method that creates a HeavyIndustry + virtual Construction *createConstruction(int x, int y); +}; + +extern IndustryHeavyConstructionGroup industryHeavyConstructionGroup; +//extern IndustryHeavyConstructionGroup industryHeavy_L_ConstructionGroup; +//extern IndustryHeavyConstructionGroup industryHeavy_M_ConstructionGroup; +//extern IndustryHeavyConstructionGroup industryHeavy_H_ConstructionGroup; + +class IndustryHeavy: public RegisteredConstruction<IndustryHeavy> { // IndustryHeavy inherits from its own RegisteredConstruction +public: + IndustryHeavy(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<IndustryHeavy>(x, y) + { + constructionGroup = cstgrp; + init_resources(); + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->output_level = 0; + this->steel_this_month = 0; + this->anim = 0; + initialize_commodities(); + //check for pollution bonus + this->bonus = 0; + setMemberSaved(&this->bonus, "bonus"); + this->extra_bonus = 0; + setMemberSaved(&this->extra_bonus, "extra_bonus"); + if (tech > MAX_TECH_LEVEL) + { + bonus = (tech - MAX_TECH_LEVEL); + if (bonus > MAX_TECH_LEVEL) + bonus = MAX_TECH_LEVEL; + bonus /= MAX_TECH_LEVEL; + // check for filter technology bonus + if (tech > 2 * MAX_TECH_LEVEL) + { + extra_bonus = tech - 2 * MAX_TECH_LEVEL; + if (extra_bonus > MAX_TECH_LEVEL) + extra_bonus = MAX_TECH_LEVEL; + extra_bonus /= MAX_TECH_LEVEL; + } + } + } + virtual void update(); + virtual void report(); + + int tech; + double bonus, extra_bonus; + int output_level; + int anim; + int steel_this_month; +}; + + + +/** @file lincity/modules/heavy_industry.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/light_industry.cpp lincity-ng-2.9~git20150314/src/lincity/modules/light_industry.cpp --- lincity-ng-2.0/src/lincity/modules/light_industry.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/light_industry.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -8,279 +8,165 @@ #include "modules.h" #include "light_industry.h" -void do_industry_l(int x, int y) +// IndustryLight: +IndustryLightConstructionGroup industryLightConstructionGroup( + N_("Light Industry"), + FALSE, /* need credit? */ + GROUP_INDUSTRY_L, + GROUP_INDUSTRY_L_SIZE, + GROUP_INDUSTRY_L_COLOUR, + GROUP_INDUSTRY_L_COST_MUL, + GROUP_INDUSTRY_L_BUL_COST, + GROUP_INDUSTRY_L_FIREC, + GROUP_INDUSTRY_L_COST, + GROUP_INDUSTRY_L_TECH, + GROUP_INDUSTRY_L_RANGE +); + +//helper groups for graphics and sound sets, dont add them to ConstructionGroup::groupMap +//IndustryLightConstructionGroup industryLight_Q_ConstructionGroup = industryLightConstructionGroup; +//IndustryLightConstructionGroup industryLight_L_ConstructionGroup = industryLightConstructionGroup; +//IndustryLightConstructionGroup industryLight_M_ConstructionGroup = industryLightConstructionGroup; +//IndustryLightConstructionGroup industryLight_H_ConstructionGroup = industryLightConstructionGroup; + +Construction *IndustryLightConstructionGroup::createConstruction(int x, int y ) { + return new IndustryLight(x, y, this); +} + +void IndustryLight::update() { - int goods = 0; - double tmp_pol; - /* - // int_1 is the goods produced this month so far - // int_2 is the amount of goods in store. - // int_3 is the amount of ore in store. - // int_4 is the amount of steel in store. - // int_5 is the jobs stored. - // int_6 is the percent of capacity last month. - // MP_ANIM is the next animation frame time. since 1.91 - // MP_TECH is tech at build time (for pollution) - */ - /* first get some jobs */ - if (MP_INFO(x, y).int_5 < MAX_JOBS_AT_INDUSTRY_L - INDUSTRY_L_GET_JOBS) { - if (get_jobs(x, y, INDUSTRY_L_GET_JOBS) != 0) - MP_INFO(x, y).int_5 += INDUSTRY_L_GET_JOBS; - else if (get_jobs(x, y, INDUSTRY_L_GET_JOBS / 10) != 0) - MP_INFO(x, y).int_5 += INDUSTRY_L_GET_JOBS / 10; - } - /* if we don't have enough jobs we can't do anything */ - if (MP_INFO(x, y).int_5 < MIN_JOBS_AT_INDUSTRY_L) - return; - /* get some ore */ - if (MP_INFO(x, y).int_3 < (MAX_ORE_AT_INDUSTRY_L - INDUSTRY_L_GET_ORE)) { - if ((MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) != 0 && MP_INFO(x - 1, y).int_5 > 0) { - if (MP_INFO(x - 1, y).int_5 >= INDUSTRY_L_GET_ORE) { - MP_INFO(x, y).int_3 += INDUSTRY_L_GET_ORE; - MP_INFO(x - 1, y).int_5 -= INDUSTRY_L_GET_ORE; - } else { - MP_INFO(x, y).int_3 += MP_INFO(x - 1, y).int_5; - MP_INFO(x - 1, y).int_5 = 0; - } - MP_INFO(x, y).int_5 -= INDUSTRY_L_JOBS_LOAD_ORE; - } - } - /* do we still need some ore? */ - if (MP_INFO(x, y).int_3 < (MAX_ORE_AT_INDUSTRY_L - INDUSTRY_L_GET_ORE)) { - if ((MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) != 0 && MP_INFO(x, y - 1).int_5 > 0) { - if (MP_INFO(x, y - 1).int_5 >= INDUSTRY_L_GET_ORE) { - MP_INFO(x, y).int_3 += INDUSTRY_L_GET_ORE; - MP_INFO(x, y - 1).int_5 -= INDUSTRY_L_GET_ORE; - } else { - MP_INFO(x, y).int_3 += MP_INFO(x, y - 1).int_5; - MP_INFO(x, y - 1).int_5 = 0; - } - MP_INFO(x, y).int_5 -= INDUSTRY_L_JOBS_LOAD_ORE; - } - } - /* then get some steel */ - if (MP_INFO(x, y).int_4 < (MAX_STEEL_AT_INDUSTRY_L - INDUSTRY_L_GET_STEEL)) { - if ((MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) != 0 && MP_INFO(x - 1, y).int_6 > 0) { - if (MP_INFO(x - 1, y).int_6 >= INDUSTRY_L_GET_STEEL) { - MP_INFO(x, y).int_4 += INDUSTRY_L_GET_STEEL; - MP_INFO(x - 1, y).int_6 -= INDUSTRY_L_GET_STEEL; - } else { - MP_INFO(x, y).int_4 += MP_INFO(x - 1, y).int_6; - MP_INFO(x - 1, y).int_6 = 0; - } - MP_INFO(x, y).int_5 -= INDUSTRY_L_JOBS_LOAD_STEEL; - } - } - /* do we still need some steel? */ - if (MP_INFO(x, y).int_4 < (MAX_STEEL_AT_INDUSTRY_L - INDUSTRY_L_GET_STEEL)) { - if ((MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) != 0 && MP_INFO(x, y - 1).int_6 > 0) { - if (MP_INFO(x, y - 1).int_6 >= INDUSTRY_L_GET_STEEL) { - MP_INFO(x, y).int_4 += INDUSTRY_L_GET_STEEL; - MP_INFO(x, y - 1).int_6 -= INDUSTRY_L_GET_STEEL; - } else { - MP_INFO(x, y).int_4 += MP_INFO(x, y - 1).int_6; - MP_INFO(x, y - 1).int_6 = 0; - } - MP_INFO(x, y).int_5 -= INDUSTRY_L_JOBS_LOAD_STEEL; - } - } - /* now make some goods if there is room in inventory */ - if (MP_INFO(x, y).int_2 < (MAX_GOODS_AT_INDUSTRY_L - - (INDUSTRY_L_MAKE_GOODS * 8)) && MP_INFO(x, y).int_3 >= INDUSTRY_L_ORE_USED) { - goods += INDUSTRY_L_MAKE_GOODS; - MP_INFO(x, y).int_3 -= INDUSTRY_L_ORE_USED; - ore_used += INDUSTRY_L_ORE_USED; - MP_INFO(x, y).int_5 -= INDUSTRY_L_JOBS_USED; - - /* multiply by 2 if we have steel. */ - if (MP_INFO(x, y).int_4 >= INDUSTRY_L_STEEL_USED) { - MP_INFO(x, y).int_4 -= INDUSTRY_L_STEEL_USED; - goods += goods; - } - /* multipy by 4 if we can get power. */ + int goods_today = 0; - if (MP_INFO(x, y).int_3 >= INDUSTRY_L_ORE_USED && get_power(x, y, goods * 10, 1) != 0) { - goods *= 4; - MP_INFO(x, y).flags |= FLAG_POWERED; - /* and use more ore */ - MP_INFO(x, y).int_3 -= INDUSTRY_L_ORE_USED; - ore_used += INDUSTRY_L_ORE_USED; - } else - MP_INFO(x, y).flags &= (0xffffffff - FLAG_POWERED); - } - - MP_INFO(x, y).int_1 += goods; - MP_INFO(x, y).int_2 += goods; - goods_made += goods; - - /* Pollution is based on goods produced and is affected by tech level above - * MAX_TECH_LEVEL (displayed as 100) whereupon it is reduced by one percent per 10000 - * tech_level points. - * before it was MP_POL(x,y) += INDUSTRY_L_POLLUTION; - */ - /* TODO: it would be nice to convert tech-reduced air pollution into waste - * to be hauled to a tip or recycled, and reduce that above tl 2*MAX_TECH_LEVEL (200) */ - - tmp_pol = (float)(INDUSTRY_L_POL_PER_GOOD * goods); - if (MP_TECH(x,y) > MAX_TECH_LEVEL) { - double d; - d = (MP_TECH(x,y) - MAX_TECH_LEVEL); - if (d > MAX_TECH_LEVEL) - d = MAX_TECH_LEVEL; - d /= MAX_TECH_LEVEL; - tmp_pol -= (tmp_pol * d); - if (tmp_pol < 0) - tmp_pol = 0; - } - - MP_POL(x, y) += (int)tmp_pol; - - /* now sell the goods to the road/rail/track */ - if (MP_GROUP(x, y - 1) == GROUP_ROAD && (MAX_GOODS_ON_ROAD - MP_INFO(x, y - 1).int_4) <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_GOODS_ON_ROAD - MP_INFO(x, y - 1).int_4); - MP_INFO(x, y - 1).int_4 = MAX_GOODS_ON_ROAD; - } else if (MP_GROUP(x, y - 1) == GROUP_RAIL && (MAX_GOODS_ON_RAIL - MP_INFO(x, y - 1).int_4) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_GOODS_ON_RAIL - MP_INFO(x, y - 1).int_4); - MP_INFO(x, y - 1).int_4 = MAX_GOODS_ON_RAIL; - } else if (MP_GROUP(x, y - 1) == GROUP_TRACK && (MAX_GOODS_ON_TRACK - MP_INFO(x, y - 1).int_4) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_GOODS_ON_TRACK - MP_INFO(x, y - 1).int_4); - MP_INFO(x, y - 1).int_4 = MAX_GOODS_ON_TRACK; - } - - if (MP_GROUP(x - 1, y) == GROUP_ROAD && (MAX_GOODS_ON_ROAD - MP_INFO(x - 1, y).int_4) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_GOODS_ON_ROAD - MP_INFO(x - 1, y).int_4); - MP_INFO(x - 1, y).int_4 = MAX_GOODS_ON_ROAD; - } else if (MP_GROUP(x - 1, y) == GROUP_RAIL && (MAX_GOODS_ON_RAIL - MP_INFO(x - 1, y).int_4) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_GOODS_ON_RAIL - MP_INFO(x - 1, y).int_4); - MP_INFO(x - 1, y).int_4 = MAX_GOODS_ON_RAIL; - } else if (MP_GROUP(x - 1, y) == GROUP_TRACK && (MAX_GOODS_ON_TRACK - MP_INFO(x - 1, y).int_4) - <= MP_INFO(x, y).int_2) { - MP_INFO(x, y).int_2 -= (MAX_GOODS_ON_TRACK - MP_INFO(x - 1, y).int_4); - MP_INFO(x - 1, y).int_4 = MAX_GOODS_ON_TRACK; - } - - /* now choose a graphic every month */ - if ((total_time % NUMOF_DAYS_IN_MONTH) == NUMOF_DAYS_IN_MONTH - 1) { - MP_INFO(x, y).int_6 = (MP_INFO(x, y).int_1) - / (INDUSTRY_L_MAKE_GOODS * 8); - MP_INFO(x, y).int_1 = 0; - if (MP_INFO(x, y).int_6 > 80) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_L_H1): - case (CST_INDUSTRY_L_H2): - case (CST_INDUSTRY_L_H3): - case (CST_INDUSTRY_L_H4): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_L_H1; - } - } else if (MP_INFO(x, y).int_6 > 55) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_L_M1): - case (CST_INDUSTRY_L_M2): - case (CST_INDUSTRY_L_M3): - case (CST_INDUSTRY_L_M4): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_L_M1; - } - } else if (MP_INFO(x, y).int_6 > 25) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_L_L1): - case (CST_INDUSTRY_L_L2): - case (CST_INDUSTRY_L_L3): - case (CST_INDUSTRY_L_L4): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_L_L1; - } - } else if (MP_INFO(x, y).int_6 > 0) { - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_L_Q1): - case (CST_INDUSTRY_L_Q2): - case (CST_INDUSTRY_L_Q3): - case (CST_INDUSTRY_L_Q4): - break; - default: - MP_TYPE(x, y) = CST_INDUSTRY_L_Q1; - } - } else - MP_TYPE(x, y) = CST_INDUSTRY_L_C; - } - /* now animate */ - if (real_time >= MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + INDUSTRY_L_ANIM_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_INDUSTRY_L_Q1): - MP_TYPE(x, y) = CST_INDUSTRY_L_Q2; - break; - case (CST_INDUSTRY_L_Q2): - MP_TYPE(x, y) = CST_INDUSTRY_L_Q3; - break; - case (CST_INDUSTRY_L_Q3): - MP_TYPE(x, y) = CST_INDUSTRY_L_Q4; - break; - case (CST_INDUSTRY_L_Q4): - MP_TYPE(x, y) = CST_INDUSTRY_L_Q1; - break; - case (CST_INDUSTRY_L_L1): - MP_TYPE(x, y) = CST_INDUSTRY_L_L2; - break; - case (CST_INDUSTRY_L_L2): - MP_TYPE(x, y) = CST_INDUSTRY_L_L3; - break; - case (CST_INDUSTRY_L_L3): - MP_TYPE(x, y) = CST_INDUSTRY_L_L4; - break; - case (CST_INDUSTRY_L_L4): - MP_TYPE(x, y) = CST_INDUSTRY_L_L1; - break; - case (CST_INDUSTRY_L_M1): - MP_TYPE(x, y) = CST_INDUSTRY_L_M2; - break; - case (CST_INDUSTRY_L_M2): - MP_TYPE(x, y) = CST_INDUSTRY_L_M3; - break; - case (CST_INDUSTRY_L_M3): - MP_TYPE(x, y) = CST_INDUSTRY_L_M4; - break; - case (CST_INDUSTRY_L_M4): - MP_TYPE(x, y) = CST_INDUSTRY_L_M1; - break; - case (CST_INDUSTRY_L_H1): - MP_TYPE(x, y) = CST_INDUSTRY_L_H2; - break; - case (CST_INDUSTRY_L_H2): - MP_TYPE(x, y) = CST_INDUSTRY_L_H3; - break; - case (CST_INDUSTRY_L_H3): - MP_TYPE(x, y) = CST_INDUSTRY_L_H4; - break; - case (CST_INDUSTRY_L_H4): - MP_TYPE(x, y) = CST_INDUSTRY_L_H1; - break; - } - } + // make some goods with jobs and ore + if ((commodityCount[STUFF_JOBS] >= (INDUSTRY_L_JOBS_USED + INDUSTRY_L_JOBS_LOAD_ORE + JOBS_LOAD_ORE)) + && (commodityCount[STUFF_ORE] >= INDUSTRY_L_ORE_USED) + && (commodityCount[STUFF_GOODS] + INDUSTRY_L_MAKE_GOODS <= MAX_GOODS_AT_INDUSTRY_L)) + { + commodityCount[STUFF_JOBS] -= (INDUSTRY_L_JOBS_USED + INDUSTRY_L_JOBS_LOAD_ORE + JOBS_LOAD_ORE); + commodityCount[STUFF_ORE] -= INDUSTRY_L_ORE_USED; + goods_today = INDUSTRY_L_MAKE_GOODS; + //make some pollution and waste + world(x,y)->pollution += (int)(((double)(INDUSTRY_L_POL_PER_GOOD * goods_today) * (1 - bonus))); + commodityCount[STUFF_WASTE] += (int)(((double)(INDUSTRY_L_POL_PER_GOOD * goods_today) * bonus)*(1-extra_bonus)); + // if the trash bin is full reburn the filterd pollution + if (commodityCount[STUFF_WASTE] > MAX_WASTE_AT_INDUSTRY_L) + { + world(x,y)->pollution += (commodityCount[STUFF_WASTE] - MAX_WASTE_AT_INDUSTRY_L); + commodityCount[STUFF_WASTE] = MAX_WASTE_AT_INDUSTRY_L; + } + //now double goods_today if there are more jobs and steel + if ((commodityCount[STUFF_JOBS] >= (INDUSTRY_L_JOBS_LOAD_STEEL + JOBS_LOAD_STEEL)) + && (commodityCount[STUFF_STEEL] >= INDUSTRY_L_STEEL_USED ) + && (commodityCount[STUFF_GOODS] + 2 * goods_today <= MAX_GOODS_AT_INDUSTRY_L)) + { + commodityCount[STUFF_JOBS] -= (INDUSTRY_L_JOBS_LOAD_STEEL + JOBS_LOAD_STEEL); + commodityCount[STUFF_STEEL] -= INDUSTRY_L_STEEL_USED; + goods_today *= 2; + } + //now check for more ore and power to quadruple goods_today again + //light industry can use KWH and MWH simultaneously + int total_power_p_good = (commodityCount[STUFF_KWH] + 2 * commodityCount[STUFF_MWH]) / (4 * goods_today); + if ((total_power_p_good >= INDUSTRY_L_POWER_PER_GOOD) + && (commodityCount[STUFF_ORE] >= INDUSTRY_L_ORE_USED) + && (commodityCount[STUFF_GOODS] + 4 * goods_today <= MAX_GOODS_AT_INDUSTRY_L)) + { + goods_today *= 4; + commodityCount[STUFF_ORE] -= INDUSTRY_L_ORE_USED; + //prefer the mor abundant power + if(2 * commodityCount[STUFF_MWH] > commodityCount[STUFF_KWH]) + { + commodityCount[STUFF_MWH] -= INDUSTRY_L_POWER_PER_GOOD * (goods_today / 2); + if(commodityCount[STUFF_MWH] < 0) + { + commodityCount[STUFF_KWH] += 2 * commodityCount[STUFF_MWH]; + commodityCount[STUFF_MWH] = 0; + } + } + else + { + commodityCount[STUFF_KWH] -= INDUSTRY_L_POWER_PER_GOOD * goods_today; + if(commodityCount[STUFF_KWH] < 0) + { + commodityCount[STUFF_MWH] += commodityCount[STUFF_KWH]/2; + commodityCount[STUFF_KWH] = 0; + } + } + } + commodityCount[STUFF_GOODS] += goods_today; + goods_this_month += goods_today; + }// endif make some goods + //monthly update + if (total_time % 100 == 0) + { + int output_level = goods_this_month / (INDUSTRY_L_MAKE_GOODS * 8); + busy = output_level; + goods_this_month = 0; + //Choose an animation set depending on output_level + if (output_level > 80) + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryLightH"];} + else if (output_level > 55) + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryLightM"];} + else if (output_level > 25) + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryLightL"];} + else + { frameIt->resourceGroup = ResourceGroup::resMap["IndustryLight"];} + //else + //{ frameIt->resourceGroup = ResourceGroup::resMap["IndustryLight"];} + //frameIt->frame = 0; + soundGroup =frameIt->resourceGroup; + + int active = 0; + if(output_level > 70) + { active = 2;} + else if (output_level > 5) + { active = 1;} + std::list<ExtraFrame>::iterator frit = fr_begin; + + for(int i = 0; i < 2 && frit != fr_end; ++i, std::advance(frit, 1)) + { + int s = frit->resourceGroup->graphicsInfoVector.size(); + if (i < active) + { + if( s && + ( (frit->frame < 0) || ( (rand() % 256) > 16)) ) + // always randomize new plumes and sometimes existing ones + { frit->frame = rand() % s;} + } + else + { frit->frame = -1;} + } + + }// end monthly update + if ((real_time >= anim) && goods_today) + { + anim = real_time + INDUSTRY_L_ANIM_SPEED; + std::list<ExtraFrame>::iterator frit = fr_begin; + + for(size_t i = 0; i < 2; ++i, std::advance(frit, 1)) + { + if (frit->frame >= 0) + { + if(++(frit->frame) >= (int)frit->resourceGroup->graphicsInfoVector.size()) + { frit->frame = 0;} + } + } + + //if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + //{ frameIt->frame = 0;} + }// end animate } -void mps_light_industry(int x, int y) +void IndustryLight::report() { int i = 0; - const char *p; - mps_store_title(i++, _("Light Industry")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_6); + mps_store_sfp(i++, N_("busy"), (busy)); + mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); i++; - - p = ((MP_INFO(x, y).flags & FLAG_POWERED) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Power"), p); - mps_store_sfp(i++, _("Store"), MP_INFO(x, y).int_2 * 100.0 / MAX_GOODS_AT_INDUSTRY_L); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_3 * 100.0 / MAX_ORE_AT_INDUSTRY_L); - mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_4 * 100.0 / MAX_STEEL_AT_INDUSTRY_L); + list_commodities(&i); } + +/** @file lincity/modules/light_industry.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/light_industry.h lincity-ng-2.9~git20150314/src/lincity/modules/light_industry.h --- lincity-ng-2.0/src/lincity/modules/light_industry.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/light_industry.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,157 @@ -/* ---------------------------------------------------------------------- * - * light_industry.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_INDUSTRY_L_COLOUR (cyan(18)) +#define GROUP_INDUSTRY_L_COST 20000 +#define GROUP_INDUSTRY_L_COST_MUL 25 +#define GROUP_INDUSTRY_L_BUL_COST 20000 +#define GROUP_INDUSTRY_L_TECH 160 +#define GROUP_INDUSTRY_L_FIREC 70 +#define GROUP_INDUSTRY_L_RANGE 0 +#define GROUP_INDUSTRY_L_SIZE 3 -#ifndef __light_industry_h__ -#define __light_industry_h__ +#define INDUSTRY_L_ORE_USED 125 +#define INDUSTRY_L_STEEL_USED 12 +#define INDUSTRY_L_JOBS_USED 30 +#define INDUSTRY_L_JOBS_LOAD_ORE 1 +#define INDUSTRY_L_JOBS_LOAD_STEEL 4 +#define MIN_JOBS_AT_INDUSTRY_L (INDUSTRY_L_JOBS_LOAD_ORE + INDUSTRY_L_JOBS_LOAD_STEEL + INDUSTRY_L_JOBS_USED) +#define INDUSTRY_L_MAKE_GOODS 225 +#define INDUSTRY_L_POWER_PER_GOOD 10 -void do_industry_l(int x, int y); -void mps_light_industry(int x, int y); +#define MAX_ORE_AT_INDUSTRY_L (20 * INDUSTRY_L_ORE_USED) +#define MAX_JOBS_AT_INDUSTRY_L (20 * MIN_JOBS_AT_INDUSTRY_L) +#define MAX_GOODS_AT_INDUSTRY_L (20*2*4 * INDUSTRY_L_MAKE_GOODS) +#define MAX_WASTE_AT_INDUSTRY_L (MAX_GOODS_AT_INDUSTRY_L / 20) +#define MAX_KWH_AT_INDUSTY_L (INDUSTRY_L_POWER_PER_GOOD*MAX_GOODS_AT_INDUSTRY_L) +#define MAX_MWH_AT_INDUSTY_L (INDUSTRY_L_POWER_PER_GOOD*MAX_GOODS_AT_INDUSTRY_L / 2) +#define MAX_STEEL_AT_INDUSTRY_L (20 * INDUSTRY_L_STEEL_USED) + +#define INDUSTRY_L_ANIM_SPEED 290 +#define INDUSTRY_L_POL_PER_GOOD 0.05 + +class IndustryLightConstructionGroup: public ConstructionGroup { +public: + IndustryLightConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_INDUSTRY_L; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_INDUSTRY_L; + commodityRuleCount[Construction::STUFF_GOODS].take = false; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_INDUSTRY_L; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = false; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_INDUSTRY_L; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_INDUSTRY_L; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_INDUSTY_L; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_AT_INDUSTY_L; + commodityRuleCount[Construction::STUFF_MWH].take = true; + commodityRuleCount[Construction::STUFF_MWH].give = false; + }; + // overriding method that creates a LightIndustry + virtual Construction *createConstruction(int x, int y); +}; + +extern IndustryLightConstructionGroup industryLightConstructionGroup; +//extern IndustryLightConstructionGroup industryLight_Q_ConstructionGroup; +//extern IndustryLightConstructionGroup industryLight_L_ConstructionGroup; +//extern IndustryLightConstructionGroup industryLight_M_ConstructionGroup; +//extern IndustryLightConstructionGroup industryLight_H_ConstructionGroup; + + +class IndustryLight: public RegisteredConstruction<IndustryLight> { // IndustryLight inherits from RegisteredConstruction +public: + IndustryLight(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<IndustryLight>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + world(x,y)->framesptr->resize(world(x,y)->framesptr->size()+2); + std::list<ExtraFrame>::iterator frit = frameIt; + std::advance(frit, 1); + fr_begin = frit; + + frit = frameIt; + std::advance(frit, 1); + frit->move_x = -113; + frit->move_y = -210; + std::advance(frit, 1); + frit->move_x = -84; + frit->move_y = -198; + std::advance(frit, 1); + fr_end = frit; + for (frit = fr_begin; frit != world(x,y)->framesptr->end() && frit != fr_end; std::advance(frit, 1)) + { + frit->resourceGroup = ResourceGroup::resMap["GraySmoke"]; + frit->frame = -1; // hide smoke + } + + + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->working_days = 0; + this->busy = 0; + this->goods_this_month = 0; + this->anim = 0; + initialize_commodities(); + this->bonus = 0; + setMemberSaved(&this->bonus, "bonus"); + this->extra_bonus = 0; + setMemberSaved(&this->extra_bonus, "extra_bonus"); + if (tech > MAX_TECH_LEVEL) + { + bonus = (tech - MAX_TECH_LEVEL); + if (bonus > MAX_TECH_LEVEL) + bonus = MAX_TECH_LEVEL; + bonus /= MAX_TECH_LEVEL; + // check for filter technology bonus + if (tech > 2 * MAX_TECH_LEVEL) + { + extra_bonus = tech - 2 * MAX_TECH_LEVEL; + if (extra_bonus > MAX_TECH_LEVEL) + extra_bonus = MAX_TECH_LEVEL; + extra_bonus /= MAX_TECH_LEVEL; + } + } + } + + virtual ~IndustryLight() //remove 2 or more extraframes + { + if(world(x,y)->framesptr) + { + world(x,y)->framesptr->erase(fr_begin, fr_end); + if(world(x,y)->framesptr->empty()) + { + delete world(x,y)->framesptr; + world(x,y)->framesptr = NULL; + } + } + } + virtual void update(); + virtual void report(); + + std::list<ExtraFrame>::iterator fr_begin, fr_end; + int tech; + double bonus, extra_bonus; + int working_days; + int busy; + int anim; + int goods_this_month; +}; + + +/** @file lincity/modules/light_industry.h */ -#endif /* __light_industry_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/market.cpp lincity-ng-2.9~git20150314/src/lincity/modules/market.cpp --- lincity-ng-2.0/src/lincity/modules/market.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/market.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -4,1020 +4,239 @@ * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * ---------------------------------------------------------------------- */ #include <cstdlib> -#include "modules.h" #include "market.h" -#include "lincity-ng/ErrorInterface.hpp" +#include "fire.h" //for playing with fire +#include "lincity-ng/Sound.hpp" - /* - * MP_INFO(x,y) - * int_1 contains the food it holds - * int_2 contains the jobs - * int_3 contains the coal - * int_4 contains the goods - * int_5 contains the ore - * int_6 contains the steel - * int_7 contains the waste - * - */ - - -int get_jobs(int x, int y, int jobs) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if ( abs(marketx[q] - x) < MARKET_RANGE && abs(markety[q] - y) < MARKET_RANGE) { - if ( MP_INFO(marketx[q], markety[q]).int_2 > (3 * jobs / 2) ) { - MP_INFO(marketx[q], markety[q]).int_2 -= jobs; - income_tax += jobs; - MP_INFO(marketx[q] + 1, markety[q]).int_3 += jobs; - MP_INFO(x,y).flags &= (0xFFFFFFFF - FLAG_LACK_JOBS); - return (1); +MarketConstructionGroup marketConstructionGroup( + N_("Market"), + FALSE, /* need credit? */ + GROUP_MARKET, + GROUP_MARKET_SIZE, + GROUP_MARKET_COLOUR, + GROUP_MARKET_COST_MUL, + GROUP_MARKET_BUL_COST, + GROUP_MARKET_FIREC, + GROUP_MARKET_COST, + GROUP_MARKET_TECH, + GROUP_MARKET_RANGE +); + +//helper groups for graphics and sound sets, dont add them to ConstructionGroup::groupMap +//MarketConstructionGroup market_low_ConstructionGroup = marketConstructionGroup; +//MarketConstructionGroup market_med_ConstructionGroup = marketConstructionGroup; +//MarketConstructionGroup market_full_ConstructionGroup = marketConstructionGroup; + + +Construction *MarketConstructionGroup::createConstruction(int x, int y) { + return new Market(x, y, this); +} + + +void Market::update() +{ + int ratio, trade_ratio, n; + int lvl, market_lvl; + int cap, market_cap; + int market_ratio = 0; + const size_t partsize = partners.size(); + bool lvls[partsize]; + Commodities stuff_ID; + std::map<Commodities, int>::iterator stuff_it; + n = 0; + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++ ) + { + stuff_ID = stuff_it->first; + //dont handle stuff if neither give nor take + //dont handle anything else if there are to little jobs + if ((!commodityRuleCount[stuff_ID].give + && !commodityRuleCount[stuff_ID].take) || + (commodityCount[STUFF_JOBS] < jobs && stuff_ID !=STUFF_JOBS)) + { continue;} + + market_lvl = stuff_it->second; + market_cap = constructionGroup->commodityRuleCount[stuff_ID].maxload; + ratio = market_lvl * TRANSPORT_QUANTA / market_cap; + market_ratio += ratio; + n++; + lvl = market_lvl; + cap = market_cap; + for(unsigned int i = 0; i < partsize; ++i) + { + lvls[i] = false; + Construction *pear = partners[i]; + if(pear->commodityCount.count(stuff_ID)) + { + int lvlsi = pear->commodityCount[stuff_ID]; + int capsi = pear->constructionGroup->commodityRuleCount[stuff_ID].maxload; + if(pear->flags & FLAG_EVACUATE) + { lvlsi = lvlsi?capsi:-1;} + else + { + int pearat = lvlsi * TRANSPORT_QUANTA / capsi; + //only consider stuff that would tentatively move + //Here the local rules of this market apply + if(((pearat > ratio)&&!(commodityRuleCount[stuff_ID].take && + pear->constructionGroup->commodityRuleCount[stuff_ID].give)) || + ((pearat < ratio)&&!(commodityRuleCount[stuff_ID].give && + pear->constructionGroup->commodityRuleCount[stuff_ID].take))) + { continue;} } + lvls[i] = true; + lvl += lvlsi; + cap += capsi; } } - } - - /* second try with transports */ - if (get_stuff(x, y, jobs, T_JOBS) != 0) { - income_tax += jobs; - MP_INFO(x,y).flags &= (0xFFFFFFFF - FLAG_LACK_JOBS); - return (1); - } - - /* not enough jobs available */ - MP_INFO(x,y).flags |= FLAG_LACK_JOBS; - return (0); -} - -int put_jobs(int x, int y, int jobs) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_2 >= (MAX_JOBS_IN_MARKET - jobs)) - continue; - if (abs(marketx[q] - x) < EMPLOYER_RANGE && abs(markety[q] - y) < EMPLOYER_RANGE) { - MP_INFO(marketx[q], markety[q]).int_2 += jobs; - return (1); - } - } - } - if (put_stuff(x, y, jobs, T_JOBS) != 0) { - return (1); - } - return (0); -} - -int get_food(int x, int y, int food) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE) - && (MP_INFO(marketx[q], markety[q]).int_1 > food)) { - MP_INFO(marketx[q], markety[q]).int_1 -= food; - return (1); - } + trade_ratio = lvl * TRANSPORT_QUANTA / cap; + for(unsigned int i = 0; i < partsize; ++i) + { + if(lvls[i]) + { partners[i]->equilibrate_stuff(&market_lvl, market_cap, trade_ratio, stuff_ID, constructionGroup);} } + stuff_it->second = market_lvl; } - if (get_stuff(x, y, food, T_FOOD) != 0) - return (1); - return (0); -} -int put_food(int x, int y, int food) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_1 >= (MAX_FOOD_IN_MARKET - food)) - continue; - if ((abs(marketx[q] - x) < ORG_FARM_RANGE) - && (abs(markety[q] - y) < ORG_FARM_RANGE)) { - MP_INFO(marketx[q], markety[q]).int_1 += food; - return (1); - } - } - } - if (put_stuff(x, y, food, T_FOOD) != 0) - return (1); - return (0); -} - -int get_goods(int x, int y, int goods) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (abs(marketx[q] - x) < MARKET_RANGE - && abs(markety[q] - y) < MARKET_RANGE && (MP_INFO(marketx[q], markety[q]).int_4 > goods)) { - MP_INFO(marketx[q], markety[q]).int_4 -= goods; - goods_tax += goods; - goods_used += goods; - /* make the waste here. */ - MP_INFO(marketx[q], markety[q]).int_7 += goods / 3; - return (1); - } - } - } - if (get_stuff(x, y, goods, T_GOODS) != 0) { - put_stuff(x, y, goods / 3, T_WASTE); - goods_tax += goods; - goods_used += goods; - return (1); - } - return (0); -} - -int put_goods(int x, int y, int goods) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_4 >= (MAX_GOODS_IN_MARKET - goods)) - continue; - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE)) { - MP_INFO(marketx[q], markety[q]).int_4 += goods; - return (1); - } - } + if (commodityCount[STUFF_JOBS] >= jobs) + { + commodityCount[STUFF_JOBS] -= jobs; + //Have to collect taxes here since transport does not consider the market a consumer but rather as another transport + income_tax += jobs; + ++working_days; } - if (put_stuff(x, y, goods, T_GOODS) != 0) - return (1); - return (0); -} + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + if (total_time % 25 == 17) + { + //average filling of the market, catch n == 0 in case market has + //not yet any commodities initialized + if (n > 0) + { market_ratio = 100*market_ratio/(n * TRANSPORT_QUANTA);} + else + { market_ratio = 0;} -int put_waste(int x, int y, int waste) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_7 >= (MAX_WASTE_IN_MARKET - waste)) - continue; - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE)) { - MP_INFO(marketx[q], markety[q]).int_7 += waste; - return (1); - } + if (market_ratio < 10) + { + jobs = JOBS_MARKET_EMPTY; + frameIt->resourceGroup = ResourceGroup::resMap["MarketEmpty"]; + } + else if (market_ratio < 20) + { + jobs = JOBS_MARKET_LOW; + frameIt->resourceGroup = ResourceGroup::resMap["MarketLow"]; + } + else if (market_ratio < 50) + { + jobs = JOBS_MARKET_MED; + frameIt->resourceGroup = ResourceGroup::resMap["MarketMed"]; } - } - if (put_stuff(x, y, waste, T_WASTE) != 0) - return (1); - return (0); -} - -int get_waste(int x, int y, int waste) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE) - && (MP_INFO(marketx[q], markety[q]).int_7 > waste)) { - MP_INFO(marketx[q], markety[q]).int_7 -= waste; - return (1); - } + else + { + jobs = JOBS_MARKET_FULL; + frameIt->resourceGroup = ResourceGroup::resMap["MarketFull"]; } + soundGroup = frameIt->resourceGroup; } - if (get_stuff(x, y, waste, T_WASTE) != 0) - return (1); - return (0); -} + if (commodityCount[STUFF_WASTE] >= (85 * MAX_WASTE_IN_MARKET / 100) && !world(x+1,y+1)->construction) + { + anim = real_time + 6 * WASTE_BURN_TIME; + world(x+1,y+1)->pollution += MAX_WASTE_IN_MARKET/20; + commodityCount[STUFF_WASTE] -= (7 * MAX_WASTE_IN_MARKET) / 10; + if(!world(x+1,y+1)->construction) + { + Construction *fire = fireConstructionGroup.createConstruction(x+1, y+1); + world(x+1,y+1)->construction = fire; + world(x+1,y+1)->reportingConstruction = fire; + //waste burning never spreads + (dynamic_cast<Fire*>(fire))->flags |= FLAG_IS_GHOST; + ::constructionCount.add_construction(fire); -int get_steel(int x, int y, int steel) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE) - && (MP_INFO(marketx[q], markety[q]).int_6 > steel)) { - MP_INFO(marketx[q], markety[q]).int_6 -= steel; - return (1); - } } } - if (get_stuff(x, y, steel, T_STEEL) != 0) - return (1); - return (0); -} - -int put_steel(int x, int y, int steel) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_6 >= (MAX_STEEL_IN_MARKET - steel)) - continue; - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE)) { - MP_INFO(marketx[q], markety[q]).int_6 += steel; - return (1); - } - } + else if ( real_time > anim && world(x+1,y+1)->construction) + { + ::constructionCount.remove_construction(world(x+1,y+1)->construction); + world(x+1,y+1)->killframe(world(x+1,y+1)->construction->frameIt); + delete world(x+1,y+1)->construction; + world(x+1,y+1)->construction = NULL; + world(x+1,y+1)->reportingConstruction = this; } - if (put_stuff(x, y, steel, T_STEEL) != 0) - return (1); - return (0); -} -int get_ore(int x, int y, int ore) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE) - && (MP_INFO(marketx[q], markety[q]).int_5 > ore)) { - MP_INFO(marketx[q], markety[q]).int_5 -= ore; - return (1); - } - } - } - if (get_stuff(x, y, ore, T_ORE) != 0) - return (1); - return (0); + if(refresh_cover) + { cover();} } -int put_ore(int x, int y, int ore) +void Market::cover() { - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_5 >= (MAX_ORE_IN_MARKET - ore)) - continue; - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE)) { - MP_INFO(marketx[q], markety[q]).int_5 += ore; - return (1); - } - } + for(int yy = ys; yy < ye; yy++) + { + for(int xx = xs; xx < xe; xx++) + { world(xx,yy)->flags |= FLAG_MARKET_COVER;} } - if (put_stuff(x, y, ore, T_ORE) != 0) - return (1); - return (0); } -int get_coal(int x, int y, int coal) +void Market::report() { - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE) - && (MP_INFO(marketx[q], markety[q]).int_3 > coal)) { - MP_INFO(marketx[q], markety[q]).int_3 -= coal; - return (1); - } - } - } - if (get_stuff(x, y, coal, T_COAL) != 0) - return (1); - return (0); -} + int i = 0; -int put_coal(int x, int y, int coal) -{ - int q; - if (numof_markets > 0) { - for (q = 0; q < numof_markets; q++) { - if (MP_INFO(marketx[q], markety[q]).int_3 >= (MAX_COAL_IN_MARKET - coal)) - continue; - if ((abs(marketx[q] - x) < MARKET_RANGE) - && (abs(markety[q] - y) < MARKET_RANGE)) { - MP_INFO(marketx[q], markety[q]).int_3 += coal; - return (1); - } + mps_store_sd(i++, constructionGroup->name, ID); + i++; + mps_store_sfp(i++, N_("busy"), (float) busy); + i++; + //list_commodities(&i); + std::map<Construction::Commodities, int>::iterator stuff_it; + for(stuff_it = commodityCount.begin() ; stuff_it != commodityCount.end() ; stuff_it++) + { + char arrows[4]="---"; + if (flags & FLAG_EVACUATE) + { + arrows[0] = '<'; + arrows[1] = '<'; + arrows[2] = ' '; } - } - if (put_stuff(x, y, coal, T_COAL) != 0) - return (1); - return (0); -} - -int add_a_market(int x, int y) -{ /* add to marketx markety to list */ - if (numof_markets >= MAX_NUMOF_MARKETS) - return (0); - marketx[numof_markets] = x; - markety[numof_markets] = y; - numof_markets++; - /* oh dear. Got to bootstap markets with jobs, otherwise power won't work - * GCS: Is this still true? - * AL1: FIXME it seems not :) it's just needed to wait for periodic event - */ - - MP_INFO(x, y).int_2 = 2000; - return (1); -} - -void remove_a_market(int x, int y) -{ - /* AL1: Could use present jobs to try put_everything elsewhere - * at least half of the content - */ - int q; - for (q = 0; q < numof_markets; q++) - if (marketx[q] == x && markety[q] == y) - break; - for (; q < numof_markets; q++) { - marketx[q] = marketx[q + 1]; - markety[q] = markety[q + 1]; - } - numof_markets--; -} - -void do_market(int x, int y) -{ - /* - // int_1 contains the food it holds - // int_2 contains the jobs - // int_3 contains the coal - // int_4 contains the goods - // int_5 contains the ore - // int_6 contains the steel - // int_7 contains the waste - */ - - int extra_jobs = 0; - - shuffle_markets(); - - if (x > 0 && (MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x - 1, y); - if (x > 0 && (MP_INFO(x - 1, y + 1).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x - 1, y + 1); - if (y > 0 && (MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x, y - 1); - if (y > 0 && (MP_INFO(x + 1, y - 1).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x + 1, y - 1); - if (x < WORLD_SIDE_LEN - 2 && (MP_INFO(x + 2, y).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x + 2, y); - if (x < WORLD_SIDE_LEN - 2 && (MP_INFO(x + 2, y + 1).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x + 2, y + 1); - if (y < WORLD_SIDE_LEN - 2 && (MP_INFO(x, y + 2).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x, y + 2); - if (y < WORLD_SIDE_LEN - 2 && (MP_INFO(x + 1, y + 2).flags & FLAG_IS_TRANSPORT) != 0) - extra_jobs += deal_with_transport(x, y, x + 1, y + 2); - - if (MP_INFO(x, y).int_1 > MAX_FOOD_IN_MARKET) - MP_INFO(x, y).int_1 = MAX_FOOD_IN_MARKET; - if (MP_INFO(x, y).int_2 > MAX_JOBS_IN_MARKET) - MP_INFO(x, y).int_2 = MAX_JOBS_IN_MARKET; - if (MP_INFO(x, y).int_4 > MAX_GOODS_IN_MARKET) - MP_INFO(x, y).int_4 = MAX_GOODS_IN_MARKET; - - /* now choose a graphic only dependent on food (for now anyway) */ - if (total_time % 25 == 17) { - if (MP_INFO(x, y).int_1 <= 0) { - if (MP_INFO(x, y).int_2 > 0) - MP_TYPE(x, y) = CST_MARKET_LOW; - else - MP_TYPE(x, y) = CST_MARKET_EMPTY; - } else if (MP_INFO(x, y).int_1 < (MARKET_FOOD_SEARCH_TRIGGER / 2)) - MP_TYPE(x, y) = CST_MARKET_LOW; - else if (MP_INFO(x, y).int_1 < (MAX_FOOD_IN_MARKET - MAX_FOOD_IN_MARKET / 4)) - MP_TYPE(x, y) = CST_MARKET_MED; else - MP_TYPE(x, y) = CST_MARKET_FULL; - } - - /* now employ some people */ - get_jobs(x, y, 1 + (extra_jobs / 5)); - - /* keep the pbars accurate */ - inventory(x, y); -} - -void shuffle_markets(void) -{ - register int x; - int q, r, m; - m = (numof_markets / 4) + 1; - for (x = 0; x < m; x++) { - r = rand() % numof_markets; - if (r == x) - continue; - q = marketx[x]; - marketx[x] = marketx[r]; - marketx[r] = q; - q = markety[x]; - markety[x] = markety[r]; - markety[r] = q; - } -} - -int deal_with_transport(int x, int y, int tx, int ty) -{ - int i, r, extra_jobs = 3, flags; - flags = MP_INFO(x, y).flags; - /* tracks */ - if (MP_GROUP(tx, ty) == GROUP_TRACK) { - /* food */ - if ((flags & FLAG_MB_FOOD) != 0) { - r = (MAX_FOOD_IN_MARKET * 1000) - / (MAX_FOOD_ON_TRACK + MAX_FOOD_IN_MARKET); - i = MP_INFO(x, y).int_1 + MP_INFO(tx, ty).int_1; - MP_INFO(x, y).int_1 = (i * r) / 1000; - MP_INFO(tx, ty).int_1 = i - MP_INFO(x, y).int_1; - } - - /* jobs */ - if ((flags & FLAG_MB_JOBS) != 0) { - r = (MAX_JOBS_IN_MARKET * 1000) - / (MAX_JOBS_ON_TRACK + MAX_JOBS_IN_MARKET); - i = MP_INFO(x, y).int_2 + MP_INFO(tx, ty).int_2; - MP_INFO(x, y).int_2 = (i * r) / 1000; - MP_INFO(tx, ty).int_2 = i - MP_INFO(x, y).int_2; - } - - /* coal */ - if ((flags & FLAG_MB_COAL) != 0) { - r = (MAX_COAL_IN_MARKET * 1000) - / (MAX_COAL_ON_TRACK + MAX_COAL_IN_MARKET); - i = MP_INFO(x, y).int_3 + MP_INFO(tx, ty).int_3; - MP_INFO(x, y).int_3 = (i * r) / 1000; - MP_INFO(tx, ty).int_3 = i - MP_INFO(x, y).int_3; - } - - /* goods */ - if ((flags & FLAG_MB_GOODS) != 0) { - r = (MAX_GOODS_IN_MARKET * 1000) - / (MAX_GOODS_ON_TRACK + MAX_GOODS_IN_MARKET); - i = MP_INFO(x, y).int_4 + MP_INFO(tx, ty).int_4; - MP_INFO(x, y).int_4 = (i * r) / 1000; - MP_INFO(tx, ty).int_4 = i - MP_INFO(x, y).int_4; - } - - /* ore */ - if ((flags & FLAG_MB_ORE) != 0) { - r = (MAX_ORE_IN_MARKET * 1000) - / (MAX_ORE_ON_TRACK + MAX_ORE_IN_MARKET); - i = MP_INFO(x, y).int_5 + MP_INFO(tx, ty).int_5; - MP_INFO(x, y).int_5 = (i * r) / 1000; - MP_INFO(tx, ty).int_5 = i - MP_INFO(x, y).int_5; - } - - /* steel */ - if ((flags & FLAG_MB_STEEL) != 0) { - r = (MAX_STEEL_IN_MARKET * 1000) - / (MAX_STEEL_ON_TRACK + MAX_STEEL_IN_MARKET); - i = MP_INFO(x, y).int_6 + MP_INFO(tx, ty).int_6; - MP_INFO(x, y).int_6 = (i * r) / 1000; - MP_INFO(tx, ty).int_6 = i - MP_INFO(x, y).int_6; - } - - /* waste */ - r = (MAX_WASTE_IN_MARKET * 1000) - / (MAX_WASTE_ON_TRACK + MAX_WASTE_IN_MARKET); - i = MP_INFO(x, y).int_7 + MP_INFO(tx, ty).int_7; - MP_INFO(x, y).int_7 = (i * r) / 1000; - MP_INFO(tx, ty).int_7 = i - MP_INFO(x, y).int_7; - - /* if it's full of waste, burn some to make pollution. */ - if (MP_INFO(x, y).int_7 >= (99 * MAX_WASTE_IN_MARKET / 100)) { - MP_POL(x, y) += 3000; - MP_INFO(x, y).int_7 -= (7 * MAX_WASTE_IN_MARKET) / 10; + { + if (commodityRuleCount[stuff_it->first].take) + { arrows[2] = '>';} + if (commodityRuleCount[stuff_it->first].give) + { arrows[0] = '<';} + } + + if(i < 14) + { + mps_store_ssddp(i++, arrows, getStuffName(stuff_it->first), stuff_it->second, commodityRuleCount[stuff_it->first].maxload); + }//endif + } //endfor +} + +void Market::toggleEvacuation() +{ + bool evacuate = flags & FLAG_EVACUATE; //actually the previous state + std::map<Construction::Commodities, CommodityRule>::iterator rule_it; + for(rule_it = commodityRuleCount.begin() ; rule_it != commodityRuleCount.end() ; rule_it++) + { + if(!evacuate) + { + rule_it->second.give = true; + rule_it->second.take = false; } - } - - /* do rail traffic */ - else if (MP_GROUP(tx, ty) == GROUP_RAIL) { - /* food */ - if ((flags & FLAG_MB_FOOD) != 0) { - r = (MAX_FOOD_IN_MARKET * 1000) - / (MAX_FOOD_ON_RAIL + MAX_FOOD_IN_MARKET); - i = MP_INFO(x, y).int_1 + MP_INFO(tx, ty).int_1; - MP_INFO(x, y).int_1 = (i * r) / 1000; - MP_INFO(tx, ty).int_1 = i - MP_INFO(x, y).int_1; - } - - /* jobs */ - if ((flags & FLAG_MB_JOBS) != 0) { - r = (MAX_JOBS_IN_MARKET * 1000) - / (MAX_JOBS_ON_RAIL + MAX_JOBS_IN_MARKET); - i = MP_INFO(x, y).int_2 + MP_INFO(tx, ty).int_2; - MP_INFO(x, y).int_2 = (i * r) / 1000; - MP_INFO(tx, ty).int_2 = i - MP_INFO(x, y).int_2; - } - - /* coal */ - if ((flags & FLAG_MB_COAL) != 0) { - r = (MAX_COAL_IN_MARKET * 1000) - / (MAX_COAL_ON_RAIL + MAX_COAL_IN_MARKET); - i = MP_INFO(x, y).int_3 + MP_INFO(tx, ty).int_3; - MP_INFO(x, y).int_3 = (i * r) / 1000; - MP_INFO(tx, ty).int_3 = i - MP_INFO(x, y).int_3; - } - - /* goods */ - if ((flags & FLAG_MB_GOODS) != 0) { - r = (MAX_GOODS_IN_MARKET * 1000) - / (MAX_GOODS_ON_RAIL + MAX_GOODS_IN_MARKET); - i = MP_INFO(x, y).int_4 + MP_INFO(tx, ty).int_4; - MP_INFO(x, y).int_4 = (i * r) / 1000; - MP_INFO(tx, ty).int_4 = i - MP_INFO(x, y).int_4; - } - - /* ore */ - if ((flags & FLAG_MB_ORE) != 0) { - r = (MAX_ORE_IN_MARKET * 1000) - / (MAX_ORE_ON_RAIL + MAX_ORE_IN_MARKET); - i = MP_INFO(x, y).int_5 + MP_INFO(tx, ty).int_5; - MP_INFO(x, y).int_5 = (i * r) / 1000; - MP_INFO(tx, ty).int_5 = i - MP_INFO(x, y).int_5; - } - - /* steel */ - if ((flags & FLAG_MB_STEEL) != 0) { - r = (MAX_STEEL_IN_MARKET * 1000) - / (MAX_STEEL_ON_RAIL + MAX_STEEL_IN_MARKET); - i = MP_INFO(x, y).int_6 + MP_INFO(tx, ty).int_6; - MP_INFO(x, y).int_6 = (i * r) / 1000; - MP_INFO(tx, ty).int_6 = i - MP_INFO(x, y).int_6; - } - - /* waste */ - r = (MAX_WASTE_IN_MARKET * 1000) - / (MAX_WASTE_ON_RAIL + MAX_WASTE_IN_MARKET); - i = MP_INFO(x, y).int_7 + MP_INFO(tx, ty).int_7; - MP_INFO(x, y).int_7 = (i * r) / 1000; - MP_INFO(tx, ty).int_7 = i - MP_INFO(x, y).int_7; - - } - - /* do road traffic */ - else if (MP_GROUP(tx, ty) == GROUP_ROAD) { - /* food */ - if ((flags & FLAG_MB_FOOD) != 0) { - r = (MAX_FOOD_IN_MARKET * 1000) - / (MAX_FOOD_ON_ROAD + MAX_FOOD_IN_MARKET); - i = MP_INFO(x, y).int_1 + MP_INFO(tx, ty).int_1; - MP_INFO(x, y).int_1 = (i * r) / 1000; - MP_INFO(tx, ty).int_1 = i - MP_INFO(x, y).int_1; - } - - /* jobs */ - if ((flags & FLAG_MB_JOBS) != 0) { - r = (MAX_JOBS_IN_MARKET * 1000) - / (MAX_JOBS_ON_ROAD + MAX_JOBS_IN_MARKET); - i = MP_INFO(x, y).int_2 + MP_INFO(tx, ty).int_2; - MP_INFO(x, y).int_2 = (i * r) / 1000; - MP_INFO(tx, ty).int_2 = i - MP_INFO(x, y).int_2; - } - - /* coal */ - if ((flags & FLAG_MB_COAL) != 0) { - r = (MAX_COAL_IN_MARKET * 1000) - / (MAX_COAL_ON_ROAD + MAX_COAL_IN_MARKET); - i = MP_INFO(x, y).int_3 + MP_INFO(tx, ty).int_3; - MP_INFO(x, y).int_3 = (i * r) / 1000; - MP_INFO(tx, ty).int_3 = i - MP_INFO(x, y).int_3; - } - - /* goods */ - if ((flags & FLAG_MB_GOODS) != 0) { - r = (MAX_GOODS_IN_MARKET * 1000) - / (MAX_GOODS_ON_ROAD + MAX_GOODS_IN_MARKET); - i = MP_INFO(x, y).int_4 + MP_INFO(tx, ty).int_4; - MP_INFO(x, y).int_4 = (i * r) / 1000; - MP_INFO(tx, ty).int_4 = i - MP_INFO(x, y).int_4; - } - - /* ore */ - if ((flags & FLAG_MB_ORE) != 0) { - r = (MAX_ORE_IN_MARKET * 1000) - / (MAX_ORE_ON_ROAD + MAX_ORE_IN_MARKET); - i = MP_INFO(x, y).int_5 + MP_INFO(tx, ty).int_5; - MP_INFO(x, y).int_5 = (i * r) / 1000; - MP_INFO(tx, ty).int_5 = i - MP_INFO(x, y).int_5; - } - - /* steel */ - if ((flags & FLAG_MB_STEEL) != 0) { - r = (MAX_STEEL_IN_MARKET * 1000) - / (MAX_STEEL_ON_ROAD + MAX_STEEL_IN_MARKET); - i = MP_INFO(x, y).int_6 + MP_INFO(tx, ty).int_6; - MP_INFO(x, y).int_6 = (i * r) / 1000; - MP_INFO(tx, ty).int_6 = i - MP_INFO(x, y).int_6; - } - - /* waste */ - r = (MAX_WASTE_IN_MARKET * 1000) - / (MAX_WASTE_ON_ROAD + MAX_WASTE_IN_MARKET); - i = MP_INFO(x, y).int_7 + MP_INFO(tx, ty).int_7; - MP_INFO(x, y).int_7 = (i * r) / 1000; - MP_INFO(tx, ty).int_7 = i - MP_INFO(x, y).int_7; - } else - extra_jobs = 0; - - return (extra_jobs); -} - -int get_stuff(int x, int y, int stuff, int stuff_type) -{ - int res = 0; - Map_Point_Info *minfo = &MP_INFO(x, y); - - switch (MP_SIZE(x, y)) { - case 2: - res = get_stuff2(minfo, stuff, stuff_type); - break; - case 3: - res = get_stuff3(minfo, stuff, stuff_type); - break; - case 4: - res = get_stuff4(minfo, stuff, stuff_type); - break; - default: - do_error("Bad area size in get_stuff()"); - } - return (res); -} - -static const int t2[8] = { - -1, - WORLD_SIDE_LEN - 1, - 2 * WORLD_SIDE_LEN, - 2 * WORLD_SIDE_LEN + 1, - WORLD_SIDE_LEN + 2, - 2, - 1 - WORLD_SIDE_LEN, - -WORLD_SIDE_LEN -}; - -/* worth inlining -- (ThMO) */ -int get_stuff2(Map_Point_Info * map, int stuff, int stuff_type) -{ - static int tstart2 = 0; - int i, st, tst, *ip, *stack[8], **ssp; /* stack is a pipe -- (ThMO) */ - - /* we'll stack our found pointers so to avoid re-looping and - * testing again (ThMO) */ - - tst = tstart2; - - /* can we find enough on the transport? */ - - for (ssp = stack, st = 0, i = 0; i < 8; i++) { - if (map[t2[tst]].flags & FLAG_IS_TRANSPORT) { - ip = &map[t2[tst]].int_1; - ip += stuff_type; - st += *ip; - *ssp++ = ip; /* push it -- (ThMO) */ - if (st >= stuff) { - ssp = stack; - do { - ip = *ssp++; /* pop it -- (ThMO) */ - *ip = (stuff -= *ip) < 0 ? -stuff : 0; - } - while (stuff > 0); - tstart2 = ++tst & 7; - return (1); - } - } - if (++tst >= 8) - tst = 0; - } - return (0); -} - -static const int t3[12] = { - -1, - WORLD_SIDE_LEN - 1, - 2 * WORLD_SIDE_LEN - 1, - 3 * WORLD_SIDE_LEN, - 3 * WORLD_SIDE_LEN + 1, - 3 * WORLD_SIDE_LEN + 2, - 2 * WORLD_SIDE_LEN + 3, - WORLD_SIDE_LEN + 3, - 3, - 2 - WORLD_SIDE_LEN, - 1 - WORLD_SIDE_LEN, - -WORLD_SIDE_LEN -}; - -/* worth inlining -- (ThMO) */ -int get_stuff3(Map_Point_Info * map, int stuff, int stuff_type) -{ - static int tstart3 = 0; - - int i, st, tst, *ip, *stack[12], **ssp; /* stack is a pipe -- (ThMO) */ - - /* we'll stack our found pointers so to avoid re-looping and - * testing again - * (ThMO) - */ - - tst = tstart3; - - /* can we find enough on the transport? */ - - for (ssp = stack, st = 0, i = 0; i < 12; i++) { - if (map[t3[tst]].flags & FLAG_IS_TRANSPORT) { - ip = &map[t3[tst]].int_1; - ip += stuff_type; - st += *ip; - *ssp++ = ip; /* push it -- (ThMO) */ - if (st >= stuff) { - ssp = stack; - do { - ip = *ssp++; /* pop it -- (ThMO) */ - *ip = (stuff -= *ip) < 0 ? -stuff : 0; - } - while (stuff > 0); - ++tst; - tstart3 = tst >= 12 ? 0 : tst; - return (1); - } - } - if (++tst >= 12) - tst = 0; - } - return (0); -} - -static const int t4[16] = { - -1, - WORLD_SIDE_LEN - 1, - 2 * WORLD_SIDE_LEN - 1, - 3 * WORLD_SIDE_LEN - 1, - 4 * WORLD_SIDE_LEN, - 4 * WORLD_SIDE_LEN + 1, - 4 * WORLD_SIDE_LEN + 2, - 4 * WORLD_SIDE_LEN + 3, - 3 * WORLD_SIDE_LEN + 4, - 2 * WORLD_SIDE_LEN + 4, - WORLD_SIDE_LEN + 4, - 4, - 3 - WORLD_SIDE_LEN, - 2 - WORLD_SIDE_LEN, - 1 - WORLD_SIDE_LEN, - -WORLD_SIDE_LEN -}; - -/* worth inlining -- (ThMO) */ -int get_stuff4(Map_Point_Info * map, int stuff, int stuff_type) -{ - static int tstart4 = 0; - - int i, st, tst, *ip, *stack[16], **ssp; /* stack is a pipe -- (ThMO) */ - - /* we'll stack our found pointers so to avoid re-looping and - * testing again - * (ThMO) - */ - - tst = tstart4; - - /* can we find enough on the transport? */ - - for (ssp = stack, st = 0, i = 0; i < 16; i++) { - if (map[t4[tst]].flags & FLAG_IS_TRANSPORT) { - ip = &map[t4[tst]].int_1; - ip += stuff_type; - st += *ip; - *ssp++ = ip; /* push it -- (ThMO) */ - if (st >= stuff) { - ssp = stack; - do { - ip = *ssp++; /* pop it -- (ThMO) */ - *ip = (stuff -= *ip) < 0 ? -stuff : 0; - } - while (stuff > 0); - tstart4 = ++tst & 15; - return (1); - } - } - if (++tst >= 16) - tst = 0; - } - return (0); -} - -int put_stuff(int x, int y, int stuff, int stuff_type) -{ - int res = 0; - short *type = &MP_TYPE(x, y); - Map_Point_Info *minfo = &MP_INFO(x, y); - switch (MP_SIZE(x, y)) { - case 2: - res = put_stuff2(minfo, type, stuff, stuff_type); - break; - case 3: - res = put_stuff3(minfo, type, stuff, stuff_type); - break; - case 4: - res = put_stuff4(minfo, type, stuff, stuff_type); - break; - default: - do_error("Bad area size in put_stuff()"); - } - return res; -} - -int tmax[3][7] = { - {MAX_FOOD_ON_TRACK, MAX_JOBS_ON_TRACK, MAX_COAL_ON_TRACK, MAX_GOODS_ON_TRACK, MAX_ORE_ON_TRACK, MAX_STEEL_ON_TRACK, - MAX_WASTE_ON_TRACK}, - {MAX_FOOD_ON_ROAD, MAX_JOBS_ON_ROAD, MAX_COAL_ON_ROAD, MAX_GOODS_ON_ROAD, MAX_ORE_ON_ROAD, MAX_STEEL_ON_ROAD, - MAX_WASTE_ON_ROAD}, - {MAX_FOOD_ON_RAIL, MAX_JOBS_ON_RAIL, MAX_COAL_ON_RAIL, MAX_GOODS_ON_RAIL, MAX_ORE_ON_RAIL, MAX_STEEL_ON_RAIL, - MAX_WASTE_ON_RAIL} -}; - -struct stack { - int *ip, max_val; -}; - -/* worth inlining -- (ThMO) */ -int put_stuff2(Map_Point_Info * minfo, short *type, int stuff, int stuff_type) -{ - static int tstart2 = 0; - int i, st, tst, *ip, tp = 0; - struct stack stack[8], *ssp; /* stack is really a pipe -- (ThMO) */ - - /* we'll stack our found pointers so to avoid re-looping and - * testing again (ThMO) */ - - tst = tstart2; - - /* can we put enough on the transport? */ - - for (ssp = stack, st = 0, i = 0; i < 8; i++) { - int map_index = t2[tst]; - if (minfo[map_index].flags & FLAG_IS_TRANSPORT) { - switch (get_group_of_type(type[map_index])) { - case GROUP_TRACK: - case GROUP_TRACK_BRIDGE: - tp = tmax[0][stuff_type]; - break; - case GROUP_ROAD: - case GROUP_ROAD_BRIDGE: - tp = tmax[1][stuff_type]; - break; - case GROUP_RAIL: - case GROUP_RAIL_BRIDGE: - tp = tmax[2][stuff_type]; - break; - default: - do_error("Bad transport type in put_stuff2"); - } - ip = &minfo[map_index].int_1; - ssp->ip = ip += stuff_type; /* push it -- (ThMO) */ - ssp++->max_val = tp; - st += tp - *ip; - if (st >= stuff) { - ssp = stack; - do { - tp = ssp->max_val - *ssp->ip; /* pop it -- (ThMO) */ - if ((stuff -= tp) < 0) - *ssp->ip += tp + stuff; /* == orig. stuff -- (ThMO) */ - else - *ssp->ip = ssp->max_val; - ++ssp; - } while (stuff > 0); - tstart2 = ++tst & 7; - return (1); - } - } - if (++tst >= 8) - tst = 0; - } - return (0); -} - -/* worth inlining -- (ThMO) */ -int put_stuff3(Map_Point_Info * minfo, short *type, int stuff, int stuff_type) -{ - static int tstart3 = 0; - int i, st, tst, *ip, tp = 0; - struct stack stack[12], *ssp; /* stack is really a pipe -- (ThMO) - we'll stack our found pointers so - to avoid re-looping and - testing again (ThMO) */ - - tst = tstart3; - - /* can we put enough on the transport? */ - - for (ssp = stack, st = 0, i = 0; i < 12; i++) { - int map_index = t3[tst]; - if (minfo[map_index].flags & FLAG_IS_TRANSPORT) { - switch (get_group_of_type(type[map_index])) { - case GROUP_TRACK: - case GROUP_TRACK_BRIDGE: - tp = tmax[0][stuff_type]; - break; - case GROUP_ROAD: - case GROUP_ROAD_BRIDGE: - tp = tmax[1][stuff_type]; - break; - case GROUP_RAIL: - case GROUP_RAIL_BRIDGE: - tp = tmax[2][stuff_type]; - break; - default: - do_error("Bad transport type in put_stuff3"); - } - ip = &minfo[map_index].int_1; - ssp->ip = ip += stuff_type; /* push it -- (ThMO) */ - ssp++->max_val = tp; - st += tp - *ip; - if (st >= stuff) { - ssp = stack; - do { - tp = ssp->max_val - *ssp->ip; /* pop it -- (ThMO) */ - if ((stuff -= tp) < 0) - *ssp->ip += tp + stuff; /* == orig. stuff -- (ThMO) */ - else - *ssp->ip = ssp->max_val; - ++ssp; - } while (stuff > 0); - ++tst; - tstart3 = tst >= 12 ? 0 : tst; - return (1); - } + else + { + rule_it->second.give = true; + rule_it->second.take = true; } - if (++tst >= 12) - tst = 0; - } - return (0); -} -/* worth inlining -- (ThMO) */ -int put_stuff4(Map_Point_Info * minfo, short *type, int stuff, int stuff_type) -{ - static int tstart4 = 0; - int i, st, tst, *ip, tp = 0; - struct stack stack[16], *ssp; /* stack is really a pipe -- (ThMO) - */ - /* we'll stack our found pointers so to avoid re-looping and - * testing again (ThMO) */ - - tst = tstart4; - - /* can we put enough on the transport? */ - - for (ssp = stack, st = 0, i = 0; i < 16; i++) { - int map_index = t4[tst]; - if (minfo[map_index].flags & FLAG_IS_TRANSPORT) { - switch (get_group_of_type(type[map_index])) { - case GROUP_TRACK: - case GROUP_TRACK_BRIDGE: - tp = tmax[0][stuff_type]; - break; - case GROUP_ROAD: - case GROUP_ROAD_BRIDGE: - tp = tmax[1][stuff_type]; - break; - case GROUP_RAIL: - case GROUP_RAIL_BRIDGE: - tp = tmax[2][stuff_type]; - break; - default: - do_error("Bad transport type in put_stuff4"); - } - ip = &minfo[map_index].int_1; - ssp->ip = ip += stuff_type; /* push it -- (ThMO) */ - ssp++->max_val = tp; - st += tp - *ip; - if (st >= stuff) { - ssp = stack; - do { - tp = ssp->max_val - *ssp->ip; /* pop it -- (ThMO) */ - if ((stuff -= tp) < 0) - *ssp->ip += tp + stuff; /* == orig. stuff -- (ThMO) */ - else - *ssp->ip = ssp->max_val; - ++ssp; - } while (stuff > 0); - tstart4 = ++tst & 15; - return (1); - } - } - if (++tst >= 16) - tst = 0; } - return (0); + flags &= ~FLAG_EVACUATE; + if(!evacuate) + { flags |= FLAG_EVACUATE;} } -void mps_market(int x, int y) -{ - int i = 0; +/** @file lincity/modules/market.cpp */ - mps_store_title(i++, _("Market")); - i++; - mps_store_sfp(i++, _("Food"), MP_INFO(x, y).int_1 * 100.0 / MAX_FOOD_IN_MARKET); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_2 * 100.0 / MAX_JOBS_IN_MARKET); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_IN_MARKET); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_4 * 100.0 / MAX_GOODS_IN_MARKET); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_5 * 100.0 / MAX_ORE_IN_MARKET); - mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_6 * 100.0 / MAX_STEEL_IN_MARKET); - mps_store_sfp(i++, _("Waste"), MP_INFO(x, y).int_7 * 100.0 / MAX_WASTE_IN_MARKET); -} diff -Nru lincity-ng-2.0/src/lincity/modules/market.h lincity-ng-2.9~git20150314/src/lincity/modules/market.h --- lincity-ng-2.0/src/lincity/modules/market.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/market.h 2015-05-05 16:32:51.000000000 +0000 @@ -3,35 +3,110 @@ * This file is part of lincity. * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * ---------------------------------------------------------------------- */ -#include "../engglobs.h" -void mps_market(int x, int y); +#define GROUP_MARKET_COLOUR (blue(28)) +#define GROUP_MARKET_COST 100 +#define GROUP_MARKET_COST_MUL 25 +#define GROUP_MARKET_BUL_COST 100 +#define GROUP_MARKET_TECH 0 +#define GROUP_MARKET_FIREC 80 +#define GROUP_MARKET_RANGE 9 +#define GROUP_MARKET_SIZE 2 -int get_food(int, int, int); -int put_food(int, int, int); -int get_jobs(int, int, int); -int put_jobs(int, int, int); -int get_goods(int, int, int); -int put_goods(int, int, int); -int get_ore(int, int, int); -int put_ore(int, int, int); -int get_coal(int, int, int); -int put_coal(int, int, int); -int add_a_market(int, int); -void remove_a_market(int, int); -void do_market(int, int); -void shuffle_markets(void); -int deal_with_transport(int, int, int, int); -int get_steel(int, int, int); -int put_steel(int, int, int); -int get_waste(int, int, int); -int put_waste(int, int, int); -int get_stuff(int, int, int, int); -int get_stuff2(Map_Point_Info *, int, int); -int get_stuff3(Map_Point_Info *, int, int); -int get_stuff4(Map_Point_Info *, int, int); -int put_stuff(int, int, int, int); -int put_stuff2(Map_Point_Info *, short *, int, int); -int put_stuff3(Map_Point_Info *, short *, int, int); -int put_stuff4(Map_Point_Info *, short *, int, int); +//#define MARKET_ANIM_SPEED 750 + +#define JOBS_MARKET_EMPTY 1 +#define JOBS_MARKET_LOW 5 +#define JOBS_MARKET_MED 12 +#define JOBS_MARKET_FULL 28 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include "../transport.h" + + +class MarketConstructionGroup: public ConstructionGroup { +public: + MarketConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int market_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, market_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_IN_MARKET; + commodityRuleCount[Construction::STUFF_FOOD].take = true; + commodityRuleCount[Construction::STUFF_FOOD].give = true; + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_IN_MARKET; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = true; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_IN_MARKET; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = true; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_IN_MARKET; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_IN_MARKET; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = true; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_IN_MARKET; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = true; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_IN_MARKET; + commodityRuleCount[Construction::STUFF_WASTE].take = true; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + }; + // overriding method that creates a Market + virtual Construction *createConstruction(int x, int y); +}; + +extern MarketConstructionGroup marketConstructionGroup; +//extern MarketConstructionGroup market_low_ConstructionGroup; +//extern MarketConstructionGroup market_med_ConstructionGroup; +//extern MarketConstructionGroup market_full_ConstructionGroup; + +class Market: public RegisteredConstruction<Market> { // Market inherits from Construction +public: + Market(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Market>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + //local copy of commodityRuCount + commodityRuleCount = constructionGroup->commodityRuleCount; + setCommodityRulesSaved(&commodityRuleCount); + initialize_commodities(); + this->jobs = JOBS_MARKET_EMPTY; + this->anim = 0; + this->busy = 0; + this->working_days = 0; + //set the Searchrange of this Market + int tmp; + int lenm1 = world.len()-1; + tmp = x - constructionGroup->range; + this->xs = (tmp < 1) ? 1 : tmp; + tmp = y - constructionGroup->range; + this->ys = (tmp < 1)? 1 : tmp; + tmp = x + constructionGroup->range + constructionGroup->size; + this->xe = (tmp > lenm1) ? lenm1 : tmp; + tmp = y + constructionGroup->range + constructionGroup->size; + this->ye = (tmp > lenm1)? lenm1 : tmp; + this->cover(); + } + virtual void update(); + virtual void report(); + void cover(); + void toggleEvacuation(); + + int xs, ys, xe, ye; + int working_days, busy; + int jobs; + std::map<Commodities, CommodityRule> commodityRuleCount; + int anim; +}; + +/** @file lincity/modules/market.h */ diff -Nru lincity-ng-2.0/src/lincity/modules/mill.cpp lincity-ng-2.9~git20150314/src/lincity/modules/mill.cpp --- lincity-ng-2.0/src/lincity/modules/mill.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/mill.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,99 +5,74 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "mill.h" -void do_mill(int x, int y) + +MillConstructionGroup millConstructionGroup( + N_("Textile Mill"), + FALSE, /* need credit? */ + GROUP_MILL, + GROUP_MILL_SIZE, + GROUP_MILL_COLOUR, + GROUP_MILL_COST_MUL, + GROUP_MILL_BUL_COST, + GROUP_MILL_FIREC, + GROUP_MILL_COST, + GROUP_MILL_TECH, + GROUP_MILL_RANGE +); + +Construction *MillConstructionGroup::createConstruction(int x, int y) { + return new Mill(x, y, this); +} + +void Mill::update() { - // int_1 contains the goods at the mill - // int_2 contains the food store - // int_3 contains the coal store - // int_4 unused - // int_5 is the % count so far this month - // int_6 is the % capacity last month - // int_7 unused - // MP_ANIM contains the animation trigger time since 1.91 - - /* get food */ - int block_anim = 0; - if (MP_INFO(x, y).int_2 < MAX_FOOD_AT_MILL) - if (get_food(x, y, MILL_GET_FOOD) != 0) - MP_INFO(x, y).int_2 += MILL_GET_FOOD; - - /* get coal or power */ - if (MP_INFO(x, y).int_3 < MAX_COAL_AT_MILL) { - if (get_coal(x, y, MILL_GET_COAL) != 0) - MP_INFO(x, y).int_3 += MILL_GET_COAL; - else if (get_power(x, y, MILL_GET_COAL * MILL_POWER_PER_COAL, 0) != 0) - MP_INFO(x, y).int_3 += MILL_GET_COAL; - } else { - // prevent blinking in minimap: we have power - get_power(x,y,0,0); + bool use_coal = (commodityCount[STUFF_COAL]*MAX_KWH_AT_MILL > commodityCount[STUFF_KWH]*MAX_COAL_AT_MILL); + flags &= ~(FLAG_POWERED); + if ((use_coal?commodityCount[STUFF_COAL]:commodityCount[STUFF_KWH]) >= (use_coal?COAL_USED_BY_MILL:COAL_USED_BY_MILL * MILL_POWER_PER_COAL) + && (flags |= FLAG_POWERED, commodityCount[STUFF_FOOD] >= FOOD_USED_BY_MILL) + && (commodityCount[STUFF_JOBS] >= MILL_JOBS) + && (commodityCount[STUFF_GOODS] <= MAX_GOODS_AT_MILL - GOODS_MADE_BY_MILL)) + { + (use_coal?commodityCount[STUFF_COAL]:commodityCount[STUFF_KWH]) -= (use_coal?COAL_USED_BY_MILL:COAL_USED_BY_MILL * MILL_POWER_PER_COAL); + commodityCount[STUFF_FOOD] -= FOOD_USED_BY_MILL; + commodityCount[STUFF_JOBS] -= MILL_JOBS; + commodityCount[STUFF_GOODS] += GOODS_MADE_BY_MILL; + ++working_days; + animate = true; + if ((++pol_count %= 7) == 0) + { world(x,y)->pollution++;} } - - if (MP_INFO(x, y).int_1 < MAX_GOODS_AT_MILL) { - if (MP_INFO(x, y).int_2 > FOOD_USED_BY_MILL && MP_INFO(x, y).int_3 > COAL_USED_BY_MILL) { - if (get_jobs(x, y, MILL_JOBS) != 0) { - MP_INFO(x, y).int_2 -= FOOD_USED_BY_MILL; - MP_INFO(x, y).int_3 -= COAL_USED_BY_MILL; - MP_INFO(x, y).int_1 += GOODS_MADE_BY_MILL; - MP_INFO(x, y).int_5++; - } else { - MP_TYPE(x, y) = CST_MILL_0; - block_anim = 1; - } - } else - block_anim = 1; + else + { + frameIt->frame = 0; + animate = false; } - - if (MP_INFO(x, y).int_1 > GOODS_MADE_BY_MILL) - if (put_goods(x, y, GOODS_MADE_BY_MILL - 1) != 0) - MP_INFO(x, y).int_1 -= (GOODS_MADE_BY_MILL - 1); - - if (total_time % 100 == 0) { - MP_INFO(x, y).int_6 = MP_INFO(x, y).int_5; - MP_INFO(x, y).int_5 = 0; + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; } - if (real_time >= MP_ANIM(x, y) && block_anim == 0) { - MP_ANIM(x, y) = real_time + MILL_ANIM_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_MILL_0): - MP_TYPE(x, y) = CST_MILL_1; - break; - case (CST_MILL_1): - MP_TYPE(x, y) = CST_MILL_2; - break; - case (CST_MILL_2): - MP_TYPE(x, y) = CST_MILL_3; - break; - case (CST_MILL_3): - MP_TYPE(x, y) = CST_MILL_4; - break; - case (CST_MILL_4): - MP_TYPE(x, y) = CST_MILL_5; - break; - case (CST_MILL_5): - MP_TYPE(x, y) = CST_MILL_6; - break; - case (CST_MILL_6): - MP_TYPE(x, y) = CST_MILL_1; - MP_POL(x, y)++; - break; - } + //Animation + if (real_time >= anim && animate) + { + anim = real_time + MILL_ANIM_SPEED; + if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { frameIt->frame = 1;} } } -void mps_mill(int x, int y) +void Mill::report() { int i = 0; - mps_store_title(i++, _("Textile Mill")); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), (float) busy); i++; - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_6); - i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_1 * 100.0 / MAX_GOODS_AT_MILL); - mps_store_sfp(i++, _("Food"), MP_INFO(x, y).int_2 * 100.0 / MAX_FOOD_AT_MILL); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_AT_MILL); - + list_commodities(&i); } + + +/** @file lincity/modules/mill.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/mill.h lincity-ng-2.9~git20150314/src/lincity/modules/mill.h --- lincity-ng-2.0/src/lincity/modules/mill.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/mill.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,88 @@ -/* ---------------------------------------------------------------------- * - * mill.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_MILL_COLOUR (white(15)) +#define GROUP_MILL_COST 10000 +#define GROUP_MILL_COST_MUL 25 +#define GROUP_MILL_BUL_COST 1000 +#define GROUP_MILL_TECH 25 +#define GROUP_MILL_FIREC 60 +#define GROUP_MILL_RANGE 0 +#define GROUP_MILL_SIZE 2 -#ifndef __mill_h__ -#define __mill_h__ +#define MILL_JOBS 35 +#define GOODS_MADE_BY_MILL 75 +#define FOOD_USED_BY_MILL (GOODS_MADE_BY_MILL/2) +#define MILL_POWER_PER_COAL 60 +#define COAL_USED_BY_MILL 1 -void do_mill(int x, int y); -void mps_mill(int x, int y); +#define MAX_KWH_AT_MILL (COAL_USED_BY_MILL * MILL_POWER_PER_COAL * 20) +#define MAX_JOBS_AT_MILL (MILL_JOBS * 20) +#define MAX_FOOD_AT_MILL (FOOD_USED_BY_MILL * 20) +#define MAX_COAL_AT_MILL (COAL_USED_BY_MILL * 20) +#define MAX_GOODS_AT_MILL (GOODS_MADE_BY_MILL * 20) + +#define MILL_ANIM_SPEED 300 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class MillConstructionGroup: public ConstructionGroup { +public: + MillConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_MILL; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_AT_MILL; + commodityRuleCount[Construction::STUFF_FOOD].take = true; + commodityRuleCount[Construction::STUFF_FOOD].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_MILL; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_MILL; + commodityRuleCount[Construction::STUFF_GOODS].take = false; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_MILL; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + } + // overriding method that creates a mill + virtual Construction *createConstruction(int x, int y); +}; + +extern MillConstructionGroup millConstructionGroup; + +class Mill: public RegisteredConstruction<Mill> { // Mill inherits from its own RegisteredConstruction +public: + Mill(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Mill>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->busy = 0; + this->working_days = 0; + this->animate = false; + this->pol_count = 0; + initialize_commodities(); + } + virtual ~Mill() { } + virtual void update(); + virtual void report(); + + int anim; + int pol_count; + int working_days, busy; + bool animate; +}; + + +/** @file lincity/modules/mill.h */ -#endif /* __mill_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/modules.h lincity-ng-2.9~git20150314/src/lincity/modules/modules.h --- lincity-ng-2.0/src/lincity/modules/modules.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/modules.h 2015-05-05 16:32:51.000000000 +0000 @@ -8,17 +8,22 @@ #define __modules_h__ #include "../lctypes.h" +#include "../lintypes.h" +#include "../ConstructionManager.h" #include "tinygettext/gettext.hpp" +#include "../lin-city.h" #include "../engglobs.h" #include "../engine.h" #include "../stats.h" #include "gui_interface/mps.h" #include "../lclib.h" -#include "market.h" -#include "../power.h" +//#include "../power.h" +#include "../all_buildings.h" +#include "modules_interfaces.h" -// for real_time -//#include "cliglobs.h" #endif /* __modules_h__ */ + +/** @file lincity/modules/modules.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/modules_interfaces.h lincity-ng-2.9~git20150314/src/lincity/modules/modules_interfaces.h --- lincity-ng-2.0/src/lincity/modules/modules_interfaces.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/modules_interfaces.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,149 @@ +#ifndef __MODULES_INTERFACES_H__ +#define __MODULES_INTERFACES_H__ + +void update_shanty(void); +void mps_water(int x, int y); +void add_a_shanty(void); +void remove_a_shanty(int x, int y); + +//FIXME In principle all these should be obsolete +/* +void do_blacksmith(int x, int y); +void mps_blacksmith(int x, int y); + +void do_coalmine(int x, int y); +void mps_coalmine(int x, int y); + +void do_power_source_coal(int x, int y); +void mps_coal_power(int, int); + +void do_commune(int x, int y); +void mps_commune(int x, int y); + +void do_cricket(int x, int y); +void do_cricket_cover(int x, int y); +void mps_cricket(int x, int y); + +void do_fire(int x, int y); + +void do_firestation(int x, int y); +void do_fire_cover(int x, int y); +void mps_firestation(int x, int y); + +void do_health_centre(int x, int y); +void do_health_cover(int x, int y); +void mps_health_centre(int x, int y); + +void do_industry_h(int x, int y); +void mps_heavy_industry(int x, int y); + +void do_industry_l(int x, int y); +void mps_light_industry(int x, int y); + +void mps_market(int x, int y); +int get_food(int, int, int); +int put_food(int, int, int); +int get_jobs(int, int, int); +int put_jobs(int, int, int); +int get_goods(int, int, int); +int put_goods(int, int, int); +int get_ore(int, int, int); +int put_ore(int, int, int); +int get_coal(int, int, int); +int put_coal(int, int, int); +int add_a_market(int, int); +void remove_a_market(int, int); +void do_market(int, int); +void shuffle_markets(void); +int deal_with_transport(int, int, int, int); +int get_steel(int, int, int); +int put_steel(int, int, int); +int get_waste(int, int, int); +int put_waste(int, int, int); +int get_stuff(int, int, int, int); +int get_stuff2(map_point_info_struct *, int, int); +int get_stuff3(map_point_info_struct *, int, int); +int get_stuff4(map_point_info_struct *, int, int); +int put_stuff(int, int, int, int); +int put_stuff2(map_point_info_struct *, short int *, int, int); +int put_stuff3(map_point_info_struct *, short int *, int, int); +int put_stuff4(map_point_info_struct *, short int *, int, int); + +void do_mill(int x, int y); +void mps_mill(int x, int y); + +void do_monument(int x, int y); +void mps_monument(int x, int y); + +void do_oremine(int x, int y); +void mps_oremine(int x, int y); + +void do_organic_farm(int x, int y); +void mps_organic_farm(int x, int y); + +void do_parkland(int x, int y); +void mps_parkland(int x, int y); + +void do_port(int x, int y); +void mps_port(int x, int y); + +void do_pottery(int x, int y); +void mps_pottery(int x, int y); + +void do_power_line(int x, int y); +void mps_power_line(int x, int y); + +void do_rail(int x, int y); +void mps_rail(int x, int y); + +void do_recycle(int x, int y); +void mps_recycle(int x, int y); + +void do_residence(int x, int y); +void mps_residence(int x, int y); + +void do_road(int x, int y); +void mps_road(int x, int y); + +void do_rocket_pad(int x, int y); +void launch_rocket(int x, int y); +void mps_rocket(int x, int y); + +void do_school(int x, int y); +void mps_school(int x, int y); + +void add_a_shanty(void); +void remove_a_shanty(int x, int y); +void update_shanty(void); +void do_shanty(int x, int y); + +void do_power_source_solar(int x, int y); +void mps_solar_power(int x, int y); + +void do_power_substation(int x, int y); +int add_a_substation(int x, int y); +void remove_a_substation(int x, int y); +void shuffle_substations(void); +void mps_substation(int x, int y); + +void do_tip(int x, int y); +void mps_tip(int x, int y); + +void do_track(int x, int y); +void mps_track(int x, int y); + +void do_university(int x, int y); +void mps_university(int x, int y); + +void mps_water(int x, int y); + +void do_waterwell_cover(int x, int y); +void mps_waterwell(int x, int y); + +void do_windmill(int x, int y); +void mps_windmill(int x, int y); +*/ +#endif + +/** @file lincity/modules/modules_interfaces.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/monument.cpp lincity-ng-2.9~git20150314/src/lincity/modules/monument.cpp --- lincity-ng-2.0/src/lincity/modules/monument.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/monument.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,61 +5,109 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "monument.h" +#include "lincity-ng/Sound.hpp" -void do_monument(int x, int y) -{ - /* - // int_1 holds the jobs used - // int_2 holds the tech points made - // int_3 holds the tail off count - */ - if (MP_INFO(x, y).int_1 < BUILD_MONUMENT_JOBS) - if (get_jobs(x, y, MONUMENT_GET_JOBS) != 0) - MP_INFO(x, y).int_1 += MONUMENT_GET_JOBS; +extern int mps_x, mps_y; + +MonumentConstructionGroup monumentConstructionGroup( + N_("Monument"), + FALSE, /* need credit? */ + GROUP_MONUMENT, + GROUP_MONUMENT_SIZE, + GROUP_MONUMENT_COLOUR, + GROUP_MONUMENT_COST_MUL, + GROUP_MONUMENT_BUL_COST, + GROUP_MONUMENT_FIREC, + GROUP_MONUMENT_COST, + GROUP_MONUMENT_TECH, + GROUP_MONUMENT_RANGE +); + +//MonumentConstructionGroup monumentFinishedConstructionGroup = monumentConstructionGroup; + +Construction *MonumentConstructionGroup::createConstruction(int x, int y) { + return new Monument(x, y, this); +} +void Monument::update() +{ + if ((commodityCount[STUFF_JOBS] > MONUMENT_GET_JOBS) && (completion < 100)) + { + commodityCount[STUFF_JOBS] -= MONUMENT_GET_JOBS; + jobs_consumed += MONUMENT_GET_JOBS; + completion = jobs_consumed * 100 / BUILD_MONUMENT_JOBS; + ++working_days; + } + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + if(commodityCount[STUFF_JOBS]==0 && completed) + { deneighborize();} + } /* now choose a graphic */ - if (MP_INFO(x, y).int_1 >= BUILD_MONUMENT_JOBS) { - MP_TYPE(x, y) = CST_MONUMENT_5; - /* inc tech level only if fully built and tech less + if (completion >= 100) + { + if(!completed) + { + completed = true; + frameIt->frame = 0; + flags |= (FLAG_EVACUATE | FLAG_NEVER_EVACUATE); + frameIt->resourceGroup = ResourceGroup::resMap["Monument"]; + soundGroup = frameIt->resourceGroup; + if (mps_x == x && mps_y == y) + { mps_set(x, y, MPS_MAP);} + //dont clear commodiyCount for savegame compatability + } + /* inc tech level only if fully built and tech less than MONUMENT_TECH_EXPIRE */ if (tech_level < (MONUMENT_TECH_EXPIRE * 1000) - && (total_time % MONUMENT_DAYS_PER_TECH) == 1) { - if (MP_INFO(x, y).int_3++ > (tech_level / 10000) - 2) { + && (total_time % MONUMENT_DAYS_PER_TECH) == 1) + { + tail_off++; + if (tail_off > (tech_level / 10000) - 2) + { tech_level++; - MP_INFO(x, y).int_2++; - MP_INFO(x, y).int_3 = 0; + tech_made++; + tail_off = 0; } } - } else if (MP_INFO(x, y).int_1 >= ((BUILD_MONUMENT_JOBS * 4) / 5)) - MP_TYPE(x, y) = CST_MONUMENT_4; - else if (MP_INFO(x, y).int_1 >= ((BUILD_MONUMENT_JOBS * 3) / 5)) - MP_TYPE(x, y) = CST_MONUMENT_3; - else if (MP_INFO(x, y).int_1 >= ((BUILD_MONUMENT_JOBS * 2) / 5)) - MP_TYPE(x, y) = CST_MONUMENT_2; - else if (MP_INFO(x, y).int_1 >= (BUILD_MONUMENT_JOBS / 20)) - MP_TYPE(x, y) = CST_MONUMENT_1; + } + else if (completion >= 80) + { frameIt->frame = 4;} + else if (completion >= 60) + { frameIt->frame = 3;} + else if (completion >= 40) + { frameIt->frame = 2;} + else if (completion >= 20) + { frameIt->frame = 1;} else - MP_TYPE(x, y) = CST_MONUMENT_0; + { frameIt->frame = 0;} } -void mps_monument(int x, int y) +void Monument::report() { int i = 0; - mps_store_title(i++, _("Monument")); - i++; + mps_store_sd(i++, constructionGroup->name, ID); i++; - /* Display tech contribution only after monument is complete */ - if ((MP_INFO(x, y).int_1 * 100 / BUILD_MONUMENT_JOBS) >= 100) { - mps_store_title(i++, _("Wisdom Bestowed")); + if (completion >= 100) { i++; - mps_store_f(i++, MP_INFO(x, y).int_2 * 100.0 / MAX_TECH_LEVEL); - } else { - mps_store_title(i++, _("% Complete")); + mps_store_sfp(i++, N_("Wisdom bestowed"), tech_made * 100.0 / MAX_TECH_LEVEL); + } + else + { + mps_store_sfp(i++, N_("busy"), (float) busy); i++; - mps_store_fp(i++, MP_INFO(x, y).int_1 * 100.0 / BUILD_MONUMENT_JOBS); + list_commodities(&i); + i++; + mps_store_sfp(i++, N_("Completion"), completion); } } + + +/** @file lincity/modules/monument.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/monument.h lincity-ng-2.9~git20150314/src/lincity/modules/monument.h --- lincity-ng-2.0/src/lincity/modules/monument.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/monument.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,79 @@ -/* ---------------------------------------------------------------------- * - * monument.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_MONUMENT_COLOUR (white(15)) +#define GROUP_MONUMENT_COST 10000 +#define GROUP_MONUMENT_COST_MUL 25 +#define GROUP_MONUMENT_BUL_COST 1000000 +#define GROUP_MONUMENT_TECH 0 +#define GROUP_MONUMENT_FIREC 0 +#define GROUP_MONUMENT_RANGE 0 +#define GROUP_MONUMENT_SIZE 2 -#ifndef __monument_h__ -#define __monument_h__ +#define BUILD_MONUMENT_JOBS 350000 +#define MONUMENT_GET_JOBS 100 +#define MAX_JOBS_AT_MONUMENT (MONUMENT_GET_JOBS*20) +#define MONUMENT_DAYS_PER_TECH 3 +#define MONUMENT_TECH_EXPIRE 400 +//#define MONUMENT_ANIM_SPEED 300 //actually used? -void do_monument(int x, int y); -void mps_monument(int x, int y); +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class MonumentConstructionGroup: public ConstructionGroup { +public: + MonumentConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_MONUMENT; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + + } + // overriding method that creates a monument + virtual Construction *createConstruction(int x, int y); +}; + +extern MonumentConstructionGroup monumentConstructionGroup; +extern MonumentConstructionGroup monumentFinishedConstructionGroup; + +class Monument: public RegisteredConstruction<Monument> { // Monument inherits from is own RegisteredConstruction +public: + Monument(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Monument>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->busy = 0; + this->working_days = 0; + this->tech_made = 0; + setMemberSaved(&this->tech_made, "tech_made"); + this->tail_off = 0; + setMemberSaved(&this->tail_off, "tail_off"); + this->completion = 0; + setMemberSaved(&this->completion, "completion"); + this->completed = false; //dont save this one + this->jobs_consumed = 0; + setMemberSaved(&this->jobs_consumed, "jobs_consumed"); + initialize_commodities(); + + } + + virtual ~Monument() { } + virtual void update(); + virtual void report(); + + int working_days, busy; + int tech_made; + int tail_off; + int completion; + bool completed; + int jobs_consumed; +}; + +/** @file lincity/modules/monument.h */ -#endif /* __monument_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/oremine.cpp lincity-ng-2.9~git20150314/src/lincity/modules/oremine.cpp --- lincity-ng-2.0/src/lincity/modules/oremine.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/oremine.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,165 +5,126 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -#include "gui_interface/screen_interface.h" + #include "oremine.h" -#include <cstdlib> -void do_oremine(int x, int y) + + +// Oremine: +OremineConstructionGroup oremineConstructionGroup( + N_("Ore Mine"), + FALSE, /* need credit? */ + GROUP_OREMINE, + GROUP_OREMINE_SIZE, + GROUP_OREMINE_COLOUR, + GROUP_OREMINE_COST_MUL, + GROUP_OREMINE_BUL_COST, + GROUP_OREMINE_FIREC, + GROUP_OREMINE_COST, + GROUP_OREMINE_TECH, + GROUP_OREMINE_RANGE +); + +Construction *OremineConstructionGroup::createConstruction(int x, int y) { - // int_1 is the ore at in stock - // int_2 is the ore reserve under the ground or at the surface really. - // - // Animation stuff - // int_3 is current displayed tile - // int_4 is a time shift for animation to prevent identical animation - // int_6 is a tile increment/decrement .. .. .. - int xx, yy, xs, ys, xe, ye, cr; - if (MP_INFO(x, y).int_1 < MAX_ORE_AT_MINE - 5000) { - xs = x; - ys = y; - xe = x + 4; - ye = y + 4; - cr = 0; - for (yy = ys; yy < ye; yy++) - for (xx = xs; xx < xe; xx++) - cr += MP_INFO(xx, yy).ore_reserve; - MP_INFO(x, y).int_2 = cr; - if (cr > 0) - if (get_jobs(x, y, JOBS_DIG_ORE) != 0) - for (yy = ys; yy < ye; yy++) - for (xx = xs; xx < xe; xx++) - if (MP_INFO(xx, yy).ore_reserve > 0) { - MP_INFO(xx, yy).ore_reserve--; - MP_INFO(x, y).int_1 += 5000; - ore_made += 5000; - sust_dig_ore_coal_tip_flag = 0; - /* maybe want an ore tax? */ - yy = ye; - xx = xe; /* break out */ - } - } + return new Oremine(x, y, this); +} - for (cr=0, xx = x-1, yy = y; yy > y-2; xx++, yy--) { - // (xx,yy) = (x-1, y) then (x, y-1) ; neighbouring tranport coordinates - if ((MP_INFO(xx, yy).flags & FLAG_IS_TRANSPORT) && get_jobs(x, y, JOBS_LOAD_ORE)) { - if (MP_GROUP(xx, yy) == GROUP_RAIL - && MP_INFO(xx, yy).int_5 < MAX_ORE_ON_RAIL - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_RAIL - MP_INFO(xx, yy).int_5)) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_RAIL - MP_INFO(xx, yy).int_5); - MP_INFO(xx, yy).int_5 = MAX_ORE_ON_RAIL; - cr += 3; - } else if (MP_GROUP(xx, yy) == GROUP_ROAD - && MP_INFO(xx, yy).int_5 < MAX_ORE_ON_ROAD - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_ROAD - MP_INFO(xx, yy).int_5)) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_ROAD - MP_INFO(xx, yy).int_5); - MP_INFO(xx, yy).int_5 = MAX_ORE_ON_ROAD; - cr += 2; - } else if (MP_GROUP(xx, yy) == GROUP_TRACK - && MP_INFO(xx, yy).int_5 < MAX_ORE_ON_TRACK - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_TRACK - MP_INFO(xx, yy).int_5)) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_TRACK - MP_INFO(xx, yy).int_5); - MP_INFO(xx, yy).int_5 = MAX_ORE_ON_TRACK; - cr += 1; - } - } - } +void Oremine::update() +{ + int xx,yy; + animate = false; - // Anim according to ore mine activity - if (cr && real_time > MP_ANIM(x, y)) { - // MP_ANIM is reseted to 0 when we start/load a game - if (MP_ANIM(x,y) == 0) { - MP_INFO(x,y).int_3 = 0; - MP_INFO(x,y).int_4 = 0; - MP_INFO(x,y).int_6 = 0; - } else { - // Compute random inc/dec - if (real_time > MP_INFO(x, y).int_4) { - MP_INFO(x, y).int_4 = real_time + (16 * OREMINE_ANIMATION_SPEED) + (rand() % (16 * OREMINE_ANIMATION_SPEED)); - (MP_INFO(x, y).int_6 > 0) ? MP_INFO(x, y).int_6 = -1 : MP_INFO(x, y).int_6 = 1; + // see if we can/need to extract some underground ore + if ((total_ore_reserve) + && (commodityCount[STUFF_ORE] <= ORE_LEVEL_TARGET * (MAX_ORE_AT_MINE - ORE_PER_RESERVE)/100) + && (commodityCount[STUFF_JOBS] >= OREMINE_JOBS)) + { + for (yy = y; (yy < y + constructionGroup->size) && !animate; yy++) + { + for (xx = x; (xx < x + constructionGroup->size) && !animate; xx++) + { + if (world(xx,yy)->ore_reserve > 0) + { + world(xx,yy)->ore_reserve--; + world(xx,yy)->flags |= FLAG_ALTERED; + total_ore_reserve--; + commodityCount[STUFF_ORE] += ORE_PER_RESERVE; + commodityCount[STUFF_JOBS] -= OREMINE_JOBS; + //FIXME ore_tax should be handled upon delivery + //ore_made += ORE_PER_RESERVE; + if (total_ore_reserve < (constructionGroup->size * constructionGroup->size * ORE_RESERVE)) + { sust_dig_ore_coal_tip_flag = 0;} + animate = true; + working_days++; + } } } - // old behavior was to show reserve - // xx = 7 * (MP_INFO(x, y).int_2 + (3 * ORE_RESERVE / 2)) / (16 * ORE_RESERVE); - // - // new behavior is to have faster animation for more active mines - MP_ANIM(x, y) = real_time + ((8 - cr) * OREMINE_ANIMATION_SPEED); - - xx = (MP_INFO(x, y).int_3 + MP_INFO(x, y).int_6) & 15; - MP_INFO(x, y).int_3 = xx; - switch (xx) { - case (0): - MP_TYPE(x, y) = CST_OREMINE_1; - break; - case (1): - MP_TYPE(x, y) = CST_OREMINE_2; - break; - case (2): - MP_TYPE(x, y) = CST_OREMINE_3; - break; - case (3): - MP_TYPE(x, y) = CST_OREMINE_4; - break; - case (4): - MP_TYPE(x, y) = CST_OREMINE_5; - break; - case (5): - MP_TYPE(x, y) = CST_OREMINE_6; - break; - case (6): - MP_TYPE(x, y) = CST_OREMINE_7; - break; - case (7): - MP_TYPE(x, y) = CST_OREMINE_8; - break; - case (8): - MP_TYPE(x, y) = CST_OREMINE_7; - break; - case (9): - MP_TYPE(x, y) = CST_OREMINE_6; - break; - case (10): - MP_TYPE(x, y) = CST_OREMINE_5; - break; - case (11): - MP_TYPE(x, y) = CST_OREMINE_4; - break; - case (12): - MP_TYPE(x, y) = CST_OREMINE_5; - break; - case (13): - MP_TYPE(x, y) = CST_OREMINE_4; - break; - case (14): - MP_TYPE(x, y) = CST_OREMINE_3; - break; - case (15): - MP_TYPE(x, y) = CST_OREMINE_2; - break; - } } - if (MP_INFO(x, y).int_2 <= 0) { - int i, j; - for (j = 0; j < 4; j++) { - for (i = 0; i < 4; i++) { - do_bulldoze_area(CST_WATER, x + i, y + j); + // return the ore to ore_reserve if there is enough sustainable ore available + else if ((commodityCount[STUFF_ORE] - ORE_PER_RESERVE > ORE_LEVEL_TARGET * (MAX_ORE_AT_MINE )/100) + && (commodityCount[STUFF_JOBS] >= JOBS_DIG_ORE)) + { + for (yy = y; (yy < y + constructionGroup->size) && !animate; yy++) + { + for (xx = x; (xx < x + constructionGroup->size) && !animate; xx++) + { + if (world(xx,yy)->ore_reserve < (3 * ORE_RESERVE/2)) + { + world(xx,yy)->ore_reserve++; + world(xx,yy)->flags |= FLAG_ALTERED; + total_ore_reserve++; + commodityCount[STUFF_ORE] -= ORE_PER_RESERVE; + commodityCount[STUFF_JOBS] -= OREMINE_JOBS; + animate = true; + working_days++; + } } } - connect_rivers(); - refresh_main_screen(); } + + //Monthly update of activity + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + // Anim according to ore mine activity + if (animate && real_time > anim) + { + if (real_time > days_offset) + { days_offset = real_time + (16 * OREMINE_ANIMATION_SPEED) + (rand() % (16 * OREMINE_ANIMATION_SPEED));} + //faster animation for more active mines + anim = real_time + ((14 - busy/11) * OREMINE_ANIMATION_SPEED); + anim_count = (anim_count + days_offset) & 15; + if(anim_count < 8) + { frameIt->frame = anim_count;} + else if (anim_count < 12) + { frameIt->frame = 14 - anim_count;} + else + { frameIt->frame = 16 - anim_count;} + }//end if animate + + //Evacuate Mine if no more deposits + if ( total_ore_reserve == 0 ) + { flags |= FLAG_EVACUATE;} + + //Abandon the Oremine if it is really empty + if ((total_ore_reserve == 0) + &&(commodityCount[STUFF_JOBS] == 0) + &&(commodityCount[STUFF_ORE] == 0) ) + { ConstructionManager::submitRequest(new OreMineDeletionRequest(this));} } -void mps_oremine(int x, int y) +void Oremine::report() { int i = 0; - - mps_store_title(i++, _("Ore Mine")); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), busy); + mps_store_sddp(i++, N_("Deposits"), total_ore_reserve, (constructionGroup->size * constructionGroup->size * ORE_RESERVE)); i++; + list_commodities(&i); +} - mps_store_sfp(i++, _("Stock"), MP_INFO(x, y).int_1 * 100.0 / MAX_ORE_AT_MINE); - i++; +/** @file lincity/modules/oremine.cpp */ - mps_store_sfp(i++, _("Reserve"), MP_INFO(x, y).int_2 * 100.0 / (ORE_RESERVE * 16)); -} diff -Nru lincity-ng-2.0/src/lincity/modules/oremine.h lincity-ng-2.9~git20150314/src/lincity/modules/oremine.h --- lincity-ng-2.0/src/lincity/modules/oremine.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/oremine.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,90 @@ -/* ---------------------------------------------------------------------- * - * oremine.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_OREMINE_COLOUR (red(18)) +#define GROUP_OREMINE_COST 500 +#define GROUP_OREMINE_COST_MUL 10 +#define GROUP_OREMINE_BUL_COST 500000 +#define GROUP_OREMINE_TECH 0 +#define GROUP_OREMINE_FIREC 0 +#define GROUP_OREMINE_RANGE 0 +#define GROUP_OREMINE_SIZE 4 -#ifndef __oremine_h__ -#define __oremine_h__ +// Some ore related stuff has to be in all_buildings.h +#define ORE_PER_RESERVE 5000 +#define MAX_ORE_AT_MINE (20 * ORE_PER_RESERVE) +#define MIN_ORE_RESERVE_FOR_MINE (ORE_RESERVE) +#define JOBS_DIG_ORE 200 +#define OREMINE_JOBS (JOBS_DIG_ORE + JOBS_LOAD_ORE) +#define MAX_JOBS_AT_OREMINE (20 * OREMINE_JOBS) -void do_oremine(int x, int y); -void mps_oremine(int x, int y); +#define ORE_LEVEL_TARGET 80 //mine will only supply so much +#define OREMINE_ANIMATION_SPEED 200 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include <cstdlib> + +class OremineConstructionGroup: public ConstructionGroup { +public: + OremineConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_OREMINE; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_MINE; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = true; + + } + // overriding method that creates an Oremine + virtual Construction *createConstruction(int x, int y); +}; + +extern OremineConstructionGroup oremineConstructionGroup; + +class Oremine: public RegisteredConstruction<Oremine> { // Oremine inherits from its own RegisteredConstruction +public: + Oremine(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Oremine>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->animate = false; + this->working_days = 0; + this->busy = 0; + this->anim_count = 0; + this->days_offset = 0; + initialize_commodities(); + + int ore = 0; + for (int yy = y; (yy < y + constructionGroup->size) ; yy++) + { + for (int xx = x; (xx < x + constructionGroup->size); xx++) + { ore += world(xx,yy)->ore_reserve;} + } + if (ore < 1) + { ore = 1;} + this->total_ore_reserve = ore; + setMemberSaved(&this->total_ore_reserve, "total_ore_reserve"); + } + virtual ~Oremine() {} + virtual void update(); + virtual void report(); + + + int total_ore_reserve; + int anim; + bool animate; + int working_days, busy; + int anim_count; + int days_offset; +}; + +/** @file lincity/modules/oremine.h */ -#endif /* __oremine_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/organic_farm.cpp lincity-ng-2.9~git20150314/src/lincity/modules/organic_farm.cpp --- lincity-ng-2.0/src/lincity/modules/organic_farm.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/organic_farm.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,227 +5,116 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -//#include "../lcconfig.h" #include "organic_farm.h" -#include "lin-city.h" -#include <stdlib.h> -void do_organic_farm(int x, int y) -{ - /* // MP_INFO(x,y) - // int_1 unused - // int_2 unused - // int_3 is the food sold count so far this year. - // int_4 is the food made last year. - // int_5 is the random crop rotation key. - // int_6 is the random month stagger, so they don't all flash at once - // int_7 is the jobs stored at the farm - * - * MP_INFO(x+1,y) stores additional info - * int_1 reserved (=x) - * int_2 reserved (=y) - * int_3 max possible production (assuming 100% water and power) - * int_4 number of 1x1 tiles with underground water inside the farm - * int_5 current production - * - // MP_TECH is the tech level of the farm when built - // MP_ANIM FIXME, this is unused - */ - int i; - int has_power = false; - int used_jobs = 0; - int tech_bonus = (int)(((double)MP_TECH(x, y) * ORGANIC_FARM_FOOD_OUTPUT) / MAX_TECH_LEVEL); - MP_INFO(x + 1, y).int_3 = ORGANIC_FARM_FOOD_OUTPUT + tech_bonus; - - /* Animation */ - if (MP_INFO(x, y).int_5 == 0) { - /* this should be done when we create the area! */ - MP_INFO(x, y).int_5 = (rand() % 4) + 1; - MP_INFO(x, y).int_6 = rand() % 300; /* AL1 will be sooner or later redefined as %100. see below */ - } - - /* check jobs */ - if (MP_INFO(x, y).int_7 < FARM_JOBS_USED) { - if (get_jobs(x, y, FARM_JOBS_USED) != 0) - MP_INFO(x, y).int_7 += FARM_JOBS_USED; - /* adding if (get_jobs ... /2) would allow to have some jobs stored at farm, - * so would smooth the behavior and make farms more resistant to job penury. - * Currently keep previous behavior. - */ - else if (get_jobs(x, y, FARM_JOBS_USED / 4) != 0) - MP_INFO(x, y).int_7 += FARM_JOBS_USED / 4; - else if (get_jobs(x, y, 1) != 0) - MP_INFO(x, y).int_7 += 1; - } - - /* check power */ - MP_INFO(x, y).flags &= (0xffffffff - FLAG_POWERED); - if (MP_INFO(x, y).int_7 >= 1) { - /* There are jobs to do some production, so check for power */ - if (get_power(x, y, ORG_FARM_POWER_REC, 0) != 0) { - MP_INFO(x, y).flags |= FLAG_POWERED; - has_power = true; - } - } - - /* Produce some food */ - int prod = 0; - if (MP_INFO(x, y).int_7 >= FARM_JOBS_USED) { - used_jobs = FARM_JOBS_USED; - if (has_power) { - prod = ORGANIC_FARM_FOOD_OUTPUT + tech_bonus; - } else { - prod = ORGANIC_FARM_FOOD_OUTPUT / 4; - } - } else if (MP_INFO(x, y).int_7 >= FARM_JOBS_USED / 4) { - used_jobs = FARM_JOBS_USED / 4; - if (has_power) { - prod = ORGANIC_FARM_FOOD_OUTPUT + tech_bonus / 4; - } else { - prod = ORGANIC_FARM_FOOD_OUTPUT / (4 * 4); - } - } else if (MP_INFO(x, y).int_7 >= 1) { - /* got 1 job */ - used_jobs = 1; - if (has_power) { - prod = ORGANIC_FARM_FOOD_OUTPUT + tech_bonus / 8; - } else { - /* AL1 "small ouch": - * without power output with 1 job is bigger than output with 3 ! - * 3 = FARMS_JOBS_USED / 4 - * ORGANIC_FARM_FOOD_OUTPUT = 550 currently (ng_1.1) - */ - prod = 30 + ORGANIC_FARM_FOOD_OUTPUT / (4 * 8); - } - } else { - /* AL1 : the farm gives very small amount of food without job. - * ? Probably needed for start ? - * ? Useful to prevent starvation when no jobs ? - * The various buildings are "done" in random order, - * so it should be ok without this. - */ - put_food(x, y, 30); - /* note that this does not generate revenu int_3) */ - } - /* Check underground water, and reduce production accordingly */ - if (use_waterwell) { - // TODO No need to count each time. Should be done at build time, and stored - int w = 0; - int n = 0; - for (int i = 0; i < MP_SIZE(x, y); i++) { - for (int j = 0; j < MP_SIZE(x, y); j++) { - n++; - if (HAS_UGWATER(x + i, y + j)) - w++; - } - } - prod = (prod * w) / n; - MP_INFO(x + 1, y).int_4 = w; - } - MP_INFO(x + 1, y).int_5 = prod; - - if (prod != 0) { - if (put_food(x, y, prod) != 0) { - MP_INFO(x, y).int_3++; - MP_INFO(x, y).int_7 -= used_jobs; - } - } +Organic_farmConstructionGroup organic_farmConstructionGroup( + N_("Farm"), + FALSE, /* need credit? */ + GROUP_ORGANIC_FARM, + GROUP_ORGANIC_FARM_SIZE, + GROUP_ORGANIC_FARM_COLOUR, + GROUP_ORGANIC_FARM_COST_MUL, + GROUP_ORGANIC_FARM_BUL_COST, + GROUP_ORGANIC_FARM_FIREC, + GROUP_ORGANIC_FARM_COST, + GROUP_ORGANIC_FARM_TECH, + GROUP_ORGANIC_FARM_RANGE +); - if ((total_time & 0x7f) == 0) - if ((MP_INFO(x, y).flags & FLAG_POWERED) != 0) - get_waste(x, y, 0x80 * ORG_FARM_WASTE_GET); +Construction *Organic_farmConstructionGroup::createConstruction(int x, int y) { + return new Organic_farm(x, y, this); +} - if ((total_time % 1200) == 0) { - MP_INFO(x, y).int_4 = MP_INFO(x, y).int_3; - MP_INFO(x, y).int_3 = 0; - } - i = (total_time + MP_INFO(x, y).int_5 * 1200 + MP_INFO(x, y).int_6) % 4800; +void Organic_farm::update() +{ + int i = (total_time + crop_rotation_key * 1200 + month_stagger) % 4800; + int used_jobs = 0; + int used_power = 0; + int used_water = 0; + int foodprod = 0; - if (i % 300 == 0) { + max_foodprod = 0; + /* check jobs */ + used_jobs = (FARM_JOBS_USED<commodityCount[STUFF_JOBS]?FARM_JOBS_USED:commodityCount[STUFF_JOBS]); + flags &= ~(FLAG_POWERED); + /* check for power */ + if (commodityCount[STUFF_KWH] >= ORG_FARM_POWER_REC) + { + used_power = ORG_FARM_POWER_REC; + flags |= FLAG_POWERED; + if (commodityCount[STUFF_WASTE] >= 3 * ORG_FARM_WASTE_GET) + { commodityCount[STUFF_WASTE] -= ORG_FARM_WASTE_GET;} + used_water = commodityCount[STUFF_WATER] / WATER_FARM; + if (used_water > (16 - ugwCount)) + { used_water = (16 - ugwCount);} + + foodprod = (ORGANIC_FARM_FOOD_OUTPUT + tech_bonus) * (ugwCount+used_water) * used_jobs / (16 * FARM_JOBS_USED); + max_foodprod = (ORGANIC_FARM_FOOD_OUTPUT + tech_bonus) * (ugwCount+used_water) / (16); + } + else + { + foodprod = (ORGANIC_FARM_FOOD_OUTPUT) * ugwCount * used_jobs / (4 * 16 * FARM_JOBS_USED); + max_foodprod = (ORGANIC_FARM_FOOD_OUTPUT) * ugwCount / (4 * 16); + } + if (foodprod < 30) + { foodprod = 30;} + if (max_foodprod < 30) //that could only matter if Fertiliy = 0 + { max_foodprod = 30;} + + if (commodityCount[STUFF_FOOD] + foodprod > MAX_ORG_FARM_FOOD) + { //we would produce too much so use less power, jobs and water + used_jobs = used_jobs * (MAX_ORG_FARM_FOOD - commodityCount[STUFF_FOOD]) / foodprod; + used_power = used_power * (MAX_ORG_FARM_FOOD - commodityCount[STUFF_FOOD]) / foodprod; + if ((MAX_ORG_FARM_FOOD - commodityCount[STUFF_FOOD])*16 < ugwCount * foodprod) + { used_water = 0;} + foodprod = MAX_ORG_FARM_FOOD - commodityCount[STUFF_FOOD]; + } + /* Now apply changes */ + if (foodprod >= 30) + { + commodityCount[STUFF_JOBS] -= used_jobs; + commodityCount[STUFF_FOOD] += foodprod; + commodityCount[STUFF_KWH] -= used_power; + commodityCount[STUFF_WATER] -= (used_water * WATER_FARM); + food_this_month += 100 * foodprod / max_foodprod; + } + // monthly update + if ((total_time % 100) == 0) + { + food_last_month = food_this_month; + food_this_month = 0; + } + //Every three month + if (i % 300 == 0) + { i /= 300; - if ( MP_INFO(x, y).int_4 > MIN_FOOD_SOLD_FOR_ANIM) { - if (i % 4 == 0) { - MP_INFO(x, y).int_6 = rand() % 100; /* AL1: initially defined as %300 */ - } - switch (i) { - case (0): - MP_TYPE(x, y) = CST_FARM_O3; - break; - case (1): - MP_TYPE(x, y) = CST_FARM_O3; - break; - case (2): - MP_TYPE(x, y) = CST_FARM_O3; - break; - case (3): - MP_TYPE(x, y) = CST_FARM_O3; - break; - case (4): - MP_TYPE(x, y) = CST_FARM_O7; - break; - case (5): - MP_TYPE(x, y) = CST_FARM_O7; - break; - case (6): - MP_TYPE(x, y) = CST_FARM_O7; - break; - case (7): - MP_TYPE(x, y) = CST_FARM_O7; - break; - case (8): - MP_TYPE(x, y) = CST_FARM_O11; - break; - case (9): - MP_TYPE(x, y) = CST_FARM_O11; - break; - case (10): - MP_TYPE(x, y) = CST_FARM_O11; - break; - case (11): - MP_TYPE(x, y) = CST_FARM_O11; - break; - case (12): - MP_TYPE(x, y) = CST_FARM_O15; - break; - case (13): - MP_TYPE(x, y) = CST_FARM_O15; - break; - case (14): - MP_TYPE(x, y) = CST_FARM_O15; - break; - case (15): - MP_TYPE(x, y) = CST_FARM_O15; - break; - - } - } else { - MP_TYPE(x, y) = CST_FARM_O0; + if ( food_last_month > MIN_FOOD_SOLD_FOR_ANIM) + { + //Every year + if (i % 4 == 0) + { month_stagger = rand() % 100;} + frameIt->frame = 1+i/4; } + else + { frameIt->frame = 0;} } } -void mps_organic_farm(int x, int y) +void Organic_farm::report() { int i = 0; - mps_store_title(i++, _("Organic Farm")); + mps_store_sd(i++, constructionGroup->name, ID); + i++; + mps_store_sddp(i++, N_("Fertility"), ugwCount, 16); + mps_store_sfp(i++, N_("Tech"), tech * 100.0 / MAX_TECH_LEVEL); + mps_store_sfp(i++, N_("busy"), (float)food_last_month / 100.0); + mps_store_sd(i++, N_("Output"), max_foodprod); i++; + list_commodities(&i); +} - mps_store_ss(i++, _("Power"), (MP_INFO(x, y).flags & FLAG_POWERED) ? _("YES") : _("NO")); - mps_store_sfp(i++, _("Tech"), MP_TECH(x, y) * 100.0 / MAX_TECH_LEVEL); - mps_store_sfp(i++, _("Prod"), MP_INFO(x, y).int_4 * 100.0 / 1200.0); - -#ifdef DEBUG - if (use_waterwell) { - i++; - mps_store_title(i++, _("Debug info")); - mps_store_sd(i++, _("max with power&water"), MP_INFO(x + 1, y).int_3); - mps_store_sd(i++, _("N tiles with water"), MP_INFO(x + 1, y).int_4); - mps_store_sd(i++, _("Current production"), MP_INFO(x + 1, y).int_5); - } -#endif +/** @file lincity/modules/organic_farm.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/organic_farm.h lincity-ng-2.9~git20150314/src/lincity/modules/organic_farm.h --- lincity-ng-2.0/src/lincity/modules/organic_farm.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/organic_farm.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,13 +1,125 @@ -/* ---------------------------------------------------------------------- * - * organic_farm.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * ---------------------------------------------------------------------- */ +#define GROUP_ORGANIC_FARM_COLOUR (green(30)) +#define GROUP_ORGANIC_FARM_COST 1000 +#define GROUP_ORGANIC_FARM_COST_MUL 20 +#define GROUP_ORGANIC_FARM_BUL_COST 100 +#define GROUP_ORGANIC_FARM_TECH 0 +#define GROUP_ORGANIC_FARM_FIREC 20 +#define GROUP_ORGANIC_FARM_RANGE 0 +#define GROUP_ORGANIC_FARM_SIZE 4 -#ifndef __organic_farm_h__ -#define __organic_farm_h__ +#define ORGANIC_FARM_FOOD_OUTPUT 550 +#define ORG_FARM_POWER_REC 50 +#define ORG_FARM_WASTE_GET 6 +#define FARM_JOBS_USED 13 +#define WATER_FARM 50 +#define FARM_WATER_GET (16 * WATER_FARM) +#define MAX_WATER_AT_FARM (20*FARM_WATER_GET) -void do_organic_farm(int x, int y); -void mps_organic_farm(int x, int y); +#define MAX_ORG_FARM_FOOD (ORGANIC_FARM_FOOD_OUTPUT * 20) +#define MAX_ORG_FARM_POWER (ORG_FARM_POWER_REC * 20) +#define MAX_ORG_FARM_WASTE (ORG_FARM_WASTE_GET * 20) +#define MAX_FARM_JOBS (FARM_JOBS_USED * 20) + + + +/* gets waste only when powered */ + +#define MIN_FOOD_SOLD_FOR_ANIM 200 + + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include "../lcconfig.h" +#include "../lin-city.h" +#include <stdlib.h> + + +class Organic_farmConstructionGroup: public ConstructionGroup { +public: + Organic_farmConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_ORG_FARM_FOOD; + commodityRuleCount[Construction::STUFF_FOOD].take = false; + commodityRuleCount[Construction::STUFF_FOOD].give = true; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_ORG_FARM_POWER; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_FARM_JOBS; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_ORG_FARM_WASTE; + commodityRuleCount[Construction::STUFF_WASTE].take = true; + commodityRuleCount[Construction::STUFF_WASTE].give = false; + commodityRuleCount[Construction::STUFF_WATER].maxload = MAX_WATER_AT_FARM; + commodityRuleCount[Construction::STUFF_WATER].give = false; + commodityRuleCount[Construction::STUFF_WATER].take = true; + } + // overriding method that creates a organic_farm + virtual Construction *createConstruction(int x, int y); +}; + +extern Organic_farmConstructionGroup organic_farmConstructionGroup; + +class Organic_farm: public RegisteredConstruction<Organic_farm> { // Organic_farm inherits from its own RegisteredConstruction +public: + Organic_farm(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Organic_farm>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->tech_bonus = (tech_level * ORGANIC_FARM_FOOD_OUTPUT) / MAX_TECH_LEVEL; + setMemberSaved(&this->tech_bonus, "tech_bonus"); + this->crop_rotation_key = (rand() % 4) + 1; + this->month_stagger = rand() % 100; + this->food_this_month = 0; + this->food_last_month = 0; + //this->max_foodprod = 0; + initialize_commodities(); + // Check underground water, and reduce food production accordingly + int w = 0; + if (use_waterwell) + { + for (int i = 0; i < constructionGroup->size; i++) + { + for (int j = 0; j < constructionGroup->size; j++) + { + if (world(x + j, y + i)->flags & FLAG_HAS_UNDERGROUND_WATER) + w++; + }// end j + }//end i + this->ugwCount = w; + } + else //no waterwell + { + this->ugwCount = 16; + } + } + virtual ~Organic_farm() { } + virtual void update(); + virtual void report(); + + int ugwCount; + int max_foodprod; + int food_this_month; + int food_last_month; + int crop_rotation_key; + int month_stagger; + int tech; + int tech_bonus; +}; + + + +/** @file lincity/modules/organic_farm.h */ -#endif /* __organic_farm_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/parkland.cpp lincity-ng-2.9~git20150314/src/lincity/modules/parkland.cpp --- lincity-ng-2.0/src/lincity/modules/parkland.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/parkland.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,11 +5,56 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "parkland.h" +#include "lincity-ng/Sound.hpp" -void do_parkland(int x, int y) +// Parkland: +ParklandConstructionGroup parklandConstructionGroup( + N_("Park"), + TRUE, /* need credit? */ + GROUP_PARKLAND, + GROUP_PARKLAND_SIZE, + GROUP_PARKLAND_COLOUR, + GROUP_PARKLAND_COST_MUL, + GROUP_PARKLAND_BUL_COST, + GROUP_PARKLAND_FIREC, + GROUP_PARKLAND_COST, + GROUP_PARKLAND_TECH, + GROUP_PARKLAND_RANGE +); + +ParklandConstructionGroup parkpondConstructionGroup( + N_("Park (Pond)"), + TRUE, /* need credit? */ + GROUP_PARKPOND, + GROUP_PARKLAND_SIZE, + GROUP_PARKLAND_COLOUR, + GROUP_PARKLAND_COST_MUL, + GROUP_PARKLAND_BUL_COST, + GROUP_PARKLAND_FIREC, + GROUP_PARKLAND_COST, + GROUP_PARKLAND_TECH, + GROUP_PARKLAND_RANGE +); + +Construction *ParklandConstructionGroup::createConstruction(int x, int y) { + return new Parkland(x, y, this); +} + +void Parkland::update() +{ + if (world(x,y)->pollution > 10 && (total_time & 1) == 0) + world(x,y)->pollution --; +} + +void Parkland::report() { - if (MP_POL(x, y) > 10 && (total_time & 1) == 0) - MP_POL(x, y) -= 1; + int i = 0; + + mps_store_sd(i++, constructionGroup->name, ID); + i++; + mps_store_sd(i++, N_("Air Pollution"), world(x,y)->pollution); } + +/** @file lincity/modules/parkland.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/parkland.h lincity-ng-2.9~git20150314/src/lincity/modules/parkland.h --- lincity-ng-2.0/src/lincity/modules/parkland.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/parkland.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,13 +1,49 @@ -/* ---------------------------------------------------------------------- * - * parkland.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_PARKLAND_COLOUR (green(31)) +#define GROUP_PARKLAND_COST 1000 +#define GROUP_PARKLAND_COST_MUL 25 +#define GROUP_PARKLAND_BUL_COST 1000 +#define GROUP_PARKLAND_TECH 2 +#define GROUP_PARKLAND_FIREC 1 +#define GROUP_PARKLAND_RANGE 0 +#define GROUP_PARKLAND_SIZE 1 -#ifndef __parkland_h__ -#define __parkland_h__ +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" -void do_parkland(int x, int y); -#endif /* __parkland_h__ */ +class ParklandConstructionGroup: public ConstructionGroup { +public: + ParklandConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + + }; + // overriding method that creates a Park + virtual Construction *createConstruction(int x, int y); +}; + +extern ParklandConstructionGroup parklandConstructionGroup; +extern ParklandConstructionGroup parkpondConstructionGroup; + +class Parkland: public RegisteredConstruction<Parkland> { // park inherits from RegisteredConstruction +public: + Parkland(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Parkland>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->flags |= FLAG_NEVER_EVACUATE; + } + virtual void update(); + virtual void report(); +}; + +/** @file lincity/modules/parkland.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/port.cpp lincity-ng-2.9~git20150314/src/lincity/modules/port.cpp --- lincity-ng-2.0/src/lincity/modules/port.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/port.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -7,302 +7,116 @@ #include "modules.h" #include "port.h" +#include "../transport.h" -static int buy_food(int xt, int yt) +// Port: +PortConstructionGroup portConstructionGroup( + N_("Port"), + FALSE, /* need credit? */ + GROUP_PORT, + GROUP_PORT_SIZE, + GROUP_PORT_COLOUR, + GROUP_PORT_COST_MUL, + GROUP_PORT_BUL_COST, + GROUP_PORT_FIREC, + GROUP_PORT_COST, + GROUP_PORT_TECH, + GROUP_PORT_RANGE +); + +Construction *PortConstructionGroup::createConstruction(int x, int y) { + return new Port(x, y, this); +} + +int Port::buy_stuff(Commodities stuff) +//fills up a PORT_IMPORT_RATE fraction of the available capacity and returns the cost +//amount to buy must exceed PORT_TRIGGER_RATE { - int i = 0; - if (MP_GROUP(xt, yt) == GROUP_TRACK) { - if (MP_INFO(xt, yt).int_1 < MAX_FOOD_ON_TRACK) - i = MAX_FOOD_ON_TRACK - MP_INFO(xt, yt).int_1; - } else if (MP_GROUP(xt, yt) == GROUP_ROAD) { - if (MP_INFO(xt, yt).int_1 < MAX_FOOD_ON_ROAD) - i = MAX_FOOD_ON_ROAD - MP_INFO(xt, yt).int_1; - } else if (MP_GROUP(xt, yt) == GROUP_RAIL) { - if (MP_INFO(xt, yt).int_1 < MAX_FOOD_ON_RAIL) - i = MAX_FOOD_ON_RAIL - MP_INFO(xt, yt).int_1; - } - i = (i * PORT_IMPORT_RATE) / 1000; - MP_INFO(xt, yt).int_1 += i; - return (i * PORT_FOOD_RATE); -} - -static int buy_coal(int xt, int yt) -{ - int i = 0; - if (MP_GROUP(xt, yt) == GROUP_TRACK) { - if (MP_INFO(xt, yt).int_3 < MAX_COAL_ON_TRACK) - i = MAX_COAL_ON_TRACK - MP_INFO(xt, yt).int_3; - } else if (MP_GROUP(xt, yt) == GROUP_ROAD) { - if (MP_INFO(xt, yt).int_3 < MAX_COAL_ON_ROAD) - i = MAX_COAL_ON_ROAD - MP_INFO(xt, yt).int_3; - } else if (MP_GROUP(xt, yt) == GROUP_RAIL) { - if (MP_INFO(xt, yt).int_3 < MAX_COAL_ON_RAIL) - i = MAX_COAL_ON_RAIL - MP_INFO(xt, yt).int_3; - } - i = (i * PORT_IMPORT_RATE) / 1000; - MP_INFO(xt, yt).int_3 += i; - return (i * PORT_COAL_RATE); -} - -static int buy_ore(int xt, int yt) -{ - int i = 0; - if (MP_GROUP(xt, yt) == GROUP_TRACK) { - if (MP_INFO(xt, yt).int_5 < MAX_ORE_ON_TRACK) - i = MAX_ORE_ON_TRACK - MP_INFO(xt, yt).int_5; - } else if (MP_GROUP(xt, yt) == GROUP_ROAD) { - if (MP_INFO(xt, yt).int_5 < MAX_ORE_ON_ROAD) - i = MAX_ORE_ON_ROAD - MP_INFO(xt, yt).int_5; - } else if (MP_GROUP(xt, yt) == GROUP_RAIL) { - if (MP_INFO(xt, yt).int_5 < MAX_ORE_ON_RAIL) - i = MAX_ORE_ON_RAIL - MP_INFO(xt, yt).int_5; - } - i = (i * PORT_IMPORT_RATE) / 1000; - MP_INFO(xt, yt).int_5 += i; - return (i * PORT_ORE_RATE); -} - -static int buy_goods(int xt, int yt) -{ - int i = 0; - if (MP_GROUP(xt, yt) == GROUP_TRACK) { - if (MP_INFO(xt, yt).int_4 < MAX_GOODS_ON_TRACK) - i = MAX_GOODS_ON_TRACK - MP_INFO(xt, yt).int_4; - } else if (MP_GROUP(xt, yt) == GROUP_ROAD) { - if (MP_INFO(xt, yt).int_4 < MAX_GOODS_ON_ROAD) - i = MAX_GOODS_ON_ROAD - MP_INFO(xt, yt).int_4; - } else if (MP_GROUP(xt, yt) == GROUP_RAIL) { - if (MP_INFO(xt, yt).int_4 < MAX_GOODS_ON_RAIL) - i = MAX_GOODS_ON_RAIL - MP_INFO(xt, yt).int_4; - } + int i = portConstructionGroup.commodityRuleCount[stuff].maxload - commodityCount[stuff]; i = (i * PORT_IMPORT_RATE) / 1000; - MP_INFO(xt, yt).int_4 += i; - return (i * PORT_GOODS_RATE); -} - -static int buy_steel(int xt, int yt) -{ - int i = 0; - if (MP_GROUP(xt, yt) == GROUP_TRACK) { - if (MP_INFO(xt, yt).int_6 < MAX_STEEL_ON_TRACK) - i = MAX_STEEL_ON_TRACK - MP_INFO(xt, yt).int_6; - } else if (MP_GROUP(xt, yt) == GROUP_ROAD) { - if (MP_INFO(xt, yt).int_6 < MAX_STEEL_ON_ROAD) - i = MAX_STEEL_ON_ROAD - MP_INFO(xt, yt).int_6; - } else if (MP_GROUP(xt, yt) == GROUP_RAIL) { - if (MP_INFO(xt, yt).int_6 < MAX_STEEL_ON_RAIL) - i = MAX_STEEL_ON_RAIL - MP_INFO(xt, yt).int_6; - } - i = (i * PORT_IMPORT_RATE) / 1000; - MP_INFO(xt, yt).int_6 += i; - return (i * PORT_STEEL_RATE); -} - -static int sell_food(int xt, int yt) -{ - int i = 0; - i = (MP_INFO(xt, yt).int_1 * PORT_EXPORT_RATE) / 1000; - MP_INFO(xt, yt).int_1 -= i; - return (i * PORT_FOOD_RATE); -} - -static int sell_coal(int xt, int yt) -{ - int i = 0; - i = (MP_INFO(xt, yt).int_3 * PORT_EXPORT_RATE) / 1000; - MP_INFO(xt, yt).int_3 -= i; - return (i * PORT_COAL_RATE); -} - -static int sell_ore(int xt, int yt) -{ - int i = 0; - i = (MP_INFO(xt, yt).int_5 * PORT_EXPORT_RATE) / 1000; - MP_INFO(xt, yt).int_5 -= i; - return (i * PORT_ORE_RATE); -} - -static int sell_goods(int xt, int yt) -{ - int i = 0; - i = (MP_INFO(xt, yt).int_4 * PORT_EXPORT_RATE) / 1000; - MP_INFO(xt, yt).int_4 -= i; - return (i * PORT_GOODS_RATE); -} - -static int sell_steel(int xt, int yt) -{ - int i = 0; - i = (MP_INFO(xt, yt).int_6 * PORT_EXPORT_RATE) / 1000; - MP_INFO(xt, yt).int_6 -= i; - return (i * PORT_STEEL_RATE); -} - -/* Trade with a transport. - * Port is at x/y, transport at u/v. */ -static void trade_connection(const int x, const int y, const int u, const int v, int *ic_ptr, int *et_ptr) -{ - if (u >= 0 && v >= 0 && (MP_INFO(u, v).flags & FLAG_IS_TRANSPORT) != 0) { - //printf("Port %i/%i trading with transport %i/%i\n", x,y,u,v); - int i, flags; - int ic = 0; - int et = 0; - flags = MP_INFO(x, y).flags; - if ((flags & FLAG_MB_FOOD) != 0) { - i = buy_food(u, v); - ic += i; - MP_INFO(x + 1, y).int_3 += i; - } - if ((flags & FLAG_MS_FOOD) != 0) { - i = sell_food(u, v); - et += i; - MP_INFO(x + 2, y).int_3 += i; - } - if ((flags & FLAG_MB_COAL) != 0) { - i = buy_coal(u, v); - ic += i; - MP_INFO(x + 1, y).int_4 += i; - } - if ((flags & FLAG_MS_COAL) != 0) { - i = sell_coal(u, v); - et += i; - MP_INFO(x + 2, y).int_4 += i; - } - if ((flags & FLAG_MB_ORE) != 0) { - i = buy_ore(u, v); - ic += i; - MP_INFO(x + 1, y).int_5 += i; - } - if ((flags & FLAG_MS_ORE) != 0) { - i = sell_ore(u, v); - et += i; - MP_INFO(x + 2, y).int_5 += i; - } - if ((flags & FLAG_MB_GOODS) != 0) { - i = buy_goods(u, v); - ic += i; - MP_INFO(x + 1, y).int_6 += i; - } - if ((flags & FLAG_MS_GOODS) != 0) { - i = sell_goods(u, v); - et += i; - MP_INFO(x + 2, y).int_6 += i; - } - if ((flags & FLAG_MB_STEEL) != 0) { - i = buy_steel(u, v); - ic += i; - MP_INFO(x + 1, y).int_7 += i; - } - if ((flags & FLAG_MS_STEEL) != 0) { - i = sell_steel(u, v); - et += i; - MP_INFO(x + 2, y).int_7 += i; - } - *ic_ptr += ic; - *et_ptr += et; - } -} - -void do_port(int x, int y) -{ - /* - // int_1 is the money made so far this month - // int_2 is the money made last month - // int_3 holds the 'pence/pennies/bits' to add next time round. - // int_4 is the import costs so far this month - // int_5 is the import costs for last month - // Use int_3 to int_7 of (x+1,y) to hold the individual buy values - // (x,y+1) is last month's - // Use int_3 to int_7 of (x+2,y) to hold the individual sell values - // (x,y+2) is last month's - */ - int i, et = 0, ic = 0, *b1, *b2, *s1, *s2, a; - - /* left connection first */ - for (a = 0; a < 4; a++) //try anywhere on the west side. - if (x >= 0 && y >= 0 && (MP_INFO(x - 1, y + a).flags & FLAG_IS_TRANSPORT) != 0) { - trade_connection(x, y, x - 1, y + a, &ic, &et); - break; - } - /* upper gate next */ - bool deal = false; - for (a = 0; a < 3; a++) //try north - if (x >= 0 && y >= 0 && (MP_INFO(x + a, y - 1).flags & FLAG_IS_TRANSPORT) != 0) { - trade_connection(x, y, x + a, y - 1, &ic, &et); - deal = false; - break; - } - if (!deal) - for (a = 0; a < 3; a++) //try south - if (x >= 0 && y >= 0 && (MP_INFO(x + a, y + 4).flags & FLAG_IS_TRANSPORT) != 0) { - trade_connection(x, y, x + a, y + 4, &ic, &et); - break; - } - - MP_INFO(x, y).int_1 += et; - MP_INFO(x, y).int_4 += ic; - if (total_time % 100 == 0) { - MP_INFO(x, y).int_2 = MP_INFO(x, y).int_1; - MP_INFO(x, y).int_1 = 0; - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_4; - MP_INFO(x, y).int_4 = 0; - b1 = &(MP_INFO(x + 1, y).int_3); - s1 = &(MP_INFO(x + 2, y).int_3); - b2 = &(MP_INFO(x, y + 1).int_3); - s2 = &(MP_INFO(x, y + 2).int_3); - /* GCS FIX -- This obfuscation is unnecessary. */ - for (i = 0; i < 5; i++) { - *(b2++) = *b1; - *(s2++) = *s1; - *(b1++) = 0; - *(s1++) = 0; - } - } - if (et > 0) { - sust_port_flag = 0; - tech_level++; - } - if (ic > 0) { - sust_port_flag = 0; - tech_level++; - } - et += MP_INFO(x, y).int_3; /* int_3 holds the 'pence' */ - - export_tax += et / 100; - MP_INFO(x, y).int_3 = et % 100; - import_cost += ic; -} - -void mps_port(int x, int y) -{ - int i = 0; - char buy[12], sell[12]; - - mps_store_title(i++, _("Port")); + if (i < (portConstructionGroup.commodityRuleCount[stuff].maxload / PORT_TRIGGER_RATE)) + { return 0;} + commodityCount[stuff] += i; + return (i * portConstructionGroup.commodityRates[stuff]); +} + +int Port::sell_stuff(Commodities stuff) +//sells a PORT_IMPORT_RATE fraction of the current load and returns the revenue +//amount to sell must exceed PORT_TRIGGER_RATE +{ + int i = commodityCount[stuff]; + i = (i * PORT_EXPORT_RATE) / 1000; + if (i < (portConstructionGroup.commodityRuleCount[stuff].maxload / PORT_TRIGGER_RATE)) + { return 0;} + commodityCount[stuff] -= i; + return (i * portConstructionGroup.commodityRates[stuff]); +} + +void Port::trade_connection() +{ + //Checks all flags and issues buy_stuff sell_stuff accordingly + std::map<Commodities, CommodityRule>::iterator stuff_it; + for(stuff_it = commodityRuleCount.begin() ; stuff_it != commodityRuleCount.end() ; stuff_it++ ) + { + if (stuff_it->second.take == stuff_it->second.give) + { continue;} + if (stuff_it->second.take) + { daily_ic += buy_stuff(stuff_it->first);} + else if (stuff_it->second.give) + { daily_et += sell_stuff(stuff_it->first);} + } +} + +void Port::update() +{ + daily_ic = 0; + daily_et = 0; + + if (commodityCount[STUFF_JOBS] >= PORT_JOBS)//there is enough workforce + { + trade_connection(); + if (daily_ic || daily_et) + { + commodityCount[STUFF_JOBS] -= PORT_JOBS; + world(x,y)->pollution += PORT_POLLUTION; + sust_port_flag = 0; + tech_made++; + tech_level++; + working_days++; + if (daily_ic && daily_et) + { tech_level++;} + } + } + monthly_ic += daily_ic; + monthly_et += daily_et; + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + lastm_ic = monthly_ic; + lastm_et = monthly_et; + monthly_ic = 0; + monthly_et = 0; + } + + daily_et += pence; + export_tax += daily_et / 100; + pence = daily_et % 100; + import_cost += daily_ic; +} + +void Port::report() +{ + int i = 0; + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), busy); + mps_store_sd(i++, N_("Export"),lastm_et/100); + mps_store_sd(i++, N_("Import"),lastm_ic/100); + mps_store_sfp(i++, N_("Culture exchanged"), tech_made * 100.0 / MAX_TECH_LEVEL); i++; + list_commodities(&i); +} - num_to_ansi(buy, sizeof(buy), MP_INFO(x, y + 1).int_3 / 100); - num_to_ansi(sell, sizeof(sell), MP_INFO(x, y + 2).int_3 / 100); - mps_store_sss(i++, _("Food"), buy, sell); - - num_to_ansi(buy, sizeof(buy), MP_INFO(x, y + 1).int_4 / 100); - num_to_ansi(sell, sizeof(sell), MP_INFO(x, y + 2).int_4 / 100); - mps_store_sss(i++, _("Coal"), buy, sell); - - num_to_ansi(buy, sizeof(buy), MP_INFO(x, y + 1).int_5 / 100); - num_to_ansi(sell, sizeof(sell), MP_INFO(x, y + 2).int_5 / 100); - mps_store_sss(i++, _("Ore"), buy, sell); - - num_to_ansi(buy, sizeof(buy), MP_INFO(x, y + 1).int_6 / 100); - num_to_ansi(sell, sizeof(sell), MP_INFO(x, y + 2).int_6 / 100); - mps_store_sss(i++, _("Goods"), buy, sell); - - num_to_ansi(buy, sizeof(buy), MP_INFO(x, y + 1).int_7 / 100); - num_to_ansi(sell, sizeof(sell), MP_INFO(x, y + 2).int_7 / 100); - mps_store_sss(i++, _("Steel"), buy, sell); - - num_to_ansi(buy, sizeof(buy), MP_INFO(x, y).int_5 / 100); - num_to_ansi(sell, sizeof(sell), MP_INFO(x, y).int_2 / 100); - mps_store_sss(i++, _("Total"), buy, sell); +/** @file lincity/modules/port.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/port.h lincity-ng-2.9~git20150314/src/lincity/modules/port.h --- lincity-ng-2.0/src/lincity/modules/port.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/port.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,139 @@ -/* ---------------------------------------------------------------------- * - * port.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_PORT_COLOUR (blue(28)) +#define GROUP_PORT_COST 100000 +#define GROUP_PORT_COST_MUL 2 +#define GROUP_PORT_BUL_COST 1000 +#define GROUP_PORT_TECH 35 +#define GROUP_PORT_FIREC 50 +#define GROUP_PORT_RANGE 0 +#define GROUP_PORT_SIZE 4 -#ifndef __port_h__ -#define __port_h__ +#define PORT_FOOD_RATE 1 +#define PORT_JOBS_RATE 5 +#define PORT_COAL_RATE 50 +#define PORT_ORE_RATE 1 +#define PORT_GOODS_RATE 3 +#define PORT_STEEL_RATE 100 +#define PORT_POLLUTION 1 +//FIXME Guessing some values +#define PORT_JOBS 100 +#define PORT_FOOD 500 +#define PORT_COAL 100 +#define PORT_GOODS 100 +#define PORT_ORE 300 +#define PORT_STEEL 50 -void do_port(int x, int y); -void mps_port(int x, int y); +#define MAX_JOBS_ON_PORT (20 * PORT_JOBS) +#define MAX_FOOD_ON_PORT (20 * PORT_FOOD) +#define MAX_COAL_ON_PORT (20 * PORT_COAL) +#define MAX_GOODS_ON_PORT (20 * PORT_GOODS) +#define MAX_ORE_ON_PORT (20 * PORT_ORE) +#define MAX_STEEL_ON_PORT (20 * PORT_STEEL) + +/* + These next two control the stuff bought or sold as a % of what's on the + transport. 1000=100% 500=50% etc. Port will only work if % of stuff/available + capacity excced capacity/PORT_TRIGGER_RATE +*/ +#define PORT_EXPORT_RATE 500 +#define PORT_IMPORT_RATE 500 +#define PORT_TRIGGER_RATE 15 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include "../transport.h" + +class PortConstructionGroup: public ConstructionGroup { +public: + PortConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_ON_PORT; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_ON_PORT; + commodityRuleCount[Construction::STUFF_FOOD].take = true; + commodityRuleCount[Construction::STUFF_FOOD].give = true; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_ON_PORT; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = true; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_ON_PORT; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_ON_PORT; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = true; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_ON_PORT; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = true; + + commodityRates[Construction::STUFF_FOOD] = PORT_FOOD_RATE; + commodityRates[Construction::STUFF_COAL] = PORT_COAL_RATE; + commodityRates[Construction::STUFF_GOODS] = PORT_GOODS_RATE; + commodityRates[Construction::STUFF_ORE] = PORT_ORE_RATE; + commodityRates[Construction::STUFF_STEEL] = PORT_STEEL_RATE; + + }; + //map that holds the Rates for the commodities + std::map<Construction::Commodities, int> commodityRates; + // overriding method that creates a Port + virtual Construction *createConstruction(int x, int y); +}; + +extern PortConstructionGroup portConstructionGroup; + +class Port: public RegisteredConstruction<Port> { // park inherits from Construction +public: + Port(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Port>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->daily_ic = 0; this->daily_et = 0; + this->monthly_ic = 0; this->monthly_et = 0; + this->lastm_ic = 0; this->lastm_et = 0; + this->pence = 0; + this->working_days = 0; + this->busy = 0; + this->tech_made = 0; + setMemberSaved(&this->tech_made, "tech_made"); + initialize_commodities(); + //local copy of commodityRuleCount + commodityRuleCount = constructionGroup->commodityRuleCount; + //do not trade jobs + commodityRuleCount.erase (STUFF_JOBS); + commodityRuleCount[Construction::STUFF_FOOD].take = false; + commodityRuleCount[Construction::STUFF_FOOD].give = false; + commodityRuleCount[Construction::STUFF_COAL].take = false; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_GOODS].take = false; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_ORE].take = false; + commodityRuleCount[Construction::STUFF_ORE].give = false; + commodityRuleCount[Construction::STUFF_STEEL].take = false; + commodityRuleCount[Construction::STUFF_STEEL].give = false; + setCommodityRulesSaved(&commodityRuleCount); + } + virtual ~Port() { } + virtual void update(); + virtual void report(); + int buy_stuff(Commodities stuff_ID); + int sell_stuff(Commodities stuff_ID); + void trade_connection(); + std::map<Commodities, CommodityRule> commodityRuleCount; + int daily_ic, monthly_ic, lastm_ic; //import cost + int daily_et, monthly_et, lastm_et; //export tax + int pence; + int working_days, busy; + int tech_made; +}; + + +/** @file lincity/modules/port.h */ -#endif /* __port_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/pottery.cpp lincity-ng-2.9~git20150314/src/lincity/modules/pottery.cpp --- lincity-ng-2.0/src/lincity/modules/pottery.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/pottery.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,110 +5,78 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "pottery.h" -void do_pottery(int x, int y) +PotteryConstructionGroup potteryConstructionGroup( + N_("Pottery"), + FALSE, /* need credit? */ + GROUP_POTTERY, + GROUP_POTTERY_SIZE, + GROUP_POTTERY_COLOUR, + GROUP_POTTERY_COST_MUL, + GROUP_POTTERY_BUL_COST, + GROUP_POTTERY_FIREC, + GROUP_POTTERY_COST, + GROUP_POTTERY_TECH, + GROUP_POTTERY_RANGE +); + +Construction *PotteryConstructionGroup::createConstruction(int x, int y) { + return new Pottery(x, y, this); +} + +void Pottery::update() { - /* - // int_1 contains the goods at the pottery - // int_2 contains the ore at the pottery - // int_3 contains the coal at the pottery - // int_4 unused - // int_5 is the % made so far this month or the close time if negative - // int_6 is the % capacity last month - // int_7 contains the jobs stored at the pottery - // MP_ANIM is the animation trigger time since 1.91 - */ - if (MP_INFO(x, y).int_5 < 0) { - MP_INFO(x, y).int_5++; - return; + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; } - if (MP_INFO(x, y).int_1 < (MAX_GOODS_AT_POTTERY - POTTERY_MADE_GOODS)) { - if (MP_INFO(x, y).int_2 < (MAX_ORE_AT_POTTERY - POTTERY_GET_ORE)) - if (get_ore(x, y, POTTERY_GET_ORE) != 0) - MP_INFO(x, y).int_2 += POTTERY_GET_ORE; - if (MP_INFO(x, y).int_3 < (MAX_COAL_AT_POTTERY - POTTERY_GET_COAL)) - if (get_coal(x, y, POTTERY_GET_COAL) != 0) - MP_INFO(x, y).int_3 += POTTERY_GET_COAL; - if (MP_INFO(x, y).int_7 < (MAX_JOBS_AT_POTTERY - POTTERY_GET_JOBS)) - if (get_jobs(x, y, POTTERY_GET_JOBS) != 0) - MP_INFO(x, y).int_7 += POTTERY_GET_JOBS; - - if (MP_INFO(x, y).int_2 > POTTERY_ORE_MAKE_GOODS - && MP_INFO(x, y).int_3 > POTTERY_COAL_MAKE_GOODS && MP_INFO(x, y).int_7 > POTTERY_JOBS) { - MP_INFO(x, y).int_1 += POTTERY_MADE_GOODS; - MP_INFO(x, y).int_2 -= POTTERY_ORE_MAKE_GOODS; - MP_INFO(x, y).int_3 -= POTTERY_COAL_MAKE_GOODS; - MP_INFO(x, y).int_7 -= POTTERY_JOBS; - MP_INFO(x, y).int_5++; - } else { - MP_TYPE(x, y) = CST_POTTERY_1; - MP_INFO(x, y).int_6 = 0; - MP_INFO(x, y).int_5 = -POTTERY_CLOSE_TIME; - return; - } + + if (pauseCounter++ < 0) + { return;} + + if ((commodityCount[STUFF_GOODS] + POTTERY_MADE_GOODS <= MAX_GOODS_AT_POTTERY) + && (commodityCount[STUFF_ORE] >= POTTERY_ORE_MAKE_GOODS) + && (commodityCount[STUFF_COAL] >= POTTERY_COAL_MAKE_GOODS) + && (commodityCount[STUFF_JOBS] >= POTTERY_JOBS)) + { + commodityCount[STUFF_GOODS] += POTTERY_MADE_GOODS; + commodityCount[STUFF_ORE] -= POTTERY_ORE_MAKE_GOODS; + commodityCount[STUFF_COAL] -= POTTERY_COAL_MAKE_GOODS; + commodityCount[STUFF_JOBS] -= POTTERY_JOBS; + + animate = true; + if(!((working_days++)%10)) + { world(x,y)->pollution++;} } - if (MP_INFO(x, y).int_1 > 0) - if (put_goods(x, y, MP_INFO(x, y).int_1) != 0) - MP_INFO(x, y).int_1 = 0; - - if (total_time % 100 == 0) { - MP_INFO(x, y).int_6 = MP_INFO(x, y).int_5; - MP_INFO(x, y).int_5 = 0; + else + { + frameIt->frame = 0; + pauseCounter = -POTTERY_CLOSE_TIME; + return; } - if (real_time >= MP_ANIM(x, y) /* && block_anim==0 */ ) { - MP_ANIM(x, y) = real_time + POTTERY_ANIM_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_POTTERY_0): - MP_TYPE(x, y) = CST_POTTERY_1; - break; - case (CST_POTTERY_1): - MP_TYPE(x, y) = CST_POTTERY_2; - break; - case (CST_POTTERY_2): - MP_TYPE(x, y) = CST_POTTERY_3; - break; - case (CST_POTTERY_3): - MP_TYPE(x, y) = CST_POTTERY_4; - break; - case (CST_POTTERY_4): - MP_TYPE(x, y) = CST_POTTERY_5; - break; - case (CST_POTTERY_5): - MP_TYPE(x, y) = CST_POTTERY_6; - break; - case (CST_POTTERY_6): - MP_TYPE(x, y) = CST_POTTERY_7; - break; - case (CST_POTTERY_7): - MP_TYPE(x, y) = CST_POTTERY_8; - break; - case (CST_POTTERY_8): - MP_TYPE(x, y) = CST_POTTERY_9; - break; - case (CST_POTTERY_9): - MP_TYPE(x, y) = CST_POTTERY_10; - break; - case (CST_POTTERY_10): - MP_TYPE(x, y) = CST_POTTERY_1; - MP_POL(x, y)++; - break; + if (animate && real_time > anim) + { + anim = real_time + POTTERY_ANIM_SPEED; + if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { + frameIt->frame = 1; + animate = false; } } } -void mps_pottery(int x, int y) +void Pottery::report() { int i = 0; - mps_store_title(i++, _("Pottery")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_6 * 1.0); + mps_store_sfp(i++, N_("busy"), (float) busy); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_7 * 100.0 / MAX_JOBS_AT_POTTERY); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_1 * 100.0 / MAX_GOODS_AT_POTTERY); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_2 * 100.0 / MAX_ORE_AT_POTTERY); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_AT_POTTERY); + list_commodities(&i); } + +/** @file lincity/modules/pottery.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/pottery.h lincity-ng-2.9~git20150314/src/lincity/modules/pottery.h --- lincity-ng-2.0/src/lincity/modules/pottery.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/pottery.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,78 @@ -/* ---------------------------------------------------------------------- * - * pottery.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_POTTERY_COLOUR (red(12)) +#define GROUP_POTTERY_COST 1000 +#define GROUP_POTTERY_COST_MUL 25 +#define GROUP_POTTERY_BUL_COST 1000 +#define GROUP_POTTERY_TECH 0 +#define GROUP_POTTERY_FIREC 50 +#define GROUP_POTTERY_RANGE 0 +#define GROUP_POTTERY_SIZE 2 -#ifndef __pottery_h__ -#define __pottery_h__ +#define POTTERY_ORE_MAKE_GOODS 11 +#define POTTERY_COAL_MAKE_GOODS 2 +#define POTTERY_JOBS 35 +#define POTTERY_MADE_GOODS 35 +#define POTTERY_ANIM_SPEED 280 +#define POTTERY_CLOSE_TIME 25 +#define MAX_ORE_AT_POTTERY (POTTERY_ORE_MAKE_GOODS*20) +#define MAX_COAL_AT_POTTERY (POTTERY_COAL_MAKE_GOODS*20) +#define MAX_JOBS_AT_POTTERY (POTTERY_JOBS*20) +#define MAX_GOODS_AT_POTTERY (POTTERY_MADE_GOODS*20) -void do_pottery(int x, int y); -void mps_pottery(int x, int y); +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class PotteryConstructionGroup: public ConstructionGroup { +public: + PotteryConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_POTTERY; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_POTTERY; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_POTTERY; + commodityRuleCount[Construction::STUFF_GOODS].take = false; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_POTTERY; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = false; + } + // overriding method that creates a pottery + virtual Construction *createConstruction(int x, int y); +}; + +extern PotteryConstructionGroup potteryConstructionGroup; + +class Pottery: public RegisteredConstruction<Pottery> { // Pottery inherits from its own RegisteredConstruction +public: + Pottery(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Pottery>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; // or real_time? + this->pauseCounter = 0; + this->busy = 0; + this->working_days = 0; + this->animate = false; + initialize_commodities(); + } + virtual ~Pottery() { } + virtual void update(); + virtual void report(); + + int anim; + int pauseCounter; + int working_days, busy; + bool animate; +}; -#endif /* __pottery_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/power_line.cpp lincity-ng-2.9~git20150314/src/lincity/modules/power_line.cpp --- lincity-ng-2.0/src/lincity/modules/power_line.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/power_line.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -4,47 +4,66 @@ * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ - -#include "modules.h" -#include "../power.h" #include "power_line.h" +#include "stdlib.h" -/*** Power Lines ***/ -/* - int_5 is animation schedule - int_6 is the grid it is on - int_7 is a grid timestamp -*/ -void do_power_line(int x, int y) -{ - if (grid[MP_INFO(x, y).int_6]->powered == -1) - return; +//Power line +PowerlineConstructionGroup powerlineConstructionGroup( + N_("Power line"), + FALSE, /* need credit? */ + GROUP_POWER_LINE, + GROUP_POWER_LINE_SIZE, + GROUP_POWER_LINE_COLOUR, + GROUP_POWER_LINE_COST_MUL, + GROUP_POWER_LINE_BUL_COST, + GROUP_POWER_LINE_FIREC, + GROUP_POWER_LINE_COST, + GROUP_POWER_LINE_TECH, + GROUP_POWER_LINE_RANGE +); - switch (MP_INFO(x, y).int_5) { - case 0: - MP_INFO(x, y).int_5 = POWER_MODULUS; - break; - case 1: - if (!(MP_TYPE(x, y) <= 11 && MP_TYPE(x, y) >= 1)) - break; - MP_TYPE(x, y) += 11; - break; - case 2: - if (!(MP_TYPE(x, y) >= 11 && MP_TYPE(x, y) <= 22)) - break; - MP_TYPE(x, y) -= 11; - break; - } +Construction *PowerlineConstructionGroup::createConstruction(int x, int y) +{ + return new Powerline(x, y, this); +} - MP_INFO(x, y).int_5--; +void Powerline::update() +{ + if (commodityCount[STUFF_MWH] > 0) + { + commodityCount[STUFF_MWH]--;// loss on powerline + if (anim_counter > 0) + { + switch (anim_counter) + { + case POWER_MODULUS - 2: + if ( !(frameIt->frame >= 11) ) + break; + flashing = false; + frameIt->frame -= 11; + break; + case POWER_MODULUS: + if ( !(frameIt->frame <= 10) ) + break; + flashing = true; + frameIt->frame += 11; + break; + } //end switch anim_counter + --anim_counter; + } + } // endif MWH } -void mps_power_line(int x, int y) +void Powerline::report() { int i = 0; - mps_store_title(i++, _("Power Line")); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("usage"), trafficCount[STUFF_MWH] * 107.77 * TRANSPORT_RATE / TRANSPORT_QUANTA); i++; - - mps_store_sd(i++, _("Grid ID"), MP_INFO(x, y).int_6); + list_commodities(&i); } + + +/** @file lincity/modules/power_line.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/power_line.h lincity-ng-2.9~git20150314/src/lincity/modules/power_line.h --- lincity-ng-2.0/src/lincity/modules/power_line.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/power_line.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,52 @@ -/* ---------------------------------------------------------------------- * - * power_line.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include "../transport.h" -#ifndef __power_line_h__ -#define __power_line_h__ +class PowerlineConstructionGroup: public ConstructionGroup { +public: + PowerlineConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_ON_POWERLINE; + commodityRuleCount[Construction::STUFF_MWH].take = true; + commodityRuleCount[Construction::STUFF_MWH].give = true; + } + // overriding method that creates a power line + virtual Construction *createConstruction(int x, int y); +}; -void do_power_line(int x, int y); -void mps_power_line(int x, int y); +extern PowerlineConstructionGroup powerlineConstructionGroup; + +class Powerline: public RegisteredConstruction<Powerline> { // Powerlineinherits from its own RegisteredConstruction +public: + Powerline(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Powerline>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->flags |= (FLAG_TRANSPARENT | FLAG_NEVER_EVACUATE); + this->anim_counter = 0; + this->flashing = false; + initialize_commodities(); + this->trafficCount = this->commodityCount; + } + virtual ~Powerline() { } + virtual void update(); + virtual void report(); + void flow_power(); + std::map<Commodities, int> trafficCount; + int anim_counter; + bool flashing; +}; + + +/** @file lincity/modules/power_line.h */ -#endif /* __power_line_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/rail.cpp lincity-ng-2.9~git20150314/src/lincity/modules/rail.cpp --- lincity-ng-2.0/src/lincity/modules/rail.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/rail.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,58 +0,0 @@ -/* ---------------------------------------------------------------------- * - * rail.c - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#include "modules.h" -#include "../transport.h" -#include "rail.h" - -/* --------------------------------------------------------------------- - For track, road and rail: - - int_1 contains the amount of food - int_2 contains the amount of jobs - int_3 contains the amount of coal - int_4 contains the amount of goods - int_5 contains the amount of ore - int_6 contains the amount of steel - int_7 contains the amount of waste - --------------------------------------------------------------------- */ - -void do_rail(int x, int y) -{ - int *pol = &MP_POL(x, y); - Map_Point_Info *minfo = &MP_INFO(x, y); - - transport_cost += 3; - if (total_time % DAYS_PER_RAIL_POLLUTION == 0) - *pol += RAIL_POLLUTION; - if ((total_time & RAIL_GOODS_USED_MASK) == 0 && minfo->int_4 > 0) { - --minfo->int_4; - ++minfo->int_7; - } - if ((total_time & RAIL_STEEL_USED_MASK) == 0 && minfo->int_6 > 0) { - --minfo->int_6; - ++minfo->int_7; - } - general_transport(x, y, MAX_WASTE_ON_RAIL); -} - -void mps_rail(int x, int y) -{ - int i = 0; - - mps_store_title(i++, _(main_groups[MP_GROUP(x, y)].name)); - i++; - - mps_store_sfp(i++, _("Food"), MP_INFO(x, y).int_1 * 100.0 / MAX_FOOD_ON_RAIL); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_2 * 100.0 / MAX_JOBS_ON_RAIL); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_ON_RAIL); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_4 * 100.0 / MAX_GOODS_ON_RAIL); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_5 * 100.0 / MAX_ORE_ON_RAIL); - mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_6 * 100.0 / MAX_STEEL_ON_RAIL); - mps_store_sfp(i++, _("Waste"), MP_INFO(x, y).int_7 * 100.0 / MAX_WASTE_ON_RAIL); - -} diff -Nru lincity-ng-2.0/src/lincity/modules/rail.h lincity-ng-2.9~git20150314/src/lincity/modules/rail.h --- lincity-ng-2.0/src/lincity/modules/rail.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/rail.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ -/* ---------------------------------------------------------------------- * - * rail.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __rail_h__ -#define __rail_h__ - -void do_rail(int x, int y); -void mps_rail(int x, int y); - -#endif /* __rail_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/recycle.cpp lincity-ng-2.9~git20150314/src/lincity/modules/recycle.cpp --- lincity-ng-2.0/src/lincity/modules/recycle.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/recycle.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,144 +5,73 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" + #include "recycle.h" -void do_recycle(int x, int y) -{ - int i; +RecycleConstructionGroup recycleConstructionGroup( + N_("Recycling Centre"), + FALSE, /* need credit? */ + GROUP_RECYCLE, + GROUP_RECYCLE_SIZE, + GROUP_RECYCLE_COLOUR, + GROUP_RECYCLE_COST_MUL, + GROUP_RECYCLE_BUL_COST, + GROUP_RECYCLE_FIREC, + GROUP_RECYCLE_COST, + GROUP_RECYCLE_TECH, + GROUP_RECYCLE_RANGE +); - // int_1 is the ore made and waiting to go out - // int_2 is the used goods in store - // int_3 unused (should have been steel recycling) - // int_4 unused - // int_5 is the recycling done so far this month - // int_6 is the percent of max recycling last month - // int_7 is the waste in store - // - // MP_TECH is the tech level when built +Construction *RecycleConstructionGroup::createConstruction(int x, int y) { + return new Recycle(x, y, this); +} +void Recycle::update() +{ recycle_cost += RECYCLE_RUNNING_COST; - /* get waste from transport */ - if ((MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) != 0) { - i = MP_INFO(x - 1, y).int_7; - if (i > MAX_WASTE_AT_RECYCLE - MP_INFO(x, y).int_2) - i = MAX_WASTE_AT_RECYCLE - MP_INFO(x, y).int_2; - MP_INFO(x, y).int_2 += i; - MP_INFO(x - 1, y).int_7 -= i; - } - if ((MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) != 0) { - i = MP_INFO(x, y - 1).int_7; - if (i > MAX_WASTE_AT_RECYCLE - MP_INFO(x, y).int_2) - i = MAX_WASTE_AT_RECYCLE - MP_INFO(x, y).int_2; - MP_INFO(x, y).int_2 += i; - MP_INFO(x, y - 1).int_7 -= i; - } - - /* get some startup power if not powered yet */ - if ((MP_INFO(x, y).flags & FLAG_POWERED) == 0) - if (get_power(x, y, GOODS_RECYCLED / 2, 1) != 0) - MP_INFO(x, y).flags |= FLAG_POWERED; - - /* no steel recycling yet - recycle to ore. */ - if (MP_INFO(x, y).int_1 < MAX_ORE_AT_RECYCLE - && MP_INFO(x, y).int_2 > GOODS_RECYCLED && (MP_INFO(x, y).flags & FLAG_POWERED) != 0) - if (get_jobs(x, y, RECYCLE_GOODS_JOBS) != 0) { - if (get_power(x, y, GOODS_RECYCLED, 1) == 0) - MP_INFO(x, y).flags &= (0xffffffff - FLAG_POWERED); - else - MP_INFO(x, y).flags |= FLAG_POWERED; - - MP_INFO(x, y).int_2 -= GOODS_RECYCLED; - i = ( GOODS_RECYCLED * (10 + ( (50 * MP_TECH(x, y)) / MAX_TECH_LEVEL)) ) / 100; - if (i > (GOODS_RECYCLED * 8) / 10) - i = (GOODS_RECYCLED * 8) / 10; - MP_INFO(x, y).int_1 += i; - ore_made += i; - MP_INFO(x, y).int_5++; - } - - if (total_time % 100 == 0) { - MP_INFO(x, y).int_6 = MP_INFO(x, y).int_5; - MP_INFO(x, y).int_5 = 0; - } - /* now bung the ore out */ - /* put it on the railway */ - if ( MP_GROUP(x - 1, y) == GROUP_RAIL - && MP_INFO(x - 1, y).int_5 < MAX_ORE_ON_RAIL - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_RAIL - MP_INFO(x - 1, y).int_5)) { - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_RAIL - MP_INFO(x - 1, y).int_5); - MP_INFO(x - 1, y).int_5 = MAX_ORE_ON_RAIL; - } - } - if ( MP_GROUP(x, y - 1) == GROUP_RAIL - && MP_INFO(x, y - 1).int_5 < MAX_ORE_ON_RAIL - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_RAIL - MP_INFO(x, y - 1).int_5)) { - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_RAIL - MP_INFO(x, y - 1).int_5); - MP_INFO(x, y - 1).int_5 = MAX_ORE_ON_RAIL; - } - } - /* put it on the road */ - if ( MP_GROUP(x - 1, y) == GROUP_ROAD - && MP_INFO(x - 1, y).int_5 < MAX_ORE_ON_ROAD - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_ROAD - MP_INFO(x - 1, y).int_5)) { - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_ROAD - MP_INFO(x - 1, y).int_5); - MP_INFO(x - 1, y).int_5 = MAX_ORE_ON_ROAD; - } - } - if ( MP_GROUP(x, y - 1) == GROUP_ROAD - && MP_INFO(x, y - 1).int_5 < MAX_ORE_ON_ROAD - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_ROAD - MP_INFO(x, y - 1).int_5)) { - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_ROAD - MP_INFO(x, y - 1).int_5); - MP_INFO(x, y - 1).int_5 = MAX_ORE_ON_ROAD; - } - } - /* put it on the tracks */ - if ( MP_GROUP(x - 1, y) == GROUP_TRACK - && MP_INFO(x - 1, y).int_5 < MAX_ORE_ON_TRACK - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_TRACK - MP_INFO(x - 1, y).int_5)) { - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_TRACK - MP_INFO(x - 1, y).int_5); - MP_INFO(x - 1, y).int_5 = MAX_ORE_ON_TRACK; - } - } - if ( MP_GROUP(x, y - 1) == GROUP_TRACK - && MP_INFO(x, y - 1).int_5 < MAX_ORE_ON_TRACK - && MP_INFO(x, y).int_1 >= (MAX_ORE_ON_TRACK - MP_INFO(x, y - 1).int_5)) { - if (get_jobs(x, y, JOBS_LOAD_ORE) != 0) { - MP_INFO(x, y).int_1 -= (MAX_ORE_ON_TRACK - MP_INFO(x, y - 1).int_5); - MP_INFO(x, y - 1).int_5 = MAX_ORE_ON_TRACK; - } - } - /* if we've still got >90% ore and waste in stock, burn some waste cleanly. - */ - if (MP_INFO(x, y).int_1 > (MAX_ORE_AT_RECYCLE * 9 / 10) - && MP_INFO(x, y).int_2 > (MAX_WASTE_AT_RECYCLE * 9 / 10)) - MP_INFO(x, y).int_2 -= BURN_WASTE_AT_RECYCLE; + // always recycle waste and only make steel & ore if there are free capacities + if (commodityCount[STUFF_WASTE] >= WASTE_RECYCLED + && commodityCount[STUFF_KWH] >= KWH_RECYCLE_WASTE + && commodityCount[STUFF_JOBS] >= RECYCLE_JOBS) + { + commodityCount[STUFF_JOBS] -= RECYCLE_JOBS; + commodityCount[STUFF_KWH] -= KWH_RECYCLE_WASTE; + commodityCount[STUFF_WASTE] -= WASTE_RECYCLED; + working_days++; + // rather loose ore / steel than stop recycling the waste + commodityCount[STUFF_ORE] += make_ore; + commodityCount[STUFF_STEEL] += make_steel; + if(commodityCount[STUFF_ORE]>MAX_ORE_AT_RECYCLE) + { commodityCount[STUFF_ORE]=MAX_ORE_AT_RECYCLE;} + if(commodityCount[STUFF_STEEL]>MAX_STEEL_AT_RECYCLE) + { commodityCount[STUFF_STEEL]=MAX_STEEL_AT_RECYCLE;} + + } + // monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + // if we've still >90% waste in stock, burn some waste cleanly. + if (commodityCount[STUFF_WASTE] > (MAX_WASTE_AT_RECYCLE * 9 / 10)) + { commodityCount[STUFF_WASTE] -= BURN_WASTE_AT_RECYCLE;} } -void mps_recycle(int x, int y) +void Recycle::report() { int i = 0; - const char *p; - mps_store_title(i++, _("Recycling Center")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_6); - - p = ((MP_INFO(x, y).flags & FLAG_POWERED) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Power"), p); - - mps_store_sfp(i++, _("Tech"), MP_TECH(x, y) * 100.0 / MAX_TECH_LEVEL); + mps_store_sfp(i++, N_("Tech"), tech * 100.0f / MAX_TECH_LEVEL); + mps_store_sfp(i++, N_("Efficiency Ore"), (float) make_ore * 100 / WASTE_RECYCLED); + mps_store_sfp(i++, N_("Efficiency Steel"),(float) make_steel * 100 / WASTE_RECYCLED); + mps_store_sfp(i++, N_("busy"), busy); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_1 * 100.0 / MAX_ORE_AT_RECYCLE); - mps_store_sfp(i++, _("Waste"), MP_INFO(x, y).int_2 * 100.0 / MAX_WASTE_AT_RECYCLE); - + list_commodities(&i); } + +/** @file lincity/modules/recycle.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/recycle.h lincity-ng-2.9~git20150314/src/lincity/modules/recycle.h --- lincity-ng-2.0/src/lincity/modules/recycle.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/recycle.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,95 @@ -/* ---------------------------------------------------------------------- * - * recycle.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_RECYCLE_COLOUR (green(28)) +#define GROUP_RECYCLE_COST 100000 +#define GROUP_RECYCLE_COST_MUL 5 +#define GROUP_RECYCLE_BUL_COST 1000 +#define GROUP_RECYCLE_TECH 232 +#define GROUP_RECYCLE_FIREC 10 +#define GROUP_RECYCLE_RANGE 0 +#define GROUP_RECYCLE_SIZE 2 -#ifndef __recycle_h__ -#define __recycle_h__ +#define WASTE_RECYCLED 500 +#define RECYCLE_JOBS (WASTE_RECYCLED/50 + JOBS_LOAD_ORE + JOBS_LOAD_STEEL) +#define RECYCLE_RUNNING_COST 3 +#define KWH_RECYCLE_WASTE (WASTE_RECYCLED/2) -void do_recycle(int x, int y); -void mps_recycle(int x, int y); +#define MAX_JOBS_AT_RECYCLE (20 * RECYCLE_JOBS) +#define MAX_WASTE_AT_RECYCLE (20 * WASTE_RECYCLED) +#define MAX_ORE_AT_RECYCLE (16 * WASTE_RECYCLED) +#define MAX_KWH_AT_RECYCLE (20 * KWH_RECYCLE_WASTE) +#define MAX_STEEL_AT_RECYCLE (16 * WASTE_RECYCLED/50) + +#define BURN_WASTE_AT_RECYCLE (MAX_WASTE_AT_RECYCLE/200) + + + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class RecycleConstructionGroup: public ConstructionGroup { +public: + RecycleConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_RECYCLE; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_RECYCLE; + commodityRuleCount[Construction::STUFF_WASTE].take = true; + commodityRuleCount[Construction::STUFF_WASTE].give = false; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_RECYCLE; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_RECYCLE; + commodityRuleCount[Construction::STUFF_STEEL].take = false; + commodityRuleCount[Construction::STUFF_STEEL].give = true; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_RECYCLE; + commodityRuleCount[Construction::STUFF_ORE].take = false; + commodityRuleCount[Construction::STUFF_ORE].give = true; + } + // overriding method that creates a recyle + virtual Construction *createConstruction(int x, int y); +}; + +extern RecycleConstructionGroup recycleConstructionGroup; + +class Recycle: public RegisteredConstruction<Recycle> { // Recycle inherits from Construction +public: + Recycle(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Recycle>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->busy = 0; + this->working_days = 0; + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + initialize_commodities(); + int efficiency; + efficiency = ( WASTE_RECYCLED * (10 + ( (50 * tech) / MAX_TECH_LEVEL)) ) / 100; + if (efficiency > (WASTE_RECYCLED * 8) / 10) + { efficiency = (WASTE_RECYCLED * 8) / 10;} + this->make_ore = efficiency; + setMemberSaved(&this->make_ore, "make_ore"); + this->make_steel = efficiency / 50; + setMemberSaved(&this->make_steel, "make_steel"); + } + virtual ~Recycle() { } + virtual void update(); + virtual void report(); + + int tech; + int make_ore; + int make_steel; + int working_days, busy; +}; + +/** @file lincity/modules/recycle.h */ -#endif /* __recycle_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/residence.cpp lincity-ng-2.9~git20150314/src/lincity/modules/residence.cpp --- lincity-ng-2.0/src/lincity/modules/residence.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/residence.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -8,283 +8,352 @@ #include "modules.h" #include "residence.h" #include "waterwell.h" +#include "cricket.h" #include <stdlib.h> -void do_residence(int x, int y) +ResidenceConstructionGroup residenceLLConstructionGroup( + N_("Residence"), + FALSE, /* need credit? */ + GROUP_RESIDENCE_LL, + GROUP_RESIDENCE_SIZE, + GROUP_RESIDENCE_LL_COLOUR, + GROUP_RESIDENCE_LL_COST_MUL, + GROUP_RESIDENCE_LL_BUL_COST, + GROUP_RESIDENCE_LL_FIREC, + GROUP_RESIDENCE_LL_COST, + GROUP_RESIDENCE_LL_TECH, + GROUP_RESIDENCE_RANGE +); + +ResidenceConstructionGroup residenceMLConstructionGroup( + N_("Residence"), + FALSE, /* need credit? */ + GROUP_RESIDENCE_ML, + GROUP_RESIDENCE_SIZE, + GROUP_RESIDENCE_ML_COLOUR, + GROUP_RESIDENCE_ML_COST_MUL, + GROUP_RESIDENCE_ML_BUL_COST, + GROUP_RESIDENCE_ML_FIREC, + GROUP_RESIDENCE_ML_COST, + GROUP_RESIDENCE_ML_TECH, + GROUP_RESIDENCE_RANGE +); + +ResidenceConstructionGroup residenceHLConstructionGroup( + N_("Residence"), + FALSE, /* need credit? */ + GROUP_RESIDENCE_HL, + GROUP_RESIDENCE_SIZE, + GROUP_RESIDENCE_HL_COLOUR, + GROUP_RESIDENCE_HL_COST_MUL, + GROUP_RESIDENCE_HL_BUL_COST, + GROUP_RESIDENCE_HL_FIREC, + GROUP_RESIDENCE_HL_COST, + GROUP_RESIDENCE_HL_TECH, + GROUP_RESIDENCE_RANGE +); + +ResidenceConstructionGroup residenceLHConstructionGroup( + N_("Residence"), + FALSE, /* need credit? */ + GROUP_RESIDENCE_LH, + GROUP_RESIDENCE_SIZE, + GROUP_RESIDENCE_LH_COLOUR, + GROUP_RESIDENCE_LH_COST_MUL, + GROUP_RESIDENCE_LH_BUL_COST, + GROUP_RESIDENCE_LH_FIREC, + GROUP_RESIDENCE_LH_COST, + GROUP_RESIDENCE_LH_TECH, + GROUP_RESIDENCE_RANGE +); + +ResidenceConstructionGroup residenceMHConstructionGroup( + N_("Residence"), + FALSE, /* need credit? */ + GROUP_RESIDENCE_MH, + GROUP_RESIDENCE_SIZE, + GROUP_RESIDENCE_MH_COLOUR, + GROUP_RESIDENCE_MH_COST_MUL, + GROUP_RESIDENCE_MH_BUL_COST, + GROUP_RESIDENCE_MH_FIREC, + GROUP_RESIDENCE_MH_COST, + GROUP_RESIDENCE_MH_TECH, + GROUP_RESIDENCE_RANGE +); + +ResidenceConstructionGroup residenceHHConstructionGroup( + N_("Residence"), + FALSE, /* need credit? */ + GROUP_RESIDENCE_HH, + GROUP_RESIDENCE_SIZE, + GROUP_RESIDENCE_HH_COLOUR, + GROUP_RESIDENCE_HH_COST_MUL, + GROUP_RESIDENCE_HH_BUL_COST, + GROUP_RESIDENCE_HH_FIREC, + GROUP_RESIDENCE_HH_COST, + GROUP_RESIDENCE_HH_TECH, + GROUP_RESIDENCE_RANGE +); + + +Construction *ResidenceConstructionGroup::createConstruction(int x, int y) { + return new Residence(x, y, this); +} + +void Residence::update() { - /* - // int_1 is a job swingometer to choose +/- JOB_SWING% of normal - // int_2 is the date of the last starve - // int_3 unused - // int_4 is the birth rate modifier. - // int_5 is the death rate modifier. - // int_6 unused - // int_7 unused Could be FLAG_HAD_POWER which is specific to residences, and will free 1 flag. - // btw, FLAG_POWERED and FLAG_GOT_POWER means the same thing. => free 1 more flag. - // - */ - int p; /* population */ int bad = 35, good = 30; /* (un)desirability of living here */ int r, po, swing; - int hc = 0; /* have health cover ? */ int brm = 0, drm = 0; /* birth/death rate modifier */ - int cc = 0; - int birth_flag = 0; - - p = MP_INFO(x, y).population; - if ((MP_INFO(x, y).flags & FLAG_HEALTH_COVER) != 0) { - brm += RESIDENCE_BRM_HEALTH; + /* birts = 1/(BASE_BR + brm) deaths = 1/(BASE_DR - drm) + the different signs are intentional higher brm less a little less babys, higher drm much more deaths*/ + int cc = 0; /* extra jobs from sports activity*/ + int birth_flag = (FLAG_FED | FLAG_EMPLOYED);/* can we have babies*/ + bool extra_births = false; /* full houses are more fertile*/ + bool hc = false; /* have health cover ? */ + //int pol_death = 0; //sometimes pollution kills + + /*Determine Health,Fire,Cricket cover*/ + if ((hc = world(x,y)->flags & FLAG_HEALTH_COVER)) + { + brm = RESIDENCE_BRM_HEALTH; good += 15; - hc = 1; } - if ((MP_INFO(x, y).flags & FLAG_FIRE_COVER) == 0) - bad += 5; + if (world(x,y)->flags & FLAG_FIRE_COVER) + { good += 15;} else - good += 15; - if ((MP_INFO(x, y).flags & FLAG_CRICKET_COVER) != 0) { + { bad += 5;} + if (world(x,y)->flags & FLAG_CRICKET_COVER) + { good += 20; cc = CRICKET_JOB_SWING; } - /* normal deaths + pollution deaths */ - po = ((MP_POL(x, y) / 50) + 1); - if ((RESIDENCE_BASE_DR - MP_INFO(x, y).int_5 - po) > 1) - r = rand() % (RESIDENCE_BASE_DR - MP_INFO(x, y).int_5 - po); - else - r = 2; - if (p > 0 && (r < po)) { - if (r == 0 || hc == 0) - p--; - else if (hc != 0 && po > 10 && rand() % 4 == 0) { - p--; - unnat_deaths++; - total_pollution_deaths++; - pollution_deaths_history += 1.0; - bad += 100; - } - if (r > 0 && hc == 0) { - unnat_deaths++; - total_pollution_deaths++; - pollution_deaths_history += 1.0; - bad += 100; - } + + /* now get fed */ + if ( (commodityCount[STUFF_FOOD] >= local_population) + && (commodityCount[STUFF_WATER] >= local_population) + //&& (world(x,y)->flags & FLAG_WATERWELL_COVER) + && local_population) + { + commodityCount[STUFF_FOOD] -= local_population; + commodityCount[STUFF_WATER] -= local_population; + flags |= (FLAG_FED); //enable births + good += 10; } - /* normal births - must have food, water and jobs... and people */ - if (use_waterwell && (total_time >= deadline) ) - birth_flag = FLAG_FED + FLAG_WATERWELL_COVER + FLAG_EMPLOYED; else - birth_flag = FLAG_FED + FLAG_EMPLOYED; - - if (((MP_INFO(x, y).flags & birth_flag) == birth_flag) - && (rand() % (RESIDENCE_BASE_BR + MP_INFO(x, y).int_4) == 1) - && (p > 0)) { -#ifdef DEBUG_WATERWELL - fprintf(stderr, " birth ok, we are fed. use_waterwell= %i\n", use_waterwell); -#endif - p++; - total_births++; - good += 50; - } - /* are people starving or lacking water ? */ - if (((MP_INFO(x, y).flags & FLAG_FED) == 0) - | (use_waterwell & ((MP_INFO(x, y).flags & FLAG_WATERWELL_COVER) == 0)) - && p > 0) { - if (total_time > deadline) { -#ifdef DEBUG_WATERWELL - fprintf(stderr, " hey, we are dying: lack of food or water!, use_waterwell=%i\n", use_waterwell); -#endif - - if (rand() % DAYS_PER_STARVE == 1) { - p--; - unnat_deaths++; - total_starve_deaths++; + { + flags &= ~(FLAG_FED); //disable births + if (local_population) + { + if (rand() % DAYS_PER_STARVE == 1) + { + local_population--; //starving maybe deadly + ++ddeaths; + ++tunnat_deaths; + ++total_starve_deaths; starve_deaths_history += 1.0; } - starving_population += p; - bad += 250; - drm += 100; + starving_population += local_population; //only the survivors are starving + bad += 250; // This place really sucks + drm = 100; //starving is also unhealty } - MP_INFO(x, y).int_2 = total_time; /* for the starve screen */ } /* kick one out if overpopulated */ - if (MP_TYPE(x, y) == CST_RESIDENCE_LL) { - brm += RESIDENCE1_BRM; - drm += p * 8; - if (p > 50) { - p--; - people_pool++; - brm += 20; - } - } else if (MP_TYPE(x, y) == CST_RESIDENCE_ML) { - brm += RESIDENCE2_BRM; - drm += p * 3; - if (p > 100) { - p--; - people_pool++; - brm += 10; - } - } else if (MP_TYPE(x, y) == CST_RESIDENCE_HL) { - brm += RESIDENCE3_BRM; - drm += p; - good += 40; - if (p > 200) { - p--; - people_pool++; - brm += 10; - } - } else if (MP_TYPE(x, y) == CST_RESIDENCE_LH) { - brm += RESIDENCE4_BRM; - drm += p * 5; - if (p > 100) { - p--; - people_pool++; - brm += 20; - } - } else if (MP_TYPE(x, y) == CST_RESIDENCE_MH) { - brm += RESIDENCE5_BRM; - drm += p / 2; - if (p > 200) { - p--; - people_pool++; - brm += 10; - } - } else if (MP_TYPE(x, y) == CST_RESIDENCE_HH) { - good += 100; - brm += RESIDENCE6_BRM; - drm += p; - if (p > 400) { - p--; - people_pool++; - brm += 10; - } + if (local_population > max_population) + { + --local_population; + ++people_pool; + extra_births = true; } - /* XXX AL1: this is daily accumulator used stats.cpp, and maybe pop graph */ - population += p; - - /* now get power */ - if (get_power(x, y, POWER_RES_OVERHEAD + (POWER_USE_PER_PERSON * p), 0) != 0) { - MP_INFO(x, y).flags |= FLAG_POWERED; - MP_INFO(x, y).flags |= FLAG_HAD_POWER; + /* now get power for nothing */ + if (commodityCount[STUFF_KWH] >= POWER_RES_OVERHEAD + (POWER_USE_PER_PERSON * local_population)) + { + commodityCount[STUFF_KWH] -= POWER_RES_OVERHEAD + (POWER_USE_PER_PERSON * local_population); + flags |= FLAG_POWERED; + flags |= FLAG_HAD_POWER; good += 10; - } else { - MP_INFO(x, y).flags &= (0xffffffff - FLAG_POWERED); - bad += 15; - if ((MP_INFO(x, y).flags & FLAG_HAD_POWER) != 0) - bad += 50; } - /* now get fed */ - /* AL1: could be done earlier, before check for starvation */ - /* this will be taken into account at next turn */ - if ( get_food(x, y, p) != 0 ) { - if (p>0) - MP_INFO(x, y).flags |= FLAG_FED; - good += 10; - } else { - MP_INFO(x, y).flags &= (0xffffffff - FLAG_FED); - //MP_INFO(x,y).int_2 = total_time; + else + { + flags &= ~(FLAG_POWERED); + bad += 15; + if ((flags & FLAG_HAD_POWER)) + { bad += 50;} } /* now supply jobs and buy goods if employed */ - if (MP_INFO(x, y).int_1 > 0) - swing = JOB_SWING + (hc * HC_JOB_SWING) + cc; + if (job_swingometer > 0) + { swing = JOB_SWING + (hc?1:0 * HC_JOB_SWING) + cc;} else - swing = -(JOB_SWING + (hc * HC_JOB_SWING) + cc); + { swing = -(JOB_SWING + (hc?1:0 * HC_JOB_SWING) + cc);} - if (put_jobs(x, y, ((p * (WORKING_POP_PERCENT + swing)) / 100)) != 0) { - MP_INFO(x, y).flags |= FLAG_EMPLOYED; - MP_INFO(x, y).int_1++; - if (MP_INFO(x, y).int_1 > 10) - MP_INFO(x, y).int_1 = 10; + if (constructionGroup->commodityRuleCount[STUFF_JOBS].maxload - commodityCount[STUFF_JOBS] >= (local_population * (WORKING_POP_PERCENT + swing) / 100) ) + { + commodityCount[STUFF_JOBS] += (local_population * (WORKING_POP_PERCENT + swing) / 100); + flags |= FLAG_EMPLOYED; //enable births + if (job_swingometer < -300) + { job_swingometer = -300;} + if (++job_swingometer > 10) + { job_swingometer = 10;} good += 20; - if (get_goods(x, y, p / 4) != 0) { + if ((commodityCount[STUFF_GOODS] >= local_population/4) + && (constructionGroup->commodityRuleCount[STUFF_WASTE].maxload-commodityCount[STUFF_WASTE] >= local_population/12)) + { + commodityCount[STUFF_GOODS] -= local_population/4; + commodityCount[STUFF_WASTE] += local_population/12; good += 10; - if (get_power(x, y, p / 2, 0) != 0) { + if (commodityCount[STUFF_KWH] >= local_population/2) + { + commodityCount[STUFF_KWH] -= local_population/2; good += 5; brm += 10; /* buy more goods if got power for them */ - if (get_goods(x, y, p / 4) != 0) + if ((commodityCount[STUFF_GOODS] >= local_population/4) + && (constructionGroup->commodityRuleCount[STUFF_WASTE].maxload-commodityCount[STUFF_WASTE] >= local_population/12)) + { + commodityCount[STUFF_GOODS] -= local_population/4; + commodityCount[STUFF_WASTE] += local_population/12; good += 5; - } else - bad += 5; + } + } + else + { bad += 5;} } - } else if (MP_INFO(x, y).int_1 < 10) { - MP_INFO(x, y).flags &= (0xffffffff - FLAG_EMPLOYED); - MP_INFO(x, y).int_1 -= 11; - if (MP_INFO(x, y).int_1 < -300) - MP_INFO(x, y).int_1 = -300; - unemployed_population += p; - total_unemployed_days += p; - if (total_unemployed_days >= NUMOF_DAYS_IN_YEAR) { - total_unemployed_years++; - /* think we're ok doing this, max of about 120 added each time. */ - total_unemployed_days -= NUMOF_DAYS_IN_YEAR; - unemployed_history += 1.0; + } + else if (job_swingometer < 10) + { + flags &= ~(FLAG_EMPLOYED); //disable births + if ((job_swingometer -= 11) < -300) + { job_swingometer = -300;} + unemployed_population += local_population; + total_unemployed_days += local_population; + if (total_unemployed_days >= NUMOF_DAYS_IN_YEAR) + { + total_unemployed_years+= total_unemployed_days / NUMOF_DAYS_IN_YEAR; + total_unemployed_days -= total_unemployed_days % NUMOF_DAYS_IN_YEAR; + unemployed_history += (double)(total_unemployed_days / NUMOF_DAYS_IN_YEAR); } - unemployment_cost += p; /* hmmm */ + unemployment_cost += local_population; /* nobody went to work*/ bad += 70; - } else { - MP_INFO(x, y).int_1 -= 20; + } + else + { + job_swingometer -= 20; bad += 50; } - drm += p / 4; + + switch (constructionGroup->group) + { + case GROUP_RESIDENCE_LL: + drm += local_population * 7 * 50/24; //more people more deaths + brm += RESIDENCE_LL_BRM + extra_births?100:0; //slow down baby production + break; + case GROUP_RESIDENCE_ML: + drm += local_population * 3 * 5/3; //more people more deaths + brm += RESIDENCE_ML_BRM + extra_births?50:0; //slow down baby production + break; + case GROUP_RESIDENCE_HL: + drm += local_population * 1 * 6/3; //more people more deaths + brm += RESIDENCE_HL_BRM + extra_births?50:0; //slow down baby production + good += 40; + break; + case GROUP_RESIDENCE_LH: + drm += local_population * 3 * 7/3; //more people more deaths + brm += RESIDENCE_LH_BRM + extra_births?100:0; //slow down baby production + break; + case GROUP_RESIDENCE_MH: + drm += local_population / 2 * 4/3; //more people more deaths + brm += RESIDENCE_MH_BRM + extra_births?50:0; //slow down baby production + break; + case GROUP_RESIDENCE_HH: + drm += local_population * 4/3; //more people more deaths + brm += RESIDENCE_HH_BRM + extra_births?50:0; //slow down baby production + good += 100; + break; + } + drm += local_population / 4; + brm += local_population / 4; + if (drm > RESIDENCE_BASE_DR - 1) + { drm = RESIDENCE_BASE_DR - 1;} + /* normal deaths + pollution deaths */ + po = ((world(x,y)->pollution / 16) + 1); + pol_deaths = po>100?95:po-5>0?po-5:1; + deaths = (RESIDENCE_BASE_DR - drm - 3*po); + if (deaths < 1) deaths = 1; + if (hc) deaths *= 4; + r = rand() % deaths; + if (local_population > 0 ) //somebody might die + { + if (r == 0) //one guy had bad luck + { + --local_population; + ++ddeaths; + if(rand() % 100 < pol_deaths) // deadly pollution + { + tunnat_deaths++; + total_pollution_deaths++; + pollution_deaths_history += 1.0; + bad += 100; + } + } + } + else //no death in hundred years + { deaths = 120000;} + + /* normal births FED and EMPLOYED */ + births = RESIDENCE_BASE_BR + brm; + if (((flags & birth_flag) == birth_flag) + && (local_population > 0)) + { + if (rand() % births == 0) + { + ++local_population; + ++total_births; + ++dbirths; + good += 50; + } + } + else //no baby in hundred years + { births = 120000;} + /* people_pool stuff */ - bad += p / 2; - bad += MP_POL(x, y) / 20; - good += people_pool / 27; + //bad += local_population / 2; + bad += world(x,y)->pollution / 20; + good += people_pool / 27; //27 + desireability = good-bad; r = rand() % ((good + bad) * RESIDENCE_PPM); - if (r < bad) { - if (p > MIN_RES_POPULATION) { - p--; - people_pool++; - } - } else if (people_pool > 0 - && r > ((good + bad) * (RESIDENCE_PPM - 1) + bad)) { /* r > (rmax - good) */ - p++; - people_pool--; - } - MP_INFO(x, y).population = p; - MP_INFO(x, y).int_4 = brm; - MP_INFO(x, y).int_5 = drm; + if (r < bad) + { + if (local_population > MIN_RES_POPULATION) + { + --local_population; + ++people_pool; + } + } else if (people_pool > 0 + && r > ((good + bad) * (RESIDENCE_PPM - 1) + bad)) /* r > (rmax - good) */ + { + ++local_population; + --people_pool; + } + /* XXX AL1: this is daily accumulator used stats.cpp, and maybe pop graph */ + population += local_population; + housing += max_population; } -void mps_residence(int x, int y) +void Residence::report() { int i = 0; - const char *p; - - mps_store_title(i++, _("Residence")); + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sddp(i++, N_("Tenants"), local_population, max_population); + mps_store_sd(i++, N_("Desireability"), desireability); + mps_store_sf(i++, N_("Births p.a."), (float)1200/births); + mps_store_sf(i++, N_("Death p.a."), (float)1200/deaths); + mps_store_sfp(i++, N_("Unnat. mortality"), (float)pol_deaths); i++; + list_commodities(&i); +} - mps_store_sd(i++, _("People"), MP_INFO(x, y).population); - - if (use_waterwell) { - p = ((MP_INFO(x, y).flags & FLAG_WATERWELL_COVER) != 0) - ? _("YES") : _("NO"); - mps_store_ss(i++, _("Water"), p); - } - - p = ((MP_INFO(x, y).flags & FLAG_FED) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Fed"), p); - - p = ((MP_INFO(x, y).flags & FLAG_POWERED) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Power"), p); - - p = ((MP_INFO(x, y).flags & FLAG_EMPLOYED) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Employed"), p); - - p = (MP_INFO(x, y).int_1 >= 10) ? _("good") : _("poor"); - mps_store_ss(i++, _("Job"), p); - - p = ((MP_INFO(x, y).flags & FLAG_HEALTH_COVER) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Health Cvr"), p); - - p = ((MP_INFO(x, y).flags & FLAG_FIRE_COVER) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Fire"), p); - - p = ((MP_INFO(x, y).flags & FLAG_CRICKET_COVER) != 0) ? _("YES") : _("NO"); - mps_store_ss(i++, _("Sport"), p); - - mps_store_sd(i++, _("Pollution"), MP_POL(x, y)); +/** @file lincity/modules/residence.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/residence.h lincity-ng-2.9~git20150314/src/lincity/modules/residence.h --- lincity-ng-2.0/src/lincity/modules/residence.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/residence.h 2015-05-05 16:32:51.000000000 +0000 @@ -7,7 +7,216 @@ #ifndef __residence_h__ #define __residence_h__ -void do_residence(int x, int y); -void mps_residence(int x, int y); +#define POWER_USE_PER_PERSON 3 +#define POWER_RES_OVERHEAD 30 +#define WORKING_POP_PERCENT 45 +#define JOB_SWING 15 +#define HC_JOB_SWING 10 +#define DAYS_PER_STARVE 20 + +/* RESIDENCE?_BRM is the birth rate modifier */ +#define RESIDENCE_BASE_BR 100 +#define RESIDENCE_BASE_DR (68*12) +#define RESIDENCE_BRM_HEALTH 300 +#define RESIDENCE_LL_BRM (RESIDENCE_BASE_BR*12) +#define RESIDENCE_ML_BRM 0 +#define RESIDENCE_HL_BRM (RESIDENCE_BASE_BR+RESIDENCE_BASE_BR/4) +#define RESIDENCE_LH_BRM (RESIDENCE_BASE_BR*18) +#define RESIDENCE_MH_BRM (RESIDENCE_BASE_BR/2) +#define RESIDENCE_HH_BRM 0 + +/* RESIDENCE_PPM is the people_pool mobitily. Higher number=less mobile. */ +#define RESIDENCE_PPM 20 + +#define GROUP_RESIDENCE_LL_COLOUR (cyan(24)) +#define GROUP_RESIDENCE_LL_COST 1000 +#define GROUP_RESIDENCE_LL_COST_MUL 25 +#define GROUP_RESIDENCE_LL_BUL_COST 1000 +#define GROUP_RESIDENCE_LL_TECH 0 +#define GROUP_RESIDENCE_LL_FIREC 75 +#define GROUP_RESIDENCE_LL_MAX_POP 50 + +#define GROUP_RESIDENCE_ML_COLOUR (cyan(24)) +#define GROUP_RESIDENCE_ML_COST 2000 +#define GROUP_RESIDENCE_ML_COST_MUL 25 +#define GROUP_RESIDENCE_ML_BUL_COST 1000 +#define GROUP_RESIDENCE_ML_TECH 0 +#define GROUP_RESIDENCE_ML_FIREC 75 +#define GROUP_RESIDENCE_ML_MAX_POP 100 + +#define GROUP_RESIDENCE_HL_COLOUR (cyan(24)) +#define GROUP_RESIDENCE_HL_COST 4000 +#define GROUP_RESIDENCE_HL_COST_MUL 25 +#define GROUP_RESIDENCE_HL_BUL_COST 1000 +#define GROUP_RESIDENCE_HL_TECH 0 +#define GROUP_RESIDENCE_HL_FIREC 75 +#define GROUP_RESIDENCE_HL_MAX_POP 200 + +#define GROUP_RESIDENCE_LH_COLOUR (cyan(24)) +#define GROUP_RESIDENCE_LH_COST 800 +#define GROUP_RESIDENCE_LH_COST_MUL 25 +#define GROUP_RESIDENCE_LH_BUL_COST 1000 +#define GROUP_RESIDENCE_LH_TECH 300 +#define GROUP_RESIDENCE_LH_FIREC 75 +#define GROUP_RESIDENCE_LH_MAX_POP 100 + +#define GROUP_RESIDENCE_MH_COLOUR (cyan(24)) +#define GROUP_RESIDENCE_MH_COST 1600 +#define GROUP_RESIDENCE_MH_COST_MUL 25 +#define GROUP_RESIDENCE_MH_BUL_COST 1000 +#define GROUP_RESIDENCE_MH_TECH 300 +#define GROUP_RESIDENCE_MH_FIREC 75 +#define GROUP_RESIDENCE_MH_MAX_POP 200 + +#define GROUP_RESIDENCE_HH_COLOUR (cyan(24)) +#define GROUP_RESIDENCE_HH_COST 3200 +#define GROUP_RESIDENCE_HH_COST_MUL 25 +#define GROUP_RESIDENCE_HH_BUL_COST 1000 +#define GROUP_RESIDENCE_HH_TECH 300 +#define GROUP_RESIDENCE_HH_FIREC 75 +#define GROUP_RESIDENCE_HH_MAX_POP 400 + +#define GROUP_RESIDENCE_RANGE 0 +#define GROUP_RESIDENCE_SIZE 3 + #endif /* __residence_h__ */ + +#include "../lintypes.h" +#include "../lctypes.h" + +class ResidenceConstructionGroup: public ConstructionGroup { +public: + ResidenceConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + switch (group) + { + case GROUP_RESIDENCE_LL : + commodityRuleCount[Construction::STUFF_KWH].maxload = 20 * (POWER_RES_OVERHEAD + (GROUP_RESIDENCE_LL_MAX_POP * POWER_USE_PER_PERSON)); + commodityRuleCount[Construction::STUFF_WASTE].maxload = 6 * GROUP_RESIDENCE_LL_MAX_POP; + commodityRuleCount[Construction::STUFF_GOODS].maxload = 10 * GROUP_RESIDENCE_LL_MAX_POP; + commodityRuleCount[Construction::STUFF_JOBS].maxload = 20 * GROUP_RESIDENCE_LL_MAX_POP; + commodityRuleCount[Construction::STUFF_FOOD].maxload = 20 * GROUP_RESIDENCE_LL_MAX_POP; + commodityRuleCount[Construction::STUFF_WATER].maxload = 20 * GROUP_RESIDENCE_LL_MAX_POP; + break; + case GROUP_RESIDENCE_ML : + commodityRuleCount[Construction::STUFF_KWH].maxload = 20 * (POWER_RES_OVERHEAD + (GROUP_RESIDENCE_ML_MAX_POP * POWER_USE_PER_PERSON)); + commodityRuleCount[Construction::STUFF_WASTE].maxload = 6 * GROUP_RESIDENCE_ML_MAX_POP; + commodityRuleCount[Construction::STUFF_GOODS].maxload = 10 * GROUP_RESIDENCE_ML_MAX_POP; + commodityRuleCount[Construction::STUFF_JOBS].maxload = 20 * GROUP_RESIDENCE_ML_MAX_POP; + commodityRuleCount[Construction::STUFF_FOOD].maxload = 20 * GROUP_RESIDENCE_ML_MAX_POP; + commodityRuleCount[Construction::STUFF_WATER].maxload = 20 * GROUP_RESIDENCE_ML_MAX_POP; + break; + case GROUP_RESIDENCE_HL : + commodityRuleCount[Construction::STUFF_KWH].maxload = 20 * (POWER_RES_OVERHEAD + (GROUP_RESIDENCE_HL_MAX_POP * POWER_USE_PER_PERSON)); + commodityRuleCount[Construction::STUFF_WASTE].maxload = 6 * GROUP_RESIDENCE_HL_MAX_POP; + commodityRuleCount[Construction::STUFF_GOODS].maxload = 10 * GROUP_RESIDENCE_HL_MAX_POP; + commodityRuleCount[Construction::STUFF_JOBS].maxload = 20 * GROUP_RESIDENCE_HL_MAX_POP; + commodityRuleCount[Construction::STUFF_FOOD].maxload = 20 * GROUP_RESIDENCE_HL_MAX_POP; + commodityRuleCount[Construction::STUFF_WATER].maxload = 20 * GROUP_RESIDENCE_HL_MAX_POP; + break; + case GROUP_RESIDENCE_LH : + commodityRuleCount[Construction::STUFF_KWH].maxload = 20 * (POWER_RES_OVERHEAD + (GROUP_RESIDENCE_LH_MAX_POP * POWER_USE_PER_PERSON)); + commodityRuleCount[Construction::STUFF_WASTE].maxload = 6 * GROUP_RESIDENCE_LH_MAX_POP; + commodityRuleCount[Construction::STUFF_GOODS].maxload = 10 * GROUP_RESIDENCE_LH_MAX_POP; + commodityRuleCount[Construction::STUFF_JOBS].maxload = 20 * GROUP_RESIDENCE_LH_MAX_POP; + commodityRuleCount[Construction::STUFF_FOOD].maxload = 20 * GROUP_RESIDENCE_LH_MAX_POP; + commodityRuleCount[Construction::STUFF_WATER].maxload = 20 * GROUP_RESIDENCE_LH_MAX_POP; + break; + case GROUP_RESIDENCE_MH : + commodityRuleCount[Construction::STUFF_KWH].maxload = 20 * (POWER_RES_OVERHEAD + (GROUP_RESIDENCE_MH_MAX_POP * POWER_USE_PER_PERSON)); + commodityRuleCount[Construction::STUFF_WASTE].maxload = 6 * GROUP_RESIDENCE_MH_MAX_POP; + commodityRuleCount[Construction::STUFF_GOODS].maxload = 10 * GROUP_RESIDENCE_MH_MAX_POP; + commodityRuleCount[Construction::STUFF_JOBS].maxload = 20 * GROUP_RESIDENCE_MH_MAX_POP; + commodityRuleCount[Construction::STUFF_FOOD].maxload = 20 * GROUP_RESIDENCE_MH_MAX_POP; + commodityRuleCount[Construction::STUFF_WATER].maxload = 20 * GROUP_RESIDENCE_MH_MAX_POP; + break; + case GROUP_RESIDENCE_HH : + commodityRuleCount[Construction::STUFF_KWH].maxload = 20 * (POWER_RES_OVERHEAD + (GROUP_RESIDENCE_HH_MAX_POP * POWER_USE_PER_PERSON)); + commodityRuleCount[Construction::STUFF_WASTE].maxload = 6 * GROUP_RESIDENCE_HH_MAX_POP; + commodityRuleCount[Construction::STUFF_GOODS].maxload = 10 * GROUP_RESIDENCE_HH_MAX_POP; + commodityRuleCount[Construction::STUFF_JOBS].maxload = 20 * GROUP_RESIDENCE_HH_MAX_POP; + commodityRuleCount[Construction::STUFF_FOOD].maxload = 20 * GROUP_RESIDENCE_HH_MAX_POP; + commodityRuleCount[Construction::STUFF_WATER].maxload = 20 * GROUP_RESIDENCE_HH_MAX_POP; + break; + } + commodityRuleCount[Construction::STUFF_FOOD].take = true; + commodityRuleCount[Construction::STUFF_FOOD].give = false; + commodityRuleCount[Construction::STUFF_JOBS].take = false; + commodityRuleCount[Construction::STUFF_JOBS].give = true; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + commodityRuleCount[Construction::STUFF_WATER].take = true; + commodityRuleCount[Construction::STUFF_WATER].give = false; + } + // overriding method that creates a residence + virtual Construction *createConstruction(int x, int y); +}; + +extern ResidenceConstructionGroup residenceLLConstructionGroup, residenceMLConstructionGroup, residenceHLConstructionGroup; +extern ResidenceConstructionGroup residenceLHConstructionGroup, residenceMHConstructionGroup, residenceHHConstructionGroup; + +class Residence: public RegisteredConstruction<Residence> { // Residence inherits from its own RegisteredConstruction +public: + Residence(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Residence>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->local_population = 0; + setMemberSaved(&(this->local_population),"local_population"); + this->job_swingometer = 0; + this->desireability = 0; + this->births = 120000; + this->deaths = 120000; + this->pol_deaths = 0; + if (cstgrp == &residenceLLConstructionGroup) + { this->max_population = GROUP_RESIDENCE_LL_MAX_POP;} + else if (cstgrp == &residenceMLConstructionGroup) + { this->max_population = GROUP_RESIDENCE_ML_MAX_POP;} + else if (cstgrp == &residenceHLConstructionGroup) + { this->max_population = GROUP_RESIDENCE_HL_MAX_POP;} + else if (cstgrp == &residenceLHConstructionGroup) + { this->max_population = GROUP_RESIDENCE_LH_MAX_POP;} + else if (cstgrp == &residenceMHConstructionGroup) + { this->max_population = GROUP_RESIDENCE_MH_MAX_POP;} + else if (cstgrp == &residenceHHConstructionGroup) + { this->max_population = GROUP_RESIDENCE_HH_MAX_POP;} + else + { + this->max_population = 50; + std::cout << "unknown ConstructionGroup in new Residence at (" << x << "," << y << ")" << std::endl; + } + + initialize_commodities(); + } + virtual ~Residence() + { + //everyone survives demolition + people_pool += local_population; + } + virtual void update(); + virtual void report(); + + int local_population; + int max_population; + int job_swingometer; + int desireability; + int births, deaths, pol_deaths; +}; + + +/** @file lincity/modules/residence.h */ + diff -Nru lincity-ng-2.0/src/lincity/modules/road.cpp lincity-ng-2.9~git20150314/src/lincity/modules/road.cpp --- lincity-ng-2.0/src/lincity/modules/road.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/road.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,53 +0,0 @@ -/* ---------------------------------------------------------------------- * - * road.c - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#include "modules.h" -#include "../transport.h" -#include "road.h" - -/* --------------------------------------------------------------------- - For track, road and rail: - - int_1 contains the amount of food - int_2 contains the amount of jobs - int_3 contains the amount of coal - int_4 contains the amount of goods - int_5 contains the amount of ore - int_6 contains the amount of steel - int_7 contains the amount of waste - --------------------------------------------------------------------- */ - -void do_road(int x, int y) -{ - int *pol = &MP_POL(x, y); - Map_Point_Info *minfo = &MP_INFO(x, y); - ++transport_cost; - if (total_time % DAYS_PER_ROAD_POLLUTION == 0) - *pol += ROAD_POLLUTION; - if ((total_time & ROAD_GOODS_USED_MASK) == 0 && minfo->int_4 > 0) { - --minfo->int_4; - ++minfo->int_7; - } - general_transport(x, y, MAX_WASTE_ON_ROAD); -} - -void mps_road(int x, int y) -{ - int i = 0; - - mps_store_title(i++, _(main_groups[MP_GROUP(x, y)].name)); - i++; - - mps_store_sfp(i++, _("Food"), MP_INFO(x, y).int_1 * 100.0 / MAX_FOOD_ON_ROAD); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_2 * 100.0 / MAX_JOBS_ON_ROAD); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_ON_ROAD); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_4 * 100.0 / MAX_GOODS_ON_ROAD); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_5 * 100.0 / MAX_ORE_ON_ROAD); - mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_6 * 100.0 / MAX_STEEL_ON_ROAD); - mps_store_sfp(i++, _("Waste"), MP_INFO(x, y).int_7 * 100.0 / MAX_WASTE_ON_ROAD); - -} diff -Nru lincity-ng-2.0/src/lincity/modules/road.h lincity-ng-2.9~git20150314/src/lincity/modules/road.h --- lincity-ng-2.0/src/lincity/modules/road.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/road.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ -/* ---------------------------------------------------------------------- * - * road.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __road_h__ -#define __road_h__ - -void do_road(int x, int y); -void mps_road(int x, int y); - -#endif /* __road_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/rocket_pad.cpp lincity-ng-2.9~git20150314/src/lincity/modules/rocket_pad.cpp --- lincity-ng-2.0/src/lincity/modules/rocket_pad.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/rocket_pad.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -8,192 +8,220 @@ #include "modules.h" #include "gui_interface/screen_interface.h" #include "gui_interface/pbar_interface.h" -#include "fire.h" -//mouse.h" /* XXX: for fire_area! */ #include "rocket_pad.h" +#include "residence.h" //for removing people +#include "lincity-ng/Sound.hpp" +#include "lincity-ng/Dialog.hpp" + +RocketPadConstructionGroup rocketPadConstructionGroup( + N_("Rocket Pad"), + TRUE, /* need credit? */ + GROUP_ROCKET, + GROUP_ROCKET_SIZE, + GROUP_ROCKET_COLOUR, + GROUP_ROCKET_COST_MUL, + GROUP_ROCKET_BUL_COST, + GROUP_ROCKET_FIREC, + GROUP_ROCKET_COST, + GROUP_ROCKET_TECH, + GROUP_ROCKET_RANGE +); -#include <stdlib.h> +Construction *RocketPadConstructionGroup::createConstruction(int x, int y) { + return new RocketPad(x, y, this); +} extern void ok_dial_box(const char *, int, const char *); -void do_rocket_pad(int x, int y) +void RocketPad::update() { - /* - // You need ROCKET_PAD_JOBS, ROCKET_PAD_GOODS and ROCKET_PAD_STEEL - // to add 1 to % of ready to fire. - // int_1 is the stored jobs - // int_2 is the stored goods - // int_3 is the stored steel - // int_4 is the count which gets to ROCKET_PAD_LAUNCH to fire. - // int_5 unused - // MP_ANIM is the time of the next animation frame, when waiting for launch. since 1.91 - */ - if (MP_TYPE(x, y) == CST_ROCKET_FLOWN) - return; /* The rocket has been launched. */ - - /* get some jobs */ - if (MP_INFO(x, y).int_1 < ROCKET_PAD_JOBS_STORE) { - if (get_jobs(x, y, ROCKET_PAD_JOBS + 10) != 0) - MP_INFO(x, y).int_1 += ROCKET_PAD_JOBS; - } - /* get goods */ - if (MP_INFO(x, y).int_2 < ROCKET_PAD_GOODS_STORE) { - if (get_goods(x, y, ROCKET_PAD_GOODS + 10) != 0) - MP_INFO(x, y).int_2 += ROCKET_PAD_GOODS; - else if (get_goods(x, y, ROCKET_PAD_GOODS / 10) != 0) - MP_INFO(x, y).int_2 += ROCKET_PAD_GOODS / 5; - else if (get_goods(x, y, ROCKET_PAD_GOODS / 50) != 0) - MP_INFO(x, y).int_2 += ROCKET_PAD_GOODS / 20; - } - /* get steel */ - if (MP_INFO(x, y).int_3 < ROCKET_PAD_STEEL_STORE) { - if (get_steel(x, y, ROCKET_PAD_STEEL + 10) != 0) - MP_INFO(x, y).int_3 += ROCKET_PAD_STEEL + 10; - else if (get_steel(x, y, ROCKET_PAD_STEEL / 5) != 0) - MP_INFO(x, y).int_3 += ROCKET_PAD_STEEL / 5; - else if (get_steel(x, y, ROCKET_PAD_STEEL / 20) != 0) - MP_INFO(x, y).int_3 += ROCKET_PAD_STEEL / 20; - } -#ifdef DEBUG_ROCKETS - MP_INFO(x, y).int_4++; -#else - /* now build the rocket. Unlike uni's need a full store to make +1% */ - if (MP_TYPE(x, y) < CST_ROCKET_5 - && MP_INFO(x, y).int_1 >= ROCKET_PAD_JOBS_STORE - && MP_INFO(x, y).int_2 >= ROCKET_PAD_GOODS_STORE && MP_INFO(x, y).int_3 >= ROCKET_PAD_STEEL_STORE) { - MP_INFO(x, y).int_1 -= ROCKET_PAD_JOBS_STORE; - MP_INFO(x, y).int_2 -= ROCKET_PAD_GOODS_STORE; - MP_INFO(x, y).int_3 -= ROCKET_PAD_STEEL_STORE; - MP_INFO(x, y).int_4++; - goods_used += ROCKET_PAD_GOODS_STORE; - - } -#endif + // ok the party is over + if (frameIt->frame == 7) + { return;} rocket_pad_cost += ROCKET_PAD_RUNNING_COST; + // store as much as possible or needed + while( + (frameIt->frame < 4) + && (commodityCount[STUFF_JOBS] >= ROCKET_PAD_JOBS) + && (commodityCount[STUFF_GOODS] >= ROCKET_PAD_GOODS) + && (commodityCount[STUFF_STEEL] >= ROCKET_PAD_STEEL) + && (jobs_stored < ROCKET_PAD_JOBS_STORE) + && (goods_stored < ROCKET_PAD_GOODS_STORE) + && (steel_stored < ROCKET_PAD_STEEL_STORE) + && (completion < 100) + ) + { + commodityCount[STUFF_JOBS] -= ROCKET_PAD_JOBS; + jobs_stored += ROCKET_PAD_JOBS; + commodityCount[STUFF_GOODS] -= ROCKET_PAD_GOODS; + goods_stored += ROCKET_PAD_GOODS; + commodityCount[STUFF_STEEL]-= ROCKET_PAD_STEEL; + steel_stored += ROCKET_PAD_STEEL; + commodityCount[STUFF_WASTE] += ROCKET_PAD_GOODS/3; + step += 2; + working_days++; + } + + // see if we can build another % of Rocket + if( (completion < 100) + && (jobs_stored >= ROCKET_PAD_JOBS_STORE) + && (goods_stored >= ROCKET_PAD_GOODS_STORE) + && (steel_stored >= ROCKET_PAD_STEEL_STORE) + ) + { + jobs_stored -= ROCKET_PAD_JOBS_STORE; + goods_stored -= ROCKET_PAD_GOODS_STORE; + steel_stored -= ROCKET_PAD_STEEL_STORE; + completion++; + step = 0; + } + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + /* animate and return if already said no to launch */ - if (MP_TYPE(x, y) >= CST_ROCKET_5 && MP_INFO(x, y).int_4 >= (100 * ROCKET_PAD_LAUNCH) / 100) { - if (real_time >= MP_ANIM(x, y)) { - MP_ANIM(x, y) = real_time + ROCKET_ANIMATION_SPEED; - switch (MP_TYPE(x, y)) { - case (CST_ROCKET_5): - MP_TYPE(x, y) = CST_ROCKET_6; - break; - case (CST_ROCKET_6): - MP_TYPE(x, y) = CST_ROCKET_7; - break; - case (CST_ROCKET_7): - MP_TYPE(x, y) = CST_ROCKET_5; - break; - } + if (frameIt->frame >= 4 && completion >= (100 * ROCKET_PAD_LAUNCH) / 100) + { + if (real_time >= anim) + { + anim = real_time + ROCKET_ANIMATION_SPEED; + if(++(frameIt->frame) >= (int)frameIt->resourceGroup->graphicsInfoVector.size()) + { frameIt->frame = 4;} } return; } - /* now choose a graphic */ - if (MP_INFO(x, y).int_4 < (25 * ROCKET_PAD_LAUNCH) / 100) - MP_TYPE(x, y) = CST_ROCKET_1; - else if (MP_INFO(x, y).int_4 < (60 * ROCKET_PAD_LAUNCH) / 100) - MP_TYPE(x, y) = CST_ROCKET_2; - else if (MP_INFO(x, y).int_4 < (90 * ROCKET_PAD_LAUNCH) / 100) - MP_TYPE(x, y) = CST_ROCKET_3; - else if (MP_INFO(x, y).int_4 < (100 * ROCKET_PAD_LAUNCH) / 100) - MP_TYPE(x, y) = CST_ROCKET_4; - else if (MP_INFO(x, y).int_4 >= (100 * ROCKET_PAD_LAUNCH) / 100) { - MP_TYPE(x, y) = CST_ROCKET_5; - update_main_screen(0); - if (ask_launch_rocket_now(x, y)) { - /* ? FIXME ? AL1: in NG 1.1 it seems we are never here ? - * ? ask_launch_rocket_now manages everything and call launch_rocket ? - */ - launch_rocket(x, y); - } - } -} -void remove_people(int num) -{ - int x, y; - /* reset housed population so that we can display it correctly */ - housed_population = 1; - while (housed_population && (num > 0)) { - housed_population = 0; - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) - if (MP_GROUP_IS_RESIDENCE(x, y) && MP_INFO(x, y).population > 0) { - MP_INFO(x, y).population--; - housed_population += MP_INFO(x, y).population; - num--; - total_evacuated++; - } - } - while (num > 0 && people_pool > 0) { - num--; - total_evacuated++; - people_pool--; - } - - refresh_population_text(); - - /* Note that the previous test was inaccurate. There could be - exactly 1000 people left. */ - if (!housed_population && !people_pool) { - ok_dial_box("launch-gone.mes", GOOD, 0L); + //Choose a Graphic and invoke Lauch Dialogue depening on completion + if (completion < (25 * ROCKET_PAD_LAUNCH) / 100) + { frameIt->frame = 0;} + else if (completion < (60 * ROCKET_PAD_LAUNCH) / 100) + { frameIt->frame = 1;} + else if (completion < (90 * ROCKET_PAD_LAUNCH) / 100) + { frameIt->frame = 2;} + else if (completion < (100 * ROCKET_PAD_LAUNCH) / 100) + { frameIt->frame = 3;} + else if (completion >= (100 * ROCKET_PAD_LAUNCH) / 100) + { + frameIt->frame = 4; + //OK Button will launch rocket remotely + if(!(flags & FLAG_ROCKET_READY)) + { new Dialog( ASK_LAUNCH_ROCKET, x, y );} + flags |= FLAG_ROCKET_READY; } } -void launch_rocket(int x, int y) +void RocketPad::launch_rocket() { int i, r, xx, yy, xxx, yyy; rockets_launched++; - MP_TYPE(x, y) = CST_ROCKET_FLOWN; - update_main_screen(0); + frameIt->frame = 7; + busy = 0; /* The first five failures gives 49.419 % chances of 5 success * TODO: some stress could be added by 3,2,1,0 and animation of rocket with sound... */ r = rand() % MAX_TECH_LEVEL; - if (r > tech_level || rand() % 100 > (rockets_launched * 15 + 25)) { + if (r > tech_level || rand() % 100 > (rockets_launched * 15 + 25)) + { /* the launch failed */ - display_rocket_result_dialog(ROCKET_LAUNCH_BAD); + //display_rocket_result_dialog(ROCKET_LAUNCH_BAD); + getSound()->playSound( "RocketExplosion" ); + ok_dial_box ("launch-fail.mes", BAD, 0L); rockets_launched_success = 0; xx = ((rand() % 40) - 20) + x; yy = ((rand() % 40) - 20) + y; - for (i = 0; i < 20; i++) { + for (i = 0; i < 20; i++) + { xxx = ((rand() % 20) - 10) + xx; yyy = ((rand() % 20) - 10) + yy; - if (xxx > 0 && xxx < (WORLD_SIDE_LEN - 4) - && yyy > 0 && yyy < (WORLD_SIDE_LEN - 4)) { + if (xxx > 0 && xxx < (world.len() - 1) + && yyy > 0 && yyy < (world.len() - 1)) + { /* don't crash on it's own area */ - if (xxx >= x && xxx < (x + 4) && yyy >= y && yyy < (y + 4)) - continue; + if (xxx >= x && xxx < (x + constructionGroup->size) && yyy >= y && yyy < (y + constructionGroup->size)) + { continue;} fire_area(xxx, yyy); /* make a sound perhaps */ } } - } else { + } + else + { + getSound()->playSound( "RocketTakeoff" ); rockets_launched_success++; /* TODO: Maybe should generate some pollution ? */ - if (rockets_launched_success > 5) { + if (rockets_launched_success > 5) + { remove_people(1000); if (people_pool || housed_population) - display_rocket_result_dialog(ROCKET_LAUNCH_EVAC); - } else { - display_rocket_result_dialog(ROCKET_LAUNCH_GOOD); + { + //display_rocket_result_dialog(ROCKET_LAUNCH_EVAC); + ok_dial_box ("launch-evac.mes", GOOD, 0L); + } + } + else + { + //display_rocket_result_dialog(ROCKET_LAUNCH_GOOD); + ok_dial_box ("launch-good.mes", GOOD, 0L); } } } -void mps_rocket(int x, int y) +void RocketPad::remove_people(int num) { - int i = 0; + { + int ppl = (num < people_pool)?num:people_pool; + num -= ppl; + people_pool -= ppl; + total_evacuated += ppl; + } + /* reset housed population so that we can display it correctly */ + housed_population = 1; + while (housed_population && (num > 0)) + { + housed_population = 0; + for (int i = 0; i < constructionCount.size(); i++) + { + if (constructionCount[i]) + { + unsigned short grp = constructionCount[i]->constructionGroup->group; + if( (grp == GROUP_RESIDENCE_LL) + || (grp == GROUP_RESIDENCE_ML) + || (grp == GROUP_RESIDENCE_HL) + || (grp == GROUP_RESIDENCE_LH) + || (grp == GROUP_RESIDENCE_MH) + || (grp == GROUP_RESIDENCE_HH) ) + { + Residence* residence = static_cast <Residence *> (constructionCount[i]); + if (residence->local_population) + { + residence->local_population--; + housed_population += residence->local_population; + num--; + total_evacuated++; + } + } + } + } + } + update_pbar (PPOP, housed_population + people_pool, 0); + if (!housed_population && !people_pool) + { ok_dial_box("launch-gone.mes", GOOD, 0L);} +} - mps_store_title(i++, _("Rocket Pad")); +void RocketPad::report() +{ + int i = 0; + mps_store_sd(i++,constructionGroup->getName(), ID); + mps_store_sfp(i++, N_("busy"), (busy)); + mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); + mps_store_sfp(i++, N_("Overall Progress"), completion); + mps_store_sfp(i++, N_("Next Step"), step); i++; + list_commodities(&i); +} - mps_store_title(i++, _("Completion")); - mps_store_fp(i++, MP_INFO(x, y).int_4 * 100.0 / ROCKET_PAD_LAUNCH); - i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / ROCKET_PAD_JOBS_STORE); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / ROCKET_PAD_GOODS_STORE); - mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_3 * 100.0 / ROCKET_PAD_STEEL_STORE); +/** @file lincity/modules/rocket_pad.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/rocket_pad.h lincity-ng-2.9~git20150314/src/lincity/modules/rocket_pad.h --- lincity-ng-2.0/src/lincity/modules/rocket_pad.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/rocket_pad.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,15 +1,101 @@ -/* ---------------------------------------------------------------------- * - * rocket_pad.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __rocket_pad_h__ -#define __rocket_pad_h__ - -void do_rocket_pad(int x, int y); -void launch_rocket(int x, int y); -void mps_rocket(int x, int y); +#define GROUP_ROCKET_COLOUR (magenta(20)) +#define GROUP_ROCKET_COST 700000 +#define GROUP_ROCKET_COST_MUL 2 +#define GROUP_ROCKET_BUL_COST 1 +#define GROUP_ROCKET_TECH 750 +#define GROUP_ROCKET_FIREC 0 +#define GROUP_ROCKET_RANGE 0 +#define GROUP_ROCKET_SIZE 4 + +#define ROCKET_PAD_JOBS 200 +#define ROCKET_PAD_JOBS_STORE (ROCKET_PAD_JOBS * 50) +#define MAX_JOBS_AT_ROCKET_PAD (ROCKET_PAD_JOBS * 20) +#define ROCKET_PAD_GOODS 10000 +#define ROCKET_PAD_GOODS_STORE (ROCKET_PAD_GOODS * 50) +#define MAX_GOODS_AT_ROCKET_PAD (ROCKET_PAD_GOODS * 20) +#define MAX_WASTE_AT_ROCKET_PAD (MAX_GOODS_AT_ROCKET_PAD / 3) +#define ROCKET_PAD_STEEL 240 +#define ROCKET_PAD_STEEL_STORE (ROCKET_PAD_STEEL * 50) +#define MAX_STEEL_AT_ROCKET_PAD (ROCKET_PAD_STEEL * 20) +#define ROCKET_PAD_RUNNING_COST 200 +#define ROCKET_PAD_LAUNCH 100 +#define ROCKET_ANIMATION_SPEED 450 +#define ROCKET_LAUNCH_BAD 1 +#define ROCKET_LAUNCH_GOOD 2 +#define ROCKET_LAUNCH_EVAC 3 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + +class RocketPadConstructionGroup: public ConstructionGroup { +public: + RocketPadConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_ROCKET_PAD; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_ROCKET_PAD; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_ROCKET_PAD; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_ROCKET_PAD; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a RocketPad + virtual Construction *createConstruction(int x, int y); +}; + +extern RocketPadConstructionGroup rocketPadConstructionGroup; + +class RocketPad: public RegisteredConstruction<RocketPad> { // rocketPad inherits from its own RegisteredConstruction +public: + RocketPad(int x, int y, ConstructionGroup* cstgrp): RegisteredConstruction<RocketPad>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->working_days = 0; + this->busy = 0; + this->anim = 0; + this->completion = 0; + setMemberSaved(&this->completion, "completion"); + this->step = 0; + setMemberSaved(&this->step, "step"); + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->goods_stored = 0; + setMemberSaved(&this->goods_stored, "goods_stored"); + this->jobs_stored = 0; + setMemberSaved(&this->jobs_stored, "jobs_stored"); + this->steel_stored = 0; + setMemberSaved(&this->steel_stored, "steel_stored"); + initialize_commodities(); + } + + virtual ~RocketPad() { } + virtual void update(); + virtual void report(); + void launch_rocket(); + void remove_people(int num); + int working_days, busy; + int tech; + int anim; + int jobs_stored, goods_stored, steel_stored; + int completion, step; +}; + + +/** @file lincity/modules/rocket_pad.h */ -#endif /* __rocket_pad_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/school.cpp lincity-ng-2.9~git20150314/src/lincity/modules/school.cpp --- lincity-ng-2.0/src/lincity/modules/school.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/school.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,50 +5,91 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "school.h" -void do_school(int x, int y) + +// school place: +SchoolConstructionGroup schoolConstructionGroup( + N_("Elementary School"), + FALSE, /* need credit? */ + GROUP_SCHOOL, + GROUP_SCHOOL_SIZE, + GROUP_SCHOOL_COLOUR, + GROUP_SCHOOL_COST_MUL, + GROUP_SCHOOL_BUL_COST, + GROUP_SCHOOL_FIREC, + GROUP_SCHOOL_COST, + GROUP_SCHOOL_TECH, + GROUP_SCHOOL_RANGE +); + +Construction *SchoolConstructionGroup::createConstruction(int x, int y) { + return new School(x, y, this); +} + +void School::update() { - /* - // int_1 contains the job pool - // int_2 contains the goods at the school - // int_3 has the tech points made - // int_4 is the tech count so far this 100 days - // int_5 is the tech count last 100 days to give a % of max production - */ - if (MP_INFO(x, y).int_1 < (MAX_JOBS_AT_SCHOOL - SCHOOL_JOBS)) - if (get_jobs(x, y, SCHOOL_JOBS) != 0) - MP_INFO(x, y).int_1 += SCHOOL_JOBS; - if (MP_INFO(x, y).int_2 < (MAX_GOODS_AT_SCHOOL - SCHOOL_GOODS)) - if (get_goods(x, y, SCHOOL_GOODS) != 0) - MP_INFO(x, y).int_2 += SCHOOL_GOODS; - if (MP_INFO(x, y).int_1 >= JOBS_MAKE_TECH_SCHOOL && MP_INFO(x, y).int_2 >= GOODS_MAKE_TECH_SCHOOL) { - MP_INFO(x, y).int_1 -= JOBS_MAKE_TECH_SCHOOL; - MP_INFO(x, y).int_2 -= GOODS_MAKE_TECH_SCHOOL; - MP_INFO(x, y).int_3 += TECH_MADE_BY_SCHOOL; - MP_INFO(x, y).int_4++; + if (commodityCount[STUFF_JOBS] >= JOBS_MAKE_TECH_SCHOOL + && commodityCount[STUFF_GOODS] >= GOODS_MAKE_TECH_SCHOOL + && commodityCount[STUFF_WASTE] + GOODS_MAKE_TECH_SCHOOL / 3 <= MAX_WASTE_AT_SCHOOL) + { + commodityCount[STUFF_JOBS] -= JOBS_MAKE_TECH_SCHOOL; + commodityCount[STUFF_GOODS] -= GOODS_MAKE_TECH_SCHOOL; + commodityCount[STUFF_WASTE] += GOODS_MAKE_TECH_SCHOOL / 3; + ++working_days; tech_level += TECH_MADE_BY_SCHOOL; + total_tech_made += TECH_MADE_BY_SCHOOL; + if( !animate && (busy >= 20) && (real_time > anim) ) //start the swing + { + frameIt->frame = 1; + frit->frame = 0; + animate = true; + anim = real_time + SCHOOL_ANIMATION_SPEED; + } + + } + if ((total_time % 100) == 0) + { + busy = working_days; + working_days = 0; } school_cost += SCHOOL_RUNNING_COST; - if ((total_time % 100) == 0) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_4; - MP_INFO(x, y).int_4 = 0; + if (animate && (real_time > anim)) // do the swing + { + frameIt->frame = 1; + anim = real_time + SCHOOL_ANIMATION_SPEED; + if ( ++(frit->frame) >= (int)frit->resourceGroup->graphicsInfoVector.size()) + { + + anim = real_time + SCHOOL_ANIMATION_BREAK- 100 * busy; //set swing delay + if ((real_time >= anim)) // restart + { + frit->frame = 1; + frameIt->frame = 1; + animate = true; + anim = real_time + SCHOOL_ANIMATION_SPEED; + } + else // + { + frit->frame = -1; + frameIt->frame = 0; + animate = false; + } + + } } } -void mps_school(int x, int y) +void School::report() { int i = 0; - mps_store_title(i++, _("School")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - mps_store_title(i++, _("Lessons Learned")); - mps_store_f(i++, MP_INFO(x, y).int_3 * 100.0 / MAX_TECH_LEVEL); + mps_store_sfp(i++, N_("busy"), (float)busy); + mps_store_sfp(i++, N_("Lessons learned"), total_tech_made * 100.0 / MAX_TECH_LEVEL); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / MAX_JOBS_AT_SCHOOL); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / MAX_GOODS_AT_SCHOOL); + list_commodities(&i); +} - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_5 * 4); +/** @file lincity/modules/school.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/school.h lincity-ng-2.9~git20150314/src/lincity/modules/school.h --- lincity-ng-2.0/src/lincity/modules/school.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/school.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,101 @@ -/* ---------------------------------------------------------------------- * - * school.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_SCHOOL_COLOUR (white(15)) +#define GROUP_SCHOOL_COST 10000 +#define GROUP_SCHOOL_COST_MUL 25 +#define GROUP_SCHOOL_BUL_COST 10000 +#define GROUP_SCHOOL_TECH 1 +#define GROUP_SCHOOL_FIREC 40 +#define GROUP_SCHOOL_RANGE 0 +#define GROUP_SCHOOL_SIZE 2 -#ifndef __school_h__ -#define __school_h__ +#define JOBS_MAKE_TECH_SCHOOL 200 +#define GOODS_MAKE_TECH_SCHOOL 75 +#define TECH_MADE_BY_SCHOOL 2 +#define MAX_JOBS_AT_SCHOOL (20 * JOBS_MAKE_TECH_SCHOOL) +#define MAX_GOODS_AT_SCHOOL (20 * GOODS_MAKE_TECH_SCHOOL) +#define MAX_WASTE_AT_SCHOOL (20 * GOODS_MAKE_TECH_SCHOOL / 3) +#define SCHOOL_RUNNING_COST 2 -void do_school(int x, int y); -void mps_school(int x, int y); +#define SCHOOL_ANIMATION_SPEED 80 +#define SCHOOL_ANIMATION_BREAK 9500 + + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + +class SchoolConstructionGroup: public ConstructionGroup { +public: + SchoolConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_SCHOOL; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_SCHOOL; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_SCHOOL; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a School + virtual Construction *createConstruction(int x, int y); +}; + +extern SchoolConstructionGroup schoolConstructionGroup; + +class School: public RegisteredConstruction<School> { // School inherits from its own RegisteredConstruction +public: + School(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<School>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + //std::list<ExtraFrame>::iterator frit = world(x,y)->createframe(); + //CK ?? Why the hell is the variant above unsafe? + world(x,y)->framesptr->resize(world(x,y)->framesptr->size()+1); + frit = frameIt; + std::advance(frit, 1); + frit->resourceGroup = ResourceGroup::resMap["ChildOnSwing"]; //host of the swing + frit->frame = -1; //hide the swing + this->animate = false; + this->anim = 0; + this->working_days = 0; + this->busy = 0; + this->total_tech_made = 0; + setMemberSaved(&this->total_tech_made, "total_tech_made"); + initialize_commodities(); + } + + virtual ~School() //remove the one extraframe + { + if(world(x,y)->framesptr) + { + world(x,y)->framesptr->erase(frit); + if(world(x,y)->framesptr->empty()) + { + delete world(x,y)->framesptr; + world(x,y)->framesptr = NULL; + } + } + } + virtual void update(); + virtual void report(); + + std::list<ExtraFrame>::iterator frit; + int anim; + bool animate; + int total_tech_made; + int working_days, busy; +}; + + +/** @file lincity/modules/school.h */ -#endif /* __school_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/shanty.cpp lincity-ng-2.9~git20150314/src/lincity/modules/shanty.cpp --- lincity-ng-2.0/src/lincity/modules/shanty.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/shanty.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -6,204 +6,183 @@ * ---------------------------------------------------------------------- */ #include "modules.h" -//#include "mouse.h" /* XXX: fire_area! */ #include "shanty.h" +#include "commune.h" +#include "fire.h" -extern void set_mappoint(int x, int y, short selected_type); +// Shanty: +ShantyConstructionGroup shantyConstructionGroup( + N_("Shanty Town"), + FALSE, /* need credit? */ + GROUP_SHANTY, + GROUP_SHANTY_SIZE, + GROUP_SHANTY_COLOUR, + GROUP_SHANTY_COST_MUL, + GROUP_SHANTY_BUL_COST, + GROUP_SHANTY_FIREC, + GROUP_SHANTY_COST, + GROUP_SHANTY_TECH, + GROUP_SHANTY_RANGE +); +Construction *ShantyConstructionGroup::createConstruction(int x, int y) +{ + return new Shanty(x, y, this); +} -#include <stdlib.h> -static int spiral_find_2x2(int startx, int starty); -static int spiral_find_group(int startx, int starty, int group); +//TODO remove_a_shanty() and update_shanty() should go to ConstructionRequest void add_a_shanty(void) { int r, x, y; - x = rand() % WORLD_SIDE_LEN; - y = rand() % WORLD_SIDE_LEN; - if (numof_shanties > 0 && rand() % 8 != 0) { - r = spiral_find_group(x, y, GROUP_SHANTY); + int numof_shanties = Counted<Shanty>::getInstanceCount(); + const int len = world.len(); + x = rand() % len; + y = rand() % len; + if (numof_shanties > 0 && rand() % 8 != 0) + { + r = find_group(x, y, GROUP_SHANTY); if (r == -1) { printf("Looked for a shanty, without any! x=%d y=%d\n", x, y); return; } - y = r / WORLD_SIDE_LEN; - x = r % WORLD_SIDE_LEN; - r = spiral_find_2x2(x, y); - if (r == -1) { - /* wck: These are annoying when the map is full */ + y = r / len; + x = r % len; + r = find_bare_area(x, y, 2); + if (r == -1) + { +#ifdef DEBUG fprintf(stderr,"Adding a shanty (s), no space for it?!\n"); +#endif return; } - y = r / WORLD_SIDE_LEN; - x = r % WORLD_SIDE_LEN; - } else { - r = spiral_find_group(x, y, GROUP_MARKET); + y = r / len; + x = r % len; + } + else + { + r = find_group(x, y, GROUP_MARKET); if (r == -1) return; /* silently return, we havn't started yet. */ - y = r / WORLD_SIDE_LEN; - x = r % WORLD_SIDE_LEN; - r = spiral_find_2x2(x, y); - if (r == -1) { - /* see above */ + y = r / len; + x = r % len; + r = find_bare_area(x, y, 2); + if (r == -1) + { +#ifdef DEBUG fprintf(stderr,"Adding a shanty (r), no space for it?!\n"); +#endif return; } - y = r / WORLD_SIDE_LEN; - x = r % WORLD_SIDE_LEN; + y = r / len; + x = r % len; } - set_mappoint(x, y, CST_SHANTY); - numof_shanties++; -} - -void remove_a_shanty(int x, int y) -{ - numof_shanties--; - /* ATTENTION: - * fire_area calls bulldoze_item which calls remove shanty. - */ - do_bulldoze_area(CST_FIRE_1, x, y); + shantyConstructionGroup.placeItem( x, y); } void update_shanty(void) { - int i, pp; + int numof_communes = Counted<Commune>::getInstanceCount(); + int numof_shanties = Counted<Shanty>::getInstanceCount(); + const int len = world.len(); + //Foersts make new people? Why not + //people_pool += .3 * numof_communes; + int pp = people_pool; + people_pool -= 5 * numof_shanties; + if (people_pool < 0) + { people_pool = 0; } + ddeaths += (pp - people_pool); pp = people_pool - (COMMUNE_POP * numof_communes); - i = (pp - SHANTY_MIN_PP) / SHANTY_POP; - if (i > numof_shanties) { - add_a_shanty(); - } else if (numof_shanties > 0 && (i < (numof_shanties - 1) || rand() % 100 == 1)) { - int x, y, r; - x = rand() % WORLD_SIDE_LEN; - y = rand() % WORLD_SIDE_LEN; - r = spiral_find_group(x, y, GROUP_SHANTY); - if (r == -1) { - fprintf(stderr, "Can't find a shanty to remove!\n"); - return; + int i = (pp - SHANTY_MIN_PP) / SHANTY_POP; + if (i < 0) + { i = 0;} + if (i > numof_shanties) + { + for (int n = 0; n < 1 + (i - numof_shanties)/10; n++) + { add_a_shanty();} + } + else if (numof_shanties > 0 && (i < (numof_shanties - 1) )) + { + for (int n = 0; n < (1+(numof_shanties - i)/10); n++) + { + int x, y, r; + x = rand() % len; + y = rand() % len; + r = find_group(x, y, GROUP_SHANTY); + if (r == -1) + { + fprintf(stderr, "Can't find a shanty to remove!\n"); + return; + } + y = r / len; + x = r % len; + ConstructionManager::executeRequest(new BurnDownRequest(world(x,y)->reportingConstruction)); } - y = r / WORLD_SIDE_LEN; - x = r % WORLD_SIDE_LEN; - remove_a_shanty(x, y); /* this will fire_area */ - /* now put the fire out: it becomes impossible to bulldoze */ - MP_INFO(x, y).int_2 = FIRE_LENGTH + 1; - MP_INFO(x + 1, y).int_2 = FIRE_LENGTH + 1; - MP_INFO(x, y + 1).int_2 = FIRE_LENGTH + 1; - MP_INFO(x + 1, y + 1).int_2 = FIRE_LENGTH + 1; } } -void do_shanty(int x, int y) -{ /* just steal some stuff and make pollution. */ - - get_food(x, y, SHANTY_GET_FOOD); - if (get_goods(x, y, SHANTY_GET_GOODS) != 0) - if ((goods_tax -= SHANTY_GET_GOODS * 2) < 0) - goods_tax = 0; - get_ore(x, y, SHANTY_GET_ORE); - get_steel(x, y, SHANTY_GET_STEEL); - if (get_jobs(x, y, SHANTY_GET_JOBS) != 0) +void Shanty::update() +{ + //steal stuff and make waste + commodityCount[STUFF_WASTE] += SHANTY_PUT_WASTE; + if (commodityCount[STUFF_FOOD] >= SHANTY_GET_FOOD) + { commodityCount[STUFF_FOOD] -= SHANTY_GET_FOOD;} + if (commodityCount[STUFF_JOBS] >= SHANTY_GET_JOBS) + { + commodityCount[STUFF_JOBS] -= SHANTY_GET_JOBS; if ((income_tax -= SHANTY_GET_JOBS * 2) < 0) - income_tax = 0; - if (get_coal(x, y, SHANTY_GET_COAL) != 0) + { income_tax = 0;} + } + if (commodityCount[STUFF_GOODS] >= SHANTY_GET_GOODS) + { + commodityCount[STUFF_GOODS] -= SHANTY_GET_GOODS; + commodityCount[STUFF_WASTE] += SHANTY_GET_GOODS / 3; + if ((goods_tax -= SHANTY_GET_GOODS * 2) < 0) + { goods_tax = 0;} + } + if (commodityCount[STUFF_COAL] >= SHANTY_GET_COAL) + { + commodityCount[STUFF_COAL] -= SHANTY_GET_COAL; if ((coal_tax -= SHANTY_GET_COAL * 2) < 0) - coal_tax = 0; - if ((total_time & 1) == 0) - MP_POL(x, y)++; - else - MP_POL(x + 1, y + 1)++; -} - -/* - // spiral round from startx,starty until we hit something of group group. - // return the x y coords encoded as x+y*WORLD_SIDE_LEN - // return -1 if we don't find one. - */ -static int spiral_find_group(int startx, int starty, int group) -{ - int i, j, x, y; - x = startx; - y = starty; - /* let's just do a complete spiral for now, work out the bounds later */ - for (i = 1; i < (WORLD_SIDE_LEN + WORLD_SIDE_LEN); i++) { - for (j = 0; j < i; j++) { - x--; - if (x > 0 && x < WORLD_SIDE_LEN && y > 0 && y < WORLD_SIDE_LEN) - if (MP_GROUP(x, y) == group) - return (x + y * WORLD_SIDE_LEN); - } - for (j = 0; j < i; j++) { - y--; - if (x > 0 && x < WORLD_SIDE_LEN && y > 0 && y < WORLD_SIDE_LEN) - if (MP_GROUP(x, y) == group) - return (x + y * WORLD_SIDE_LEN); - } - i++; - for (j = 0; j < i; j++) { - x++; - if (x > 0 && x < WORLD_SIDE_LEN && y > 0 && y < WORLD_SIDE_LEN) - if (MP_GROUP(x, y) == group) - return (x + y * WORLD_SIDE_LEN); - } - for (j = 0; j < i; j++) { - y++; - if (x > 0 && x < WORLD_SIDE_LEN && y > 0 && y < WORLD_SIDE_LEN) - if (MP_GROUP(x, y) == group) - return (x + y * WORLD_SIDE_LEN); + { coal_tax = 0;} + } + if (commodityCount[STUFF_ORE] >= SHANTY_GET_ORE) + { commodityCount[STUFF_ORE] -= SHANTY_GET_ORE;} + if (commodityCount[STUFF_STEEL] >= SHANTY_GET_STEEL) + { commodityCount[STUFF_STEEL] -= SHANTY_GET_STEEL;} + if ((commodityCount[STUFF_WASTE]+= SHANTY_PUT_WASTE) >= MAX_WASTE_AT_SHANTY && !world(x+1,y+1)->construction) + { + anim = real_time + 3 * WASTE_BURN_TIME; + world(x+1,y+1)->pollution += commodityCount[STUFF_WASTE]; + commodityCount[STUFF_WASTE] = 0; + if(!world(x+1,y+1)->construction) + { + Construction *fire = fireConstructionGroup.createConstruction(x+1, y+1); + world(x+1,y+1)->construction = fire; + world(x+1,y+1)->reportingConstruction = fire; + dynamic_cast<Fire*>(fire)->flags |= FLAG_IS_GHOST; + ::constructionCount.add_construction(fire); } } - return (-1); + else if ( real_time > anim && world(x+1,y+1)->construction) + { + ::constructionCount.remove_construction(world(x+1,y+1)->construction); + world(x+1,y+1)->killframe(world(x+1,y+1)->construction->frameIt); + delete world(x+1,y+1)->construction; + world(x+1,y+1)->construction = NULL; + world(x+1,y+1)->reportingConstruction = this; + } } -/* - // spiral round from startx,starty until we hit a 2x2 space. - // return the x y coords encoded as x+y*WORLD_SIDE_LEN - // return -1 if we don't find one. - */ -static int spiral_find_2x2(int startx, int starty) +void Shanty::report() { - int i, j, x, y; - x = startx; - y = starty; - /* let's just do a complete spiral for now, work out the bounds later */ - for (i = 1; i < (WORLD_SIDE_LEN + WORLD_SIDE_LEN); i++) { - for (j = 0; j < i; j++) { - x--; - if (x > 1 && x < WORLD_SIDE_LEN - 2 && y > 1 && y < WORLD_SIDE_LEN - 2) - if (GROUP_IS_BARE(MP_GROUP(x, y)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y)) - && GROUP_IS_BARE(MP_GROUP(x, y + 1)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y + 1))) - return (x + y * WORLD_SIDE_LEN); - } - for (j = 0; j < i; j++) { - y--; - if (x > 1 && x < WORLD_SIDE_LEN - 2 && y > 1 && y < WORLD_SIDE_LEN - 2) - if (GROUP_IS_BARE(MP_GROUP(x, y)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y)) - && GROUP_IS_BARE(MP_GROUP(x, y + 1)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y + 1))) - return (x + y * WORLD_SIDE_LEN); - } - i++; - for (j = 0; j < i; j++) { - x++; - if (x > 1 && x < WORLD_SIDE_LEN - 2 && y > 1 && y < WORLD_SIDE_LEN - 2) - if (GROUP_IS_BARE(MP_GROUP(x, y)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y)) - && GROUP_IS_BARE(MP_GROUP(x, y + 1)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y + 1))) - return (x + y * WORLD_SIDE_LEN); - } - for (j = 0; j < i; j++) { - y++; - if (x > 1 && x < WORLD_SIDE_LEN - 2 && y > 1 && y < WORLD_SIDE_LEN - 2) - if (GROUP_IS_BARE(MP_GROUP(x, y)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y)) - && GROUP_IS_BARE(MP_GROUP(x, y + 1)) - && GROUP_IS_BARE(MP_GROUP(x + 1, y + 1))) - return (x + y * WORLD_SIDE_LEN); - } - } - return (-1); + int i = 0; + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sd(i++, N_("Air Pollution"), world(x,y)->pollution); + i++; + list_commodities(&i); } + +/** @file lincity/modules/shanty.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/shanty.h lincity-ng-2.9~git20150314/src/lincity/modules/shanty.h --- lincity-ng-2.0/src/lincity/modules/shanty.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/shanty.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,16 +1,101 @@ -/* ---------------------------------------------------------------------- * - * shanty.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __shanty_h__ -#define __shanty_h__ - -void add_a_shanty(void); -void remove_a_shanty(int x, int y); -void update_shanty(void); -void do_shanty(int x, int y); +#define GROUP_SHANTY_COLOUR (red(22)) +#define GROUP_SHANTY_COST 0 /* Unused */ +#define GROUP_SHANTY_COST_MUL 1 /* Unused */ +#define GROUP_SHANTY_BUL_COST 100000 +#define GROUP_SHANTY_TECH 0 /* Unused */ +#define GROUP_SHANTY_FIREC 25 +#define GROUP_SHANTY_RANGE 0 +#define GROUP_SHANTY_SIZE 2 + + +#define SHANTY_MIN_PP 150 +#define SHANTY_POP 50 +#define DAYS_BETWEEN_SHANTY (NUMOF_DAYS_IN_MONTH * 1) +#define SHANTY_WASTE_BURN_DAYS 10; + +#define SHANTY_GET_FOOD 50 +#define SHANTY_GET_JOBS 5 +#define SHANTY_GET_GOODS 50 +#define SHANTY_GET_COAL 1 +#define SHANTY_GET_ORE 10 +#define SHANTY_GET_STEEL 1 +#define SHANTY_PUT_WASTE 1 +#define SHANTY_GET_KWH 50 + +#define MAX_FOOD_AT_SHANTY (SHANTY_GET_FOOD * 20) +#define MAX_JOBS_AT_SHANTY (SHANTY_GET_JOBS * 20) +#define MAX_GOODS_AT_SHANTY (SHANTY_GET_GOODS * 20) +#define MAX_COAL_AT_SHANTY (SHANTY_GET_COAL * 20) +#define MAX_ORE_AT_SHANTY (SHANTY_GET_ORE * 20) +#define MAX_STEEL_AT_SHANTY (SHANTY_GET_STEEL * 20) +#define MAX_WASTE_AT_SHANTY (SHANTY_PUT_WASTE * 20 + MAX_GOODS_AT_SHANTY / 3) +#define MAX_KWH_AT_SHANTY (SHANTY_GET_KWH * 20) + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class ShantyConstructionGroup: public ConstructionGroup { +public: + ShantyConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_AT_SHANTY; + commodityRuleCount[Construction::STUFF_FOOD].take = true; + commodityRuleCount[Construction::STUFF_FOOD].give = false; + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_SHANTY; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_SHANTY; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_AT_SHANTY; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = false; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_AT_SHANTY; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = false; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_AT_SHANTY; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_SHANTY; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_SHANTY; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = false; + } + // overriding method that creates a Shanty + virtual Construction *createConstruction(int x, int y); +}; + +extern ShantyConstructionGroup shantyConstructionGroup; + +class Shanty: public RegisteredConstruction<Shanty> { // Shanty inherits from Construction +public: + Shanty(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Shanty>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + initialize_commodities(); + this->flags |= FLAG_NEVER_EVACUATE; + this->anim = 0; + } + virtual ~Shanty() { } + virtual void update(); + virtual void report(); + int anim; +}; + + + + +/** @file lincity/modules/shanty.h */ -#endif /* __shanty_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/solar_power.cpp lincity-ng-2.9~git20150314/src/lincity/modules/solar_power.cpp --- lincity-ng-2.0/src/lincity/modules/solar_power.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/solar_power.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,56 +5,60 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -#include "../power.h" + #include "solar_power.h" -/*** Solar Power ***/ -/* - int_1 is the rated output (depends on MP_TECH) - int_2 unused - int_3 unused - int_4 unused - int_5 is the current output - int_6 is the grid it's on - int_7 unused +// SolarPower: +SolarPowerConstructionGroup solarPowerConstructionGroup( + N_("Solar Power Plant"), + TRUE, /* need credit? */ + GROUP_SOLAR_POWER, + GROUP_SOLAR_POWER_SIZE, + GROUP_SOLAR_POWER_COLOUR, + GROUP_SOLAR_POWER_COST_MUL, + GROUP_SOLAR_POWER_BUL_COST, + GROUP_SOLAR_POWER_FIREC, + GROUP_SOLAR_POWER_COST, + GROUP_SOLAR_POWER_TECH, + GROUP_SOLAR_POWER_RANGE +); - MP_TECH(x,y) is the tech level when it was built. -*/ +Construction *SolarPowerConstructionGroup::createConstruction(int x, int y) { + return new SolarPower(x, y, this); +} -void do_power_source_solar(int x, int y) +void SolarPower::update() { + int mwh_made = (commodityCount[STUFF_MWH] + mwh_output <= MAX_MWH_AT_SOLARPS)?mwh_output:MAX_MWH_AT_SOLARPS-commodityCount[STUFF_MWH]; + int jobs_used = SOLAR_POWER_JOBS * mwh_made / mwh_output; - if (get_jobs(x, y, SOLAR_POWER_JOBS)) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_1; - grid[MP_INFO(x, y).int_6]->avail_power += MP_INFO(x, y).int_1; - } else { - MP_INFO(x, y).int_5 = 0; + if ((commodityCount[STUFF_JOBS] >= jobs_used) + && (mwh_made >= POWERS_SOLAR_OUTPUT)) + { + commodityCount[STUFF_JOBS] -= jobs_used; + commodityCount[STUFF_MWH] += mwh_made; + working_days += mwh_made; + } + if (total_time % 100 == 0) //monthly update + { + busy = working_days / mwh_output; + working_days = 0; } } -void mps_solar_power(int x, int y) +void SolarPower::report() { int i = 0; - char s[12]; - - mps_store_title(i++, _("Solar power station")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - mps_store_sfp(i++, _("Jobs"), (MP_INFO(x, y).int_5 * 100) / MP_INFO(x, y).int_1 ); - i++; - - format_power(s, sizeof(s), MP_INFO(x, y).int_1); - mps_store_title(i++, _("Max Output")); - mps_store_title(i++, s); + mps_store_sfp(i++, N_("busy"), (busy)); + mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); + mps_store_sd(i++, N_("Output"), mwh_output); i++; + list_commodities(&i); +} - format_power(s, sizeof(s), MP_INFO(x, y).int_5); - mps_store_title(i++, _("Current Output")); - mps_store_title(i++, s); - i++; +/** @file lincity/modules/solar_power.cpp */ - mps_store_sfp(i++, _("Tech"), ( MP_TECH(x, y) * 100.0 / MAX_TECH_LEVEL ) ); - mps_store_sd(i++, _("Grid ID"), MP_INFO(x, y).int_6); -} diff -Nru lincity-ng-2.0/src/lincity/modules/solar_power.h lincity-ng-2.9~git20150314/src/lincity/modules/solar_power.h --- lincity-ng-2.0/src/lincity/modules/solar_power.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/solar_power.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,69 @@ -/* ---------------------------------------------------------------------- * - * solar_power.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_SOLAR_POWER_COLOUR (yellow(22)) +#define GROUP_SOLAR_POWER_COST 500000 +#define GROUP_SOLAR_POWER_COST_MUL 5 +#define GROUP_SOLAR_POWER_BUL_COST 100000 +#define GROUP_SOLAR_POWER_TECH 500 +#define GROUP_SOLAR_POWER_FIREC 33 +#define GROUP_SOLAR_POWER_RANGE 0 +#define GROUP_SOLAR_POWER_SIZE 4 -#ifndef __solar_power_h__ -#define __solar_power_h__ +#define SOLAR_POWER_JOBS 50 +#define POWERS_SOLAR_OUTPUT 900 //1800 +#define MAX_JOBS_AT_SOLARPS (20 * SOLAR_POWER_JOBS) +#define MAX_MWH_AT_SOLARPS (20 * POWERS_SOLAR_OUTPUT) -void do_power_source_solar(int x, int y); -void mps_solar_power(int x, int y); +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + +class SolarPowerConstructionGroup: public ConstructionGroup { +public: + SolarPowerConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_SOLARPS; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_AT_SOLARPS; + commodityRuleCount[Construction::STUFF_MWH].take = false; + commodityRuleCount[Construction::STUFF_MWH].give = true; + }; + // overriding method that creates a Solar Power Plant + virtual Construction *createConstruction(int x, int y); +}; + +extern SolarPowerConstructionGroup solarPowerConstructionGroup; + +class SolarPower: public RegisteredConstruction<SolarPower> { // park inherits from RegisteredConstruction +public: + SolarPower(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<SolarPower>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->working_days = 0; + this->busy = 0; + this->mwh_output = (int)(POWERS_SOLAR_OUTPUT + (((double)tech_level * POWERS_SOLAR_OUTPUT) / MAX_TECH_LEVEL)); + setMemberSaved(&this->mwh_output, "mwh_output"); + initialize_commodities(); + } + virtual void update(); + virtual void report(); + int mwh_output; + int tech; + int working_days, busy; +}; + + +/** @file lincity/modules/solar_power.h */ -#endif /* __solar_power_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/substation.cpp lincity-ng-2.9~git20150314/src/lincity/modules/substation.cpp --- lincity-ng-2.0/src/lincity/modules/substation.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/substation.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,111 +5,66 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -#include "../power.h" #include "substation.h" +#include "lincity-ng/Sound.hpp" -#include <stdlib.h> +SubstationConstructionGroup substationConstructionGroup( + N_("Power Substation"), + FALSE, /* need credit? */ + GROUP_SUBSTATION, + GROUP_SUBSTATION_SIZE, + GROUP_SUBSTATION_COLOUR, + GROUP_SUBSTATION_COST_MUL, + GROUP_SUBSTATION_BUL_COST, + GROUP_SUBSTATION_FIREC, + GROUP_SUBSTATION_COST, + GROUP_SUBSTATION_TECH, + GROUP_SUBSTATION_RANGE +); + +//helper groups for graphics and sound sets, dont add them to ConstructionGroup::groupMap +SubstationConstructionGroup substation_RG_ConstructionGroup = substationConstructionGroup; +SubstationConstructionGroup substation_G_ConstructionGroup = substationConstructionGroup; -/* Substations - * - * int_1 unused - * int_2 unused - * int_3 unused - * int_4 is the power demand at this substation - * int_5 forbidden for substations: it is power production from power sources - * and windmill is both a source power and a substation - * int_6 is the grid its connected to - * int_7 is a grid timestamp - */ -void do_power_substation(int x, int y) -{ - switch (grid[MP_INFO(x, y).int_6]->powered) { - case -1:{ - MP_TYPE(x, y) = CST_SUBSTATION_R; - } - break; - case 0:{ - MP_TYPE(x, y) = CST_SUBSTATION_RG; - } - break; - case 1:{ - MP_TYPE(x, y) = CST_SUBSTATION_G; - } - break; - default:{ - printf("Default case in do_power_substation\n"); - } - break; - } -} - -int add_a_substation(int x, int y) -{ /* add to substationx substationy to list */ - if (numof_substations >= MAX_NUMOF_SUBSTATIONS) - return (0); - substationx[numof_substations] = x; - substationy[numof_substations] = y; - numof_substations++; - return (1); +Construction *SubstationConstructionGroup::createConstruction(int x, int y) { + return new Substation(x, y, this); } -void remove_a_substation(int x, int y) +void Substation::update() { - int q; - for (q = 0; q < numof_substations; q++) - if (substationx[q] == x && substationy[q] == y) - break; - for (; q < numof_substations; q++) { - substationx[q] = substationx[q + 1]; - substationy[q] = substationy[q + 1]; + int use_MWH = (SUBSTATION_MWH < commodityCount[STUFF_MWH])?SUBSTATION_MWH:commodityCount[STUFF_MWH]; + if ( (use_MWH > 0) + && (commodityCount[STUFF_KWH] <= MAX_KWH_AT_SUBSTATION-2 * use_MWH)) + { + commodityCount[STUFF_MWH] -= use_MWH; + commodityCount[STUFF_KWH] += 2 * use_MWH; + working_days += use_MWH; } - numof_substations--; -} - -void shuffle_substations(void) -{ - int q, x, r, m; - m = (numof_substations / 2) + 1; - for (x = 0; x < m; x++) { - r = rand() % numof_substations; - if (r == x) - continue; - q = substationx[x]; - substationx[x] = substationx[r]; - substationx[r] = q; - q = substationy[x]; - substationy[x] = substationy[r]; - substationy[r] = q; + if (total_time % 100 == 0) //monthly update + { + busy = working_days/SUBSTATION_MWH; + working_days = 0; } + /* choose a graphic */ + if (commodityCount[STUFF_KWH] > (MAX_KWH_AT_SUBSTATION / 2)) + { frameIt->resourceGroup = ResourceGroup::resMap["SubstationOn"];} + else if (commodityCount[STUFF_KWH] > (MAX_KWH_AT_SUBSTATION / 10)) + { frameIt->resourceGroup = ResourceGroup::resMap["SubstationOff"];} + else + { frameIt->resourceGroup = ResourceGroup::resMap["Substation"];} + soundGroup = frameIt->resourceGroup; } -void mps_substation(int x, int y) +void Substation::report() { int i = 0; - char s[12]; - - mps_store_title(i++, _("Substation")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - - format_power(s, sizeof(s), MP_INFO(x, y).int_4); - mps_store_title(i++, _("Local Demand")); - mps_store_title(i++, s); - i++; - - mps_store_title(i++, _("Grid Status")); - - format_power(s, sizeof(s), grid[MP_INFO(x, y).int_6]->max_power); - mps_store_ss(i++, _("T. Cap."), s); - - format_power(s, sizeof(s), grid[MP_INFO(x, y).int_6]->avail_power); - mps_store_ss(i++, _("A. Cap."), s); - - format_power(s, sizeof(s), grid[MP_INFO(x, y).int_6]->demand); - mps_store_ss(i++, _("Demand"), s); + mps_store_sfp(i++, N_("busy"), busy); i++; + list_commodities(&i); +} - mps_store_sd(i++, _("Grid ID"), MP_INFO(x, y).int_6); +/** @file lincity/modules/substation.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/substation.h lincity-ng-2.9~git20150314/src/lincity/modules/substation.h --- lincity-ng-2.0/src/lincity/modules/substation.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/substation.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,18 +1,66 @@ -/* ---------------------------------------------------------------------- * - * substation.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __substation_h__ -#define __substation_h__ - -void do_power_substation(int x, int y); -int add_a_substation(int x, int y); -void remove_a_substation(int x, int y); -void shuffle_substations(void); +#define GROUP_SUBSTATION_COLOUR (yellow(18)) +#define GROUP_SUBSTATION_COST 500 +#define GROUP_SUBSTATION_COST_MUL 2 +#define GROUP_SUBSTATION_BUL_COST 100 +#define GROUP_SUBSTATION_TECH 200 +#define GROUP_SUBSTATION_FIREC 50 +#define GROUP_SUBSTATION_RANGE 0 +#define GROUP_SUBSTATION_SIZE 2 -void mps_substation(int x, int y); +#define SUBSTATION_MWH (1500) +#define MAX_MWH_AT_SUBSTATION (20 * SUBSTATION_MWH) +#define SUBSTATION_KWH (2 * SUBSTATION_MWH) +#define MAX_KWH_AT_SUBSTATION (20 * SUBSTATION_KWH) + + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class SubstationConstructionGroup: public ConstructionGroup { +public: + SubstationConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_AT_SUBSTATION; + commodityRuleCount[Construction::STUFF_MWH].take = true; + commodityRuleCount[Construction::STUFF_MWH].give = false; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_SUBSTATION; + commodityRuleCount[Construction::STUFF_KWH].take = false; + commodityRuleCount[Construction::STUFF_KWH].give = true; + } + // overriding method that creates a Substation + virtual Construction *createConstruction(int x, int y); +}; + +extern SubstationConstructionGroup substationConstructionGroup; +//extern SubstationConstructionGroup substation_RG_ConstructionGroup; +//extern SubstationConstructionGroup substation_G_ConstructionGroup; + +class Substation: public RegisteredConstruction<Substation> { // Substation inherits from Construction +public: + Substation(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Substation>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->working_days = 0; + this->busy = 0; + initialize_commodities(); + } + virtual ~Substation() { } + virtual void update(); + virtual void report(); + + int working_days, busy; +}; + +/** @file lincity/modules/substation.h */ -#endif /* __substation_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/tip.cpp lincity-ng-2.9~git20150314/src/lincity/modules/tip.cpp --- lincity-ng-2.0/src/lincity/modules/tip.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/tip.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,105 +5,84 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" #include "tip.h" -void do_tip(int x, int y) +// Tip: +TipConstructionGroup tipConstructionGroup( + N_("Land Fill"), + FALSE, /* need credit? */ + GROUP_TIP, + GROUP_TIP_SIZE, + GROUP_TIP_COLOUR, + GROUP_TIP_COST_MUL, + GROUP_TIP_BUL_COST, + GROUP_TIP_FIREC, + GROUP_TIP_COST, + GROUP_TIP_TECH, + GROUP_TIP_RANGE +); + +Construction *TipConstructionGroup::createConstruction(int x, int y ) { + return new Tip(x, y, this); +} + + +void Tip::update() { - /* - // int_1 is the amount of waste on the site. - // int_2 if the amount that has flowed in so far this month - // int_3 is the amount stored last month. - // int_4 counts up starting when tip fills, controlling how - long until the land is useful again. - */ - int i; - -/* XXX: put this in a header somewhere */ - -/* If the tip is full, age it until it degrades into useful soil */ - - if (MP_TYPE(x, y) == CST_TIP_8) { - MP_INFO(x, y).int_4++; - if (MP_INFO(x, y).int_4 >= TIP_DEGRADE_TIME) { - if (use_waterwell) { - do_bulldoze_area(CST_DESERT, x, y); - } else { - do_bulldoze_area(CST_GREEN, x, y); - } + //the waste is always slowly degrading + //max degradiation per day is about 42 (10M/240k) + degration_days += total_waste; + while (degration_days > TIP_DEGRADE_TIME) + { + degration_days -= TIP_DEGRADE_TIME; + --total_waste; + if (degration_days > 7 * TIP_DEGRADE_TIME) + { + degration_days -= 7 * TIP_DEGRADE_TIME; + total_waste -= 7; } - return; } - /* just grab as much as we can from transport */ - if (x > 0 && (MP_INFO(x - 1, y).flags & FLAG_IS_TRANSPORT) != 0) { - i = MP_INFO(x - 1, y).int_7 / 10; - MP_INFO(x, y).int_1 += i; - MP_INFO(x, y).int_2 += i; - MP_INFO(x - 1, y).int_7 -= i * 10; - sust_dig_ore_coal_tip_flag = 0; + if ((commodityCount[STUFF_WASTE] >= WASTE_BURRIED) + && (commodityCount[STUFF_WASTE]*100/TIP_TAKES_WASTE > CRITICAL_WASTE_LEVEL) + && (total_waste + WASTE_BURRIED < MAX_WASTE_AT_TIP)) + { + commodityCount[STUFF_WASTE] -= WASTE_BURRIED; + total_waste += WASTE_BURRIED; + working_days++; } - if (y > 0 && (MP_INFO(x, y - 1).flags & FLAG_IS_TRANSPORT) != 0) { - i = MP_INFO(x, y - 1).int_7 / 10; - MP_INFO(x, y).int_1 += i; - MP_INFO(x, y).int_2 += i; - MP_INFO(x, y - 1).int_7 -= i * 10; - sust_dig_ore_coal_tip_flag = 0; + else if ((commodityCount[STUFF_WASTE] + WASTE_BURRIED <= TIP_TAKES_WASTE) + && (commodityCount[STUFF_WASTE]*100/TIP_TAKES_WASTE < CRITICAL_WASTE_LEVEL) + && (total_waste > 0)) + { + int waste_dug = (WASTE_BURRIED < total_waste)?WASTE_BURRIED:total_waste; + commodityCount[STUFF_WASTE] += waste_dug; + total_waste -= waste_dug; + working_days++; } - - /* now choose an icon. */ - if ((total_time % NUMOF_DAYS_IN_MONTH) == 0) { - i = (MP_INFO(x, y).int_1 * 7) / MAX_WASTE_AT_TIP; - if (MP_INFO(x, y).int_1 > 0) - i++; - switch (i) { - case (0): - MP_TYPE(x, y) = CST_TIP_0; - break; - case (1): - MP_TYPE(x, y) = CST_TIP_1; - break; - case (2): - MP_TYPE(x, y) = CST_TIP_2; - break; - case (3): - MP_TYPE(x, y) = CST_TIP_3; - break; - case (4): - MP_TYPE(x, y) = CST_TIP_4; - break; - case (5): - MP_TYPE(x, y) = CST_TIP_5; - break; - case (6): - MP_TYPE(x, y) = CST_TIP_6; - break; - case (7): - MP_TYPE(x, y) = CST_TIP_7; - break; - case (8): - MP_TYPE(x, y) = CST_TIP_8; - MP_INFO(x, y).int_2 = 0; - MP_INFO(x, y).int_4 = 0; - break; - - } - MP_INFO(x, y).int_3 = MP_INFO(x, y).int_2; - MP_INFO(x, y).int_2 = 0; + if ((total_time % 100) == 0) + { + busy = working_days; + working_days = 0; + int i = (total_waste /3 * 22) / MAX_WASTE_AT_TIP; + if (total_waste > 0 && i < 8) + { i++;} + frameIt->frame = i; } } -void mps_tip(int x, int y) +void Tip::report() { int i = 0; - mps_store_title(i++, _("Landfill")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - - mps_store_title(i++, _("Last Month")); - mps_store_sd(i++, _("Tons"), MP_INFO(x, y).int_3); - mps_store_sfp(i++, _("Percent"), MP_INFO(x, y).int_3 * 100.0 / MAX_WASTE_AT_TIP); + mps_store_sfp(i++,N_("busy"), busy); + mps_store_sd(i++, N_("Waste"), total_waste); + mps_store_sfp(i++, N_("Filled"), (float)total_waste*100/MAX_WASTE_AT_TIP); i++; - mps_store_title(i++, _("% Filled")); - mps_store_fp(i++, MP_INFO(x, y).int_1 * 100.0 / MAX_WASTE_AT_TIP); + list_commodities(&i); } + +/** @file lincity/modules/tip.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/tip.h lincity-ng-2.9~git20150314/src/lincity/modules/tip.h --- lincity-ng-2.0/src/lincity/modules/tip.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/tip.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,68 @@ -/* ---------------------------------------------------------------------- * - * tip.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ -#ifndef __tip_h__ -#define __tip_h__ +#define GROUP_TIP_COLOUR (white(16)) +#define GROUP_TIP_COST 10000 +#define GROUP_TIP_COST_MUL 25 +#define GROUP_TIP_BUL_COST 1000000 +#define GROUP_TIP_TECH 0 +#define GROUP_TIP_FIREC 50 +#define GROUP_TIP_RANGE 0 +#define GROUP_TIP_SIZE 4 -void do_tip(int x, int y); -void mps_tip(int x, int y); +#define TIP_DEGRADE_TIME 200 * NUMOF_DAYS_IN_YEAR +#define MAX_WASTE_AT_TIP 10000000 -#endif /* __tip_h__ */ +#define WASTE_BURRIED 200 +#define CRITICAL_WASTE_LEVEL 20 //gives waste if inbox is below and swallows if above +#define TIP_TAKES_WASTE (20 * WASTE_BURRIED) + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + +class TipConstructionGroup: public ConstructionGroup { +public: + TipConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + commodityRuleCount[Construction::STUFF_WASTE].maxload = TIP_TAKES_WASTE; + commodityRuleCount[Construction::STUFF_WASTE].take = true; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a tip + virtual Construction *createConstruction(int x, int y); +}; + +extern TipConstructionGroup tipConstructionGroup; + +class Tip: public RegisteredConstruction<Tip>{ // Tip inherits from its own RegisteredConstruction +public: + Tip(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Tip>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->flags |= FLAG_NEVER_EVACUATE; + this->total_waste = 0; + setMemberSaved(&this->total_waste,"total_waste"); + this->working_days = 0; + this->busy = 0; + this->degration_days = 0; + setMemberSaved(&this->degration_days,"degration_days"); + initialize_commodities(); + } + virtual ~Tip() { } + virtual void update(); + virtual void report(); + + int working_days, busy; + int total_waste; + int degration_days; +}; diff -Nru lincity-ng-2.0/src/lincity/modules/track.cpp lincity-ng-2.9~git20150314/src/lincity/modules/track.cpp --- lincity-ng-2.0/src/lincity/modules/track.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/track.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,44 +0,0 @@ -/* ---------------------------------------------------------------------- * - * track.c - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#include "modules.h" -#include "../transport.h" -#include "track.h" - -/* --------------------------------------------------------------------- - For track, road and rail: - - int_1 contains the amount of food - int_2 contains the amount of jobs - int_3 contains the amount of coal - int_4 contains the amount of goods - int_5 contains the amount of ore - int_6 contains the amount of steel - int_7 contains the amount of waste - --------------------------------------------------------------------- */ - -void do_track(int x, int y) -{ - general_transport(x, y, MAX_WASTE_ON_TRACK); -} - -void mps_track(int x, int y) -{ - int i = 0; - - mps_store_title(i++, _(main_groups[MP_GROUP(x, y)].name)); - i++; - - mps_store_sfp(i++, _("Food"), MP_INFO(x, y).int_1 * 100.0 / MAX_FOOD_ON_TRACK); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_2 * 100.0 / MAX_JOBS_ON_TRACK); - mps_store_sfp(i++, _("Coal"), MP_INFO(x, y).int_3 * 100.0 / MAX_COAL_ON_TRACK); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_4 * 100.0 / MAX_GOODS_ON_TRACK); - mps_store_sfp(i++, _("Ore"), MP_INFO(x, y).int_5 * 100.0 / MAX_ORE_ON_TRACK); - mps_store_sfp(i++, _("Steel"), MP_INFO(x, y).int_6 * 100.0 / MAX_STEEL_ON_TRACK); - mps_store_sfp(i++, _("Waste"), MP_INFO(x, y).int_7 * 100.0 / MAX_WASTE_ON_TRACK); - -} diff -Nru lincity-ng-2.0/src/lincity/modules/track.h lincity-ng-2.9~git20150314/src/lincity/modules/track.h --- lincity-ng-2.0/src/lincity/modules/track.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/track.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,14 +0,0 @@ -/* ---------------------------------------------------------------------- * - * track.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __track_h__ -#define __track_h__ - -void do_track(int x, int y); -void mps_track(int x, int y); - -#endif /* __track_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/track_road_rail.cpp lincity-ng-2.9~git20150314/src/lincity/modules/track_road_rail.cpp --- lincity-ng-2.0/src/lincity/modules/track_road_rail.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/track_road_rail.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,237 @@ +/* ---------------------------------------------------------------------- * + * track_road_powerline.cpp + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * (c) Corey Keasling, 2004 + * ---------------------------------------------------------------------- */ + +#include "track_road_rail.h" +#include "fire.h" +#include "lincity-ng/Sound.hpp" + +// Track: +TransportConstructionGroup trackConstructionGroup( + N_("Track"), + FALSE, /* need credit? */ + GROUP_TRACK, + GROUP_TRANSPORT_SIZE, + GROUP_TRACK_COLOUR, + GROUP_TRACK_COST_MUL, + GROUP_TRACK_BUL_COST, + GROUP_TRACK_FIREC, + GROUP_TRACK_COST, + GROUP_TRACK_TECH, + GROUP_TRANSPORT_RANGE +); + +// TrackBridge: +TransportConstructionGroup trackbridgeConstructionGroup( + N_("Track Bridge"), + FALSE, /* need credit? */ + GROUP_TRACK_BRIDGE, + GROUP_TRANSPORT_SIZE, + GROUP_TRACK_BRIDGE_COLOUR, + GROUP_TRACK_BRIDGE_COST_MUL, + GROUP_TRACK_BRIDGE_BUL_COST, + GROUP_TRACK_BRIDGE_FIREC, + GROUP_TRACK_BRIDGE_COST, + GROUP_TRACK_BRIDGE_TECH, + GROUP_TRANSPORT_RANGE +); + +// Road: +TransportConstructionGroup roadConstructionGroup( + N_("Road"), + FALSE, /* need credit? */ + GROUP_ROAD, + GROUP_TRANSPORT_SIZE, + GROUP_ROAD_COLOUR, + GROUP_ROAD_COST_MUL, + GROUP_ROAD_BUL_COST, + GROUP_ROAD_FIREC, + GROUP_ROAD_COST, + GROUP_ROAD_TECH, + GROUP_TRANSPORT_RANGE +); +// RoadBridge: +TransportConstructionGroup roadbridgeConstructionGroup( + N_("Road Bridge"), + FALSE, /* need credit? */ + GROUP_ROAD_BRIDGE, + GROUP_TRANSPORT_SIZE, + GROUP_ROAD_BRIDGE_COLOUR, + GROUP_ROAD_BRIDGE_COST_MUL, + GROUP_ROAD_BRIDGE_BUL_COST, + GROUP_ROAD_BRIDGE_FIREC, + GROUP_ROAD_BRIDGE_COST, + GROUP_ROAD_BRIDGE_TECH, + GROUP_TRANSPORT_RANGE +); + + +// Rail: +TransportConstructionGroup railConstructionGroup( + N_("Rail"), + FALSE, /* need credit? */ + GROUP_RAIL, + GROUP_TRANSPORT_SIZE, + GROUP_RAIL_COLOUR, + GROUP_RAIL_COST_MUL, + GROUP_RAIL_BUL_COST, + GROUP_RAIL_FIREC, + GROUP_RAIL_COST, + GROUP_RAIL_TECH, + GROUP_TRANSPORT_RANGE +); +// RailBridge: +TransportConstructionGroup railbridgeConstructionGroup( + N_("Rail Bridge"), + FALSE, /* need credit? */ + GROUP_RAIL_BRIDGE, + GROUP_TRANSPORT_SIZE, + GROUP_RAIL_BRIDGE_COLOUR, + GROUP_RAIL_BRIDGE_COST_MUL, + GROUP_RAIL_BRIDGE_BUL_COST, + GROUP_RAIL_BRIDGE_FIREC, + GROUP_RAIL_BRIDGE_COST, + GROUP_RAIL_BRIDGE_TECH, + GROUP_TRANSPORT_RANGE +); + +Construction *TransportConstructionGroup::createConstruction(int x, int y) +{ + return new Transport(x, y, this); +} + +void Transport::update() +{ + switch (constructionGroup->group) + { + case GROUP_TRACK: + case GROUP_TRACK_BRIDGE: + //tracks have no side effects + break; + case GROUP_ROAD: + case GROUP_ROAD_BRIDGE: + ++transport_cost; + if (total_time % DAYS_PER_ROAD_POLLUTION == 0) + world(x,y)->pollution += ROAD_POLLUTION; + if ((total_time & ROAD_GOODS_USED_MASK) == 0 && commodityCount[STUFF_GOODS] > 0) + { + --commodityCount[STUFF_GOODS]; + ++commodityCount[STUFF_WASTE]; + } + break; + case GROUP_RAIL: + case GROUP_RAIL_BRIDGE: + transport_cost += 3; + if (total_time % DAYS_PER_RAIL_POLLUTION == 0) + world(x,y)->pollution += RAIL_POLLUTION; + if ((total_time & RAIL_GOODS_USED_MASK) == 0 && commodityCount[STUFF_GOODS] > 0) + { + --commodityCount[STUFF_GOODS]; + ++commodityCount[STUFF_WASTE]; + } + if ((total_time & RAIL_STEEL_USED_MASK) == 0 && commodityCount[STUFF_STEEL] > 0) + { + --commodityCount[STUFF_STEEL]; + ++commodityCount[STUFF_WASTE]; + } + break; + } + if (commodityCount[STUFF_KWH] >= KWH_LOSS_ON_TRANSPORT) + { + commodityCount[STUFF_KWH] -= KWH_LOSS_ON_TRANSPORT; + } + else if (commodityCount[STUFF_KWH] > 0) + { + --commodityCount[STUFF_KWH]; + } + + if (commodityCount[STUFF_WASTE] > 9 * constructionGroup->commodityRuleCount[STUFF_WASTE].maxload / 10) + { + anim = real_time + WASTE_BURN_TIME; + commodityCount[STUFF_WASTE] -= WASTE_BURN_ON_TRANSPORT; + world(x,y)->pollution += WASTE_BURN_ON_TRANSPORT_POLLUTE; + if(!burning_waste) + { + burning_waste = true; + //Fire sets frameIt manually + Construction *fire = fireConstructionGroup.createConstruction(x, y); + world(x,y)->construction = fire; + //waste burning never spreads + (dynamic_cast<Fire*>(fire))->flags |= FLAG_IS_GHOST; + ::constructionCount.add_construction(fire); + } + } + else if(burning_waste && (real_time > anim)) + { + burning_waste = false; + ::constructionCount.remove_construction(world(x,y)->construction); +#ifdef DEBUG + assert(world(x,y)->construction->neighbors.empty()); +#endif + world(x,y)->framesptr->erase(world(x,y)->construction->frameIt); + delete world(x,y)->construction; + world(x,y)->construction = this; + } +} + +void Transport::list_traffic(int *i) +{ + std::map<Commodities, int>::iterator stuff_it; + for(stuff_it = trafficCount.begin() ; stuff_it != trafficCount.end() ; stuff_it++) + { + if(*i < 14) + { mps_store_sfp((*i)++, commodityNames[stuff_it->first], (float) stuff_it->second * 107.77 * TRANSPORT_RATE / TRANSPORT_QUANTA);} + } +} + +void Transport::report() +{ + int i = 0; + + mps_store_sd(i++, constructionGroup->name, subgroupID); + i++; + if(mps_map_page == 1) + { + mps_store_title(i++, _("Traffic") ); + list_traffic(&i); + } + else + { + mps_store_title(i++, _("Commodities") ); + list_commodities(&i); + } +} + +void Transport::playSound() +{ + if(soundGroup->sounds_loaded) + { + unsigned short g = constructionGroup->group; + if ((g == GROUP_ROAD) || (g == GROUP_ROAD_BRIDGE)) + { + int avg = 0; + std::map<Commodities, int>::iterator stuff_it; + for(stuff_it = trafficCount.begin() ; stuff_it != trafficCount.end() ; stuff_it++) + { avg += (stuff_it->second * 107 * TRANSPORT_RATE / TRANSPORT_QUANTA);} + if(avg > 0) //equiv to size > 0 + { avg /= trafficCount.size();} + int num_sounds = soundGroup->chunks.size()/2; + if(avg > 5) + { getSound()->playASound(soundGroup->chunks[rand()%num_sounds]);} + else + { getSound()->playASound(soundGroup->chunks[num_sounds+rand()%num_sounds]);} + } + else + { + int s = soundGroup->chunks.size(); + getSound()->playASound(soundGroup->chunks[rand()%s]); + } + } +} + + +/** @file lincity/modules/track_road_rail_powerline.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/track_road_rail.h lincity-ng-2.9~git20150314/src/lincity/modules/track_road_rail.h --- lincity-ng-2.0/src/lincity/modules/track_road_rail.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/track_road_rail.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,228 @@ +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" +#include "../transport.h" + +#include "SDL.h" + +class Transport; + +class TransportConstructionGroup: public ConstructionGroup { +public: + TransportConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) + { + switch (group) + { + case GROUP_TRACK: + case GROUP_TRACK_BRIDGE: + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_ON_TRACK; + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_ON_TRACK; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_ON_TRACK; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_ON_TRACK; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_ON_TRACK; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_ON_TRACK; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_ON_TRACK; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_ON_TRACK; + commodityRuleCount[Construction::STUFF_WATER].maxload = MAX_WATER_ON_TRACK; + break; + case GROUP_ROAD: + case GROUP_ROAD_BRIDGE: + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_ON_ROAD; + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_ON_ROAD; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_ON_ROAD; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_ON_ROAD; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_ON_ROAD; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_ON_ROAD; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_ON_ROAD; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_ON_ROAD; + commodityRuleCount[Construction::STUFF_WATER].maxload = MAX_WATER_ON_ROAD; + break; + case GROUP_RAIL: + case GROUP_RAIL_BRIDGE: + commodityRuleCount[Construction::STUFF_FOOD].maxload = MAX_FOOD_ON_RAIL; + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_ON_RAIL; + commodityRuleCount[Construction::STUFF_COAL].maxload = MAX_COAL_ON_RAIL; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_ON_RAIL; + commodityRuleCount[Construction::STUFF_ORE].maxload = MAX_ORE_ON_RAIL; + commodityRuleCount[Construction::STUFF_STEEL].maxload = MAX_STEEL_ON_RAIL; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_ON_RAIL; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_ON_RAIL; + commodityRuleCount[Construction::STUFF_WATER].maxload = MAX_WATER_ON_RAIL; + break; + } // end switch group + commodityRuleCount[Construction::STUFF_FOOD].take = true; + commodityRuleCount[Construction::STUFF_FOOD].give = true; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = true; + commodityRuleCount[Construction::STUFF_COAL].take = true; + commodityRuleCount[Construction::STUFF_COAL].give = true; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = true; + commodityRuleCount[Construction::STUFF_ORE].take = true; + commodityRuleCount[Construction::STUFF_ORE].give = true; + commodityRuleCount[Construction::STUFF_STEEL].take = true; + commodityRuleCount[Construction::STUFF_STEEL].give = true; + commodityRuleCount[Construction::STUFF_WASTE].take = true; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + commodityRuleCount[Construction::STUFF_KWH].take = true; + commodityRuleCount[Construction::STUFF_KWH].give = true; + commodityRuleCount[Construction::STUFF_WATER].take = true; + commodityRuleCount[Construction::STUFF_WATER].give = true; + } + // overriding method that creates a transport tile + virtual Construction *createConstruction(int x, int y); +}; + +extern TransportConstructionGroup trackConstructionGroup, roadConstructionGroup, railConstructionGroup; +extern TransportConstructionGroup trackbridgeConstructionGroup, roadbridgeConstructionGroup, railbridgeConstructionGroup; + +//Dummies for counting SubTypes of Transport +class Track{}; +class Road{}; +class Rail{}; +class TrackBridge{}; +class RoadBridge{}; +class RailBridge{}; + +class Transport : public RegisteredConstruction<Transport> { // Transport inherits from countedConstruction +public: + Transport(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Transport>(x, y) + { + unsigned short group = cstgrp->group; + this->anim = 0; + this->burning_waste = false; + // register the construction as transport tile + // disable evacuation + //transparency is set and updated in connect_transport + this->flags |= (FLAG_IS_TRANSPORT | FLAG_NEVER_EVACUATE); +# ifdef DEBUG + Uint8 *keystate = SDL_GetKeyState(NULL); + if (world(x,y)->is_water() || keystate[SDLK_LSHIFT] || keystate[SDLK_RSHIFT] )//we build bridges on water +#else + if (world(x,y)->is_water()) +#endif + { + switch (group) + { + case GROUP_TRACK: + group = GROUP_TRACK_BRIDGE; + break; + case GROUP_ROAD: + group = GROUP_ROAD_BRIDGE; + break; + case GROUP_RAIL: + group = GROUP_RAIL_BRIDGE; + break; + } + } + else // we dont build bridges anywhere else + { + switch (group) + { + case GROUP_TRACK_BRIDGE: + group = GROUP_TRACK; + break; + case GROUP_ROAD_BRIDGE: + group = GROUP_ROAD; + break; + case GROUP_RAIL_BRIDGE: + group = GROUP_RAIL; + break; + } + } + + switch (group) //here we build according to terrain + { + case GROUP_TRACK: + constructionGroup = &trackConstructionGroup; + countedTrack = new Counted<Track>(); + this->subgroupID = countedTrack->getNextId(); + break; + case GROUP_TRACK_BRIDGE: + constructionGroup = &trackbridgeConstructionGroup; + countedTrackBridge = new Counted<TrackBridge>(); + this->subgroupID = countedTrackBridge->getNextId(); + break; + case GROUP_ROAD: + constructionGroup = &roadConstructionGroup; + countedRoad = new Counted<Road>(); + this->subgroupID = countedRoad->getNextId(); + break; + case GROUP_ROAD_BRIDGE: + constructionGroup = &roadbridgeConstructionGroup; + countedRoadBridge = new Counted<RoadBridge>(); + this->subgroupID = countedRoadBridge->getNextId(); + break; + case GROUP_RAIL: + constructionGroup = &railConstructionGroup; + countedRail = new Counted<Rail>(); + this->subgroupID = countedRail->getNextId(); + break; + case GROUP_RAIL_BRIDGE: + constructionGroup = &railbridgeConstructionGroup; + countedRailBridge = new Counted<RailBridge>(); + this->subgroupID = countedRailBridge->getNextId(); + break; + default : + std::cout << "invalid transport group,x,y " + << ", " << group << ", " + << x << ", " << y << ", " << std::endl; + assert(false); + } + init_resources(); + + initialize_commodities(); + this->trafficCount = this->commodityCount; + } + ~Transport() + { + switch (constructionGroup->group) + { + case GROUP_TRACK: + delete countedTrack; + break; + case GROUP_TRACK_BRIDGE: + delete countedTrackBridge; + break; + case GROUP_ROAD: + delete countedRoad; + break; + case GROUP_ROAD_BRIDGE: + delete countedRoadBridge; + break; + case GROUP_RAIL: + delete countedRail; + break; + case GROUP_RAIL_BRIDGE: + delete countedRailBridge; + break; + default: + std::cout << "counting error in Transport IDs" << std::endl; + break; + } + } + Counted<Track> *countedTrack; + Counted<Road> *countedRoad; + Counted<Rail> *countedRail; + Counted<TrackBridge> *countedTrackBridge; + Counted<RoadBridge> *countedRoadBridge; + Counted<RailBridge> *countedRailBridge; + virtual void update(); + virtual void report(); + virtual void playSound(); //override random sound + std::map<Commodities, int> trafficCount; + void list_traffic( int* i); + int subgroupID; + int anim; + bool burning_waste; +}; + diff -Nru lincity-ng-2.0/src/lincity/modules/university.cpp lincity-ng-2.9~git20150314/src/lincity/modules/university.cpp --- lincity-ng-2.0/src/lincity/modules/university.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/university.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -5,65 +5,61 @@ * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -//#include "../lcconfig.h" #include "university.h" -void do_university(int x, int y) +// university place: +UniversityConstructionGroup universityConstructionGroup( + N_("University"), + TRUE, /* need credit? */ + GROUP_UNIVERSITY, + GROUP_UNIVERSITY_SIZE, + GROUP_UNIVERSITY_COLOUR, + GROUP_UNIVERSITY_COST_MUL, + GROUP_UNIVERSITY_BUL_COST, + GROUP_UNIVERSITY_FIREC, + GROUP_UNIVERSITY_COST, + GROUP_UNIVERSITY_TECH, + GROUP_UNIVERSITY_RANGE +); + +Construction *UniversityConstructionGroup::createConstruction(int x, int y) { + return new University(x, y, this); +} + +void University::update() { - /* - // You need UNIVERSITY_JOBS and UNIVERSITY_GOODS to add 1 to tech_level - // int_1 is the stored jobs - // int_2 is the stored goods - // int_3 is the total tech points made by this uni. - // int_4 is the count so far in this 100 days - // int_5 is the count in the last 100 days to give a percent value - // get some jobs - */ - if (MP_INFO(x, y).int_1 < UNIVERSITY_JOBS_STORE) { - if (get_jobs(x, y, UNIVERSITY_JOBS + 10) != 0) - MP_INFO(x, y).int_1 += UNIVERSITY_JOBS + 10; - } - /* get goods */ - if (MP_INFO(x, y).int_2 < UNIVERSITY_GOODS_STORE) { - if (get_goods(x, y, UNIVERSITY_GOODS + 10) != 0) - MP_INFO(x, y).int_2 += UNIVERSITY_GOODS + 10; - else if (get_goods(x, y, UNIVERSITY_GOODS / 5) != 0) - MP_INFO(x, y).int_2 += UNIVERSITY_GOODS / 5; - else if (get_goods(x, y, UNIVERSITY_GOODS / 20) != 0) - MP_INFO(x, y).int_2 += UNIVERSITY_GOODS / 20; - } - /* now do some research */ - if (MP_INFO(x, y).int_1 >= UNIVERSITY_JOBS && MP_INFO(x, y).int_2 >= UNIVERSITY_GOODS) { - MP_INFO(x, y).int_1 -= UNIVERSITY_JOBS; - MP_INFO(x, y).int_2 -= UNIVERSITY_GOODS; - goods_used += UNIVERSITY_GOODS; - if (university_intake_rate >= (total_time % 100)) { - MP_INFO(x, y).int_3 += UNIVERSITY_TECH_MADE; - tech_level += UNIVERSITY_TECH_MADE; - MP_INFO(x, y).int_4++; - } + university_cost += UNIVERSITY_RUNNING_COST; + //do the teaching + if (commodityCount[STUFF_JOBS] >= UNIVERSITY_JOBS + && commodityCount[STUFF_GOODS] >= UNIVERSITY_GOODS + && commodityCount[STUFF_WASTE] + UNIVERSITY_GOODS / 3 <= MAX_WASTE_AT_UNIVERSITY) + { + commodityCount[STUFF_JOBS] -= UNIVERSITY_JOBS; + commodityCount[STUFF_GOODS] -= UNIVERSITY_GOODS; + commodityCount[STUFF_WASTE] += UNIVERSITY_GOODS / 3; + ++working_days; + tech_level += UNIVERSITY_TECH_MADE; + total_tech_made += UNIVERSITY_TECH_MADE; } - if (total_time % 100 == 0) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_4; - MP_INFO(x, y).int_4 = 0; + //monthly update + if ((total_time % 100) == 0) + { + busy = working_days; + working_days = 0; } - university_cost += UNIVERSITY_RUNNING_COST; } -void mps_university(int x, int y) +void University::report() { int i = 0; - char s[12]; - - mps_store_title(i++, _("University")); + mps_store_sd(i++, constructionGroup->name, ID); i++; - mps_store_title(i++, _("Tech Produced")); - snprintf(s, sizeof(s), "%6.1f", MP_INFO(x, y).int_3 * 100.0 / MAX_TECH_LEVEL); - mps_store_title(i++, s); + mps_store_sfp(i++, N_("busy"), busy); + mps_store_sfp(i++, N_("Tech researched"), total_tech_made * 100.0 / MAX_TECH_LEVEL); i++; - mps_store_title(i++, _("Inventory")); - mps_store_sfp(i++, _("Jobs"), MP_INFO(x, y).int_1 * 100.0 / UNIVERSITY_JOBS_STORE); - mps_store_sfp(i++, _("Goods"), MP_INFO(x, y).int_2 * 100.0 / UNIVERSITY_GOODS_STORE); - mps_store_sfp(i++, _("Capacity"), MP_INFO(x, y).int_4); + list_commodities(&i); } + + +/** @file lincity/modules/university.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/university.h lincity-ng-2.9~git20150314/src/lincity/modules/university.h --- lincity-ng-2.0/src/lincity/modules/university.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/university.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,74 @@ -/* ---------------------------------------------------------------------- * - * university.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_UNIVERSITY_COLOUR (blue(22)) +#define GROUP_UNIVERSITY_COST 20000 +#define GROUP_UNIVERSITY_COST_MUL 25 +#define GROUP_UNIVERSITY_BUL_COST 20000 +#define GROUP_UNIVERSITY_TECH 150 +#define GROUP_UNIVERSITY_FIREC 40 +#define GROUP_UNIVERSITY_RANGE 0 +#define GROUP_UNIVERSITY_SIZE 3 -#ifndef __university_h__ -#define __university_h__ +#define UNIVERSITY_JOBS 250 +#define UNIVERSITY_GOODS 750 +#define UNIVERSITY_RUNNING_COST 23 +#define UNIVERSITY_TECH_MADE 4 -void do_university(int x, int y); -void mps_university(int x, int y); +#define MAX_JOBS_AT_UNIVERSITY (20 * UNIVERSITY_JOBS) +#define MAX_GOODS_AT_UNIVERSITY (20 * UNIVERSITY_GOODS) +#define MAX_WASTE_AT_UNIVERSITY (20 * UNIVERSITY_GOODS / 3) + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + + +class UniversityConstructionGroup: public ConstructionGroup { +public: + UniversityConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_UNIVERSITY; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_GOODS].maxload = MAX_GOODS_AT_UNIVERSITY; + commodityRuleCount[Construction::STUFF_GOODS].take = true; + commodityRuleCount[Construction::STUFF_GOODS].give = false; + commodityRuleCount[Construction::STUFF_WASTE].maxload = MAX_WASTE_AT_UNIVERSITY; + commodityRuleCount[Construction::STUFF_WASTE].take = false; + commodityRuleCount[Construction::STUFF_WASTE].give = true; + } + // overriding method that creates a University + virtual Construction *createConstruction(int x, int y); +}; + +extern UniversityConstructionGroup universityConstructionGroup; + +class University: public RegisteredConstruction<University> { // university inherits from its own RegisteredConstruction +public: + University(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<University>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->working_days = 0; + this->busy = 0; + this->total_tech_made = 0; + setMemberSaved(&this->total_tech_made, "total_tech_made"); + initialize_commodities(); + } + virtual ~University() { } + virtual void update(); + virtual void report(); + + int total_tech_made; + int working_days, busy; +}; + + +/** @file lincity/modules/university.h */ -#endif /* __university_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/water.cpp lincity-ng-2.9~git20150314/src/lincity/modules/water.cpp --- lincity-ng-2.0/src/lincity/modules/water.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/water.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -7,28 +7,34 @@ #include "modules.h" #include "water.h" +#include "all_buildings.h" void mps_water(int x, int y) { int i; const char *p; - for(i = 0; i < MPS_PARAGRAPH_COUNT; ++i) - mps_store_title( i, "" ); - i = 0; - mps_store_title(i++, _("Water")); + mps_store_sdd(i++, waterConstructionGroup.name, x, y); i++; - p = (MP_INFO(x, y).flags & FLAG_IS_RIVER) ? _("Yes") : _("No"); - mps_store_ss(i++, _("Navigable"), p); - + if ( world(x,y)->flags & FLAG_IS_LAKE ) + { p = N_("Lake");} + else if ( world(x,y)->flags & FLAG_IS_RIVER ) + { p = N_("River");} + else + { p = N_("Pond");} + mps_store_title(i++, p); +/* #ifdef DEBUG - mps_store_sd(10, "x = ", x); - mps_store_sd(11, "y = ", y); - mps_store_sd(12, "altitude = ", ALT(x, y)); + mps_store_sd(10, "x", x); + mps_store_sd(11, "y", y); + mps_store_sd(12, "altitude", world(x,y)->ground.altitude); - fprintf(stderr, "water x %i, y %i, Alt %i\n", x, y, ALT(x,y)); + fprintf(stderr, "water x %i, y %i, Alt %i\n", x, y, world(x,y)->ground.altitude); #endif - +*/ } + +/** @file lincity/modules/water.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/water.h lincity-ng-2.9~git20150314/src/lincity/modules/water.h --- lincity-ng-2.0/src/lincity/modules/water.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/water.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,13 +0,0 @@ -/* ---------------------------------------------------------------------- * - * water.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __water_h__ -#define __water_h__ - -void mps_water(int x, int y); - -#endif /* __water_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/waterwell.cpp lincity-ng-2.9~git20150314/src/lincity/modules/waterwell.cpp --- lincity-ng-2.0/src/lincity/modules/waterwell.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/waterwell.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -6,60 +6,67 @@ * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. - * + * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. - * + * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "modules.h" #include "waterwell.h" -void do_waterwell_cover(int x, int y) +WaterwellConstructionGroup waterwellConstructionGroup( + N_("Water tower"), + FALSE, /* need credit? */ + GROUP_WATERWELL, + GROUP_WATERWELL_SIZE, + GROUP_WATERWELL_COLOUR, + GROUP_WATERWELL_COST_MUL, + GROUP_WATERWELL_BUL_COST, + GROUP_WATERWELL_FIREC, + GROUP_WATERWELL_COST, + GROUP_WATERWELL_TECH, + GROUP_WATERWELL_RANGE +); + +Construction *WaterwellConstructionGroup::createConstruction(int x, int y) { + return new Waterwell(x, y, this); +} + +void Waterwell::update() { - int xx, x1, x2, y1, y2; -#ifdef DEBUG_WATERWELL - if (use_waterwell) - fprintf(stderr, " doing waterwell cover\n"); - else - return; -#endif - - x1 = x - WATERWELL_RANGE; - if (x1 < 0) - x1 = 0; - x2 = x + WATERWELL_RANGE; - if (x2 > WORLD_SIDE_LEN) - x2 = WORLD_SIDE_LEN; - y1 = y - WATERWELL_RANGE; - if (y1 < 0) - y1 = 0; - y2 = y + WATERWELL_RANGE; - if (y2 > WORLD_SIDE_LEN) - y2 = WORLD_SIDE_LEN; - for (; y1 < y2; y1++) - for (xx = x1; xx < x2; xx++) - MP_INFO(xx, y1).flags |= FLAG_WATERWELL_COVER; + if(commodityCount[STUFF_WATER] + water_output <= MAX_WATER_AT_WATERWELL) + { + working_days++; + commodityCount[STUFF_WATER] += water_output; + } + //monthly update + if ((total_time % 100) == 0) + { + busy = working_days; + working_days = 0; + } } -void mps_waterwell(int x, int y) +void Waterwell::report() { int i = 0; const char *p; - mps_store_title(i++, _("Water_well")); - i++; /* blank line */ - - mps_store_sd(i++, _("Pollution"), MP_POL(x, y)); + mps_store_sd(i++, constructionGroup->name, ID); + i++; + mps_store_sddp(i++, N_("Fertility"), ugwCount, constructionGroup->size * constructionGroup->size); + mps_store_sfp(i++, N_("busy"), busy); + mps_store_sddp(i++, N_("Air Pollution"), world(x,y)->pollution, MAX_POLLUTION_AT_WATERWELL); + p = world(x,y)->pollution>MAX_POLLUTION_AT_WATERWELL?N_("No"):N_("Yes"); + mps_store_ss(i++, N_("Drinkable"), p); + list_commodities(&i); +} - /* p = (MP_INFO(x,y).flags & FLAG_IS_RIVER) ? _("Yes") : _("No"); */ - p = _("Yes"); - mps_store_ss(i++, _("Drinkable"), p); +/** @file lincity/modules/waterwell.cpp */ -} diff -Nru lincity-ng-2.0/src/lincity/modules/waterwell.h lincity-ng-2.9~git20150314/src/lincity/modules/waterwell.h --- lincity-ng-2.0/src/lincity/modules/waterwell.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/waterwell.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,16 +1,69 @@ -/* ---------------------------------------------------------------------- * - * water.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ - -#ifndef __waterwell_h__ -#define __waterwell_h__ +#define GROUP_WATERWELL_COLOUR (blue(31)) +#define GROUP_WATERWELL_COST 1 +#define GROUP_WATERWELL_COST_MUL 2 +#define GROUP_WATERWELL_BUL_COST 1 +#define GROUP_WATERWELL_TECH 0 +#define GROUP_WATERWELL_FIREC 0 +#define GROUP_WATERWELL_RANGE 0 +#define GROUP_WATERWELL_SIZE 2 -#undef DEBUG_WATERWELL +#define MAX_POLLUTION_AT_WATERWELL 3000 +#define WATER_PER_UGW 400 +#define MAX_WATER_AT_WATERWELL (20 * WATER_PER_UGW * GROUP_WATERWELL_SIZE * GROUP_WATERWELL_SIZE) +#include "modules.h" -void do_waterwell_cover(int x, int y); -void mps_waterwell(int x, int y); +class WaterwellConstructionGroup: public ConstructionGroup { +public: + WaterwellConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_WATER].maxload = MAX_WATER_AT_WATERWELL; + commodityRuleCount[Construction::STUFF_WATER].give = true; + commodityRuleCount[Construction::STUFF_WATER].take = false; + } + // overriding method that creates a waterwell + virtual Construction *createConstruction(int x, int y); +}; + +extern WaterwellConstructionGroup waterwellConstructionGroup; + +class Waterwell: public RegisteredConstruction<Waterwell> { // waterwell inherits from its own RegisteredConstruction +public: + Waterwell(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Waterwell>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->busy = 0; + this->working_days = 0; + initialize_commodities(); + int w = 0; + for (int i = 0; i < constructionGroup->size; i++) + { + for (int j = 0; j < constructionGroup->size; j++) + { + if (world(x+j, y+i)->flags & FLAG_HAS_UNDERGROUND_WATER) + w++; + }// end j + }//end i + this->ugwCount = w; + this->water_output = w * WATER_PER_UGW; + } + + virtual ~Waterwell() { } + virtual void update(); + virtual void report(); + + int water_output; + int ugwCount; + int working_days, busy; +}; + +/** @file lincity/modules/waterwell.h */ -#endif /* __waterwell_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/windmill.cpp lincity-ng-2.9~git20150314/src/lincity/modules/windmill.cpp --- lincity-ng-2.0/src/lincity/modules/windmill.cpp 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/windmill.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -4,98 +4,70 @@ * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * (c) Corey Keasling, 2004 * ---------------------------------------------------------------------- */ -#include "modules.h" -#include "../power.h" + #include "windmill.h" -/*** Windmills ***/ -/* - // int_1 is the rated capacity - // int_2 unused - // int_3 is the sail count - to choose the right sail. - // int_4 reserved = local power demand for substations (like substations) - // int_5 is the power produced (basically _if_ power produced) - // int_6 is the grid it's on - // int_7 is a timestamp for mapping - // - // MP_ANIM(x,y) is the last real time that a sail was turned (since 1.91) - // MP_TECH(x,y) is the tech_level at build time -*/ -void do_windmill(int x, int y) -{ - int anim_tile; - if (get_jobs(x, y, WINDMILL_JOBS) != 0) { - MP_INFO(x, y).int_5 = MP_INFO(x, y).int_1; - grid[MP_INFO(x, y).int_6]->avail_power += MP_INFO(x, y).int_1; - } else { - MP_INFO(x,y).int_5 = 0; - MP_ANIM(x, y) = real_time + MODERN_WINDMILL_ANIM_SPEED; - return; - } - - /* update animation */ - if (real_time > MP_ANIM(x , y)) { - MP_INFO(x, y).int_3++; - if (MP_TECH(x, y) < MODERN_WINDMILL_TECH) { - MP_ANIM(x,y) = real_time + ANTIQUE_WINDMILL_ANIM_SPEED; - } else { - MP_ANIM(x,y) = real_time + MODERN_WINDMILL_ANIM_SPEED; - } - } +WindmillConstructionGroup windmillConstructionGroup( + N_("Windmill"), + FALSE, /* need credit? */ + GROUP_WINDMILL, + GROUP_WINDMILL_SIZE, + GROUP_WINDMILL_COLOUR, + GROUP_WINDMILL_COST_MUL, + GROUP_WINDMILL_BUL_COST, + GROUP_WINDMILL_FIREC, + GROUP_WINDMILL_COST, + GROUP_WINDMILL_TECH, + GROUP_WINDMILL_RANGE +); - /* figure out which tile to use */ - anim_tile = (MP_INFO(x, y).int_3 % 3); +Construction *WindmillConstructionGroup::createConstruction(int x, int y) { + return new Windmill(x, y, this); +} - if (MP_TECH(x, y) < MODERN_WINDMILL_TECH) - MP_TYPE(x, y) = CST_WINDMILL_1_W + anim_tile; +void Windmill::update() +{ + if (!(total_time%(WINDMILL_RCOST))) + { windmill_cost++;} + int kwh_made = (commodityCount[STUFF_KWH] + kwh_output <= MAX_KWH_AT_WINDMILL)?kwh_output:MAX_KWH_AT_WINDMILL-commodityCount[STUFF_KWH]; + int jobs_used = WINDMILL_JOBS * kwh_made / kwh_output; + + if ((commodityCount[STUFF_JOBS] >= jobs_used) + && (kwh_made >= WINDMILL_KWH)) + { + commodityCount[STUFF_JOBS] -= jobs_used; + commodityCount[STUFF_KWH] += kwh_made; + animate = true; + working_days += kwh_made; + } else - switch (grid[MP_INFO(x, y).int_6]->powered) { - case -1: - MP_TYPE(x, y) = CST_WINDMILL_1_R + anim_tile; - break; - case 0: - MP_TYPE(x, y) = CST_WINDMILL_1_RG + anim_tile; - break; - case 1: - MP_TYPE(x, y) = CST_WINDMILL_1_G + anim_tile; - break; - default: - printf("Default case in do_power_substation\n"); - break; - } + { animate = false;} + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + //Animation + if (animate && (real_time > anim)) + { + ++(frameIt->frame); + frameIt->frame %= 3; + anim = real_time + ANTIQUE_WINDMILL_ANIM_SPEED; + } } -void mps_windmill(int x, int y) +void Windmill::report() { int i = 0; - char s[12]; - - mps_store_title(i++, _("Windmill")); - mps_store_sfp(i++, _("Tech"), (MP_TECH(x, y) * 100.0) / MAX_TECH_LEVEL); - mps_store_sfp(i++, _("Jobs"), (MP_INFO(x, y).int_5 * 100.0) / MP_INFO(x, y).int_1); // either 0 or 100% + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), float(busy) / kwh_output); + mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); + mps_store_sd(i++, N_("Output"), kwh_output); i++; + list_commodities(&i); +} - if (MP_TECH(x, y) >= MODERN_WINDMILL_TECH) { - mps_store_title(i++, _("Local Status")); - - format_power(s, sizeof(s), MP_INFO(x, y).int_5); - mps_store_ss(i++, _("Prod."), s); - - format_power(s, sizeof(s), MP_INFO(x, y).int_4); - mps_store_ss(i++, _("Demand"), s); - i++; - - mps_store_title(i++, _("Grid Status")); - - format_power(s, sizeof(s), grid[MP_INFO(x, y).int_6]->max_power); - mps_store_ss(i++, _("T. Cap."), s); - - format_power(s, sizeof(s), grid[MP_INFO(x, y).int_6]->avail_power); - mps_store_ss(i++, _("A. Cap."), s); +/** @file lincity/modules/windmill.cpp */ - format_power(s, sizeof(s), grid[MP_INFO(x, y).int_6]->demand); - mps_store_ss(i++, _("Demand"), s); - mps_store_sd(i++, _("Grid ID"), MP_INFO(x, y).int_6); - } -} diff -Nru lincity-ng-2.0/src/lincity/modules/windmill.h lincity-ng-2.9~git20150314/src/lincity/modules/windmill.h --- lincity-ng-2.0/src/lincity/modules/windmill.h 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/windmill.h 2015-05-05 16:32:51.000000000 +0000 @@ -1,14 +1,78 @@ -/* ---------------------------------------------------------------------- * - * windmill.h - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling, 2004 - * ---------------------------------------------------------------------- */ +#define GROUP_WINDMILL_COLOUR (green(25)) +#define GROUP_WINDMILL_COST 20000 +#define GROUP_WINDMILL_COST_MUL 25 +#define GROUP_WINDMILL_BUL_COST 1000 +#define GROUP_WINDMILL_TECH 30 +#define GROUP_WINDMILL_FIREC 10 +#define GROUP_WINDMILL_RANGE 0 +#define GROUP_WINDMILL_SIZE 2 -#ifndef __windmill_h__ -#define __windmill_h__ +#define WINDMILL_KWH 450 +#define WINDMILL_JOBS 10 +#define MAX_JOBS_AT_WINDMILL 20*(WINDMILL_JOBS) +#define MAX_KWH_AT_WINDMILL 20*(WINDMILL_KWH) +/* WINDMILL_RCOST is days per quid */ +#define WINDMILL_RCOST 4 +#define ANTIQUE_WINDMILL_ANIM_SPEED 80 -void do_windmill(int x, int y); -void mps_windmill(int x, int y); +#define MODERN_WINDMILL_TECH 450000 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class WindmillConstructionGroup: public ConstructionGroup { +public: + WindmillConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_WINDMILL; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_KWH].maxload = MAX_KWH_AT_WINDMILL; + commodityRuleCount[Construction::STUFF_KWH].take = false; + commodityRuleCount[Construction::STUFF_KWH].give = true; + } + // overriding method that creates a Windmill + virtual Construction *createConstruction(int x, int y); +}; + +extern WindmillConstructionGroup windmillConstructionGroup; + +class Windmill: public RegisteredConstruction<Windmill> { // Windmill inherits from its own RegisteredConstruction +public: + Windmill(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Windmill>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->animate = false; + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->working_days = 0; + this->busy = 0; + this->kwh_output = (int)(WINDMILL_KWH + (((double)tech_level * WINDMILL_KWH) / MAX_TECH_LEVEL)); + setMemberSaved(&this->kwh_output, "kwh_output"); + initialize_commodities(); + } + + virtual ~Windmill() { } + virtual void update(); + virtual void report(); + + int kwh_output; + int tech; + int anim; + int working_days, busy; + bool animate; +}; + +/** @file lincity/modules/windmill.h */ -#endif /* __windmill_h__ */ diff -Nru lincity-ng-2.0/src/lincity/modules/windpower.cpp lincity-ng-2.9~git20150314/src/lincity/modules/windpower.cpp --- lincity-ng-2.0/src/lincity/modules/windpower.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/windpower.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,83 @@ +/* ---------------------------------------------------------------------- * + * windpower.cpp + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * (c) Corey Keasling, 2004 + * ---------------------------------------------------------------------- */ + +#include "windpower.h" + +WindpowerConstructionGroup windpowerConstructionGroup( + N_("Wind Power"), + TRUE, /* need credit? */ + GROUP_WIND_POWER, + GROUP_WIND_POWER_SIZE, + GROUP_WIND_POWER_COLOUR, + GROUP_WIND_POWER_COST_MUL, + GROUP_WIND_POWER_BUL_COST, + GROUP_WIND_POWER_FIREC, + GROUP_WIND_POWER_COST, + GROUP_WIND_POWER_TECH, + GROUP_WIND_POWER_RANGE +); + +//WindpowerConstructionGroup windpower_RG_ConstructionGroup = windpowerConstructionGroup; +//WindpowerConstructionGroup windpower_G_ConstructionGroup = windpowerConstructionGroup; + +Construction *WindpowerConstructionGroup::createConstruction(int x, int y) { + return new Windpower(x, y, this); +} + +void Windpower::update() +{ + if (!(total_time%(WIND_POWER_RCOST))) + { windmill_cost++;} + int mwh_made = (commodityCount[STUFF_MWH] + mwh_output <= MAX_MWH_AT_WIND_POWER)?mwh_output:MAX_MWH_AT_WIND_POWER-commodityCount[STUFF_MWH]; + int jobs_used = WIND_POWER_JOBS * mwh_made/mwh_output; + + if ((commodityCount[STUFF_JOBS] >= jobs_used) + && mwh_made > WIND_POWER_MWH) + { + commodityCount[STUFF_JOBS] -= jobs_used; + commodityCount[STUFF_MWH] += mwh_made; + animate = true; + working_days += mwh_made; + } + else + { animate = false;} + //monthly update + if (total_time % 100 == 0) + { + busy = working_days; + working_days = 0; + } + //Animation + if (animate && (real_time > anim)) + { + ++(frameIt->frame); + frameIt->frame %= 3; + anim = real_time + WIND_POWER_ANIM_SPEED; + if (commodityCount[STUFF_MWH] > MAX_MWH_AT_WIND_POWER/2) + { frameIt->resourceGroup = ResourceGroup::resMap["WindMillHTechG"];} + else if (commodityCount[STUFF_MWH] > MAX_MWH_AT_WIND_POWER/10) + { frameIt->resourceGroup = ResourceGroup::resMap["WindMillHTechRG"];} + else + { frameIt->resourceGroup = ResourceGroup::resMap["WindMillHTech"];} + soundGroup = frameIt->resourceGroup; + } +} + + +void Windpower::report() +{ + int i = 0; + mps_store_sd(i++, constructionGroup->name, ID); + mps_store_sfp(i++, N_("busy"), float(busy) / mwh_output); + mps_store_sfp(i++, N_("Tech"), (tech * 100.0) / MAX_TECH_LEVEL); + mps_store_sd(i++, N_("Output"), mwh_output); + i++; + list_commodities(&i); +} + +/** @file lincity/modules/windpower.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/modules/windpower.h lincity-ng-2.9~git20150314/src/lincity/modules/windpower.h --- lincity-ng-2.0/src/lincity/modules/windpower.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/modules/windpower.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,80 @@ + +#define GROUP_WIND_POWER_COLOUR (green(25)) +#define GROUP_WIND_POWER_COST 20000 +#define GROUP_WIND_POWER_COST_MUL 25 +#define GROUP_WIND_POWER_BUL_COST 1000 +#define GROUP_WIND_POWER_TECH 30 +#define GROUP_WIND_POWER_FIREC 10 +#define GROUP_WIND_POWER_RANGE 0 +#define GROUP_WIND_POWER_SIZE 2 + +#define WIND_POWER_MWH 450 +#define WIND_POWER_JOBS 15 +#define MAX_JOBS_AT_WIND_POWER 20*(WIND_POWER_JOBS) +#define MAX_MWH_AT_WIND_POWER 20*(WIND_POWER_MWH) +/* WIND_POWER_RCOST is days per quid */ +#define WIND_POWER_RCOST 2 +#define WIND_POWER_ANIM_SPEED 80 + +#define WIND_POWER_TECH 450000 + +#include "modules.h" +#include "../lintypes.h" +#include "../lctypes.h" + +class WindpowerConstructionGroup: public ConstructionGroup { +public: + WindpowerConstructionGroup( + const char *name, + unsigned short no_credit, + unsigned short group, + unsigned short size, int colour, + int cost_mul, int bul_cost, int fire_chance, + int cost, int tech, int range + ): ConstructionGroup( + name, no_credit, group, size, colour, cost_mul, bul_cost, fire_chance, cost, tech, range + ) { + commodityRuleCount[Construction::STUFF_JOBS].maxload = MAX_JOBS_AT_WIND_POWER; + commodityRuleCount[Construction::STUFF_JOBS].take = true; + commodityRuleCount[Construction::STUFF_JOBS].give = false; + commodityRuleCount[Construction::STUFF_MWH].maxload = MAX_MWH_AT_WIND_POWER; + commodityRuleCount[Construction::STUFF_MWH].take = false; + commodityRuleCount[Construction::STUFF_MWH].give = true; + } + // overriding method that creates a Windpower + virtual Construction *createConstruction(int x, int y); +}; + +extern WindpowerConstructionGroup windpowerConstructionGroup; +extern WindpowerConstructionGroup windpower_RG_ConstructionGroup; +extern WindpowerConstructionGroup windpower_G_ConstructionGroup; + +class Windpower: public RegisteredConstruction<Windpower> { // Windpower inherits from its own RegisteredConstruction +public: + Windpower(int x, int y, ConstructionGroup *cstgrp): RegisteredConstruction<Windpower>(x, y) + { + this->constructionGroup = cstgrp; + init_resources(); + this->anim = 0; + this->animate = false; + this->tech = tech_level; + setMemberSaved(&this->tech, "tech"); + this->working_days = 0; + this->busy = 0; + this->mwh_output = (int)(WIND_POWER_MWH + (((double)tech_level * WIND_POWER_MWH) / MAX_TECH_LEVEL)); + setMemberSaved(&this->mwh_output, "mwh_output"); + initialize_commodities(); + } + virtual ~Windpower() { } + virtual void update(); + virtual void report(); + + int mwh_output; + int tech; + int anim; + int working_days, busy; + bool animate; +}; + +/** @file lincity/modules/windmill.h */ + diff -Nru lincity-ng-2.0/src/lincity/old_ldsvguts.cpp lincity-ng-2.9~git20150314/src/lincity/old_ldsvguts.cpp --- lincity-ng-2.0/src/lincity/old_ldsvguts.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/old_ldsvguts.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -3,7 +3,7 @@ * This file is part of lincity-ng. * ---------------------------------------------------------------------- */ -/* This file is for loading old games (before NG 1.91) +/* This file is for loading old games (before NG 1.91) * and convert them to new format + data structure */ @@ -16,6 +16,8 @@ #include "gui_interface/shared_globals.h" #include "stats.h" #include "init_game.h" +#include "all_buildings.h" +#include "modules/all_modules.h" #include <fcntl.h> #include <sys/types.h> @@ -74,7 +76,7 @@ #include "lin-city.h" #include "engglobs.h" #include "fileutil.h" -#include "power.h" +//#include "power.h" #include "gui_interface/pbar_interface.h" #include "lincity-ng/ErrorInterface.hpp" #include "stats.h" @@ -82,6 +84,8 @@ #include "loadsave.h" #include "simulate.h" #include "engine.h" +#include "../lincity-ng/Config.hpp" +//#include "modules/market.h" #if defined (WIN32) && !defined (NDEBUG) #define START_FAST_SPEED 1 @@ -98,7 +102,7 @@ extern void prog_box(const char *, int); extern void print_total_money(void); -extern int count_groups(int); +//extern int count_groups(int); extern void reset_animation_times(void); /* ---------------------------------------------------------------------- * @@ -112,7 +116,6 @@ void load_city_old(char *cname) { - unsigned long q; int i, x, y, n, p; unsigned int z; int num_pbars, pbar_data_size; @@ -127,17 +130,18 @@ gzfile = gzopen(cname, "rb"); if (gzfile == NULL) { - printf(_("Can't open <%s> (gzipped)"), cname); + printf("%s <%s> (%s)",_("Can't open"),cname, _("gzipped")); do_error("Can't open it!"); } /* Initialise additional structure FIXME random village does not go here*/ - for (x = 0; x < WORLD_SIDE_LEN; x++) - for (y = 0; y < WORLD_SIDE_LEN; y++) { +/* + for (x = 0; x < world.len(); x++) + for (y = 0; y < world.len(); y++) { MP_TECH(x,y) = 0; MP_DATE(x,y) = 0; MP_ANIM(x,y) = 0; } - +*/ /* Add version to shared global variables for playing/saving games without waterwell */ sscanf(gzgets(gzfile, s, 256), "%d", &ldsv_version); if (ldsv_version < MIN_LOAD_VERSION) { @@ -152,82 +156,79 @@ use_waterwell = true; init_pbars(); - num_pbars = NUM_PBARS; + num_pbars = OLD_NUM_PBARS; pbar_data_size = PBAR_DATA_SIZE; init_inventory(); - print_time_for_year(); - q = (unsigned long)sizeof(Map_Point_Info); prog_box(_("Loading scene"), 0); - for (x = 0; x < WORLD_SIDE_LEN; x++) { - for (y = 0; y < WORLD_SIDE_LEN; y++) { + for (x = 0; x < world.len(); x++) { + for (y = 0; y < world.len(); y++) { + int dummy; //FIXME hack to pretend reading obsolete data for (z = 0; z < sizeof(int); z++) { sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).population) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } for (z = 0; z < sizeof(int); z++) { sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).flags) + z) = n; + *(((unsigned char *)&world(x, y)->flags) + z) = n; } for (z = 0; z < sizeof(unsigned short); z++) { sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).coal_reserve) + z) = n; + *(((unsigned char *)&world(x, y)->coal_reserve) + z) = n; } for (z = 0; z < sizeof(unsigned short); z++) { sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).ore_reserve) + z) = n; + *(((unsigned char *)&world(x, y)->ore_reserve) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int1 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_1) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int2 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_2) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int3 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_3) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int4 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_4) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int5 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_5) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int6 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_6) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } - for (z = 0; z < sizeof(int); z++) { + for (z = 0; z < sizeof(int); z++) { //int7 sscanf(gzgets(gzfile, s, 256), "%d", &n); - *(((unsigned char *)&MP_INFO(x, y).int_7) + z) = n; + *(((unsigned char *)&dummy) + z) = n; } sscanf(gzgets(gzfile, s, 256), "%d", &n); - MP_POL(x, y) = (unsigned short)n; + world(x, y)->pollution = (unsigned short)n; sscanf(gzgets(gzfile, s, 256), "%d", &n); - MP_TYPE(x, y) = (short)n; + world(x, y)->type = (short)n; - if (get_group_of_type(MP_TYPE(x, y)) == GROUP_MARKET) - inventory(x, y); } - if (((93 * x) / WORLD_SIDE_LEN) % 3 == 0) - prog_box("", (93 * x) / WORLD_SIDE_LEN); + if (((93 * x) / world.len()) % 3 == 0) + prog_box("", (93 * x) / world.len()); } check_endian(); set_map_groups(); sscanf(gzgets(gzfile, s, 256), "%d", &main_screen_originx); sscanf(gzgets(gzfile, s, 256), "%d", &main_screen_originy); - if (main_screen_originx > WORLD_SIDE_LEN - getMainWindowWidth() / 16 - 1) - main_screen_originx = WORLD_SIDE_LEN - getMainWindowWidth() / 16 - 1; + if (main_screen_originx > world.len() - getConfig()->videoX / 16 - 1) + main_screen_originx = world.len() - getConfig()->videoX / 16 - 1; - if (main_screen_originy > WORLD_SIDE_LEN - getMainWindowHeight() / 16 - 1) - main_screen_originy = WORLD_SIDE_LEN - getMainWindowHeight() / 16 - 1; + if (main_screen_originy > world.len() - getConfig()->videoY / 16 - 1) + main_screen_originy = world.len() - getConfig()->videoY / 16 - 1; sscanf(gzgets(gzfile, s, 256), "%d", &total_time); if (ldsv_version <= MM_MS_C_VER) @@ -235,21 +236,21 @@ else i = MAX_NUMOF_SUBSTATIONS; for (x = 0; x < i; x++) { - sscanf(gzgets(gzfile, s, 256), "%d", &substationx[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &substationy[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&substationx[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&substationy[x]); } prog_box("", 92); - sscanf(gzgets(gzfile, s, 256), "%d", &numof_substations); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&numof_substations); if (ldsv_version <= MM_MS_C_VER) i = OLD_MAX_NUMOF_MARKETS; else i = MAX_NUMOF_MARKETS; for (x = 0; x < i; x++) { - sscanf(gzgets(gzfile, s, 256), "%d", &marketx[x]); - sscanf(gzgets(gzfile, s, 256), "%d", &markety[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&marketx[x]); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&markety[x]); } prog_box("", 94); - sscanf(gzgets(gzfile, s, 256), "%d", &numof_markets); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy);//&numof_markets); sscanf(gzgets(gzfile, s, 256), "%d", &people_pool); sscanf(gzgets(gzfile, s, 256), "%d", &total_money); sscanf(gzgets(gzfile, s, 256), "%d", &income_tax_rate); @@ -289,7 +290,7 @@ sscanf(gzgets(gzfile, s, 256), "%d", &i); } for (x = 0; x < i; x++) { - /* If more entries in file than will fit on screen, + /* If more entries in file than will fit on screen, then we need to skip past them. */ if (x >= monthgraph_size) { sscanf(gzgets(gzfile, s, 256), "%d", &dummy); /* &monthgraph_pop[x] */ @@ -328,7 +329,7 @@ for (p = 0; p < num_pbars; p++) { sscanf(gzgets(gzfile, s, 256), "%d", &(pbar_tmp)); update_pbar(p, pbar_tmp, 1); -/* sscanf( gzgets( gzfile, s, 256 ), "%d", &(pbars[p].data[x])); */ +/* sscanf( gzgets( gzfile, s, 256 ), "%d", &(pbars[p].data[x])); */ } } @@ -353,7 +354,7 @@ sscanf(gzgets(gzfile, s, 256), "%d", &total_evacuated); sscanf(gzgets(gzfile, s, 256), "%d", &total_births); for (x = 0; x < NUMOF_MODULES; x++) - sscanf(gzgets(gzfile, s, 256), "%d", &(module_help_flag[x])); + sscanf(gzgets(gzfile, s, 256), "%d", &dummy); sscanf(gzgets(gzfile, s, 256), "%d", &x); /* just dummy reads */ sscanf(gzgets(gzfile, s, 256), "%d", &x); /* for backwards compatibility. */ @@ -370,7 +371,7 @@ else highest_tech_level = 0; - gzgets(gzfile, s, 200); + gzgets(gzfile, s, 200); if (sscanf (s, "sust %d %d %d %d %d %d %d %d %d %d", &sust_dig_ore_coal_count, &sust_port_count, &sust_old_money_count, &sust_old_population_count, &sust_old_tech_count, &sust_fire_count, &sust_old_money, &sust_old_population, @@ -384,56 +385,57 @@ = sust_old_tech_count = sust_fire_count = sust_old_money = sust_old_population = sust_old_tech = 0; if (ldsv_version == WATERWELL_V2) { - gzgets(gzfile, s, 80); + gzgets(gzfile, s, 80); sscanf(s, "arid %d %d", &global_aridity, &global_mountainity); #ifdef DEBUG fprintf(stderr," arid %d, mountain %d \n", global_aridity, global_mountainity); #endif - for (x = 0; x < WORLD_SIDE_LEN; x++) { - for (y = 0; y < WORLD_SIDE_LEN; y++) { - gzgets(gzfile, s, 200); - sscanf(s,"%d %d %d %d %d %d %d %d %d %d %d %d",&(ground[x][y].altitude) - , &ground[x][y].ecotable - , &ground[x][y].wastes - , &ground[x][y].pollution - , &ground[x][y].water_alt - , &ground[x][y].water_pol - , &ground[x][y].water_wast - , &ground[x][y].water_next - , &ground[x][y].int1 - , &ground[x][y].int2 - , &ground[x][y].int3 - , &ground[x][y].int4 + for (x = 0; x < world.len(); x++) { + for (y = 0; y < world.len(); y++) { + gzgets(gzfile, s, 200); + sscanf(s,"%d %d %d %d %d %d %d %d %d %d %d %d",&(world(x, y)->ground.altitude) + , &world(x, y)->ground.ecotable + , &world(x, y)->ground.wastes + , &world(x, y)->ground.pollution + , &world(x, y)->ground.water_alt + , &world(x, y)->ground.water_pol + , &world(x, y)->ground.water_wast + , &world(x, y)->ground.water_next + , &world(x, y)->ground.int1 + , &world(x, y)->ground.int2 + , &world(x, y)->ground.int3 + , &world(x, y)->ground.int4 ); #ifdef DEBUG if (x == 10 && y == 10) - fprintf(stderr," alt %d, int4 %d \n", ground[x][y].altitude, ground[x][y].int4); + fprintf(stderr," alt %d, int4 %d \n", world(x, y)->ground.altitude, world(x, y)->ground.int4); #endif } } } gzclose(gzfile); - numof_shanties = count_groups(GROUP_SHANTY); - numof_communes = count_groups(GROUP_COMMUNE); + //numof_shanties = count_groups(GROUP_SHANTY); + //numof_communes = count_groups(GROUP_COMMUNE); prog_box("", 100); /* set up the university intake. */ - x = count_groups(GROUP_UNIVERSITY); + /* + x = Counted<University>::getInstanceCount(); if (x > 0) { - university_intake_rate = (count_groups(GROUP_SCHOOL) * 20) / x; + university_intake_rate = (Counted<School>::getInstanceCount() * 20) / x; if (university_intake_rate > 100) university_intake_rate = 100; } else university_intake_rate = 50; - - unhighlight_module_button(selected_module); - selected_module = sbut[7]; /* 7 is track. Watch out though! */ - highlight_module_button(selected_module); - set_selected_module(CST_TRACK_LR); + */ + //unhighlight_module_button(selected_module); + //selected_module = sbut[7]; /* 7 is track. Watch out though! */ + //highlight_module_button(selected_module); + //set_selected_module(CST_TRACK_LR); print_total_money(); - reset_animation_times(); + //reset_animation_times(); /* kind upgrade of MP_TECH for old buildings, when we don't know * eg light industries pollution depends on tech */ int tk = (3 * highest_tech_level) / 4; @@ -441,24 +443,29 @@ tk = tech_level; /* update tech dep */ - for (x = 0; x < WORLD_SIDE_LEN; x++) - for (y = 0; y < WORLD_SIDE_LEN; y++) { + for (x = 0; x < world.len(); x++) + for (y = 0; y < world.len(); y++) { - switch (MP_GROUP(x, y)) { + switch (world(x, y)->getGroup()) { case (GROUP_WINDMILL): +/* MP_TECH(x,y) = MP_INFO(x, y).int_2; MP_INFO(x, y).int_1 = (int)(WINDMILL_POWER + (((double)MP_TECH(x, y) * WINDMILL_POWER) / MAX_TECH_LEVEL)); +*/ break; case (GROUP_COAL_POWER): +/* MP_TECH(x,y) = MP_INFO(x,y).int_4; MP_INFO(x, y).int_1 = (int)(POWERS_COAL_OUTPUT + (((double)MP_TECH(x, y) * POWERS_COAL_OUTPUT) / MAX_TECH_LEVEL)); +*/ break; case (GROUP_SOLAR_POWER): { +/* float PSO = POWERS_SOLAR_OUTPUT; float MT = MAX_TECH_LEVEL; int t1, t2 , t3; @@ -482,17 +489,19 @@ //fprintf(stderr,"TECH %d, t1 %d, t2 %d, t3 %d, plant at x=%d, y=%d\n", MP_TECH(x,y), t1, t2, t3, x, y); MP_INFO(x, y).int_1 = (int)(POWERS_SOLAR_OUTPUT + (((double)MP_TECH(x, y) * POWERS_SOLAR_OUTPUT) / MAX_TECH_LEVEL)); +*/ break; } case GROUP_ORGANIC_FARM: - MP_TECH(x,y) = MP_INFO(x,y).int_1; +// MP_TECH(x,y) = MP_INFO(x,y).int_1; break; case GROUP_RECYCLE: - MP_TECH(x,y) = MP_INFO(x, y).int_4; +// MP_TECH(x,y) = MP_INFO(x, y).int_4; break; case GROUP_INDUSTRY_L: +/* if ( MP_TECH(x,y) == 0 ){ if ( tk > GROUP_INDUSTRY_L_TECH ){ MP_TECH(x,y) = tk; @@ -500,34 +509,36 @@ MP_TECH(x,y) = GROUP_INDUSTRY_L_TECH; } } +*/ break; } } - map_power_grid(true); /* WCK: Is this safe to do here? + //map_power_grid(true); + /* WCK: Is this safe to do here? * AL1: No, in NG_1.1 * In case of error message with ok_dial_box * the dialog cannot appear because the screen * is not set up => crash. - * FIXME: move all initialisation elsewhere, in + * FIXME: move all initialisation elsewhere, in * engine.cpp or simulate.cpp. */ upgrade_to_v2(); } - +/* void reset_animation_times(void) { int x, y; - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) { + for (y = 0; y < world.len(); y++) + for (x = 0; x < world.len(); x++) { MP_ANIM(x,y) = 0; - if (MP_GROUP(x, y) == GROUP_FIRE) + if (map == GROUP_FIRE) MP_INFO(x, y).int_3 = 0; } } - +*/ void check_endian(void) { static int flag = 0; @@ -541,20 +552,21 @@ if (flag == 0) { flag = 1; } - for (y = 0; y < WORLD_SIDE_LEN; y++) { - for (x = 0; x < WORLD_SIDE_LEN; x++) { - eswap32(&(MP_INFO(x, y).population)); - eswap32(&(MP_INFO(x, y).flags)); + for (y = 0; y < world.len(); y++) { + for (x = 0; x < world.len(); x++) { + //eswap32(&(map.info[x][y].population)); + eswap32(&(world(x, y)->flags)); if (sizeof(short) == 2) { - eswap16(&(MP_INFO(x, y).coal_reserve)); - eswap16(&(MP_INFO(x, y).ore_reserve)); + eswap16(&(world(x, y)->coal_reserve)); + eswap16(&(world(x, y)->ore_reserve)); } else if (sizeof(short) == 4) { - eswap32((int *)&(MP_INFO(x, y).coal_reserve)); - eswap32((int *)&(MP_INFO(x, y).ore_reserve)); + eswap32((int *)&(world(x, y)->coal_reserve)); + eswap32((int *)&(world(x, y)->ore_reserve)); } else { /* prevent gcc warning on amd64: argument 2 has type 'long unsigned int' !!! */ printf("Strange size (%d) for short, please mail me.\n", (int) sizeof(short)); } +/* eswap32(&(MP_INFO(x, y).int_1)); eswap32(&(MP_INFO(x, y).int_2)); eswap32(&(MP_INFO(x, y).int_3)); @@ -562,6 +574,7 @@ eswap32(&(MP_INFO(x, y).int_5)); eswap32(&(MP_INFO(x, y).int_6)); eswap32(&(MP_INFO(x, y).int_7)); +*/ } } } @@ -597,14 +610,14 @@ global_mountainity= 10 + rand () % 300; - // Grey border (not visible on the map, x = 0 , x = 99, y = 0, y = 99) - for (x = 0; x < WORLD_SIDE_LEN; x++) - for (y = 0; y < WORLD_SIDE_LEN; y++) { - ALT(x,y) = 0; - if ( !GROUP_IS_BARE(MP_GROUP(x, y)) ) { + // Grey border (not visible on the map, x = 0 , x = 99, y = 0, y = 99) + for (x = 0; x < world.len(); x++) + for (y = 0; y < world.len(); y++) { + world(x, y)->ground.altitude = 0; + if ( !world(x, y)->is_bare()) { /* be nice, put water under all existing builings / farms / parks ... */ /* This may change according to global_aridity and distance_to_river */ - MP_INFO(x,y).flags |= FLAG_HAS_UNDERGROUND_WATER; + world(x, y)->flags |= FLAG_HAS_UNDERGROUND_WATER; } } @@ -612,9 +625,8 @@ deadline=total_time + 1200 * 10; flag_warning = true; // warn player. - /* TODO AL1 Upgrade ground[x][y].water_alt and .altitude - * TODO This not used yet, so just keep initialisation to zero, until something good is done - */ - setup_land(); } + +/** @file lincity/old_ldsvguts.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/old_ldsvguts.h lincity-ng-2.9~git20150314/src/lincity/old_ldsvguts.h --- lincity-ng-2.0/src/lincity/old_ldsvguts.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/old_ldsvguts.h 2015-05-05 16:32:51.000000000 +0000 @@ -26,3 +26,6 @@ void load_city_old(char *); #endif /* __old_ldsvguts_h__ */ + +/** @file lincity/old_ldsvguts.h */ + diff -Nru lincity-ng-2.0/src/lincity/power.cpp lincity-ng-2.9~git20150314/src/lincity/power.cpp --- lincity-ng-2.0/src/lincity/power.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/power.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,363 +0,0 @@ - /* ---------------------------------------------------------------------- * - * - * This file is part of lincity. - * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. - * (c) Corey Keasling 2001-2004. - * ---------------------------------------------------------------------- */ - -#include <stdio.h> -#include <stdlib.h> -#include "lclib.h" -#include "lctypes.h" -#include "lin-city.h" -//#include "engine.h" -#include "engglobs.h" -#include "simulate.h" -#include "power.h" -#include "transport.h" /* for XY_IS_TRANSPORT */ -#include "tinygettext/gettext.hpp" -#include "gui_interface/dialbox_interface.h" - -extern void ok_dial_box(const char *, int, const char *); - - -/* reset per map_power_grid run; how many different grids */ -int grid_num = 0; - -/* grid map time stampt. Incremented per map_power_grid run, - used to determine if a square has been mapped */ -int grid_inc = 0; - -grid_struct *grid[MAX_GRIDS]; - -/* power_time_step - Take the avail_power from last timestep, and move in into the - total_power, which will be used during this timestep on a first-come - first-served basis. -*/ -void power_time_step() -{ - int gi; - int net; /* net power */ - int x, y,m; - - if (grid_num == 0) - return; - - /* AL1: Do we want to shuffle substations ? It is not done in NG 1.1 - * shuffle_substations(); - */ - for (gi = 0; gi < grid_num; gi++) { - grid[gi]->total_power = grid[gi]->avail_power - (grid[gi]->power_lines * POWER_LINE_LOSS); - - net = (grid[gi]->total_power - grid[gi]->demand); - /* ->powered is used only for animation of power_lines, - * substations and windmills - */ - if (net < 0) - grid[gi]->powered = -1; - else if (net < (grid[gi]->avail_power / 4)) - grid[gi]->powered = 0; - else - grid[gi]->powered = 1; - - grid[gi]->avail_power = 0; - grid[gi]->demand = 0; - } - - /* Clear substation 'Here' counter */ - /* int_4 is the local power demand in the substation */ - for (gi = 0; gi < numof_substations; gi++) - MP_INFO(substationx[gi], substationy[gi]).int_4 = 0; - - /* Clear building info wrt power */ - m = 0xffffffff - (FLAG_ASKED_FOR_POWER | FLAG_GOT_POWER); - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) - MP_INFO(x, y).flags &= m; - - -} -/* -check_grid(x, y, xi, yi) - coordinates, ?i being which one to increment if we -need to step over transport - -Check connection to power grid things and check if they've been -mapped. If they have, we perform a sanity check. If it is a -power source, project the power for it and add that to our -total. Now set it to our grid. If it is a power line, return -1, otherwise 0. */ - -static int check_grid(int x, int y, int xi, int yi) -{ - if (XY_IS_GRID(x, y) && !IS_OLD_WINDMILL(x, y)) { - if (GRID_CURRENT(x, y)) { - if (MP_INFO(x, y).int_6 != grid_num) { - /* XXX: This can occur if connecting to a power source at different - * locations. - * Treat a power source or a substation as a power line in order to - * have both output with the same grid ID. - */ - return 1; - } - } else if (!IS_POWER_LINE(x, y)) { - if (IS_POWER_SOURCE(x, y)) { - /* Pick the produced power from power sources */ - grid[grid_num]->total_power += MP_INFO(x, y).int_5; - grid[grid_num]->max_power += MP_INFO(x, y).int_1; - - } /* else = is pure substation */ - MP_INFO(x, y).int_6 = grid_num; - MP_INFO(x, y).int_7 = grid_inc; - return 1; /* say power sources and substation are power line */ - } else { /* is a power line */ - return 1; - } - } else if (XY_IS_TRANSPORT(x, y) || XY_IS_WATER(x, y)) { /* can we step over? */ - if (xi == 0 && yi == 0) /* already stepped */ - return 0; - if (x + xi >= 1 && x + xi < WORLD_SIDE_LEN && y + yi >= 1 && y + yi < WORLD_SIDE_LEN) - return (check_grid(x + xi, y + yi, 0, 0) ? 2 : 0); - else - return 0; - } - return 0; -} - -/* Go through the power grid and figure out what is connected. This -should really handle the connect_transport bit for power lines. That -would help perspicuity anyway. */ - -static void recurse_power_grid(int startx, int starty, int steps) -{ - static int level; /* debug: levels of recursion encountered */ - int count = steps; /* number of steps taken - for animation */ - short dir = -1; /* -1 undetermined, 0 nothing left, Direction #defines */ - int mapx = startx, mapy = starty; /* to move about */ - int inc; /* handles special case of stepping over transport */ - - level++; - if (count % POWER_MODULUS == 0) - count = 0; - - /* Old windmills aren't grid connected, so they are on their own 'grid'. We - ignore them in the main loop. This case should only be reached from a - call from map_power_grid with a new grid_num, not from a new path in the - code below */ - if (IS_OLD_WINDMILL(mapx, mapy)) { - MP_INFO(mapx, mapy).int_6 = grid_num; - MP_INFO(mapx, mapy).int_7 = grid_inc; - grid[grid_num]->max_power += MP_INFO(mapx, mapy).int_1; - level--; - return; - } - - /* Crawl about the grid, finding paths and what not. */ - while (dir != 0) { - /* Set to current grid */ - /* figure out what we are on */ - if (IS_POWER_LINE(mapx, mapy)) { - grid[grid_num]->power_lines++; - MP_INFO(mapx, mapy).int_5 = (count++ % POWER_MODULUS); - if ((MP_TYPE(mapx, mapy) >= 1) && (MP_TYPE(mapx, mapy) <= 11)) - MP_TYPE(mapx, mapy) += 11; - } - MP_INFO(mapx, mapy).int_6 = grid_num; - MP_INFO(mapx, mapy).int_7 = grid_inc; - - /* For each direction, check map bounds, check if there is power stuff - there, then either remember to follow it later or start a new - recursion to follow the path now */ - - /* West */ - if (mapx >= 1){ - if ((inc = check_grid(mapx - 1, mapy, -1, 0))){ - if (dir < 1){ - dir = WEST; - }else{ - recurse_power_grid(mapx - inc, mapy, count + 1); - } - } - } - /* North */ - if (mapy >= 1){ - if ((inc = check_grid(mapx, mapy - 1, 0, -1))){ - if (dir < 1){ - dir = NORTH; - }else{ - recurse_power_grid(mapx, mapy - inc, count + 1); - } - } - } - /* East */ - if (mapx < WORLD_SIDE_LEN){ - if ((inc = check_grid(mapx + 1, mapy, 1, 0))){ - if (dir < 1){ - dir = EAST; - }else{ - recurse_power_grid(mapx + inc, mapy, count + 1); - } - } - } - /* South */ - if (mapy < WORLD_SIDE_LEN){ - if ((inc = check_grid(mapx, mapy + 1, 0, 1))){ - if (dir < 1){ - dir = SOUTH; - }else{ - recurse_power_grid(mapx, mapy + inc, count + 1); - } - } - } - /* Move to a new square if the chosen direction is not already mapped. */ - switch (dir) { - case (-1): /* Didn't find one, must not be any. Stop looping */ - { - dir = 0; - } - break; - case WEST:{ - if (mapx >= 1){ - if ((inc = check_grid(mapx - 1, mapy, -1, 0))) { - mapx -= inc; - dir = -1; - } else { - dir = 0; - } - } - } - break; - case NORTH:{ - if (mapy >= 1){ - if ((inc = check_grid(mapx, mapy - 1, 0, -1))) { - mapy -= inc; - dir = -1; - } else{ - dir = 0; - } - } - } - break; - case EAST:{ - if (mapx < WORLD_SIDE_LEN){ - if ((inc = check_grid(mapx + 1, mapy, 1, 0))) { - mapx += inc; - dir = -1; - } else{ - dir = 0; - } - } - } - break; - case SOUTH:{ - if (mapy < WORLD_SIDE_LEN){ - if ((inc = check_grid(mapx, mapy + 1, 0, 1))) { - mapy += inc; - dir = -1; - } else { - dir = 0; - } - } - } - break; - } /* switch dir */ - } /* while dir !=0 */ - - level--; - /* printf("exiting recurse_power_grid:level %d\n",level); */ -} - -void map_power_grid(bool resetgrids) -{ - int mapx, mapy; - - //free memory from past calls to map_power_grid - if (grid_num != 0) { - for (int i = 0; i < grid_num; i++) { - free(grid[i]); - } - } - - grid_num = 0; /* how many grids found so far */ - grid_inc++; /* how many times have we run map_power_grid */ - - // used to fix up bad int_7 values after loading a map - if (resetgrids) { - for (int mapx = 0; mapx < WORLD_SIDE_LEN; mapx++) { - for (int mapy = 0; mapy < WORLD_SIDE_LEN; mapy++) { - if (XY_IS_GRID(mapx, mapy)) - MP_INFO(mapx, mapy).int_7 = grid_inc - 1; - } - } - } - for (mapx = 0; mapx < WORLD_SIDE_LEN; mapx++) { - for (mapy = 0; mapy < WORLD_SIDE_LEN; mapy++) { - if (XY_IS_GRID(mapx, mapy)) { - if (MP_INFO(mapx, mapy).int_7 != grid_inc) { - if (grid_num == MAX_GRIDS) { - ok_dial_box("warning.mes", BAD, _("You have too many power grids. Join some of them")); - return; - } - grid[grid_num] = (grid_struct *) lcalloc(sizeof(grid_struct)); - grid[grid_num]->total_power = 0; - grid[grid_num]->power_lines = 0; - grid[grid_num]->demand = 0; - grid[grid_num]->max_power = 0; - grid[grid_num]->avail_power=0; - - recurse_power_grid(mapx, mapy, 0); - grid_num++; - } - } - } - } -#ifdef DEBUG_POWER - printf("grid_inc: %d found %d grids\n", grid_inc, grid_num); -#endif -} - - -/* get_power - get power for thing at x, y. Don't use windmills if industry. - We go through a list (ugly, I know) until we find a substation in range - and then try and get power from it's grid. If we can't, continue. -*/ - -int get_power(int x, int y, int power, int block_industry) -{ - /* block_industry = 1 for industries and recyclers */ - int i; - int xi, yi; - int grid_tmp; /* for simplicity */ - - MP_INFO(x, y).flags |= FLAG_ASKED_FOR_POWER; - if (numof_substations == 0) - return (0); - - for (i = 0; i < numof_substations; i++) { - xi = substationx[i]; - yi = substationy[i]; - if (abs(xi - x) < SUBSTATION_RANGE && abs(yi - y) < SUBSTATION_RANGE) { - - if (block_industry != 0 && MP_GROUP(xi, yi) == GROUP_WINDMILL) - continue; - - grid_tmp = MP_INFO(xi, yi).int_6; - - /* FIXME: in case of unsatisfied demand, the demand may be counted - * several times in differents substations (in the same grid or not) - * and thus diplayed informations are misleading. - */ - grid[grid_tmp]->demand += power; - - if (grid[grid_tmp]->total_power >= power) { - grid[grid_tmp]->total_power -= power; - MP_INFO(xi, yi).int_4 += power; // local demand in substation xi yi - MP_INFO(x, y).flags |= FLAG_GOT_POWER; - return 1; - } - - } - } - return 0; -} diff -Nru lincity-ng-2.0/src/lincity/power.h lincity-ng-2.9~git20150314/src/lincity/power.h --- lincity-ng-2.0/src/lincity/power.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/power.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,66 +0,0 @@ -#ifndef _POWER_H -#define _POWER_H - -#undef DEBUG_POWER - -struct grid_struct { - int power_lines; - long total_power; - long avail_power; /* Capacity available */ - long max_power; - long demand; - short powered; -}; - -/* public */ -#define MAX_GRIDS 128 // How many grids in the array, not how many to allocate -extern grid_struct *grid[MAX_GRIDS]; - -void map_power_grid(bool resetgrids = false); -int get_power(int x, int y, int power, int block_industry); -void do_power_substation(int x, int y); -void do_power_source(int x, int y); -void do_power_source_coal(int x, int y); -void do_power_line(int x, int y); -void power_time_step(); - -/* intended private */ - -#define POWER_LINE_LOSS 1 /* one KW */ -#define POWER_MODULUS 25 /* Controls how often we see a packet in anim */ - -#define WEST 1 -#define NORTH 2 -#define EAST 3 -#define SOUTH 4 - -#define XY_IS_GRID(x,y) \ -((MP_GROUP(x,y) == GROUP_COAL_POWER) ||\ - (MP_GROUP(x,y) == GROUP_WINDMILL) || \ - (MP_GROUP(x,y) == GROUP_POWER_LINE) || \ - (MP_GROUP(x,y) == GROUP_SOLAR_POWER) || \ - (MP_GROUP(x,y) == GROUP_SUBSTATION)) - -#define XY_IS_WATER(x,y) \ -((MP_GROUP(x,y) == GROUP_WATER) || \ - (MP_GROUP(x,y) == GROUP_TRACK_BRIDGE) || \ - (MP_GROUP(x,y) == GROUP_ROAD_BRIDGE) || \ - (MP_GROUP(x,y) == GROUP_RAIL_BRIDGE)) - -#define IS_POWER_SOURCE(x,y) \ -((MP_GROUP(x,y) == GROUP_COAL_POWER) || \ - (MP_GROUP(x,y) == GROUP_SOLAR_POWER) || \ - (MP_GROUP(x,y) == GROUP_WINDMILL)) - -#define IS_POWER_LINE(x,y) (MP_GROUP(x,y) == GROUP_POWER_LINE) - -#define IS_OLD_WINDMILL(x,y) \ -((MP_GROUP(x,y) == GROUP_WINDMILL) && \ - (MP_TYPE(x,y) != CST_USED) && \ - (MP_TECH(x,y) < MODERN_WINDMILL_TECH)) -// (MP_INFO(x,y).int_2 < MODERN_WINDMILL_TECH)) - -#define GRID_CURRENT(x,y) (MP_INFO(x,y).int_7 == grid_inc) - - -#endif diff -Nru lincity-ng-2.0/src/lincity/simulate.cpp lincity-ng-2.9~git20150314/src/lincity/simulate.cpp --- lincity-ng-2.0/src/lincity/simulate.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/simulate.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -28,23 +28,35 @@ #endif */ +#include "tinygettext/gettext.hpp" + #include "init_game.h" #include "simulate.h" +#include "ConstructionManager.h" #include "gui_interface/shared_globals.h" #include "lctypes.h" #include "lin-city.h" #include "engglobs.h" #include "gui_interface/screen_interface.h" -#include "power.h" +//#include "power.h" #include "stats.h" #include "gui_interface/pbar_interface.h" +#include "modules/modules_interfaces.h" #include "modules/all_modules.h" #include "transport.h" +#include "all_buildings.h" +#include "sustainable.h" +#include "engine.h" +#include "engglobs.h" +#include "../lincity-ng/GameView.hpp" +#include "Vehicles.h" + /* extern resources */ extern void print_total_money(void); void setLincitySpeed( int speed ); extern void ok_dial_box(const char *, int, const char *); +extern GameView* GetGameView(void); /* AL1: they are all in engine.cpp */ extern void do_daily_ecology(void); @@ -57,13 +69,13 @@ /* ---------------------------------------------------------------------- * * Private Fn Prototypes * ---------------------------------------------------------------------- */ -static void shuffle_mappoint_array(void); +// static void shuffle_mappoint_array(void); static void do_periodic_events(void); static void end_of_month_update(void); static void start_of_year_update(void); static void end_of_year_update(void); static void simulate_mappoints(void); -static void set_mappoint_used(int fromx, int fromy, int x, int y); +//extern void desert_water_frontier(int originx, int originy, int w, int h); static void sustainability_test(void); static int sust_fire_cover(void); @@ -83,7 +95,7 @@ } /* Increment game time */ - total_time++; + ++total_time; #ifdef DEBUG_ENGINE printf("In do_time_step (%d)\n", total_time); #endif @@ -92,174 +104,105 @@ init_daily(); /* Initialize monthly accumulators */ - if (total_time % NUMOF_DAYS_IN_MONTH == 0) { - init_monthly(); - } + if (total_time % NUMOF_DAYS_IN_MONTH == 0) + { init_monthly();} /* Initialize yearly accumulators */ - if ((total_time % NUMOF_DAYS_IN_YEAR) == 0) { - init_yearly(); - } + if ((total_time % NUMOF_DAYS_IN_YEAR) == 0) + { init_yearly();} - /* Clear the power grid */ - power_time_step(); + /* execute yesterdays requests OR treat loadgame requests*/ + ConstructionManager::executePendingRequests(); /* Run through simulation equations for each farm, residence, etc. */ simulate_mappoints(); + /* Remove all too old cars*/ + Vehicle::cleanVehicleList(); + /* Now do the stuff that happens once a year, once a month, etc. */ do_periodic_events(); } -int count_groups(int g) -{ - int x, y, i; - i = 0; - for (y = 0; y < WORLD_SIDE_LEN; y++) - for (x = 0; x < WORLD_SIDE_LEN; x++) - if (MP_GROUP(x, y) == g) - i++; - return (i); -} - -void count_all_groups(int *group_count) -{ - int x, y; - unsigned short t, g; - for (x = 0; x < NUM_OF_GROUPS; x++) - group_count[x] = 0; - for (y = 0; y < WORLD_SIDE_LEN; y++) { - for (x = 0; x < WORLD_SIDE_LEN; x++) { - t = MP_TYPE(x, y); - if (t != CST_USED && !GROUP_IS_BARE(MP_GROUP(x, y))) { - g = get_group_of_type(t); - group_count[g]++; - } - } - } -} - -void set_mappoint(int x, int y, short selected_type) -{ - int grp; - int size; - - if ((grp = get_group_of_type(selected_type)) < 0) - return; - - MP_TYPE(x, y) = selected_type; - MP_GROUP(x, y) = grp; - size = main_groups[grp].size; - - for (int i = 0; i<size; i++) - for (int j = 0; j<size; j++) { - if ( i == 0 && j == 0 ) - continue; - set_mappoint_used(x, y, x+i, y+j); - } - -} - /* ---------------------------------------------------------------------- * * Private Functions * ---------------------------------------------------------------------- */ -/** this is called at the beginning of every frame */ -static void shuffle_mappoint_array(void) -{ - /** Mappoint array shuffles mappoint in order to stop linear simulation effects */ - int i, x, a; - for (i = 0; i < SHUFFLE_MAPPOINT_COUNT; i++) { - x = rand() % WORLD_SIDE_LEN; - a = mappoint_array_x[i]; - mappoint_array_x[i] = mappoint_array_x[x]; - mappoint_array_x[x] = a; - x = rand() % WORLD_SIDE_LEN; - a = mappoint_array_y[i]; - mappoint_array_y[i] = mappoint_array_y[x]; - mappoint_array_y[x] = a; - } -} - static void do_periodic_events(void) { add_daily_to_monthly(); do_daily_ecology(); - if ((total_time % NUMOF_DAYS_IN_YEAR) == 0) { - start_of_year_update(); - } - if ((total_time % DAYS_PER_POLLUTION) == 3) { - do_pollution(); - } - if ((total_time % DAYS_BETWEEN_FIRES) == 9 && tech_level > (GROUP_FIRESTATION_TECH * MAX_TECH_LEVEL / 1000)) { - do_random_fire(-1, -1, 1); - } - if ((total_time % DAYS_BETWEEN_COVER) == 75) { - do_fire_health_cricket_power_cover(); - } - if ((total_time % DAYS_BETWEEN_SHANTY) == 85 && tech_level > (GROUP_HEALTH_TECH * MAX_TECH_LEVEL / 1000)) { - update_shanty(); - } - if (total_time % NUMOF_DAYS_IN_MONTH == (NUMOF_DAYS_IN_MONTH - 1)) { - end_of_month_update(); - } - if (total_time % NUMOF_DAYS_IN_YEAR == (NUMOF_DAYS_IN_YEAR - 1)) { - end_of_year_update(); - } + if ((total_time % NUMOF_DAYS_IN_YEAR) == 0) + { start_of_year_update();} + if ((total_time % DAYS_PER_POLLUTION) == 3) + { do_pollution();} + if ((total_time % (DAYS_BETWEEN_FIRES*100/world.len()*100/world.len() )) == 9 && tech_level > (GROUP_FIRESTATION_TECH * MAX_TECH_LEVEL / 1000)) + { do_random_fire(-1, -1, 1);} + if ((total_time % DAYS_BETWEEN_COVER) == 75) + { do_fire_health_cricket_power_cover();} //constructions will call ::cover() + else //constructions will not call ::cover() + { refresh_cover = false;} + if ((total_time % DAYS_BETWEEN_SHANTY) == 15 && tech_level > (GROUP_HEALTH_TECH * MAX_TECH_LEVEL / 1000)) + { update_shanty();} + if (total_time % NUMOF_DAYS_IN_MONTH == (NUMOF_DAYS_IN_MONTH - 1)) + { end_of_month_update();} + if (total_time % NUMOF_DAYS_IN_YEAR == (NUMOF_DAYS_IN_YEAR - 1)) + { end_of_year_update();} } static void end_of_month_update(void) { + //update queque of polluted tiles + scan_pollution(); + //fetch remaining textures in order loader thread can exit + if(getGameView()->textures_ready && getGameView()->remaining_images) + { getGameView()->fetchTextures();} housed_population = (tpopulation / NUMOF_DAYS_IN_MONTH); + total_housing = (thousing / NUMOF_DAYS_IN_MONTH); if ((housed_population + people_pool) > max_pop_ever) max_pop_ever = housed_population + people_pool; - if (people_pool > 100) { + if (people_pool > 100) + { if (rand() % 1000 < people_pool) people_pool -= 10; } if (people_pool < 0) - people_pool = 0; + { people_pool = 0;} - if (tech_level > TECH_LEVEL_LOSS_START) { + if (tech_level > TECH_LEVEL_LOSS_START) + { tech_level -= (int)(tech_level * (1. / TECH_LEVEL_LOSS) * (1 + (tpopulation * (1. / NUMOF_DAYS_IN_MONTH / 120 / (TECH_LEVEL_LOSS - 200))))); - - } else - tech_level += TECH_LEVEL_UNAIDED; + } + else + { tech_level += TECH_LEVEL_UNAIDED;} /* we can go over 100, but it's even more difficult */ if (tech_level > MAX_TECH_LEVEL) - tech_level -= (int)((tech_level - MAX_TECH_LEVEL) + { tech_level -= (int)((tech_level - MAX_TECH_LEVEL) * (1. / TECH_LEVEL_LOSS) * (1 + (tpopulation * (1. / NUMOF_DAYS_IN_MONTH / 120 / (TECH_LEVEL_LOSS - 100))))); - + } if (highest_tech_level < tech_level) - highest_tech_level = tech_level; + { highest_tech_level = tech_level;} - deaths_cost += unnat_deaths * UNNAT_DEATHS_COST; + deaths_cost += tunnat_deaths * UNNAT_DEATHS_COST; + for (int i = 0; i < constructionCount.size(); i++) + { + if (constructionCount[i]) + { constructionCount[i]->report_commodities();} + } + update_pbars_monthly(); } static void start_of_year_update(void) { - int u; - sustainability_test(); - pollution_deaths_history -= pollution_deaths_history / 100.0; starve_deaths_history -= starve_deaths_history / 100.0; unemployed_history -= unemployed_history / 100.0; - u = count_groups(GROUP_UNIVERSITY); - if (u > 0) { - university_intake_rate = (count_groups(GROUP_SCHOOL) * 20) / u; - if (university_intake_rate > 100) - university_intake_rate = 100; - } else { - university_intake_rate = 50; - } - - map_power_grid(); } static void end_of_year_update(void) @@ -268,7 +211,7 @@ ly_income_tax = income_tax; total_money += income_tax; - coal_tax = (coal_tax * coal_tax_rate) / 100; + coal_tax = (coal_tax * coal_tax_rate) / 10; ly_coal_tax = coal_tax; total_money += coal_tax; @@ -279,7 +222,7 @@ total_money += goods_tax; /* The price of exports on the world market drops as you export more. - The exporters have to discount there wares, therefore the + The exporters have to discount there wares, therefore the tax take is less. */ if (export_tax > ex_tax_dis[0]) { @@ -337,244 +280,31 @@ static void simulate_mappoints(void) { - int xx, yy; - shuffle_mappoint_array(); - for (yy = 0; yy < WORLD_SIDE_LEN; yy++) { - /* indirection to rand array to stop lots of linear effects */ - int y = mappoint_array_y[yy]; - for (xx = 0; xx < WORLD_SIDE_LEN; xx++) { - int x = mappoint_array_x[xx]; - short grp = MP_GROUP(x, y); - if (grp == GROUP_USED || GROUP_IS_BARE(grp)) - continue; - switch (grp) { - case GROUP_TRACK: - case GROUP_TRACK_BRIDGE: - do_track(x, y); - break; - case GROUP_RAIL: - case GROUP_RAIL_BRIDGE: - do_rail(x, y); - break; - case GROUP_ROAD: - case GROUP_ROAD_BRIDGE: - do_road(x, y); - break; - case GROUP_ORGANIC_FARM: - do_organic_farm(x, y); - break; - case GROUP_MARKET: - do_market(x, y); - break; - case GROUP_RESIDENCE_LL: - do_residence(x, y); - break; - case GROUP_RESIDENCE_ML: - do_residence(x, y); - break; - case GROUP_RESIDENCE_HL: - do_residence(x, y); - break; - case GROUP_RESIDENCE_LH: - do_residence(x, y); - break; - case GROUP_RESIDENCE_MH: - do_residence(x, y); - break; - case GROUP_RESIDENCE_HH: - do_residence(x, y); - break; - case GROUP_POWER_LINE: - do_power_line(x, y); - break; - case GROUP_SOLAR_POWER: - do_power_source_solar(x, y); - break; - case GROUP_SUBSTATION: - do_power_substation(x, y); - break; - case GROUP_COALMINE: - do_coalmine(x, y); - break; - case GROUP_COAL_POWER: - do_power_source_coal(x, y); - break; - case GROUP_INDUSTRY_L: - do_industry_l(x, y); - break; - case GROUP_INDUSTRY_H: - do_industry_h(x, y); - break; - case GROUP_COMMUNE: - do_commune(x, y); - break; - case GROUP_OREMINE: - do_oremine(x, y); - break; - case GROUP_PORT: - do_port(x, y); - break; - case GROUP_TIP: - do_tip(x, y); - break; - case GROUP_PARKLAND: - do_parkland(x, y); - break; - case GROUP_UNIVERSITY: - do_university(x, y); - break; - case GROUP_RECYCLE: - do_recycle(x, y); - break; - case GROUP_HEALTH: - do_health_centre(x, y); - break; - case GROUP_ROCKET: - do_rocket_pad(x, y); - break; - case GROUP_WINDMILL: - do_windmill(x, y); - break; - case GROUP_MONUMENT: - do_monument(x, y); - break; - case GROUP_SCHOOL: - do_school(x, y); - break; - case GROUP_BLACKSMITH: - do_blacksmith(x, y); - break; - case GROUP_MILL: - do_mill(x, y); - break; - case GROUP_POTTERY: - do_pottery(x, y); - break; - case GROUP_FIRESTATION: - do_firestation(x, y); - break; - case GROUP_CRICKET: - do_cricket(x, y); - break; - case GROUP_FIRE: - do_fire(x, y); - break; - case GROUP_SHANTY: - do_shanty(x, y); - break; - } + Construction *construction; + constructionCount.shuffle(); + for (int i = 0; i < constructionCount.size(); i++) + { + construction = constructionCount[i]; + if (construction) + { + construction->trade(); + construction->update(); } } -} - -void do_rand_ecology(int x, int y) -{ - int r = ground[x][y].ecotable; - if ( (MP_INFO(x, y).flags | FLAG_HAS_UNDERGROUND_WATER) == 0 ) { - /*true desert*/ - return; - } - - if (r >= 300) { - /* very dry land */ - int r2 = rand() % 10; - if (r2 <= 6) - set_mappoint(x, y, CST_DESERT); - else if (r2 <= 8) - set_mappoint(x, y, CST_GREEN); - else - set_mappoint(x, y, CST_TREE); - } else if (r >= 160) { - int r2 = rand() % 10; - if (r2 <= 2) - set_mappoint(x, y, CST_DESERT); - else if (r2 <= 6) - set_mappoint(x, y, CST_GREEN); - else - set_mappoint(x, y, CST_TREE); - } else if (r >= 80) { - int r2 = rand() % 10; - if (r2 <= 1) - set_mappoint(x, y, CST_DESERT); - else if (r2 <= 4) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 6) - set_mappoint(x, y, CST_TREE); - else - set_mappoint(x, y, CST_TREE2); - } else if (r >= 40) { - int r2 = rand() % 40; - if (r2 == 0) - set_mappoint(x, y, CST_DESERT); - else if (r2 <= 12) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 24) - set_mappoint(x, y, CST_TREE); - else if (r2 <= 36) - set_mappoint(x, y, CST_TREE2); - else - set_mappoint(x, y, CST_TREE3); - } else if (r >= 0) { - /* normal land */ - int r2 = rand() % 40; - if (r2 <= 10) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 20) - set_mappoint(x, y, CST_TREE); - else if (r2 <= 30) - set_mappoint(x, y, CST_TREE2); - else - set_mappoint(x, y, CST_TREE3); - } else if (r >= -40) { - /* forest */ - int r2 = rand() % 40; - if (r2 <= 5) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 10) - set_mappoint(x, y, CST_TREE); - else if (r2 <= 25) - set_mappoint(x, y, CST_TREE2); - else - set_mappoint(x, y, CST_TREE3); - } else if (r >= -80) { - int r2 = rand() % 40; - if (r2 <= 0) - MP_TYPE(x, y) = CST_WATER; - else if (r2 <= 6) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 15) - set_mappoint(x, y, CST_TREE); - else if (r2 <= 28) - set_mappoint(x, y, CST_TREE2); - else - set_mappoint(x, y, CST_TREE3); - } else if (r >= -120) { - int r2 = rand() % 40; - if (r2 <= 1) - MP_TYPE(x, y) = CST_WATER; - else if (r2 <= 6) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 16) - set_mappoint(x, y, CST_TREE); - else if (r2 <= 30) - set_mappoint(x, y, CST_TREE2); - else - set_mappoint(x, y, CST_TREE3); - } else { - /* wetland */ - int r2 = rand() % 40; - if (r2 <= 3) - MP_TYPE(x, y) = CST_WATER; - else if (r2 <= 8) - set_mappoint(x, y, CST_GREEN); - else if (r2 <= 20) - set_mappoint(x, y, CST_TREE); - else if (r2 <= 35) - set_mappoint(x, y, CST_TREE2); - else - set_mappoint(x, y, CST_TREE3); + for(std::list<Vehicle*>::iterator it = Vehicle::vehicleList.begin(); + it != Vehicle::vehicleList.end(); + std::advance(it,1)) + { + if((*it)->alive) + { (*it)->update();} +/* + if(rand()%50 == 1) + { + delete *it; + break; + } +*/ } - } static void sustainability_test(void) @@ -627,34 +357,35 @@ /* check fire cover only every three years */ if (total_time % (NUMOF_DAYS_IN_YEAR * 3) == 0) { if (sust_fire_cover() != 0) - sust_fire_count += 3; + { sust_fire_count += 3;} else - sust_fire_count = 0; - + { sust_fire_count = 0;} } } static int sust_fire_cover(void) { - int x, y; - for (x = 0; x < WORLD_SIDE_LEN; x++) - for (y = 0; y < WORLD_SIDE_LEN; y++) { - if (GROUP_IS_BARE(MP_GROUP(x, y)) - || MP_TYPE(x, y) == CST_USED || MP_GROUP(x, y) == GROUP_WATER || MP_GROUP(x, y) == GROUP_POWER_LINE \ - || MP_GROUP(x, y) == GROUP_OREMINE || MP_GROUP(x, y) == GROUP_ROCKET \ - || MP_GROUP(x, y) == GROUP_MONUMENT || MP_GROUP(x, y) == GROUP_BURNT) ;/* do nothing */ - - else if ((MP_INFO(x, y).flags & FLAG_FIRE_COVER) == 0) - return (0); + for (int i = 0; i < constructionCount.size(); i++) + { + if (constructionCount[i]) + { + if(constructionCount[i]->flags & FLAG_IS_TRANSPORT) + { continue;} + unsigned short grp = constructionCount[i]->constructionGroup->group; + if((grp==GROUP_MONUMENT) + || (grp==GROUP_OREMINE) + || (grp==GROUP_ROCKET) + || (grp==GROUP_FIRE) + || (grp==GROUP_POWER_LINE)) + { continue;} + int x = constructionCount[i]->x; + int y = constructionCount[i]->y; + if(!(world(x, y)->flags & FLAG_FIRE_COVER)) + { return(0);} } - return (1); + } + return(1); } -static void set_mappoint_used(int fromx, int fromy, int x, int y) -{ - MP_TYPE(x, y) = CST_USED; - MP_GROUP(x, y) = GROUP_USED; - MP_INFO(x, y).int_1 = fromx; - MP_INFO(x, y).int_2 = fromy; -} +/** @file lincity/simulate.cpp */ diff -Nru lincity-ng-2.0/src/lincity/simulate.h lincity-ng-2.9~git20150314/src/lincity/simulate.h --- lincity-ng-2.0/src/lincity/simulate.h 2009-01-25 20:20:42.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/simulate.h 2015-05-05 16:32:51.000000000 +0000 @@ -7,11 +7,13 @@ #define __simulate_h__ void do_time_step(void); -int count_groups(int gr); -void count_all_groups(int *group_count); -void set_mappoint(int x, int y, short selected_type); -void do_rand_ecology(int x, int y); +//int count_groups(int gr); +//void count_all_groups(int *group_count); +//void set_mappoint(int x, int y, short selected_type); extern void connect_rivers(void); #endif /* __simulate_h__ */ + +/** @file lincity/simulate.h */ + diff -Nru lincity-ng-2.0/src/lincity/stats.cpp lincity-ng-2.9~git20150314/src/lincity/stats.cpp --- lincity-ng-2.0/src/lincity/stats.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/stats.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -12,19 +12,21 @@ #include "engglobs.h" #include "gui_interface/pbar_interface.h" #include "stats.h" +#include "modules/market.h" //for inventory_market /* ---------------------------------------------------------------------- * * Public Global Variables * ---------------------------------------------------------------------- */ /* Daily accumulators */ -int food_in_markets; -int jobs_in_markets; -int coal_in_markets; -int goods_in_markets; -int ore_in_markets; -int steel_in_markets; -int waste_in_markets; +//int food_in_markets; +//int jobs_in_markets; +//int coal_in_markets; +//int goods_in_markets; +//int ore_in_markets; +//int steel_in_markets; +//int waste_in_markets; +int dbirths, ddeaths; /* Monthly accumulators */ int tfood_in_markets; @@ -35,8 +37,14 @@ int tsteel_in_markets; int twaste_in_markets; int tpopulation; +int thousing; int tstarving_population; int tunemployed_population; +int tbirths, tdeaths, tunnat_deaths; +int ltbirths = 0; +int ltdeaths = 0; +int ltunnat_deaths = 0; +std::deque<int> birthq, deathq, unnatdeathq; /* yearly */ int income_tax; @@ -76,44 +84,87 @@ int ly_windmill_cost; int ly_cricket_cost; int ly_fire_cost; +int ly_births = 0; +int ly_deaths = 0; +int ly_unnatdeaths = 0; /* Averaging variables */ int data_last_month; -/* ---------------------------------------------------------------------- * - * Private Function Prototypes - * ---------------------------------------------------------------------- */ -void inventory_market(int x, int y); void init_daily(void) { population = 0; + housing = 0; starving_population = 0; unemployed_population = 0; - food_in_markets = 0; - jobs_in_markets = 0; - coal_in_markets = 0; - goods_in_markets = 0; - ore_in_markets = 0; - steel_in_markets = 0; - waste_in_markets = 0; + ddeaths = 0; + dbirths = 0; } void init_monthly(void) { data_last_month = 0; - tpopulation = 0; + thousing = 0; tstarving_population = 0; - tfood_in_markets = 0; - tjobs_in_markets = 0; - tcoal_in_markets = 0; - tgoods_in_markets = 0; - tore_in_markets = 0; - tsteel_in_markets = 0; - twaste_in_markets = 0; tunemployed_population = 0; - unnat_deaths = 0; + init_census(); + birthq.push_back(tbirths); + deathq.push_back(tdeaths); + unnatdeathq.push_back(tunnat_deaths); + ly_births += tbirths; + ly_deaths += tdeaths; + ly_unnatdeaths += tunnat_deaths; + int s = birthq.size(); + if(s>12) + { + ly_births -= birthq.front(); + ly_deaths -= deathq.front(); + ly_unnatdeaths -= unnatdeathq.front(); + --s; + birthq.pop_front(); + deathq.pop_front(); + unnatdeathq.pop_front(); + ltbirths = ly_births; + ltdeaths = ly_deaths; + ltunnat_deaths = ly_unnatdeaths; + } + else + { + ltbirths = 12*ly_births/s; + ltdeaths = 12*ly_deaths/s; + ltunnat_deaths = 12*ly_unnatdeaths/s; + } + + tbirths = 0; + tdeaths = 0; + tunnat_deaths = 0; +} + +void init_census() +{ + tstat_census[Construction::STUFF_FOOD] = 0; + tstat_census[Construction::STUFF_JOBS] = 0; + tstat_census[Construction::STUFF_COAL] = 0; + tstat_census[Construction::STUFF_ORE] = 0; + tstat_census[Construction::STUFF_WATER] = 0; + tstat_census[Construction::STUFF_GOODS] = 0; + tstat_census[Construction::STUFF_WASTE] = 0; + tstat_census[Construction::STUFF_STEEL] = 0; + tstat_census[Construction::STUFF_KWH] = 0; + tstat_census[Construction::STUFF_MWH] = 0; + + tstat_capacities[Construction::STUFF_FOOD] = 1; + tstat_capacities[Construction::STUFF_JOBS] = 1; + tstat_capacities[Construction::STUFF_COAL] = 1; + tstat_capacities[Construction::STUFF_ORE] = 1; + tstat_capacities[Construction::STUFF_STEEL] = 1; + tstat_capacities[Construction::STUFF_WATER] = 1; + tstat_capacities[Construction::STUFF_GOODS] = 1; + tstat_capacities[Construction::STUFF_WASTE] = 1; + tstat_capacities[Construction::STUFF_KWH] = 1; + tstat_capacities[Construction::STUFF_MWH] = 1; } void init_yearly(void) @@ -158,57 +209,26 @@ ly_fire_cost = 0; } -void inventory(int x, int y) -{ - - switch (get_group_of_type(MP_TYPE(x, y))) { - - case GROUP_MARKET: - inventory_market(x, y); - break; - - default:{ - printf("Default in inventory(%d,%d): got %d\n", x, y, get_group_of_type(MP_TYPE(x, y))); - break; - } - - } -} - void init_inventory(void) { + init_census(); init_daily(); init_monthly(); init_yearly(); init_lastyear(); } -void inventory_market(int x, int y) -{ - food_in_markets += MP_INFO(x, y).int_1; - jobs_in_markets += MP_INFO(x, y).int_2; - coal_in_markets += MP_INFO(x, y).int_3; - goods_in_markets += MP_INFO(x, y).int_4; - ore_in_markets += MP_INFO(x, y).int_5; - steel_in_markets += MP_INFO(x, y).int_6; - waste_in_markets += MP_INFO(x, y).int_7; -} - -/* XXX: WCK: Why oh why must we divide by arbitrary values, below? */ -/* If this is fixed, make sure to fix it in pbar also! */ - void add_daily_to_monthly(void) { - data_last_month++; + ++data_last_month; tpopulation += population; + thousing += housing; tstarving_population += starving_population; - tfood_in_markets += food_in_markets / 1000; - tjobs_in_markets += jobs_in_markets / 1000; - tcoal_in_markets += coal_in_markets / 250; - tgoods_in_markets += goods_in_markets / 500; - tore_in_markets += ore_in_markets / 500; - tsteel_in_markets += steel_in_markets / 25; - twaste_in_markets += waste_in_markets; tunemployed_population += unemployed_population; + tbirths += dbirths; + tdeaths += ddeaths; } + +/** @file lincity/stats.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/stats.h lincity-ng-2.9~git20150314/src/lincity/stats.h --- lincity-ng-2.0/src/lincity/stats.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/stats.h 2015-05-05 16:32:51.000000000 +0000 @@ -15,8 +15,8 @@ /* Note on variables (GCS): -- - Variables that begin with a "t" (e.g. tpopulation) are monthly - accumulators. They are initialized to zero on the first day of + Variables that begin with a "t" (e.g. tpopulation) are monthly + accumulators. They are initialized to zero on the first day of the month. -- The yearly accumulators have no prefix (e.g. income_tax). @@ -27,28 +27,21 @@ are yearly display variables. They will be displayed in the mini-map when the user clicks on the pound sterling icon. */ +#include "lintypes.h" -/* daily */ -extern int food_in_markets; -extern int jobs_in_markets; -extern int coal_in_markets; -extern int goods_in_markets; -extern int ore_in_markets; -extern int steel_in_markets; -extern int waste_in_markets; +/*daily*/ +extern int ddeaths, dbirths; /* monthly */ -extern int tfood_in_markets; -extern int tjobs_in_markets; -extern int tcoal_in_markets; -extern int tgoods_in_markets; -extern int tore_in_markets; -extern int tsteel_in_markets; -extern int twaste_in_markets; extern int tpopulation; +extern int thousing; extern int tstarving_population; extern int tunemployed_population; -extern int twaste_in_markets; +extern int tbirths, tdeaths, tunnat_deaths; +// monthly updated births/deaths for last 12 month +extern int ltbirths, ltdeaths, ltunnat_deaths; +//history of last 12 month +extern std::deque<int> birthq, deathq, unnatdeathq; /* yearly */ extern int income_tax; @@ -88,6 +81,9 @@ extern int ly_interest; extern int ly_windmill_cost; extern int ly_cricket_cost; +extern int ly_births; // total births during last 12 month +extern int ly_deaths; // total deaths during last 12 month +extern int ly_unnatdeaths; //total unnat deaths during last 12 month /* Averaging variables */ extern int data_last_month; @@ -97,7 +93,11 @@ void inventory(int x, int y); void init_daily(void); void init_monthly(void); +void init_census(void); void init_yearly(void); void add_daily_to_monthly(void); #endif + +/** @file lincity/stats.h */ + diff -Nru lincity-ng-2.0/src/lincity/sustainable.h lincity-ng-2.9~git20150314/src/lincity/sustainable.h --- lincity-ng-2.0/src/lincity/sustainable.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/sustainable.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,18 @@ +#define SUST_ORE_COAL_COL 34 +#define SUST_PORT_COL white(24) +#define SUST_MONEY_COL green(26) +#define SUST_POP_COL cyan(24) +#define SUST_TECH_COL yellow(26) +#define SUST_FIRE_COL red(26) +#define SUST_ORE_COAL_YEARS_NEEDED 180 +#define SUST_PORT_YEARS_NEEDED 180 +#define SUST_MONEY_YEARS_NEEDED 60 +#define SUST_POP_YEARS_NEEDED 60 +#define SUST_TECH_YEARS_NEEDED 120 +#define SUST_FIRE_YEARS_NEEDED 60 + +#define SUST_MIN_POPULATION 5000 +#define SUST_MIN_TECH_LEVEL (MAX_TECH_LEVEL/2) + +/** @file lincity/sustainable.h */ + diff -Nru lincity-ng-2.0/src/lincity/transport.cpp lincity-ng-2.9~git20150314/src/lincity/transport.cpp --- lincity-ng-2.0/src/lincity/transport.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/transport.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -9,497 +9,195 @@ #include "lin-city.h" #include "lctypes.h" #include "transport.h" -#include "power.h" -#include "stats.h" /* for transport_cost */ +#include "all_buildings.h" +#include "modules/all_modules.h" +#include "engglobs.h" +#include "engine.h" +#include <iostream> -static int max_load(int x, int y, int i) -{ - int group=MP_GROUP(x,y); - int max; - - static const int max_track_table[7] = { - MAX_FOOD_ON_TRACK, - MAX_JOBS_ON_TRACK, - MAX_COAL_ON_TRACK, - MAX_GOODS_ON_TRACK, - MAX_ORE_ON_TRACK, - MAX_STEEL_ON_TRACK, - MAX_WASTE_ON_TRACK - }; - - static const int max_road_table[7] = { - MAX_FOOD_ON_ROAD, - MAX_JOBS_ON_ROAD, - MAX_COAL_ON_ROAD, - MAX_GOODS_ON_ROAD, - MAX_ORE_ON_ROAD, - MAX_STEEL_ON_ROAD, - MAX_WASTE_ON_ROAD - }; - - static const int max_rail_table[7] = { - MAX_FOOD_ON_RAIL, - MAX_JOBS_ON_RAIL, - MAX_COAL_ON_RAIL, - MAX_GOODS_ON_RAIL, - MAX_ORE_ON_RAIL, - MAX_STEEL_ON_RAIL, - MAX_WASTE_ON_RAIL - }; - - if (group == GROUP_TRACK || group == GROUP_TRACK_BRIDGE) - max = max_track_table[i]; - else if (group == GROUP_ROAD || group == GROUP_ROAD_BRIDGE) - max = max_road_table[i]; - else if (group == GROUP_RAIL || group == GROUP_RAIL_BRIDGE) - max = max_rail_table[i]; - else { - // paranoid check, it should never happen - fprintf(stderr," ERROR in max_load x %i, y %i, i %i\n", x, y, i); - max = 0; - } - return max; - -} - -/* --------------------------------------------------------------------- - For track, road and rail: - - MP_INFO(x,y).int_1 contains the amount of food - int_2 contains the amount of jobs - int_3 contains the amount of coal - int_4 contains the amount of goods - int_5 contains the amount of ore - int_6 contains the amount of steel - int_7 contains the amount of waste - - MP_INFO(x,y).flags indicates the type of tile wrt to neighbours - it is computed/updated at build time in connect_transport - - --------------------------------------------------------------------- */ - -void general_transport(int x, int y, int max_waste) -{ - /* 30. Oct 1996: - * we'll use a loop with pointers here instead of doin' each - * operation by hand. this reduces code complexity and should - * lead to a higher cache hit ratio - theoretically - * (ThMO) - * - * 12. Dec 1996: - * as this is a heavy used routine, another speedup improvement is - * needed. we'll now use 1 pointer, which will be incremented and - * 1 .. 4 constant indices, which replaces the old pointer-pure - * version. - * advantages: elimination of unnecessary pointer increments. - * Note: this *only* works, if the related addresses use one and the - * same address space - which is naturally for 2-dimensional - * arrays. - * (ThMO) - */ - - /* Jan 2008: AL1 - * Due to current computer speed, no more need to worry about optimisation. - * general_transport is less than 10% of the total simulation time AND - * the simulation is very fast and is bounded by anim rate: - * It could be about 5 times faster if we remove SDL_Delay in animation stuff - * tested on AMD Athlon XP 2200+ (1600 Mhz) + 750 MB - * with decent graphic card (GeForce 420 MX with 16MB) - */ - - /* O---------------------->x - * | | Up | - * | Left| Center |Right - * | | Down | - * v - * y - */ - - int *pol = &MP_POL(x, y); - Map_Point_Info *minfo = &MP_INFO(x, y); - - int tot, max, ratio, *base, xm1, xp1, ym1, yp1; - int i; - int CC; // x, y Center Current load - int CM; // Center Max load - int LC; // x-1, y Left - int LM; - int RC; // x+1,y Right - int RM; - int UC; // x, y-1 Up - int UM; - int DC; // x, y+1 Down - int DM; - - /* With the grey border we are sure that x-1 et al are inside the boundaries */ - base = &minfo->int_1; - xm1 = &minfo[-WORLD_SIDE_LEN].int_1 - base; - ym1 = &minfo[-1].int_1 - base; - xp1 = &minfo[WORLD_SIDE_LEN].int_1 - base; - yp1 = &minfo[1].int_1 - base; - - /* */ - for (i = 0; i < 7; i++) { - /* left */ - if ( XY_IS_TRANSPORT(x - 1, y) ) { - LC = base[xm1]; - LM = max_load(x - 1, y, i); - } else { - LC = LM =0; - } - /* right */ - if (XY_IS_TRANSPORT(x + 1, y)) { - RC = base[xp1]; - RM = max_load(x + 1, y, i); - } else { - RC = RM =0; - } - /* up */ - if (XY_IS_TRANSPORT(x, y - 1)) { - UC = base[ym1]; - UM = max_load(x, y - 1, i); - } else { - UC = UM =0; - } - /* down */ - if (XY_IS_TRANSPORT(x, y + 1)) { - DC = base[yp1]; - DM = max_load(x, y + 1, i); - } else { - DC = DM =0; - } - /* center = here */ - CC = *base; - CM = max_load(x,y,i); - - tot = CC + LC + RC + UC + DC; - max = CM + LM + RM + UM + DM; - ratio = (tot * 100) / max; - - /* left */ - if (XY_IS_TRANSPORT(x - 1, y)) { - LC = base[xm1] = (ratio * LM) / 100; - } - /* right */ - if (XY_IS_TRANSPORT(x + 1, y)) { - RC = base[xp1] = (ratio * RM) / 100; - } - /* up */ - if (XY_IS_TRANSPORT(x, y - 1)) { - UC = base[ym1] = (ratio * UM) / 100; - } - /* down */ - if (XY_IS_TRANSPORT(x, y + 1)) { - DC = base[yp1] = (ratio * DM) / 100; - } - - *base = tot - (LC + RC + UC + DC); - *base++; // loop on address of int_"i" - } - - /* - switch (minfo->flags & 0x0F) { - case 0: - return; - - case 1: // inlined t_av_l() -- (ThMO) - for (i = 0; i < 7; i++) { //loop on the adress of int_1 int_2 .... int_7 - tot = *base + base[xm1]; - av = tot / 2; - base[xm1] = av; - *base++ = av + tot % 2; - } - break; - - case 2: // inlined t_av_u() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[ym1]; - av = tot / 2; - base[ym1] = av; - *base++ = av + tot % 2; - } - break; - - case 3: // inlined t_av_lu() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[ym1]; - av = tot / 3; - base[xm1] = base[ym1] = av; - *base++ = av + tot % 3; - } - break; - - case 4: // inlined t_av_r() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xp1]; - av = tot / 2; - base[xp1] = av; - *base++ = av + tot % 2; - } - break; - - case 5: // inlined t_av_lr() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[xp1]; - av = tot / 3; - base[xm1] = base[xp1] = av; - *base++ = av + tot % 3; - } - break; - - case 6: // inline t_av_ur() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[ym1] + base[xp1]; - av = tot / 3; - base[ym1] = base[xp1] = av; - *base++ = av + tot % 3; - } - break; - - case 7: // inlined t_av_lur() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[ym1] + base[xp1]; - av = tot / 4; - base[xm1] = base[ym1] = base[xp1] = av; - *base++ = av + tot % 4; - } - break; - - case 8: // inlined t_av_d() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[yp1]; - av = tot / 2; - base[yp1] = av; - *base++ = av + tot % 2; - } - break; - - case 9: // inlined t_av_ld() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[yp1]; - av = tot / 3; - base[xm1] = base[yp1] = av; - *base++ = av + tot % 3; - } - break; - - case 10: // inlined t_av_ud() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[ym1] + base[yp1]; - av = tot / 3; - base[ym1] = base[yp1] = av; - *base++ = av + tot % 3; - } - break; - - case 11: // inlined t_av_lud() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[ym1] + base[yp1]; - av = tot / 4; - base[xm1] = base[ym1] = base[yp1] = av; - *base++ = av + tot % 4; - } - break; - - case 12: // inlined t_av_rd() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xp1] + base[yp1]; - av = tot / 3; - base[xp1] = base[yp1] = av; - *base++ = av + tot % 3; - } - break; - - case 13: // inlined t_av_lrd() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[xp1] + base[yp1]; - av = tot / 4; - base[xm1] = base[xp1] = base[yp1] = av; - *base++ = av + tot % 4; - } - break; - - case 14: // inlined t_av_urd() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[ym1] + base[xp1] + base[yp1]; - av = tot / 4; - base[ym1] = base[xp1] = base[yp1] = av; - *base++ = av + tot % 4; - } - break; - - case 15: // inlined t_av_lurd() -- (ThMO) - for (i = 0; i < 7; i++) { - tot = *base + base[xm1] + base[ym1] + base[xp1] + base[yp1]; - av = tot / 5; - base[xm1] = base[ym1] = base[xp1] = base[yp1] = av; - *base++ = av + tot % 5; - } - break; - } - */ - - // *--base = &minfo->int_7 = current waste on this tile of transport - if (*--base >= max_waste) { - *base -= WASTE_BURN_ON_TRANSPORT; - ++*pol; - } -} -void connect_transport(int originx, int originy, int w, int h) +void connect_transport(int originx, int originy, int lastx, int lasty) { // sets the correct TYPE depending on neighbours, => gives the correct tile to display - int x, y, mask, tflags; - short group; - static const short power_table[16] = { - CST_POWERL_H_D, CST_POWERL_V_D, CST_POWERL_H_D, CST_POWERL_RD_D, - CST_POWERL_H_D, CST_POWERL_LD_D, CST_POWERL_H_D, CST_POWERL_LDR_D, - CST_POWERL_V_D, CST_POWERL_V_D, CST_POWERL_RU_D, CST_POWERL_UDR_D, - CST_POWERL_LU_D, CST_POWERL_LDU_D, CST_POWERL_LUR_D, CST_POWERL_LUDR_D - }; - static const short track_table[16] = { - CST_TRACK_LR, CST_TRACK_LR, CST_TRACK_UD, CST_TRACK_LU, - CST_TRACK_LR, CST_TRACK_LR, CST_TRACK_UR, CST_TRACK_LUR, - CST_TRACK_UD, CST_TRACK_LD, CST_TRACK_UD, CST_TRACK_LUD, - CST_TRACK_DR, CST_TRACK_LDR, CST_TRACK_UDR, CST_TRACK_LUDR - }; - static const short road_table[16] = { - CST_ROAD_LR, CST_ROAD_LR, CST_ROAD_UD, CST_ROAD_LU, - CST_ROAD_LR, CST_ROAD_LR, CST_ROAD_UR, CST_ROAD_LUR, - CST_ROAD_UD, CST_ROAD_LD, CST_ROAD_UD, CST_ROAD_LUD, - CST_ROAD_DR, CST_ROAD_LDR, CST_ROAD_UDR, CST_ROAD_LUDR - }; - static const short rail_table[16] = { - CST_RAIL_LR, CST_RAIL_LR, CST_RAIL_UD, CST_RAIL_LU, - CST_RAIL_LR, CST_RAIL_LR, CST_RAIL_UR, CST_RAIL_LUR, - CST_RAIL_UD, CST_RAIL_LD, CST_RAIL_UD, CST_RAIL_LUD, - CST_RAIL_DR, CST_RAIL_LDR, CST_RAIL_UDR, CST_RAIL_LUDR - }; - static const short water_table[16] = { - CST_WATER, CST_WATER_D, CST_WATER_R, CST_WATER_RD, - CST_WATER_L, CST_WATER_LD, CST_WATER_LR, CST_WATER_LRD, - CST_WATER_U, CST_WATER_UD, CST_WATER_UR, CST_WATER_URD, - CST_WATER_LU, CST_WATER_LUD, CST_WATER_LUR, CST_WATER_LURD + 0, 1, 0, 2, + 0, 3, 0, 4, + 1, 1, 5, 6, + 7, 8, 9, 10 }; -#if FLAG_LEFT != 1 || FLAG_UP != 2 || FLAG_RIGHT != 4 || FLAG_DOWN != 8 -#error connect_transport(): you loose -#error the algorithm depends on proper flag settings -- (ThMO) -#endif + static const short table[16] = { + 0, 0, 1, 2, + 0, 0, 3, 4, + 1, 5, 1, 6, + 7, 8, 9, 10 + }; + Construction *cstr = 0; /* Adjust originx,originy,w,h to proper range */ - if (originx <= 0) { - originx = 1; - w -= 1 - originx; - } - if (originy <= 0) { - originy = 1; - h -= 1 - originy; - } - if (originx + w >= WORLD_SIDE_LEN) { - w = WORLD_SIDE_LEN - originx; - } - if (originy + h >= WORLD_SIDE_LEN) { - h = WORLD_SIDE_LEN - originy; - } - - for (x = originx; x < originx + w; x++) { - for (y = originy; y < originy + h; y++) { + if (originx <= 0) + { originx = 1;} + if (originy <= 0) + { originy = 1;} + if (lastx >= world.len()) + { lastx = world.len() - 1;} + if (lasty >= world.len()) + { lasty = world.len() - 1;} + + for (int y = originy; y <= lasty; ++y) + { + for (int x = originx; x <= lastx; ++x) + { // First, set up a mask according to directions - mask = 0; - switch (MP_GROUP(x, y)) { + cstr = world(x, y)->construction; + int* frame = cstr ? &(cstr->frameIt->frame) : NULL; + int mask = 0; + switch (world(x, y)->getGroup()) + { case GROUP_POWER_LINE: - /* power may be transferred */ + { + bool far = false; + int mwh = -1; + world(x,y)->reportingConstruction->deneighborize(); /* up -- (ThMO) */ - group = MP_GROUP(x, y - 1); - /* see if dug under track, rail or road */ - if (y > 1 && (group == GROUP_WATER - || group == GROUP_TRACK || group == GROUP_TRACK_BRIDGE - || group == GROUP_ROAD || group == GROUP_ROAD_BRIDGE - || group == GROUP_RAIL || group == GROUP_RAIL_BRIDGE)) - group = MP_GROUP(x, y - 2); - switch (group) { - case GROUP_POWER_LINE: - case GROUP_SOLAR_POWER: - case GROUP_SUBSTATION: - case GROUP_COAL_POWER: - mask |= 8; - break; + mwh = world(x, y-1)->reportingConstruction? + world(x, y-1)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; + if ((far = ((y > 1) && (world(x, y-1)->is_water() || world(x, y-1)->is_transport())))) + { + mwh = world(x, y-2)->reportingConstruction? + world(x, y-2)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; } + if(mwh != -1) + { + if (far) //suspended cables + { + //opposite edge + if (!world(x, y-2)->reportingConstruction->countPowercables(1)) + { + world(x, y-1)->flags |= FLAG_POWER_CABLES_0; + cstr->link_to(world(x,y-2)->reportingConstruction); + mask |=8; + } + } + else + { + cstr->link_to(world(x,y-1)->reportingConstruction); + mask |=8; + } + } + else + { world(x, y-1)->flags &= ~FLAG_POWER_CABLES_0;} /* left -- (ThMO) */ - group = MP_GROUP(x - 1, y); - if (x > 1 && (group == GROUP_WATER - || group == GROUP_TRACK || group == GROUP_TRACK_BRIDGE - || group == GROUP_ROAD || group == GROUP_ROAD_BRIDGE - || group == GROUP_RAIL || group == GROUP_RAIL_BRIDGE)) - group = MP_GROUP(x - 2, y); - switch (group) { - case GROUP_POWER_LINE: - case GROUP_SOLAR_POWER: - case GROUP_SUBSTATION: - case GROUP_COAL_POWER: - mask |= 4; - break; + mwh = world(x-1, y)->reportingConstruction? + world(x-1, y)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; + if((far = ((x > 1) && (world(x-1, y)->is_water() || world(x-1, y)->is_transport())))) + { + mwh = world(x-2, y)->reportingConstruction? + world(x-2, y)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; + } + if(mwh != -1) + { + if (far) //suspended cables + { + //opposite edge + if ( !world(x-2, y)->reportingConstruction->countPowercables(2) ) + { + cstr->link_to(world(x-2,y)->reportingConstruction); + world(x-1, y)->flags |= FLAG_POWER_CABLES_90; + mask |=4; + } + } + else + { + cstr->link_to(world(x-1,y)->reportingConstruction); + mask |=4; + } } + else + { world(x-1, y)->flags &= ~FLAG_POWER_CABLES_90;} /* right -- (ThMO) */ - group = MP_GROUP(x + 1, y); - if (x < WORLD_SIDE_LEN - 2 && (group ==GROUP_WATER - || group == GROUP_TRACK || group == GROUP_TRACK_BRIDGE - || group == GROUP_ROAD || group == GROUP_ROAD_BRIDGE - || group == GROUP_RAIL || group == GROUP_RAIL_BRIDGE)) - group = MP_GROUP(x + 2, y); - switch (group) { - case GROUP_WINDMILL: - if (MP_TECH(x + 1, y) < MODERN_WINDMILL_TECH) - break; - case GROUP_POWER_LINE: - case GROUP_SOLAR_POWER: - case GROUP_SUBSTATION: - case GROUP_COAL_POWER: - mask |= 2; - break; + mwh = world(x+1, y)->reportingConstruction? + world(x+1, y)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; + if ((far = ((x < world.len() - 2) && (world(x+1, y)->is_water() || world(x+1, y)->is_transport())))) + { + mwh = world(x+2, y)->reportingConstruction? + world(x+2, y)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; + } + if(mwh != -1) + { + if (far) //suspended cables + { + //opposite edge + if ( !world(x+2, y)->reportingConstruction->countPowercables(4) ) + { + cstr->link_to(world(x+2,y)->reportingConstruction); + world(x+1, y)->flags |= FLAG_POWER_CABLES_90; + mask |=2; + } + } + else + { + cstr->link_to(world(x+1,y)->reportingConstruction); + mask |=2; + } } + else + { world(x+1, y)->flags &= ~FLAG_POWER_CABLES_90;} /* down -- (ThMO) */ - group = MP_GROUP(x, y + 1); - if (y < WORLD_SIDE_LEN - 2 && (group ==GROUP_WATER - || group == GROUP_TRACK || group == GROUP_TRACK_BRIDGE - || group == GROUP_ROAD || group == GROUP_ROAD_BRIDGE - || group == GROUP_RAIL || group == GROUP_RAIL_BRIDGE)) - group = MP_GROUP(x, y + 2); - switch (group) { - case GROUP_WINDMILL: - if (MP_TECH(x, y + 1) < MODERN_WINDMILL_TECH) - break; - case GROUP_POWER_LINE: - case GROUP_SOLAR_POWER: - case GROUP_SUBSTATION: - case GROUP_COAL_POWER: - ++mask; - break; + mwh = world(x, y+1)->reportingConstruction? + world(x, y+1)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1; + if ((far = (y < world.len() - 2) && (world(x, y+1)->is_water() || world(x, y+1)->is_transport()))) + { + mwh = world(x, y+2)->reportingConstruction? + world(x, y+2)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -2):-1;} + if(mwh != -1) + { + if (far) //suspended cables + { + //opposite edge + if ( !world(x, y+2)->reportingConstruction->countPowercables(8) ) + { + cstr->link_to(world(x,y+2)->reportingConstruction); + world(x, y+1)->flags |= FLAG_POWER_CABLES_0; + mask |=1; + } + } + else + { + cstr->link_to(world(x,y+1)->reportingConstruction); + mask |=1; + } } + else + { world(x, y+1)->flags &= ~FLAG_POWER_CABLES_0;} - /* Next, set the connectivity into MP_TYPE */ - MP_TYPE(x, y) = power_table[mask]; - /* Finally, adjust MP_TYPE to show electon bolt */ - /* WCK:This is done in do_power_line now if (MP_INFO(x, y).int_1 != 0) */ + *frame = power_table[mask]; break; - + } case GROUP_TRACK: - if (MP_GROUP(x, y - 1) == GROUP_TRACK) - mask |= FLAG_UP; - if (MP_GROUP(x - 1, y) == GROUP_TRACK) - mask |= FLAG_LEFT; - tflags = mask; + if (check_group(x, y - 1) == GROUP_TRACK + || check_group(x, y - 1) == GROUP_ROAD + || (check_group(x, y - 1) == GROUP_RAIL && //rail crossing + check_group(x, y - 2) == GROUP_TRACK)) + { mask |= 2;} + if (check_group(x - 1, y) == GROUP_TRACK + || check_group(x - 1, y) == GROUP_ROAD + || (check_group(x - 1, y) == GROUP_RAIL && //rail crossing + check_group(x - 2, y) == GROUP_TRACK)) + { mask |= 1;} - switch (MP_GROUP(x + 1, y)) { + switch (check_topgroup(x + 1, y)) + { + case GROUP_RAIL: + if(check_group(x + 2, y) != GROUP_TRACK) + { break;} + case GROUP_ROAD: case GROUP_TRACK: case GROUP_TRACK_BRIDGE: - tflags |= FLAG_RIGHT; case GROUP_COMMUNE: case GROUP_COALMINE: case GROUP_OREMINE: @@ -508,18 +206,19 @@ case GROUP_RECYCLE: case GROUP_TIP: case GROUP_PORT: - mask |= FLAG_RIGHT; - break; - default: - if (MP_GROUP(x + 1, y - 1) == GROUP_COAL_POWER) - mask |= FLAG_RIGHT; + case GROUP_COAL_POWER: + mask |= 4; break; } - switch (MP_GROUP(x, y + 1)) { + switch (check_topgroup(x, y + 1)) + { + case GROUP_RAIL: + if(check_group(x, y + 2) != GROUP_TRACK) + { break;} + case GROUP_ROAD: case GROUP_TRACK: case GROUP_TRACK_BRIDGE: - tflags |= FLAG_DOWN; case GROUP_COMMUNE: case GROUP_COALMINE: case GROUP_OREMINE: @@ -528,69 +227,120 @@ case GROUP_RECYCLE: case GROUP_TIP: case GROUP_PORT: - mask |= FLAG_DOWN; - break; - default: - if (MP_GROUP(x - 1, y + 1) == GROUP_COAL_POWER) - mask |= FLAG_DOWN; + case GROUP_COAL_POWER: + mask |= 8; break; } - MP_INFO(x, y).flags &= ~(FLAG_UP | FLAG_DOWN | FLAG_LEFT | FLAG_RIGHT); - MP_INFO(x, y).flags |= tflags; - // A track section between 2 bridge sections // in this special case we use a pillar bridge section with green - if ((MP_GROUP(x, y-1) == GROUP_TRACK_BRIDGE && ( - MP_GROUP(x, y+1) == GROUP_TRACK_BRIDGE || MP_GROUP(x, y+2) == GROUP_TRACK_BRIDGE)) - || (MP_GROUP(x, y+1) == GROUP_TRACK_BRIDGE && ( - MP_GROUP(x, y-1) == GROUP_TRACK_BRIDGE || MP_GROUP(x, y-2) == GROUP_TRACK_BRIDGE))) - MP_TYPE(x, y) = CST_TRACK_BRIDGE_UDP; - else if ((MP_GROUP(x-1, y) == GROUP_TRACK_BRIDGE && ( - MP_GROUP(x+1, y) == GROUP_TRACK_BRIDGE || MP_GROUP(x+2, y) == GROUP_TRACK_BRIDGE)) - || (MP_GROUP(x+1, y) == GROUP_TRACK_BRIDGE && ( - MP_GROUP(x-1, y) == GROUP_TRACK_BRIDGE || MP_GROUP(x-2, y) == GROUP_TRACK_BRIDGE))) - MP_TYPE(x, y) = CST_TRACK_BRIDGE_LRP; + if ((check_group(x, y-1) == GROUP_TRACK_BRIDGE && ( + check_group(x, y+1) == GROUP_TRACK_BRIDGE || check_group(x, y+2) == GROUP_TRACK_BRIDGE)) + || (check_group(x, y+1) == GROUP_TRACK_BRIDGE && ( + check_group(x, y-1) == GROUP_TRACK_BRIDGE || check_group(x, y-2) == GROUP_TRACK_BRIDGE))) + { *frame = 11;} + else if ((check_group(x-1, y) == GROUP_TRACK_BRIDGE && ( + check_group(x+1, y) == GROUP_TRACK_BRIDGE || check_group(x+2, y) == GROUP_TRACK_BRIDGE)) + || (check_group(x+1, y) == GROUP_TRACK_BRIDGE && ( + check_group(x-1, y) == GROUP_TRACK_BRIDGE || check_group(x-2, y) == GROUP_TRACK_BRIDGE))) + { *frame = 12;} // Set according bridge entrance if any - else if (MP_GROUP(x, y-1) == GROUP_TRACK_BRIDGE) - MP_TYPE(x, y) = CST_TRACK_BRIDGE_OUD; - else if (MP_GROUP(x-1, y) == GROUP_TRACK_BRIDGE) - MP_TYPE(x, y) = CST_TRACK_BRIDGE_OLR; - else if (MP_GROUP(x, y+1) == GROUP_TRACK_BRIDGE) - MP_TYPE(x, y) = CST_TRACK_BRIDGE_IUD; - else if (MP_GROUP(x+1, y) == GROUP_TRACK_BRIDGE) - MP_TYPE(x, y) = CST_TRACK_BRIDGE_ILR; + else if (check_group(x, y-1) == GROUP_TRACK_BRIDGE) + { *frame = 13;} + else if (check_group(x-1, y) == GROUP_TRACK_BRIDGE) + { *frame = 14;} + else if (check_group(x, y+1) == GROUP_TRACK_BRIDGE) + { *frame = 15;} + else if (check_group(x+1, y) == GROUP_TRACK_BRIDGE) + { *frame = 16;} + else if (check_group(x+1, y) == GROUP_RAIL && + check_group(x-1, y) == GROUP_RAIL && + check_group(x, y+1) == GROUP_TRACK && + check_group(x, y-1) == GROUP_TRACK) + { + railConstructionGroup.placeItem(x,y); + cstr = world(x,y)->construction; + frame = &(cstr->frameIt->frame); + *frame = 21; + //rewind the loops + x -= 2; + y -= 2; + if (x < originx) + { x = originx;} + if (y < originy) + { y = originy;} + + } + else if (check_group(x, y+1) == GROUP_RAIL && + check_group(x, y-1) == GROUP_RAIL && + check_group(x+1, y) == GROUP_TRACK && + check_group(x-1, y) == GROUP_TRACK) + { + railConstructionGroup.placeItem(x,y); + cstr = world(x,y)->construction; + frame = &(cstr->frameIt->frame); + *frame = 22; + //rewind the loops + x -= 2; + y -= 2; + if (x < originx) + { x = originx;} + if (y < originy) + { y = originy;} + } + else + { *frame = table[mask];} + //only brige entrances (and bridges) are transparent + if (*frame >= 11 && *frame <= 12) + { + cstr->flags |= FLAG_TRANSPARENT; + world(x,y)->flags &= (~FLAG_INVISIBLE); + } else - MP_TYPE(x, y) = track_table[mask]; + { + cstr->flags &= (~FLAG_TRANSPARENT); + world(x,y)->flags |= FLAG_INVISIBLE; + } break; case GROUP_TRACK_BRIDGE: // Bridge neighbour priority - if (MP_GROUP(x, y-1) == GROUP_TRACK_BRIDGE || MP_GROUP(x, y+1) == GROUP_TRACK_BRIDGE - || MP_GROUP(x, y-1) == GROUP_TRACK || MP_GROUP(x, y+1) == GROUP_TRACK) + if (check_group(x, y-1) == GROUP_TRACK_BRIDGE || check_group(x, y+1) == GROUP_TRACK_BRIDGE + || check_group(x, y-1) == GROUP_TRACK || check_group(x, y+1) == GROUP_TRACK) { - mask |= FLAG_UP; - MP_TYPE(x, y) = CST_TRACK_BRIDGE_UD; + mask |= 2; + *frame = 0; } - else if (MP_GROUP(x-1, y) == GROUP_TRACK_BRIDGE || MP_GROUP(x+1, y) == GROUP_TRACK_BRIDGE - || MP_GROUP(x-1, y) == GROUP_TRACK || MP_GROUP(x+1, y) == GROUP_TRACK) + else if (check_group(x-1, y) == GROUP_TRACK_BRIDGE || check_group(x+1, y) == GROUP_TRACK_BRIDGE + || check_group(x-1, y) == GROUP_TRACK || check_group(x+1, y) == GROUP_TRACK) { - mask |= FLAG_LEFT; - MP_TYPE(x, y) = CST_TRACK_BRIDGE_LR; + mask |= 1; + *frame = 1; } - MP_INFO(x, y).flags &= ~(FLAG_UP | FLAG_DOWN | FLAG_LEFT | FLAG_RIGHT); - MP_INFO(x, y).flags |= mask; + else //a lonely bridge tile + { *frame = 1;} + cstr->flags |= FLAG_TRANSPARENT; + world(x,y)->flags &= (~FLAG_INVISIBLE); break; case GROUP_ROAD: - if (MP_GROUP(x, y - 1) == GROUP_ROAD) - mask |= FLAG_UP; - if (MP_GROUP(x - 1, y) == GROUP_ROAD) - mask |= FLAG_LEFT; - tflags = mask; + if (check_group(x, y - 1) == GROUP_ROAD + || check_group(x, y - 1) == GROUP_TRACK + || (check_group(x, y - 1) == GROUP_RAIL && //rail crossing + check_group(x, y - 2) == GROUP_ROAD)) + { mask |= 2;} + if (check_group(x - 1, y) == GROUP_ROAD + || check_group(x - 1, y) == GROUP_TRACK + || (check_group(x - 1, y) == GROUP_RAIL && //rail crossing + check_group(x - 2, y) == GROUP_ROAD)) + { mask |= 1;} - switch (MP_GROUP(x + 1, y)) { + switch (check_topgroup(x + 1, y)) + { + case GROUP_RAIL: + if(check_group(x + 2, y) != GROUP_ROAD) + { break;} + case GROUP_TRACK: case GROUP_ROAD: - tflags |= FLAG_RIGHT; case GROUP_COMMUNE: case GROUP_COALMINE: case GROUP_OREMINE: @@ -599,16 +349,17 @@ case GROUP_RECYCLE: case GROUP_TIP: case GROUP_PORT: - mask |= FLAG_RIGHT; - break; - default: - if (MP_GROUP(x + 1, y - 1) == GROUP_COAL_POWER) - mask |= FLAG_RIGHT; + case GROUP_COAL_POWER: + mask |= 4; break; } - switch (MP_GROUP(x, y + 1)) { + switch (check_topgroup(x, y + 1)) + { + case GROUP_RAIL: + if(check_group(x, y + 2) != GROUP_ROAD) + { break;} + case GROUP_TRACK: case GROUP_ROAD: - tflags |= FLAG_DOWN; case GROUP_COMMUNE: case GROUP_COALMINE: case GROUP_OREMINE: @@ -617,87 +368,111 @@ case GROUP_RECYCLE: case GROUP_TIP: case GROUP_PORT: - mask |= FLAG_DOWN; - break; - default: - if (MP_GROUP(x - 1, y + 1) == GROUP_COAL_POWER) - mask |= FLAG_DOWN; + case GROUP_COAL_POWER: + mask |= 8; break; } - MP_INFO(x, y).flags &= ~(FLAG_UP | FLAG_DOWN | FLAG_LEFT | FLAG_RIGHT); - MP_INFO(x, y).flags |= tflags; // A road section between 2 bridge sections // in this special case we use a pillar bridge section with green - if ((MP_GROUP(x, y-1) == GROUP_ROAD_BRIDGE && ( - MP_GROUP(x, y+1) == GROUP_ROAD_BRIDGE || MP_GROUP(x, y+2) == GROUP_ROAD_BRIDGE)) - || (MP_GROUP(x, y+1) == GROUP_ROAD_BRIDGE && ( - MP_GROUP(x, y-1) == GROUP_ROAD_BRIDGE || MP_GROUP(x, y-2) == GROUP_ROAD_BRIDGE))) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_UDPG; - else if ((MP_GROUP(x-1, y) == GROUP_ROAD_BRIDGE && ( - MP_GROUP(x+1, y) == GROUP_ROAD_BRIDGE || MP_GROUP(x+2, y) == GROUP_ROAD_BRIDGE)) - || (MP_GROUP(x+1, y) == GROUP_ROAD_BRIDGE && ( - MP_GROUP(x-1, y) == GROUP_ROAD_BRIDGE || MP_GROUP(x-2, y) == GROUP_ROAD_BRIDGE))) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_LRPG; + if ((check_group(x, y-1) == GROUP_ROAD_BRIDGE && ( + check_group(x, y+1) == GROUP_ROAD_BRIDGE || check_group(x, y+2) == GROUP_ROAD_BRIDGE)) + || (check_group(x, y+1) == GROUP_ROAD_BRIDGE && ( + check_group(x, y-1) == GROUP_ROAD_BRIDGE || check_group(x, y-2) == GROUP_ROAD_BRIDGE))) + { *frame = 11;} + else if ((check_group(x-1, y) == GROUP_ROAD_BRIDGE && ( + check_group(x+1, y) == GROUP_ROAD_BRIDGE || check_group(x+2, y) == GROUP_ROAD_BRIDGE)) + || (check_group(x+1, y) == GROUP_ROAD_BRIDGE && ( + check_group(x-1, y) == GROUP_ROAD_BRIDGE || check_group(x-2, y) == GROUP_ROAD_BRIDGE))) + { *frame = 12;} // Build bridge entrance2 - else if (MP_GROUP(x, y-1) == GROUP_ROAD_BRIDGE) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_O2UD; - else if (MP_GROUP(x-1, y) == GROUP_ROAD_BRIDGE) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_O2LR; - else if (MP_GROUP(x, y+1) == GROUP_ROAD_BRIDGE) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_I2UD; - else if (MP_GROUP(x+1, y) == GROUP_ROAD_BRIDGE) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_I2LR; + else if (check_group(x, y-1) == GROUP_ROAD_BRIDGE) + { *frame = 13;} + else if (check_group(x-1, y) == GROUP_ROAD_BRIDGE) + { *frame = 14;} + else if (check_group(x, y+1) == GROUP_ROAD_BRIDGE) + { *frame = 15;} + else if (check_group(x+1, y) == GROUP_ROAD_BRIDGE) + { *frame = 16;} // Build bridge entrance1 - else if (MP_GROUP(x, y-2) == GROUP_ROAD_BRIDGE && MP_GROUP(x, y-1) == GROUP_ROAD) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_O1UD; - else if (MP_GROUP(x-2, y) == GROUP_ROAD_BRIDGE && MP_GROUP(x-1, y) == GROUP_ROAD) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_O1LR; - else if (MP_GROUP(x, y+2) == GROUP_ROAD_BRIDGE && MP_GROUP(x, y+1) == GROUP_ROAD) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_I1UD; - else if (MP_GROUP(x+2, y) == GROUP_ROAD_BRIDGE && MP_GROUP(x+1, y) == GROUP_ROAD) - MP_TYPE(x, y) = CST_ROAD_BRIDGE_I1LR; - else - MP_TYPE(x, y) = road_table[mask]; - break; - - case GROUP_ROAD_BRIDGE: - // Bridge neighbour priority - if (MP_GROUP(x, y-1) == GROUP_ROAD_BRIDGE || MP_GROUP(x, y+1) == GROUP_ROAD_BRIDGE) + else if (check_group(x, y-2) == GROUP_ROAD_BRIDGE && check_group(x, y-1) == GROUP_ROAD) + { *frame = 17;} + else if (check_group(x-2, y) == GROUP_ROAD_BRIDGE && check_group(x-1, y) == GROUP_ROAD) + { *frame = 18;} + else if (check_group(x, y+2) == GROUP_ROAD_BRIDGE && check_group(x, y+1) == GROUP_ROAD) + { *frame = 19;} + else if (check_group(x+2, y) == GROUP_ROAD_BRIDGE && check_group(x+1, y) == GROUP_ROAD) + { *frame = 20;} + else if (check_group(x+1, y) == GROUP_RAIL && + check_group(x-1, y) == GROUP_RAIL && + check_group(x, y+1) == GROUP_ROAD && + check_group(x, y-1) == GROUP_ROAD) { - mask |= FLAG_UP; - MP_TYPE(x, y) = CST_ROAD_BRIDGE_UDP; - } - else if (MP_GROUP(x-1, y) == GROUP_ROAD_BRIDGE || MP_GROUP(x+1, y) == GROUP_ROAD_BRIDGE) + railConstructionGroup.placeItem(x,y); + cstr = world(x,y)->construction; + frame = &(cstr->frameIt->frame); + *frame = 23; + //rewind the loops + x -= 2; + y -= 2; + if (x < originx) + { x = originx;} + if (y < originy) + { y = originy;} + } + else if (check_group(x, y+1) == GROUP_RAIL && + check_group(x, y-1) == GROUP_RAIL && + check_group(x+1, y) == GROUP_ROAD && + check_group(x-1, y) == GROUP_ROAD) { - mask |= FLAG_LEFT; - MP_TYPE(x, y) = CST_ROAD_BRIDGE_LRP; + railConstructionGroup.placeItem(x,y); + cstr = world(x,y)->construction; + frame = &(cstr->frameIt->frame); + *frame = 24; + //rewind the loops + x -= 2; + y -= 2; + if (x < originx) + { x = originx;} + if (y < originy) + { y = originy;} } - else if (MP_GROUP(x, y-1) == GROUP_ROAD || MP_GROUP(x, y+1) == GROUP_ROAD) + else + { *frame = table[mask];} + if(*frame >= 11 && *frame <= 16) { - mask |= FLAG_UP; - MP_TYPE(x, y) = CST_ROAD_BRIDGE_UD; + cstr->flags |= FLAG_TRANSPARENT; + world(x,y)->flags &= (~FLAG_INVISIBLE); } - else if (MP_GROUP(x-1, y) == GROUP_ROAD || MP_GROUP(x+1, y) == GROUP_ROAD) + else { - mask |= FLAG_LEFT; - MP_TYPE(x, y) = CST_ROAD_BRIDGE_LR; + cstr->flags &= (~FLAG_TRANSPARENT); + world(x,y)->flags |= FLAG_INVISIBLE; } + break; + + case GROUP_ROAD_BRIDGE: + // Bridge neighbour priority + if (check_group(x, y-1) == GROUP_ROAD_BRIDGE || check_group(x, y+1) == GROUP_ROAD_BRIDGE) + { *frame = 0;} + else if (check_group(x-1, y) == GROUP_ROAD_BRIDGE || check_group(x+1, y) == GROUP_ROAD_BRIDGE) + { *frame = 1;} + else if (check_group(x, y-1) == GROUP_ROAD || check_group(x, y+1) == GROUP_ROAD) + { *frame = 0;}//2 + else if (check_group(x-1, y) == GROUP_ROAD || check_group(x+1, y) == GROUP_ROAD) + { *frame = 1;}//3 else - MP_TYPE(x, y) = CST_ROAD_BRIDGE_LRP; - MP_INFO(x, y).flags &= ~(FLAG_UP | FLAG_DOWN | FLAG_LEFT | FLAG_RIGHT); - MP_INFO(x, y).flags |= mask; + { *frame = 1;} + cstr->flags |= FLAG_TRANSPARENT; break; case GROUP_RAIL: - if (MP_GROUP(x, y - 1) == GROUP_RAIL) - mask |= FLAG_UP; - if (MP_GROUP(x - 1, y) == GROUP_RAIL) - mask |= FLAG_LEFT; - tflags = mask; + if (check_group(x, y - 1) == GROUP_RAIL) + { mask |= 2;} + if (check_group(x - 1, y) == GROUP_RAIL) + { mask |= 1;} - switch (MP_GROUP(x + 1, y)) { + switch (check_topgroup(x + 1, y)) { case GROUP_RAIL: - tflags |= FLAG_RIGHT; case GROUP_COMMUNE: case GROUP_COALMINE: case GROUP_OREMINE: @@ -706,16 +481,12 @@ case GROUP_RECYCLE: case GROUP_TIP: case GROUP_PORT: - mask |= FLAG_RIGHT; - break; - default: - if (MP_GROUP(x + 1, y - 1) == GROUP_COAL_POWER) - mask |= FLAG_RIGHT; + case GROUP_COAL_POWER: + mask |= 4; break; } - switch (MP_GROUP(x, y + 1)) { + switch (check_topgroup(x, y + 1)) { case GROUP_RAIL: - tflags |= FLAG_DOWN; case GROUP_COMMUNE: case GROUP_COALMINE: case GROUP_OREMINE: @@ -724,92 +495,85 @@ case GROUP_RECYCLE: case GROUP_TIP: case GROUP_PORT: - mask |= FLAG_DOWN; - break; - default: - if (MP_GROUP(x - 1, y + 1) - == GROUP_COAL_POWER) - mask |= FLAG_DOWN; + case GROUP_COAL_POWER: + mask |= 8; break; } - MP_INFO(x, y).flags &= ~(FLAG_UP | FLAG_DOWN | FLAG_LEFT | FLAG_RIGHT); - MP_INFO(x, y).flags |= tflags; // A rail section between 2 bridge sections // in this special case we use a pillar bridge section with green - if ((MP_GROUP(x, y-1) == GROUP_RAIL_BRIDGE && ( - MP_GROUP(x, y+1) == GROUP_RAIL_BRIDGE || MP_GROUP(x, y+2) == GROUP_RAIL_BRIDGE)) - || (MP_GROUP(x, y+1) == GROUP_RAIL_BRIDGE && ( - MP_GROUP(x, y-1) == GROUP_RAIL_BRIDGE || MP_GROUP(x, y-2) == GROUP_RAIL_BRIDGE))) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_UDPG; - else if ((MP_GROUP(x-1, y) == GROUP_RAIL_BRIDGE && ( - MP_GROUP(x+1, y) == GROUP_RAIL_BRIDGE || MP_GROUP(x+2, y) == GROUP_RAIL_BRIDGE)) - || (MP_GROUP(x+1, y) == GROUP_RAIL_BRIDGE && ( - MP_GROUP(x-1, y) == GROUP_RAIL_BRIDGE || MP_GROUP(x-2, y) == GROUP_RAIL_BRIDGE))) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_LRPG; + if ((check_group(x, y-1) == GROUP_RAIL_BRIDGE && ( + check_group(x, y+1) == GROUP_RAIL_BRIDGE || check_group(x, y+2) == GROUP_RAIL_BRIDGE)) + || (check_group(x, y+1) == GROUP_RAIL_BRIDGE && ( + check_group(x, y-1) == GROUP_RAIL_BRIDGE || check_group(x, y-2) == GROUP_RAIL_BRIDGE))) + { *frame = 11;} + else if ((check_group(x-1, y) == GROUP_RAIL_BRIDGE && ( + check_group(x+1, y) == GROUP_RAIL_BRIDGE || check_group(x+2, y) == GROUP_RAIL_BRIDGE)) + || (check_group(x+1, y) == GROUP_RAIL_BRIDGE && ( + check_group(x-1, y) == GROUP_RAIL_BRIDGE || check_group(x-2, y) == GROUP_RAIL_BRIDGE))) + { *frame = 12;} // Build bridge entrance2 - else if (MP_GROUP(x, y-1) == GROUP_RAIL_BRIDGE) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_O2UD; - else if (MP_GROUP(x-1, y) == GROUP_RAIL_BRIDGE) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_O2LR; - else if (MP_GROUP(x, y+1) == GROUP_RAIL_BRIDGE) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_I2UD; - else if (MP_GROUP(x+1, y) == GROUP_RAIL_BRIDGE) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_I2LR; + else if (check_group(x, y-1) == GROUP_RAIL_BRIDGE) + { *frame = 13;} + else if (check_group(x-1, y) == GROUP_RAIL_BRIDGE) + { *frame = 14;} + else if (check_group(x, y+1) == GROUP_RAIL_BRIDGE) + { *frame = 15;} + else if (check_group(x+1, y) == GROUP_RAIL_BRIDGE) + { *frame = 16;} // Build bridge entrance1 - else if (MP_GROUP(x, y-2) == GROUP_RAIL_BRIDGE && MP_GROUP(x, y-1) == GROUP_RAIL) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_O1UD; - else if (MP_GROUP(x-2, y) == GROUP_RAIL_BRIDGE && MP_GROUP(x-1, y) == GROUP_RAIL) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_O1LR; - else if (MP_GROUP(x, y+2) == GROUP_RAIL_BRIDGE && MP_GROUP(x, y+1) == GROUP_RAIL) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_I1UD; - else if (MP_GROUP(x+2, y) == GROUP_RAIL_BRIDGE && MP_GROUP(x+1, y) == GROUP_RAIL) - MP_TYPE(x, y) = CST_RAIL_BRIDGE_I1LR; - else - MP_TYPE(x, y) = rail_table[mask]; - break; + else if (check_group(x, y-2) == GROUP_RAIL_BRIDGE && check_group(x, y-1) == GROUP_RAIL) + { *frame = 17;} + else if (check_group(x-2, y) == GROUP_RAIL_BRIDGE && check_group(x-1, y) == GROUP_RAIL) + { *frame = 18;} + else if (check_group(x, y+2) == GROUP_RAIL_BRIDGE && check_group(x, y+1) == GROUP_RAIL) + { *frame = 19;} + else if (check_group(x+2, y) == GROUP_RAIL_BRIDGE && check_group(x+1, y) == GROUP_RAIL) + { *frame = 20;} + //railroad crossings + else if (check_group(x+1, y) == GROUP_TRACK && + check_group(x-1, y) == GROUP_TRACK) + { *frame = 22; } + else if (check_group(x, y+1) == GROUP_TRACK && + check_group(x, y-1) == GROUP_TRACK) + { *frame = 21; } + else if (check_group(x+1, y) == GROUP_ROAD && + check_group(x-1, y) == GROUP_ROAD) + { *frame = 24; } + else if (check_group(x, y+1) == GROUP_ROAD && + check_group(x, y-1) == GROUP_ROAD) + { *frame = 23; } - case GROUP_RAIL_BRIDGE: - // Bridge neighbour priority - if (MP_GROUP(x, y-1) == GROUP_RAIL_BRIDGE || MP_GROUP(x, y+1) == GROUP_RAIL_BRIDGE - || MP_GROUP(x, y-1) == GROUP_RAIL || MP_GROUP(x, y+1) == GROUP_RAIL) + else + { *frame = table[mask];} + if(*frame >= 11 && *frame <= 16) { - mask |= FLAG_UP; - MP_TYPE(x, y) = CST_RAIL_BRIDGE_UD; + cstr->flags |= FLAG_TRANSPARENT; + world(x,y)->flags &= (~FLAG_INVISIBLE); } - else if (MP_GROUP(x-1, y) == GROUP_RAIL_BRIDGE || MP_GROUP(x+1, y) == GROUP_RAIL_BRIDGE - || MP_GROUP(x-1, y) == GROUP_RAIL || MP_GROUP(x+1, y) == GROUP_RAIL) + else { - mask |= FLAG_LEFT; - MP_TYPE(x, y) = CST_RAIL_BRIDGE_LR; + cstr->flags &= (~FLAG_TRANSPARENT); + world(x,y)->flags |= FLAG_INVISIBLE; } - else - MP_TYPE(x, y) = CST_RAIL_BRIDGE_LR; - MP_INFO(x, y).flags &= ~(FLAG_UP | FLAG_DOWN | FLAG_LEFT | FLAG_RIGHT); - MP_INFO(x, y).flags |= mask; break; - case GROUP_WATER: - /* up -- (ThMO) */ - if ((MP_TYPE(x, y - 1) == CST_USED && MP_GROUP(MP_INFO(x, y - 1).int_1, MP_INFO(x, y - 1).int_2) == GROUP_PORT) - || XY_IS_WATER(x, y - 1)) - mask |= 8; - - /* left -- (ThMO) */ - if ((MP_TYPE(x - 1,y) == CST_USED && MP_GROUP(MP_INFO(x - 1, y).int_1, MP_INFO(x - 1, y).int_2) == GROUP_PORT) - || XY_IS_WATER(x - 1, y)) - mask |= 4; - - /* right -- (ThMO) */ - if (XY_IS_WATER(x + 1, y)) - mask |= 2; - - /* down -- (ThMO) */ - if (XY_IS_WATER(x, y + 1)) - mask |= 1; - - MP_TYPE(x, y) = water_table[mask]; + case GROUP_RAIL_BRIDGE: + // Bridge neighbour priority + if (check_group(x, y-1) == GROUP_RAIL_BRIDGE || check_group(x, y+1) == GROUP_RAIL_BRIDGE + || check_group(x, y-1) == GROUP_RAIL || check_group(x, y+1) == GROUP_RAIL) + { *frame = 0;} + else if (check_group(x-1, y) == GROUP_RAIL_BRIDGE || check_group(x+1, y) == GROUP_RAIL_BRIDGE + || check_group(x-1, y) == GROUP_RAIL || check_group(x+1, y) == GROUP_RAIL) + { *frame = 1;} + else + { *frame = 1;} + cstr->flags |= FLAG_TRANSPARENT; + world(x,y)->flags &= (~FLAG_INVISIBLE); break; } /* end switch */ - } /* end for */ - } /* end for */ + } /* end for y*/ + } /* end for x*/ } + +/** @file lincity/transport.cpp */ + diff -Nru lincity-ng-2.0/src/lincity/transport.h lincity-ng-2.9~git20150314/src/lincity/transport.h --- lincity-ng-2.0/src/lincity/transport.h 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/transport.h 2015-05-05 16:32:51.000000000 +0000 @@ -3,20 +3,143 @@ * This file is part of lincity. * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. * ---------------------------------------------------------------------- */ +#include "lintypes.h" #ifndef __TRANSPORT_H__ #define __TRANSPORT_H__ -#include "engglobs.h" - -#define XY_IS_TRANSPORT(x,y) \ -((MP_GROUP(x,y) == GROUP_TRACK) || \ - (MP_GROUP(x,y) == GROUP_ROAD) || \ - (MP_GROUP(x,y) == GROUP_RAIL) || \ - (MP_GROUP(x,y) == GROUP_TRACK_BRIDGE) || \ - (MP_GROUP(x,y) == GROUP_ROAD_BRIDGE) || \ - (MP_GROUP(x,y) == GROUP_RAIL_BRIDGE)) #endif -void general_transport(int x, int y, int max_waste); + +//int collect_transport_info(int x, int y, Construction::Commodities stuff_ID, int center_ratio); +/* + returns the relative load TRANSPORT_QUANTA = 100% if the construction would +tentatively participate want traffic or -1 if there is no such stuff known at mapTile[x][y]. center_ratio == -1 ignores tentative traffic +*/ + +//int equilibrate_transport_stuff(int x, int y, int *rem_lvl, int rem_cap, int ratio, Construction::Commodities stuff_ID); +/* + Handles the flow of stuff between the central and the remote tile. takes care of paying taxes. +*/ + void connect_transport(int originx, int originy, int w, int h); + + +#define GROUP_TRACK_COLOUR 32 /* 32 is a brown */ +#define GROUP_TRACK_COST 1 +#define GROUP_TRACK_COST_MUL 25 +#define GROUP_TRACK_BUL_COST 10 +#define GROUP_TRACK_TECH 0 +#define GROUP_TRACK_FIREC 4 + +#define GROUP_ROAD_COLOUR (white(18)) +#define GROUP_ROAD_COST 100 +#define GROUP_ROAD_COST_MUL 25 +#define GROUP_ROAD_BUL_COST 50 +#define GROUP_ROAD_TECH 50 +#define GROUP_ROAD_FIREC 4 + +#define GROUP_RAIL_COLOUR (magenta(18)) +#define GROUP_RAIL_COST 500 +#define GROUP_RAIL_COST_MUL 10 +#define GROUP_RAIL_BUL_COST 1000 +#define GROUP_RAIL_TECH 180 +#define GROUP_RAIL_FIREC 6 + +#define GROUP_TRANSPORT_RANGE 0 +#define GROUP_TRANSPORT_SIZE 1 + +#define GROUP_POWER_LINE_COLOUR (yellow(26)) +#define GROUP_POWER_LINE_COST 100 +#define GROUP_POWER_LINE_COST_MUL 2 +#define GROUP_POWER_LINE_BUL_COST 100 +#define GROUP_POWER_LINE_TECH 200 +#define GROUP_POWER_LINE_FIREC 0 +#define GROUP_POWER_LINE_RANGE 0 +#define GROUP_POWER_LINE_SIZE 1 +#define POWER_LINE_LOSS 1 /* one MWH */ +#define POWER_MODULUS 18 /* Controls how often we see a packet in anim */ + + +#define TRANSPORT_RATE 8 //slows down the transport +#define TRANSPORT_QUANTA 1000 //granularity for transport flow + +#define MAX_FOOD_ON_TRACK 2048 +#define MAX_FOOD_ON_ROAD (MAX_FOOD_ON_TRACK*4) +#define MAX_FOOD_ON_RAIL (MAX_FOOD_ON_TRACK*16) +#define MAX_FOOD_IN_MARKET (MAX_FOOD_ON_RAIL*8) + +#define MAX_JOBS_ON_TRACK 1024 +#define MAX_JOBS_ON_ROAD (MAX_JOBS_ON_TRACK*5) +#define MAX_JOBS_ON_RAIL (MAX_JOBS_ON_TRACK*25) +#define MAX_JOBS_IN_MARKET (MAX_JOBS_ON_RAIL*3) + +#define MAX_COAL_ON_TRACK 64 +#define MAX_COAL_ON_ROAD (MAX_COAL_ON_TRACK*8) +#define MAX_COAL_ON_RAIL (MAX_COAL_ON_TRACK*64) +#define MAX_COAL_IN_MARKET (MAX_COAL_ON_RAIL*2) + +#define MAX_GOODS_ON_TRACK 2048 +#define MAX_GOODS_ON_ROAD (MAX_GOODS_ON_TRACK*5) +#define ROAD_GOODS_USED_MASK 0x1f +#define MAX_GOODS_ON_RAIL (MAX_GOODS_ON_TRACK*25) +#define RAIL_GOODS_USED_MASK 0xf +#define MAX_GOODS_IN_MARKET (MAX_GOODS_ON_RAIL*4) + +#define MAX_ORE_ON_TRACK 4096 +#define MAX_ORE_ON_ROAD (MAX_ORE_ON_TRACK*4) +#define MAX_ORE_ON_RAIL (MAX_ORE_ON_TRACK*16) +#define MAX_ORE_IN_MARKET (MAX_ORE_ON_RAIL*2) + +#define MAX_STEEL_ON_TRACK 128 +#define MAX_STEEL_ON_ROAD (MAX_STEEL_ON_TRACK*4) +#define MAX_STEEL_ON_RAIL (MAX_STEEL_ON_TRACK*16) +#define RAIL_STEEL_USED_MASK 0x7f +#define MAX_STEEL_IN_MARKET (MAX_STEEL_ON_RAIL*2) + +#define MAX_WASTE_ON_TRACK 1024 +#define MAX_WASTE_ON_ROAD (MAX_WASTE_ON_TRACK*5) +#define MAX_WASTE_ON_RAIL (MAX_WASTE_ON_TRACK*25) +#define MAX_WASTE_IN_MARKET (MAX_WASTE_ON_RAIL*3) +#define WASTE_BURN_ON_TRANSPORT 100 +#define WASTE_BURN_ON_TRANSPORT_POLLUTE WASTE_BURN_ON_TRANSPORT/2 + +#define MAX_KWH_ON_TRACK 2048 +#define MAX_KWH_ON_ROAD (MAX_KWH_ON_TRACK*4) +#define MAX_KWH_ON_RAIL (MAX_KWH_ON_TRACK*16) +#define KWH_LOSS_ON_TRANSPORT 3 + +#define MAX_MWH_ON_POWERLINE (MAX_KWH_ON_RAIL*8) + +#define MAX_WATER_ON_TRACK (2 * MAX_FOOD_ON_TRACK) +#define MAX_WATER_ON_ROAD (MAX_WATER_ON_TRACK*4) +#define MAX_WATER_ON_RAIL (MAX_WATER_ON_TRACK*16) +#define MAX_WATER_IN_MARKET (MAX_WATER_ON_RAIL*8) + +#define BRIDGE_FACTOR 500 /* a bridge is that much more expensive than the land transport */ + +#define GROUP_TRACK_BRIDGE_COLOUR 32 /* 32 is a brown */ +#define GROUP_TRACK_BRIDGE_COST GROUP_TRACK_COST * BRIDGE_FACTOR +#define GROUP_TRACK_BRIDGE_COST_MUL 2 +#define GROUP_TRACK_BRIDGE_BUL_COST GROUP_TRACK_BUL_COST * BRIDGE_FACTOR +#define GROUP_TRACK_BRIDGE_TECH GROUP_TRACK_TECH +#define GROUP_TRACK_BRIDGE_FIREC 0 /* unused */ + +#define GROUP_ROAD_BRIDGE_COLOUR (white(18)) +#define GROUP_ROAD_BRIDGE_COST GROUP_ROAD_COST * BRIDGE_FACTOR +#define GROUP_ROAD_BRIDGE_COST_MUL 2 +#define GROUP_ROAD_BRIDGE_BUL_COST GROUP_ROAD_BUL_COST * BRIDGE_FACTOR +#define GROUP_ROAD_BRIDGE_TECH GROUP_ROAD_TECH +#define GROUP_ROAD_BRIDGE_FIREC 0 + +#define GROUP_RAIL_BRIDGE_COLOUR (magenta(18)) +#define GROUP_RAIL_BRIDGE_COST GROUP_RAIL_COST * BRIDGE_FACTOR +#define GROUP_RAIL_BRIDGE_COST_MUL 2 +#define GROUP_RAIL_BRIDGE_BUL_COST GROUP_RAIL_BUL_COST * BRIDGE_FACTOR +#define GROUP_RAIL_BRIDGE_TECH GROUP_RAIL_TECH +#define GROUP_RAIL_BRIDGE_FIREC 0 + + + +/** @file lincity/transport.h */ + diff -Nru lincity-ng-2.0/src/lincity/UserOperation.cpp lincity-ng-2.9~git20150314/src/lincity/UserOperation.cpp --- lincity-ng-2.0/src/lincity/UserOperation.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/UserOperation.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,126 @@ +#include "UserOperation.h" +#include <iostream> +#include "lin-city.h" + +#include "tinygettext/gettext.hpp" + +static int last_warning_message_group = 0; + +UserOperation::UserOperation() +{ + constructionGroup = NULL; + action = ACTION_QUERY; + helpName = _("query"); +} + +UserOperation::~UserOperation() {} + +extern void ok_dial_box(const char *, int, const char *); + +bool +UserOperation::is_allowed_here(int x, int y, bool warning) +{ + switch(action) + { + case ACTION_QUERY: + return world.is_visible(x,y); + case ACTION_BUILD: + { + if(!(world.is_visible(x,y) && + world.is_visible(x + constructionGroup->size - 1, y + constructionGroup->size - 1)) || + (constructionGroup->tech > tech_level)) + { return false;} + + bool msg = (warning && (last_warning_message_group != constructionGroup->group)); + + msg = constructionGroup->is_allowed_here(x, y, msg); + if(warning) + { + if(!msg) + { last_warning_message_group = constructionGroup->group;} + else + { last_warning_message_group = 0;} + } + return msg; + } + case ACTION_BULLDOZE: + //The cursor never tells about problems with bulldozer + //check_bulldoze_area in MapEdit is careful anyways + return false; + case ACTION_EVACUATE: + return (world.is_visible(x,y) && world(x,y)->reportingConstruction && + ! (world(x,y)->reportingConstruction->flags & FLAG_NEVER_EVACUATE)); + case ACTION_FLOOD: + return (world.is_visible(x,y) && world(x,y)->is_bare()); + default: + std::cout << "default in UserOperation.action" << std::endl; + return false; + } + return false; +} + +bool +UserOperation::enoughTech(void) +{ + return ((action != ACTION_BUILD) || ( + //(action == ACTION_BUILD) && + (tech_level >= constructionGroup->tech * MAX_TECH_LEVEL/1000))); +} + +float UserOperation::requiredTech() +{ + return 0.1*((constructionGroup?constructionGroup->tech:0)); +} + +/* replacement of ButtonPanel::createTooltip*/ +std::string UserOperation::createTooltip( bool root /* = true */ ){ + std::stringstream tooltip; + switch(action) + { + case ACTION_QUERY: + tooltip << _("Query Tool") ; break; + case ACTION_BUILD: + tooltip << constructionGroup->getName(); + switch(constructionGroup->group) + { + case GROUP_RESIDENCE_LL: tooltip << _(": 50 tenants, low birthrate, high deathrate") ; break; + case GROUP_RESIDENCE_ML: tooltip << _(": 100 tenants, high birthrate, low deathrate") ; break; + case GROUP_RESIDENCE_HL: tooltip << _(": 200 tenants, high birthrate, high deathrate") ; break; + case GROUP_RESIDENCE_LH: tooltip << _(": 100 tenants, low birthrate, high deathrate") ; break; + case GROUP_RESIDENCE_MH: tooltip << _(": 200 tenants, high birthrate, low deathrate") ; break; + case GROUP_RESIDENCE_HH: tooltip << _(": 400 tenants, high birthrate, high deathrate") ; + } + break; + case ACTION_BULLDOZE: + tooltip << _("Bulldozer") ; break; + case ACTION_EVACUATE: + tooltip << _("Evacuate") ; break; + case ACTION_FLOOD: + tooltip << _("Water") ; break; + default: + tooltip << "unknown useroperation"; + } + if( !root ){ + tooltip << " ["<< _("Click right for help.") << "]"; + } + return tooltip.str(); +} + +unsigned short UserOperation::cursorSize(void) +{ + if( action == ACTION_QUERY ) + { return 0;} + else if(action == ACTION_BUILD) + { return userOperation->constructionGroup->size;} + else + { return 1;} +} + + + + + + + + + diff -Nru lincity-ng-2.0/src/lincity/UserOperation.h lincity-ng-2.9~git20150314/src/lincity/UserOperation.h --- lincity-ng-2.0/src/lincity/UserOperation.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/UserOperation.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,36 @@ +#ifndef USER_OPERATION_H__ +#define USER_OPERATION_H__ + +#include "lintypes.h" + +class ConstructionGroup; + +class UserOperation { +public: + UserOperation(); + ~UserOperation(); + ConstructionGroup *constructionGroup; // !0 in case of ACTION_BUILD + std::string helpName; + + enum Action //What User wants to do + { + ACTION_QUERY, + ACTION_EVACUATE, + ACTION_BULLDOZE, + ACTION_FLOOD, + ACTION_BUILD, + ACTION_UNKNOWN + }; + + Action action; + bool is_allowed_here(int x, int y, bool warning); + bool enoughTech();// tells if scaled tech_level is sufficient + float requiredTech(); // returns scaled tech_level for tooltipp info + unsigned short cursorSize(); //tells size of affectet aerea + std::string createTooltip( bool root = true ); +private: +}; + + + +#endif diff -Nru lincity-ng-2.0/src/lincity/Vehicles.cpp lincity-ng-2.9~git20150314/src/lincity/Vehicles.cpp --- lincity-ng-2.0/src/lincity/Vehicles.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/Vehicles.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,473 @@ +/* ---------------------------------------------------------------------- * + * Vehicles.cpp + * This file is part of lincity-NG. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * ---------------------------------------------------------------------- */ + +#include "Vehicles.h" +#include "lintypes.h" +#include <stdlib.h> +#include <vector> +#include "engine.h" +#include <cmath> + +std::list<Vehicle*> Vehicle::vehicleList; + +Vehicle::Vehicle(int x0, int y0, VehicleModel model0, VehicleStrategy vehicleStrategy) +{ + this->x = x0; + this->y = y0; + this->xnext = x0; + this->ynext = y0; + this->xprev = x0; + this->yprev = y0; + this->xold1 = x0; + this->yold1 = y0; + this->xold2 = x0; + this->yold2 = y0; + this->anim = 0; + this->death_counter = 100; + this->alive = true; + this->turn_left = true; + this->headings = 0; + this->direction = 0; + this->xr = x; + this->yr = y; + + this->stuff_id = Construction::STUFF_JOBS; + //TODO Choose a random model for suitable stuff + this->model = model0; + this->strategy = vehicleStrategy; + if (world(x,y)->reportingConstruction) + { this->initial_cargo = world(x,y)->reportingConstruction->tellstuff(stuff_id,-2);} + else + { this->initial_cargo = -1;} + + vehicleList.push_back(this); + frameIt = world(x,y)->createframe(); + frameIt->frame = -2; //special value to indicate fresh fast forward car + map_idx = x + y * world.len(); + switch(model) + { + case (VEHICLE_BLUECAR): + frameIt->resourceGroup = ResourceGroup::resMap["Bluecar"]; + speed0 = BLUE_CAR_SPEED; + break; + default: + std::cout << "default in new vehicle model = " << model << " at x= " << x << " y= " << y << std::endl; + + } + speed = speed0; +/* +#ifdef DEBUG + std::cout << "new vehicle model = " << model << " at x= " << x << " y= " << y + << " transporting " << commodityNames[stuff_id] << std::endl; +#endif +*/ +} + +Vehicle::~Vehicle() +{ + world(map_idx)->killframe(frameIt); +/* +#ifdef DEBUG + std::cout << "kill vehicle model= " << model << " at x= " << x << " y= " << y + << " traveled distance " << (100-death_counter) << std::endl; +#endif +*/ +} + +void Vehicle::clearVehicleList() +{ + while(! vehicleList.empty()) + { + delete vehicleList.front(); + vehicleList.pop_front(); + } +} + +void Vehicle::cleanVehicleList() +{ + for(std::list<Vehicle*>::iterator it = vehicleList.begin(); + it != vehicleList.end(); + std::advance(it,1)) + { + if(! (*it)->alive) + { + delete (*it); + *it = NULL; + } + } + vehicleList.remove(NULL); +} + +void Vehicle::drive(void) +{ + --death_counter; + speed = speed0; + int xstep = xnext - xprev; + int ystep = ynext - yprev; + if(xstep == 2) + { direction = 2;} + else if(xstep == -2) + { direction = 6;} + else if(ystep == 2) + { direction = 0;} + else if(ystep == -2) + { direction = 4;} + else if( (xstep == 1) && (ystep == 1) ) + { + direction = 1; //vertically down + turn_left = (xprev == x); //turning left + } + else if( (xstep == 1) && (ystep == -1) ) + { + direction = 3; //horizontally right + turn_left = (xprev != x); //turning left and YES == is correct + } + else if( (xstep == -1) && (ystep == 1) ) + { + direction = 7; + turn_left = (xprev != x); //turning left and YES == is correct + + } + else if( (xstep == -1) && (ystep == -1) ) + { + direction = 5; //vertically up + turn_left = (xprev == x); //turning left + } + + if(direction&1) + { speed = (turn_left?3:1)*speed0/2;} + + //now advance to position of the vehicle + xold2=xold1; + yold2=yold1; + xold1=xprev; + yold1=yprev; + xprev = x; + yprev = y; + x = xnext; + y = ynext; + + if (frameIt->frame < -1) + { ++frameIt->frame;} + else + { + int s = (int)frameIt->resourceGroup->graphicsInfoVector.size(); + if(s) + { frameIt->frame = direction % s;} + } +} + +void Vehicle::walk() +{ + double remaining = double(anim-real_time)/speed; + double elapsed = 1 - remaining; + //mx,my are like continuos coordinates for the map + //(0,0) is always the southern corner of the tiles + double mx = 0; + double my = 0; + switch (direction) //pointing towards + { + case (0): //lower left + mx = -0.65; + my = -remaining; + break; + case(4): //upper right + mx = -0.27; + my = -elapsed; + break; + case (2): //lower right + mx = -remaining; + my = -0.27; + break; + case (6): //upper left + mx = -elapsed; + my = -0.65; + break; + case (1): //vertically down + { + if(turn_left) + { + mx = -0.65 + elapsed * elapsed; + my = -1.13 + 1 * elapsed; + } + else + { + mx = -1 + 0.35 * elapsed; + my = -0.27 + 0.27 * elapsed * elapsed; + } + } + break; + case (5): //vertically up + { + if(turn_left) + { + mx = -0.27 - 0.73 * elapsed * elapsed; + my = -0.65 * elapsed; + } + else + { + mx = 0 - 0.23 * elapsed; + my = -0.65 - 0.35 * elapsed * elapsed; + } + } + break; + case (3): //horizontally right + { + if(turn_left) + { + if(elapsed < 0.5) + { + mx = -1 + elapsed; + my = -0.27 - 0.5 * elapsed * elapsed; + } + else + { + mx = -0.27 - 0.5 * remaining * remaining; + my = -1 + remaining; + } + } + else + { + mx = -0.27 * remaining * remaining; + my = -0.27 * elapsed; + } + + } + break; + case (7): //horizontally left + { + if (turn_left) + { + mx = -0.65 * elapsed; + my = -0.65 + 0.65 * elapsed * elapsed; + } + else + { + mx = -0.65 - 0.35 * elapsed * elapsed; + my = -1 + 0.35 * elapsed; + } + + } + break; + } + + // a car with (mx,my)==(0,0) has its center in the southern corner + mx += 0.25; + my += 0.25; + //update absolute floating positions + xr = (double)xprev + mx; + yr = (double)yprev + my; + //choose tile for placing the frame + int xtile = ceil(xr); + int ytile = ceil(yr); + //no need to go up or left + if( xtile < xprev ) { xtile = xprev; } + if( ytile < yprev ) { ytile = yprev; } + //align animation to placement of frame on map + mx = xr - (double)xtile; + my = yr - (double)ytile; + if( xtile + ytile * world.len() != map_idx) + { move_frame(xtile + ytile * world.len());} + + //Apply the animation of the sprite + //dx, dy are on screen coordinates + int dx = (mx - my) * 64; + int dy = (mx + my) * 32; + + //Check for bridges and ramps + switch(world(xprev,yprev)->getGroup()) + { + case GROUP_TRACK_BRIDGE: + dy -= TRACK_BRIDGE_HEIGHT; + break; + case GROUP_ROAD_BRIDGE: + dy -= ROAD_BRIDGE_HEIGHT; + break; + case GROUP_ROAD: + if( world(xnext,ynext)->getGroup() == GROUP_ROAD_BRIDGE + || world(x,y)->getGroup() == GROUP_ROAD_BRIDGE) + { + dy -= (elapsed * ROAD_BRIDGE_HEIGHT/ 2); + frameIt->frame = 8 + direction/2; //going up hill + if(world(x,y)->getGroup() == GROUP_ROAD_BRIDGE) + {dy -= ROAD_BRIDGE_HEIGHT/ 2;} + } + else if(world(xold2,yold2)->getGroup() == GROUP_ROAD_BRIDGE + || world(xold1,yold1)->getGroup() == GROUP_ROAD_BRIDGE) + { + dy -= (remaining * ROAD_BRIDGE_HEIGHT/ 2); + frameIt->frame = 12 + direction/2; //going down hill + if(world(xold1,yold1)->getGroup() == GROUP_ROAD_BRIDGE) + {dy -= ROAD_BRIDGE_HEIGHT/ 2;} + } + break; + case GROUP_TRACK: + if( world(x,y)->getGroup() == GROUP_TRACK_BRIDGE ) + { + dy -= (elapsed * TRACK_BRIDGE_HEIGHT); + frameIt->frame = 8 + direction/2; //going up hill + } + else if(world(xold1,yold1)->getGroup() == GROUP_TRACK_BRIDGE) + { + dy -= (remaining * TRACK_BRIDGE_HEIGHT ); + frameIt->frame = 12 + direction/2;// going down hill + } + break; + } + + frameIt->move_x = dx; + frameIt->move_y = dy; + +} + + +void Vehicle::move_frame(int new_idx) +{ + if(!world(new_idx)->framesptr) + { world(new_idx)->framesptr = new std::list<ExtraFrame>;} + world(new_idx)->framesptr->splice(world(new_idx)->framesptr->end(), *(world(map_idx)->framesptr), frameIt); + if(world(map_idx)->framesptr->empty()) + { + delete world(map_idx)->framesptr; + world(map_idx)->framesptr = NULL; + } + map_idx = new_idx; //remember where the frame was put +} + +bool Vehicle::acceptable_heading(int idx) +{ + + unsigned short g = world(idx)->getTransportGroup(); + + if( !( (g == GROUP_TRACK) || (g == GROUP_ROAD) ) ) + { + if(g != GROUP_RAIL) + { return false;} + int x_trial = idx % world.len(); + int y_trial = idx / world.len(); + if(!world.is_visible(x_trial, y_trial)) + { return false;} + unsigned short g2 = world(xprev, yprev)->getTransportGroup(); + unsigned short g3 = world(2*x_trial-x, 2*y_trial-y)->getTransportGroup(); + if (g2 != g3) + { return false;} + } + + //handle trivial case + if(strategy == VEHICLE_STRATEGY_RANDOM) + { return true;} + + //dont go nowhere + if(!world(idx)->reportingConstruction) + { return false;} + //always leave from illegal area + if(!world(x,y)->reportingConstruction) + { return true;} + + switch(strategy) + { + case VEHICLE_STRATEGY_MAXIMIZE: + return world(x,y)->reportingConstruction->tellstuff(stuff_id, -2)*24/25 < + world(idx)->reportingConstruction->tellstuff(stuff_id, -2) && + initial_cargo*99/100 < world(idx)->reportingConstruction->tellstuff(stuff_id, -2); + case VEHICLE_STRATEGY_MINIMIZE: + return world(x,y)->reportingConstruction->tellstuff(stuff_id, -2) > + world(idx)->reportingConstruction->tellstuff(stuff_id, -2)*24/25 + && initial_cargo > world(idx)->reportingConstruction->tellstuff(stuff_id, -2)*99/100; + default: //silence warning + return true; + } + return false; +} + + +void Vehicle::getNewHeadings() +{ + headings = 0; + + int sum = 0; + const int len = world.len(); + + //never turn back the car + if ( (x >= xprev) && acceptable_heading( (x+1) + y*len ) ) + { headings |= 1; ++sum;} + if ( (x <= xprev) && acceptable_heading( (x-1) + y*len ) ) + { headings |= 2; ++sum;} + if ( (y <= yprev) && acceptable_heading( x + (y-1)*len ) ) + { headings |= 4; ++sum;} + if ( (y >= yprev) && acceptable_heading( x + (y+1)*len ) ) + { headings |= 8; ++sum;} + + //absolutely nowhere to go + if (!sum) + { alive = false; return;} + + //choose a random branch + int k = 0; + int choice = rand() % sum; + int j = 0; + for(int i = 1; i < 16; i*=2) + { + if(headings&i) + { + if(choice == j) + { break;} + ++j; + } + ++k; + } + + //set the next destination + switch (k) + { + case 0: xnext = x + 1; break; + case 1: xnext = x - 1; break; + case 2: ynext = y - 1; break; + case 3: ynext = y + 1; break; + } +} + + +void Vehicle::update() +{ + //get a new heading + if(x == xnext && y == ynext) + { getNewHeadings();} + // check if it is time to make a step + if( real_time > anim) //move to dest + { + drive(); + if (frameIt->frame < 0) + { anim = real_time + 50;} + else + { anim = real_time + speed;} + } + //animate the sprite + walk(); + //cars have limited lifespan + if(death_counter < 0) + { alive = false;} + +} + + + + + + + + + + + + + + + + + + + diff -Nru lincity-ng-2.0/src/lincity/Vehicles.h lincity-ng-2.9~git20150314/src/lincity/Vehicles.h --- lincity-ng-2.0/src/lincity/Vehicles.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/Vehicles.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,77 @@ +/* ---------------------------------------------------------------------- * + * Vehicles.hpp + * This file is part of lincity-NG. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * ---------------------------------------------------------------------- */ +#ifndef __Vehicles_h__ +#define __Vehicles_h__ + +#include "lintypes.h" +#include <list> + +#define BLUE_CAR_SPEED 1500 +#define TRACK_BRIDGE_HEIGHT 22 +#define ROAD_BRIDGE_HEIGHT 44 + +#define COMMUTER_TRAFFIC_RATE 1024 + + +class ExtraFrame; + +enum VehicleModel +{ + VEHICLE_BLUECAR, + VEHICLE_DEFAULT +}; + +enum VehicleStrategy +{ + VEHICLE_STRATEGY_MAXIMIZE, //go towards more stuff eg. morning commute for STUFF_JOBS + VEHICLE_STRATEGY_MINIMIZE, //go towards less stuff eg. evening commute for STUFF_JOBS + VEHICLE_STRATEGY_RANDOM //just do a random walk +}; + +class Vehicle +{ +public: + + Vehicle(int x0, int y0, VehicleModel model0, VehicleStrategy vehicleStrategy = VEHICLE_STRATEGY_RANDOM ); + + ~Vehicle(void); + + //location, heading and comming from + int x, xnext, xprev, xold1, xold2; + int y, ynext, yprev, yold1, yold2; + float xr, yr; + int death_counter; + bool alive, turn_left; + unsigned int headings; + int direction; + + VehicleModel model; //different vehicles + Construction::Commodities stuff_id; //cargo + int initial_cargo; + VehicleStrategy strategy; // delivery, pickup, random + std::list<ExtraFrame>::iterator frameIt; //the particular extraframe at the host + int map_idx; //index of the maptile with the frame, NOT necessarily the current position + + int speed0, speed, anim; + void update(); + + + static std::list<Vehicle*> vehicleList; + + static void clearVehicleList(); //kill all vehicles + static void cleanVehicleList(); //kill vehicles with deathcounter < 0 +private: + void getNewHeadings(); //plan ahead for 2 tiles + bool acceptable_heading(int idx); //checks if a move would comply with the strategy + void drive(); //advance position by 1 tile + void walk(); //change the offset of the sprite and evetually choose a tile to attach it to + void move_frame(int idx); //place the frame on the map aka *world(idx) + + +}; + +#endif + diff -Nru lincity-ng-2.0/src/lincity/world.cpp lincity-ng-2.9~git20150314/src/lincity/world.cpp --- lincity-ng-2.0/src/lincity/world.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/world.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,203 @@ +/* ---------------------------------------------------------------------- * + * world.cpp + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * ---------------------------------------------------------------------- */ + +#include <stdlib.h> +#include <iostream> +#include "world.h" +#include "ConstructionCount.h" +#include "init_game.h" +#include "lin-city.h" + +World::World(int map_len) +{ + maptile.resize(map_len * map_len); + dirty = false; + world.climate = -1; + world.old_setup_ground = -1; + //std::cout << "created World len = " << len() << "²" << std::endl; +} + +World::~World() +{ + maptile.clear(); +} + + +void World::len(int new_len) +{ + if (new_len < 50) + { new_len = 50;} + if (dirty) {clear_game();} + bool job_done = false; + + while (!job_done) + { + try + { + this->side_len = new_len; + job_done = true; + maptile.resize(new_len * new_len); + } + catch(...) + { + new_len -= 25; + std::cout << "failed to allocate world. shrinking edge to " << new_len << " tiles" << std::endl; + job_done = false; + if (new_len < 50) //Ok we give up, but should crash very soon anyways. + { return;} + } + } +} + +MapTile* World::operator()(int x, int y) +{ + return &(maptile[x + y * side_len]); +} + +MapTile* World::operator()(int index) +{ + return &(maptile[index]); +} + +bool World::is_inside(int x, int y) +{ + return (x >= 0 && y >= 0 && x < side_len && y < side_len); +} + +bool World::is_inside(int index) +{ + return (index >= 0 && index < side_len * side_len); +} + +bool World::is_border(int x, int y) +{ + return (x == 0 || y == 0 || x == side_len-1 || y == side_len -1); +} + +bool World::is_border(int index) +{ + return (index%side_len == side_len -1 || index%side_len == 0 || index/side_len == side_len-1 || index/side_len == 0); +} + +bool World::is_edge(int x, int y) +{ + return (x == 1 || y == 1 || x == side_len-2 || y == side_len -2); +} + +bool World::is_visible(int x, int y) +{ + return (x > 0 && y > 0 && x < side_len-1 && y < side_len -1); +} + +int World::map_x(MapTile * tile) +{ + return (tile-&maptile[0]) % side_len; +} + +int World::map_y(MapTile * tile) +{ + return (tile-&maptile[0]) / side_len; +} + +int World::map_index(MapTile * tile) +{ + return (tile-&maptile[0]); +} + +int World::len() +{ + return side_len; +} + +int World::seed() +{ +#ifdef DEBUG + assert(world_id == id); +#endif + return id; +} + +void World::seed( int new_seed) +{ + this->id = new_seed; + world_id = new_seed; +} + +bool World::maximum(int x , int y) +{ + int alt = maptile[x + y * side_len].ground.altitude; + bool is_max = true; + for (int i=0; i<8; i++) + { + int tx = x + dxo[i]; + int ty = y + dyo[i]; + is_max &= (alt >= maptile[tx + ty * side_len].ground.altitude); + } + return is_max; +} + +bool World::minimum(int x , int y) +{ + int alt = maptile[x + y * side_len].ground.altitude; + bool is_min = true; + for (int i=0; i<8; i++) + { + int tx = x + dxo[i]; + int ty = y + dyo[i]; + is_min &= (alt <= maptile[tx + ty * side_len].ground.altitude); + } + return is_min; +} + +bool World::saddlepoint(int x , int y) +{ + int alt = maptile[x + y * side_len].ground.altitude; + int dips = 0; + bool dip_new = alt > maptile[x + dxo[7] + (y + dyo[7])*side_len ].ground.altitude; + bool dip_old = dip_new; + for (int i=0; i<8; i++) + { + dip_new = alt > maptile[x + dxo[i]+ (y + dyo[i])*side_len].ground.altitude; + if (dip_new && !dip_old) //We just stepped into a valley + { + dips++; + } + dip_old = dip_new; + } + return dips > 1; +} + +bool World::checkEdgeMin(int x , int y) +{ + int alt = maptile[x + y * side_len].ground.altitude; + if (x==1 || x == side_len-2) + { + return alt < maptile[x+1 + y * side_len].ground.altitude + && alt < maptile[x-1 + y * side_len].ground.altitude; + } + else if (y==1 || y == side_len-2) + { + return alt < maptile[x + (y+1) * side_len].ground.altitude + && alt < maptile[x + (y-1) * side_len].ground.altitude; + } + else + return false; +} + +int World::count_altered(void) +{ + int count = 0; + for (size_t i = 0; i < maptile.size(); ++i) + { + if(maptile[i].flags & FLAG_ALTERED) + { ++count;} + } + return count; +} + + + +/** @file lincity/world.cpp */ diff -Nru lincity-ng-2.0/src/lincity/world.h lincity-ng-2.9~git20150314/src/lincity/world.h --- lincity-ng-2.0/src/lincity/world.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/world.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,104 @@ +/* ---------------------------------------------------------------------- * + * world.h + * This file is part of lincity. + * Lincity is copyright (c) I J Peters 1995-1997, (c) Greg Sharp 1997-2001. + * ---------------------------------------------------------------------- */ +#ifndef __world_h__ +#define __world_h__ + +#include "lintypes.h" +#include <vector> +#include <deque> +#include <set> + +//Array2D is used during map generation in initgame +template <class T> +class Array2D +{ +public: + Array2D(int lenx, int leny) + { + this->lenx = lenx; + this->leny = leny; + matrix.resize(lenx * leny, (T)0); + } + ~Array2D() + { + matrix.clear(); + } + void initialize( T init) + { + for(int index = 0; index < lenx * leny; index++) + { + matrix[index] = init; + } + } + T* operator()(int x, int y) + { + return &(matrix[x + y * lenx]); + } + T* operator()(int index) + { + return &(matrix[index]); + } + bool is_inside(int x, int y) + { + return x >= 0 && x < lenx && y >= 0 && y < leny; + } + bool is_inside(int index) + { + return index >= 0 && index < lenx * leny; + } +protected: + int lenx, leny; + std::vector<T> matrix; +}; + + +class MapTile; + +class World +{ +public: + World(int map_len); + ~World(); + MapTile* operator()(int x, int y); + MapTile* operator()(int index); + bool is_inside(int x, int y); + bool is_inside(int index); + bool is_border(int x, int y); + bool is_border(int index); + bool is_edge(int x, int y); + bool is_visible(int x, int y); + int map_x(MapTile *tile);// returns x + int map_y(MapTile *tile);// returns y + int map_index(MapTile *tile);// returns index + int len(void); //tells the actual world.side_len + void len(int new_len); //resizes the world by edge + bool maximum(int x , int y); + bool minimum(int x , int y); + bool saddlepoint(int x , int y); + bool checkEdgeMin(int x , int y); + int count_altered(); + bool dirty; + int seed(void); //tells recreation seed + void seed(int new_seed); //sets the seed + int old_setup_ground; + int climate; + std::set<int> polluted; + bool without_trees; + +protected: + int id; + int side_len; + std::vector<MapTile> maptile; +}; + + + + + +#endif /* __world_h__ */ + +/** @file lincity/world.h */ + diff -Nru lincity-ng-2.0/src/lincity/xmlloadsave.cpp lincity-ng-2.9~git20150314/src/lincity/xmlloadsave.cpp --- lincity-ng-2.0/src/lincity/xmlloadsave.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/xmlloadsave.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,1435 @@ +#include <stdio.h> +#include <string.h> +#include "gui_interface/shared_globals.h" +#include "gui_interface/pbar_interface.h" +#include "fileutil.h" +#include "modules/all_modules.h" +#include "lincity-ng/MainLincity.hpp" +#include "gui_interface/readpng.h" +#include "xmlloadsave.h" +#include "engglobs.h" +#include "init_game.h" + +std::map <std::string, XMLTemplate*> xml_template_libary; +std::map <unsigned short, XMLTemplate*> bin_template_libary; + +XMLloadsave xml_loadsave; + +XMLTemplate::XMLTemplate(std::string templateXY) +{ + //eliminate previous def of templateXY and register the new one in libary + if (xml_template_libary.count(templateXY)) + { + delete xml_template_libary[templateXY]; + } + xml_template_libary[templateXY] = this; + template_tag = templateXY; + cur_index = 0; + char_len = 0; + template_group = 0; + //std::cout << "I was born: "<< template_tag << " group: " << template_group << std::endl; +} + +XMLTemplate::~XMLTemplate() +{ + if (bin_template_libary.count(template_group)) + { + bin_template_libary.erase(template_group); + } + //std::cout << "some idiot killed me: "<< template_tag << " group: " << template_group << std::endl; +} + +void XMLTemplate::rewind() +{ + cur_index = 0; +} + +size_t XMLTemplate::len() +{ + return char_len; +} + +void XMLTemplate::add_len(size_t chunk) +{ + //binlen_sequence.push_back(chunk); + char_len += chunk; +} + +void XMLTemplate::set_group(int grp) +{ + if (grp >= 0) + { + bin_template_libary[grp]=this; + template_group = grp; + } +} + + +int XMLTemplate::step() +{ + return ++cur_index; +} + +void XMLTemplate::clearVal() +{ + val_sequence.clear(); +} + +std::string const & XMLTemplate::getVal() +{ + return val_sequence[cur_index]; +} + +std::string const & XMLTemplate::getTag() +{ + return tag_sequence[cur_index]; +} + +/* +size_t XMLTemplate::getNumChars() +{ + return binlen_sequence[cur_index]; +} +*/ + +void XMLTemplate::fillLine(std::string *entry) +{ + if (!tag_sequence[cur_index].empty()) + { + *entry = "<"; + *entry += tag_sequence[cur_index]; + *entry += ">"; + *entry += val_sequence[cur_index]; + *entry += "</"; + *entry += tag_sequence[cur_index]; + *entry += ">"; + } + else + { //no tag means val represents a complete line + *entry = val_sequence[cur_index]; + } +} + + +bool XMLTemplate::reached_end() +{ + return cur_index + 1 > tag_sequence.size(); +} + +void XMLTemplate::putTag(std::string const &xml_tag) +{ + tag_sequence.push_back(xml_tag); +} + +void XMLTemplate::putVal(std::string const &xml_val) +{ + val_sequence.push_back(xml_val); +} + +bool XMLTemplate::validate() +{ + if ((cur_index == 0) && (tag_sequence.size() == val_sequence.size())) + { + return true; + } + std::cout<< "Error: validation check in template " << template_tag << std::endl; + return false; +} + +XMLloadsave::XMLloadsave() +{ + cur_template = NULL; + line.clear(); + xml_tag.clear(); + xml_val.clear(); + xml_file_out.str(""); + for (unsigned int i = 0; i < sizeof(buffer_line); i++) + { + buffer_line[i] = '\0'; + } + interpreting_template = false; + globalSection = false; + mapTileSection = false; + constructionSection = false; + templateDefinition = false; + prescan = false; + altered_tiles = -1; + ldsv_version = -1; +} + +XMLloadsave::~XMLloadsave() {} + +bool XMLloadsave::no_Section() +{ + if (!(globalSection || mapTileSection || constructionSection || interpreting_template || templateDefinition || templateSection)) + { + return true; + } + else + { + std::cout << "Error in XML file. Sections and/or Templates must not mix" << std::endl; + return false; + } +} + +void XMLloadsave::clearXMLlibary() +{ + for(template_it = xml_template_libary.begin(); template_it != xml_template_libary.end(); template_it++) + { + delete template_it->second; + } + xml_template_libary.clear(); + assert (bin_template_libary.size()==0); +} + +void XMLloadsave::fillXMLlibary() +{ + world(0,0)->writeTemplate(); + std::map<unsigned short, ConstructionGroup *>::iterator iterator; + for (int i = 0; i < ::constructionCount.size(); i++) + { + if (::constructionCount[i]) + { + ::constructionCount[i]->writeTemplate(); + } + flush_gz_output(); + } +} + +int XMLloadsave::saveXMLfile(std::string xml_file_name) +{ + std::string gz_name; + gz_xml_file = gzopen(xml_file_name.c_str(), "wb"); + + if (!gz_xml_file) + { + std::cout<<"Could not find "<<xml_file_name<<std::endl; + return -1; + } + std::cout << "gz saving " << xml_file_name << " ... "; + std::cout.flush(); + clearXMLlibary(); + xml_file_out.str(""); + ldsv_version = XML_LOADSAVE_VERSION; + xml_file_out<<"<?xml version=\"1.0\" encoding=\"ISO-8859-15\"?>"<<std::endl; + xml_file_out<<"<!-- This file is a lincity savegame.-->"<<std::endl; + xml_file_out<<"<SaveGame>"<<std::endl; + xml_file_out << "<loadsave_version>" << ldsv_version << "</loadsave_version> " << std::endl; + //The order of these sections in the savegame matters + saveGlobals(); + fillXMLlibary(); + if (!binary_mode) + { + xml_file_out << "<TemplateSection>" << std::endl; + reportLibary(&xml_file_out); + xml_file_out << "</TemplateSection>" << std::endl; + } + saveMapTiles(); + saveConstructions(); + xml_file_out<<"</SaveGame>"<<std::endl; + flush_gz_output(); + gzclose(gz_xml_file); + clearXMLlibary(); + std::cout << "done" << std::endl; + return 0; +} + +int XMLloadsave::loadXMLfile(std::string xml_file_name) +{ + //std::string gz_name; + //xml_file_in.open (xml_file_name.c_str(), std::fstream::in); + //gz_name = xml_file_name;//+=".gz"; + gz_xml_file = gzopen(xml_file_name.c_str(), "rb"); + + if (!gz_xml_file) + { + std::cout<<"Missing "<<xml_file_name<<std::endl; + return -1; + } + + std::cout << "gz loading " << xml_file_name << " ... "; + std::cout.flush(); + clearXMLlibary(); + globalCount = 0; + mapTileCount = 0; + memberCount = 0; + constructionCount = 0; + globalSection = false; + mapTileSection = false; + constructionSection = false; + interpreting_template = false; + templateDefinition = false; + templateSection = false; + + while (/*!xml_file_in.eof() &&*/ !gzeof(gz_xml_file)) + { + //std::getline(xml_file_in, line); + + get_raw_line(); + if (line == "<SaveGame>")//the next line must be load_save_version + { + get_raw_line(); + sscanf(line.c_str(), "<loadsave_version>%d</loadsave_version>", &ldsv_version); +#ifdef DEBUG + std::cout << std::endl << "loadsave_version " << ldsv_version << std::endl; +#endif + } + + + //if (!templateSection)std::cout << line << std::endl; + if (line == "<GlobalVariables>") + { + //std::cout << "approaching Globals" << std::endl; + if (!no_Section()) {return -1;} + globalSection = true; + loadGlobals(); + globalSection = false; + //std::cout << "read Globals" << std::endl; + if (binary_mode) + { + fillXMLlibary(); + } + } + else if (line == "<TemplateSection>") + { + if (!no_Section()) {return -1;} + templateSection = true; + readTemplateSection(); + templateSection = false; + } + else if (line == "<MapTileSection>") + { + if (!no_Section()) {return -1;} + mapTileSection = true; + if(seed_compression) + { + if(binary_mode && (altered_tiles == -1)) + { + std::cout << "missing altered_tiles for reading binary tiles" << std::endl; + assert(false); + } + if((world.climate != -1) && (world.old_setup_ground != -1) && (altered_tiles != -1)) + { + int x,y; + create_new_city( &x, &y, NULL, world.old_setup_ground, world.climate); + } + else + { std::cout << "missing either climate, old_setup_ground or altered_tiles in savegame" << std::endl;} + } + if (!binary_mode) + { + //std::cout << "approaching text tiles" << std::endl; + loadMapTiles(); + //std::cout << "loaded text tiles" << std::endl; + } + else + { + //std::cout << "approaching binary tiles" << std::endl; + loadTileTemplates(); + get_raw_line();//eat extra newline in binary modes + //std::cout << "loaded binary tiles" << std::endl; + } + mapTileSection = false; + + } + else if (line == "<ConstructionSection>") + { + if (!no_Section()) {return -1;} + constructionSection = true; + if (!binary_mode) + { + //std::cout << "approaching txt constructions" << std::endl; + loadConstructions(); + //std::cout << "loaded txt constructions" << std::endl; + } + else + { + //std::cout << "approaching binary constructions" << std::endl; + for(int i=0; i<totalConstructions; ++i) + { loadConstructionTemplates(); } + get_raw_line();//eat extra newline in binary modes + //std::cout << "loaded binary constructions" << std::endl; + } + constructionSection = false; + } + } + gzclose(gz_xml_file); + std::cout << "done" << std::endl; + //std::cout << "read " << globalCount << " global vars from XML" << std::endl; + if (!seed_compression && (mapTileCount != world.len() * world.len()) ) + { std::cout << "Warning number of MapTiles ("<<mapTileCount<<") and world_side_len² ("<< world.len() <<")² dont match" << std::endl;} + else if (seed_compression && mapTileCount != altered_tiles) + { std::cout << "Warning number of MapTiles ("<<mapTileCount<<") and altered_tiles (" << altered_tiles << ") dont match" << std::endl;} + //std::cout << "read " << memberCount << " XML values for " << constructionCount << " different contructions" << std::endl; + //clearXMLlibary(); + return 0; +} + +void XMLloadsave::readTemplateSection() +{ + do + { get_interpreted_line();} + while (line!="</TemplateSection>" && !gzeof(gz_xml_file)); +} + + +void XMLloadsave::readTemplate() +{ + cur_template = new XMLTemplate(xml_tag); + int pos; + //std::cout << "reading template " << xml_tag << '\t' << ">" << xml_val << "<" << std::endl; + //std::cout << "reading template: " << xml_tag << std::endl; + while(!xml_val.empty()) + { + pos = xml_val.find("\t"); + cur_template->putTag(xml_val.substr(0, pos)); + //std::cout << ">" << xml_val.substr(0, pos) << "<" << '\t'; + //split the next two lines since pos maybe -1 + xml_val.erase(0, pos); + xml_val.erase(0,1); + } + //std::cout << std::endl; +} + +void XMLloadsave::loadTemplateValues() +{ + if (xml_template_libary.count(xml_tag)==0) + { + std::cout << "unknown template " << xml_tag << std::endl; + return; + } + cur_template = xml_template_libary[xml_tag]; + int pos; + //std::cout << "loading template " << xml_tag << '\t' << ">" << xml_val << "<" << std::endl; + cur_template->rewind(); + cur_template->clearVal(); + while(!xml_val.empty()) + { + pos = xml_val.find("\t"); + cur_template->putVal(xml_val.substr(0, pos)); + //std::cout << ">" << str_seq.substr(0, pos) << "<" << '\t'; + //split the next two lines since pos maybe -1 + xml_val.erase(0, pos); + xml_val.erase(0,1); + } + cur_template->validate(); + //std::cout << std::endl; +} + +void XMLloadsave::saveConstructions() +{ + xml_file_out<<"<ConstructionSection>"<<std::endl; + ::constructionCount.sort(); + for (int i = 0; i < ::constructionCount.size(); i++) + { + //use pos() here because we dont want them shuffeled + if (::constructionCount.pos(i)) + { + //we dont save ghosts like temporary fires on transport + if(::constructionCount.pos(i)->flags & FLAG_IS_GHOST) + { continue;} + ::constructionCount.pos(i)->saveMembers(&xml_file_out); + flush_gz_output(); + } + } + if (binary_mode) + { xml_file_out << std::endl;} + xml_file_out<<"</ConstructionSection>"<<std::endl; + flush_gz_output(); +} + +void XMLloadsave::loadConstructions() +{ + unsigned short const NOT_SET = 0xFFFF; + int x, y, r; + unsigned int value; + unsigned short group; + bool inside_construction = false; + + prescan = true; + x = NOT_SET; + y = NOT_SET; + group = NOT_SET; + + do + { + get_interpreted_line(); + r = sliceXMLline(); + + if (inside_construction && prescan) + { + if(sscanf(line.c_str(), "<map_x>%u</map_x>", &value)) + { x = value;} + else if(sscanf(line.c_str(), "<map_y>%u</map_y>", &value)) + { y = value;} + else if(sscanf(line.c_str(), "<Group>%u</Group>", &value)) + { sscanf(line.c_str(), "<Group>%hu</Group>", &group);} + } + + if (!inside_construction && line == "<Construction>") + { + inside_construction = true; + //pos_in_xml_file = xml_file_in.tellg(); + } + + if ( !prescan && inside_construction ) + { + if (r == 2 && xml_val.length()) + { memberCount += world(x,y)->construction->loadMember(xml_tag, xml_val);} + } + if (inside_construction && line == "</Construction>") + { + if( world.is_inside(x, y) && (group != NOT_SET) && prescan) + { + if (ConstructionGroup::countConstructionGroup(group)) + { + constructionCount++; + //std::cout << "placing " << main_groups[group].name << " as " <<main_groups[get_group_of_type(type)].name << "..."; + std::cout.flush(); + ConstructionGroup::getConstructionGroup(group)->placeItem(x, y); + //std::cout << "ok" <<std::endl; + rewind(); + prescan = false; + continue; + } +#ifdef DEBUG + else if (cur_template) + { std::cout << "unknown ConstructionGroup " << cur_template->template_tag << std::endl;} +#endif + } + //world(x,y)->construction->saveMembers(&std::cout); + interpreting_template = false; + inside_construction = false; + prescan = true; + x = NOT_SET; + y = NOT_SET; + group = NOT_SET; + } + } + while (line!="</ConstructionSection>" && /*!xml_file_in.eof() &&*/ !gzeof(gz_xml_file)); + //constructionSection = false; +} + + +void +XMLloadsave::loadTileTemplates() +{ + unsigned short head,group,type; + cur_template = bin_template_libary[GROUP_DESERT]; + const int wlen = world.len(); + const int area = wlen*wlen; + int idx; + int last_i = seed_compression?altered_tiles:area; + for(int i=0; i<last_i; ++i) + { + gzread(gz_xml_file, (char *)&head, sizeof(head)); + gzread(gz_xml_file, (char *)&group, sizeof(group)); + gzread(gz_xml_file, (char *)&type, sizeof(type)); + gzread(gz_xml_file, (char *)&idx, sizeof(idx)); + + cur_template->rewind(); + MapTile *cur_tile = world(idx); + cur_tile->group = group; + cur_tile->type = type; + size_t cm = 0; + while(!cur_template->reached_end()) + { + xml_tag = cur_template->getTag(); + //size_t len = cur_template->getNumChars(); + + //mapTile + if (xml_tag == "flags") {cm += gzread(gz_xml_file, (char*)&cur_tile->flags, sizeof( cur_tile->flags));} + else if (xml_tag == "air_pol") {cm += gzread(gz_xml_file, (char*)&cur_tile->pollution, sizeof( cur_tile->pollution ));} + else if (xml_tag == "ore") {cm += gzread(gz_xml_file, (char*)&cur_tile->ore_reserve, sizeof( cur_tile->ore_reserve ));} + else if (xml_tag == "coal") {cm += gzread(gz_xml_file, (char*)&cur_tile->coal_reserve, sizeof( cur_tile->coal_reserve ));} + //ground + else if (xml_tag == "altitude") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.altitude, sizeof( cur_tile->ground.altitude ));} + else if (xml_tag == "ecotable") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.ecotable, sizeof( cur_tile->ground.ecotable ));} + else if (xml_tag == "wastes") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.wastes, sizeof( cur_tile->ground.wastes ));} + else if (xml_tag == "grd_pol") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.pollution, sizeof( cur_tile->ground.pollution ));} + else if (xml_tag == "water_alt") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.water_alt, sizeof( cur_tile->ground.water_alt ));} + else if (xml_tag == "water_pol") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.water_pol, sizeof( cur_tile->ground.water_pol ));} + else if (xml_tag == "water_wast") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.water_wast, sizeof( cur_tile->ground.water_wast ));} + else if (xml_tag == "water_next") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.water_next, sizeof( cur_tile->ground.water_next ));} + else if (xml_tag == "int1") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.int1, sizeof( cur_tile->ground.int1 ));} + else if (xml_tag == "int2") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.int2, sizeof( cur_tile->ground.int2 ));} + else if (xml_tag == "int3") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.int3, sizeof( cur_tile->ground.int3 ));} + else if (xml_tag == "int4") {cm += gzread(gz_xml_file, (char*)&cur_tile->ground.int4, sizeof( cur_tile->ground.int4 ));} + else + { + std::cout<<"Invalid format while reading binary tiles "<<std::endl; + } + cur_template->step(); + } + //assert (cm == cur_template->len()); + cur_tile->flags &= ~VOLATILE_FLAGS; + mapTileCount++; + } +} + +void +XMLloadsave::loadConstructionTemplates() +{ + + unsigned short group, head, type; + int idx; + + gzread(gz_xml_file, (char *)&head, sizeof(head)); + gzread(gz_xml_file, (char *)&group, sizeof(group)); + if(ldsv_version < 1328) + { gzread(gz_xml_file, (char *)&type, sizeof(type));} + gzread(gz_xml_file, (char *)&idx, sizeof(idx)); + //std::cout << "binary construction header: " << group << " | " << type << " | " << idx << "..."; + //std::cout.flush(); + int x = idx % world.len(); + int y = idx / world.len(); + //std::cout << head << " aka " << group << " at " << x << ", " << y << std::endl; + ConstructionGroup::getConstructionGroup(head)->placeItem(x, y); + if (!bin_template_libary.count(head)) + { + world(x,y)->construction->writeTemplate(); + } + cur_template = bin_template_libary[head]; + //assert(cur_template); + //cur_template->report(&std::cout); + cur_template->rewind(); + size_t cm = 0; + while (!cur_template->reached_end()) + { + cm += world(x,y)->construction->readbinaryMember(cur_template->getTag(),gz_xml_file); + cur_template->step(); + } + //assert(cm = cur_template->len()); + //std::cout << "OK" <<std::endl; +} + +void XMLloadsave::saveGlobals() +{ + xml_file_out << "<GlobalVariables>" << std::endl; + + xml_file_out << "<binary_mode>" << binary_mode << "</binary_mode>" << std::endl; + xml_file_out << "<seed_compression>" << seed_compression << "</seed_compression>" << std::endl; + xml_file_out << "<altered_tiles>" << world.count_altered() << "</altered_tiles>" << std::endl; + + xml_file_out << "<constructions>" << ::constructionCount.count() << "</constructions>" << std::endl; + xml_file_out << "<given_scene>" << given_scene << "</given_scene>" << std::endl; + xml_file_out << "<world_id>" << world_id << "</world_id>" << std::endl; + xml_file_out << "<climate>" << world.climate << "</climate>" << std::endl; + xml_file_out << "<old_setup_ground>" << world.old_setup_ground << "</old_setup_ground>" << std::endl; + + xml_file_out << "<global_aridity>" << global_aridity << "</global_aridity>" << std::endl; + xml_file_out << "<global_mountainity>" << global_mountainity << "</global_mountainity>" << std::endl; + xml_file_out << "<world_side_len>" << world.len() << "</world_side_len>" << std::endl; + xml_file_out << "<main_screen_originx>" << main_screen_originx << "</main_screen_originx>" << std::endl; + xml_file_out << "<main_screen_originy>" << main_screen_originy << "</main_screen_originy>" << std::endl; + xml_file_out << "<total_time>" << total_time << "</total_time>" << std::endl; + + xml_file_out << "<people_pool>" << people_pool << "</people_pool>" << std::endl; + xml_file_out << "<total_money>" << total_money << "</total_money>" << std::endl; + xml_file_out << "<ly_income_tax>" << ly_income_tax << "</ly_income_tax>" << std::endl; + xml_file_out << "<income_tax>" << income_tax << "</income_tax>" << std::endl; + xml_file_out << "<income_tax_rate>" << income_tax_rate << "</income_tax_rate>" << std::endl; + + xml_file_out << "<ly_interest>" << ly_interest << "</ly_interest>" << std::endl; + xml_file_out << "<ly_coal_tax>" << ly_coal_tax << "</ly_coal_tax>" << std::endl; + xml_file_out << "<coal_tax>" << coal_tax << "</coal_tax>" << std::endl; + xml_file_out << "<coal_tax_rate>" << coal_tax_rate << "</coal_tax_rate>" << std::endl; + xml_file_out << "<ly_unemployment_cost>" << ly_unemployment_cost << "</ly_unemployment_cost>" << std::endl; + xml_file_out << "<unemployment_cost>" << unemployment_cost << "</unemployment_cost>" << std::endl; + xml_file_out << "<dole_rate>" << dole_rate << "</dole_rate>" << std::endl; + + xml_file_out << "<ly_transport_cost>" << ly_transport_cost << "</ly_transport_cost>" << std::endl; + xml_file_out << "<transport_cost>" << transport_cost << "</transport_cost>" << std::endl; + xml_file_out << "<transport_cost_rate>" << transport_cost_rate << "</transport_cost_rate>" << std::endl; + xml_file_out << "<ly_goods_tax>" << ly_goods_tax << "</ly_goods_tax>" << std::endl; + xml_file_out << "<goods_tax>" << goods_tax << "</goods_tax>" << std::endl; + xml_file_out << "<goods_tax_rate>" << goods_tax_rate << "</goods_tax_rate>" << std::endl; + + xml_file_out << "<ly_export_tax>" << ly_export_tax << "</ly_export_tax>" << std::endl; + xml_file_out << "<export_tax>" << export_tax << "</export_tax>" << std::endl; + xml_file_out << "<export_tax_rate>" << export_tax_rate << "</export_tax_rate>" << std::endl; + xml_file_out << "<ly_import_cost>" << ly_import_cost << "</ly_import_cost>" << std::endl; + xml_file_out << "<import_cost>" << import_cost << "</import_cost>" << std::endl; + xml_file_out << "<import_cost_rate>" << import_cost_rate << "</import_cost_rate>" << std::endl; + + xml_file_out << "<ly_university_cost>" << ly_university_cost << "</ly_university_cost>" << std::endl; + xml_file_out << "<university_cost>" << university_cost << "</university_cost>" << std::endl; + xml_file_out << "<ly_recycle_cost>" << ly_recycle_cost << "</ly_recycle_cost>" << std::endl; + xml_file_out << "<recycle_cost>" << recycle_cost << "</recycle_cost>" << std::endl; + xml_file_out << "<ly_school_cost>" << ly_school_cost << "</ly_school_cost>" << std::endl; + xml_file_out << "<school_cost>" << school_cost << "</school_cost>" << std::endl; + + xml_file_out << "<ly_health_cost>" << ly_health_cost << "</ly_health_cost>" << std::endl; + xml_file_out << "<health_cost>" << health_cost << "</health_cost>" << std::endl; + xml_file_out << "<ly_deaths_cost>" << ly_deaths_cost << "</ly_deaths_cost>" << std::endl; + xml_file_out << "<deaths_cost>" << deaths_cost << "</deaths_cost>" << std::endl; + xml_file_out << "<ly_rocket_pad_cost>" << ly_rocket_pad_cost << "</ly_rocket_pad_cost>" << std::endl; + xml_file_out << "<rocket_pad_cost>" << rocket_pad_cost << "</rocket_pad_cost>" << std::endl; + + xml_file_out << "<ly_windmill_cost>" << ly_windmill_cost << "</ly_windmill_cost>" << std::endl; + xml_file_out << "<windmill_cost>" << windmill_cost << "</windmill_cost>" << std::endl; + xml_file_out << "<ly_fire_cost>" << ly_fire_cost << "</ly_fire_cost>" << std::endl; + xml_file_out << "<fire_cost>" << fire_cost << "</fire_cost>" << std::endl; + xml_file_out << "<ly_cricket_cost>" << ly_cricket_cost << "</ly_cricket_cost>" << std::endl; + xml_file_out << "<cricket_cost>" << cricket_cost << "</cricket_cost>" << std::endl; + + xml_file_out << "<tech_level>" << tech_level << "</tech_level>" << std::endl; + xml_file_out << "<highest_tech_level>" << highest_tech_level << "</highest_tech_level>" << std::endl; + xml_file_out << "<tpopulation>" << tpopulation << "</tpopulation> " << std::endl; + xml_file_out << "<thousing>" << thousing << "</thousing> " << std::endl; + xml_file_out << "<tstarving_population>" << tstarving_population << "</tstarving_population>" << std::endl; + xml_file_out << "<tunemployed_population>" << tunemployed_population << "</tunemployed_population>" << std::endl; + + xml_file_out << "<total_pollution>" << total_pollution << "</total_pollution> " << std::endl; + xml_file_out << "<rockets_launched>" << rockets_launched << "</rockets_launched>" << std::endl; + xml_file_out << "<rockets_launched_success>" << rockets_launched_success << "</rockets_launched_success>" << std::endl; + + xml_file_out << "<coal_survey_done>" << coal_survey_done << "</coal_survey_done>" << std::endl; + xml_file_out << "<cheat_flag>" << cheat_flag << "</cheat_flag>" << std::endl; + xml_file_out << "<total_pollution_deaths>" << total_pollution_deaths << "</total_pollution_deaths>" << std::endl; + xml_file_out << "<pollution_deaths_history>" << coal_survey_done << "</pollution_deaths_history>" << std::endl; + xml_file_out << "<total_starve_deaths>" << total_starve_deaths << "</total_starve_deaths>" << std::endl; + xml_file_out << "<starve_deaths_history>" << starve_deaths_history << "</starve_deaths_history>" << std::endl; + + xml_file_out << "<total_unemployed_years>" << coal_survey_done << "</total_unemployed_years>" << std::endl; + xml_file_out << "<unemployed_history>" << unemployed_history << "</unemployed_history>" << std::endl; + xml_file_out << "<max_pop_ever>" << max_pop_ever << "</max_pop_ever>" << std::endl; + xml_file_out << "<total_evacuated>" << total_evacuated << "</total_evacuated>" << std::endl; + xml_file_out << "<total_births>" << total_births << "</total_births>" << std::endl; + + + xml_file_out << "<sust_dig_ore_coal_tip_flag>" << sust_dig_ore_coal_tip_flag << "</sust_dig_ore_coal_tip_flag>" << std::endl; + xml_file_out << "<sust_dig_ore_coal_count>" << sust_dig_ore_coal_count << "</sust_dig_ore_coal_count>" << std::endl; + xml_file_out << "<sust_port_count>" << sust_port_count << "</sust_port_count>" << std::endl; + xml_file_out << "<sust_old_money_count>" << sust_old_money_count << "</sust_old_money_count>" << std::endl; + xml_file_out << "<sust_old_population_count>" << sust_old_population_count<< "</sust_old_population_count>" << std::endl; + xml_file_out << "<sust_old_tech_count>" << sust_old_tech_count << "</sust_old_tech_count>" << std::endl; + xml_file_out << "<sust_fire_count>" << sust_fire_count << "</sust_fire_count>" << std::endl; + xml_file_out << "<sust_old_money>" << sust_old_money << "</sust_old_money>" << std::endl; + xml_file_out << "<sust_port_flag>" << sust_port_flag << "</sust_port_flag>" << std::endl; + xml_file_out << "<sust_old_population>" << sust_old_population << "</sust_old_population>" << std::endl; + xml_file_out << "<sust_old_tech>" << sust_old_tech << "</sust_old_tech>" << std::endl; + xml_file_out << "<sustain_flag>" << sustain_flag << "</sustain_flag>" << std::endl; + + xml_file_out << "<monthgraph_size>" << monthgraph_size << "</monthgraph_size>" << std::endl; + + writeArray("monthgraph_pop", monthgraph_pop, monthgraph_size); + writeArray("monthgraph_starve", monthgraph_starve, monthgraph_size); + writeArray("monthgraph_nojobs", monthgraph_nojobs, monthgraph_size); + writeArray("monthgraph_ppool", monthgraph_ppool, monthgraph_size); + + flush_gz_output(); + for (int p = 0; p < NUM_PBARS; p++) + { + std::ostringstream pbarname; + xml_file_out << "<pbar>" << std::endl; + xml_file_out << "<ID>" << p << "</ID>" << std::endl; + xml_file_out << "<oldtot>" << pbars[p].oldtot << "</oldtot>" << std::endl; + xml_file_out << "<diff>" << pbars[p].diff << "</diff>" << std::endl; + writeArray("array", pbars[p].data, PBAR_DATA_SIZE); + xml_file_out << "</pbar>" << std::endl; + flush_gz_output(); + } + if (seed_compression) + { writePollution();} + xml_file_out << "</GlobalVariables>" << std::endl; + flush_gz_output(); +} + +void XMLloadsave::loadGlobals() +{ + int r, monthgraph_size_in_file; + int new_world_len; + binary_mode = false; //set save default for old files + seed_compression = false; //set save default for old files + do + { + get_interpreted_line(); + r = sliceXMLline(); + if ((r == 2) && (xml_val.length())) + { + + globalCount++; + if (xml_tag == "binary_mode") {binary_mode = (xml_val == "1")||(xml_val == "yes");} + else if (xml_tag == "seed_compression") {seed_compression = (xml_val == "1")||(xml_val == "yes");} + else if (xml_tag == "altered_tiles") {sscanf(xml_val.c_str(),"%d",&altered_tiles);} + + else if (xml_tag == "constructions") {sscanf(xml_val.c_str(),"%d",&totalConstructions);} + else if (xml_tag == "given_scene") {strcpy(given_scene, xml_val.c_str());} + else if (xml_tag == "global_aridity") {sscanf(xml_val.c_str(),"%d",&global_aridity);} + else if (xml_tag == "global_mountainity") {sscanf(xml_val.c_str(),"%d",&global_mountainity);} + else if (xml_tag == "world_side_len") {sscanf(xml_val.c_str(),"%d",&new_world_len); + world.len(new_world_len);} + else if (xml_tag == "world_id") {sscanf(xml_val.c_str(),"%d",&world_id); + world.seed(world_id);} + else if (xml_tag == "old_setup_ground") {sscanf(xml_val.c_str(),"%d",&world.old_setup_ground);} + else if (xml_tag == "climate") {sscanf(xml_val.c_str(),"%d",&world.climate);} + + else if (xml_tag == "main_screen_originx") {sscanf(xml_val.c_str(),"%d",&main_screen_originx);} + else if (xml_tag == "main_screen_originy") {sscanf(xml_val.c_str(),"%d",&main_screen_originy);} + else if (xml_tag == "total_time") {sscanf(xml_val.c_str(),"%d",&total_time);} + + else if (xml_tag == "people_pool") {sscanf(xml_val.c_str(),"%d",&people_pool);} + else if (xml_tag == "total_money") {sscanf(xml_val.c_str(),"%d",&total_money);} + else if (xml_tag == "ly_income_tax") {sscanf(xml_val.c_str(),"%d",&ly_income_tax);} + else if (xml_tag == "income_tax") {sscanf(xml_val.c_str(),"%d",&income_tax);} + else if (xml_tag == "income_tax_rate") {sscanf(xml_val.c_str(),"%d",&income_tax_rate);} + + else if (xml_tag == "ly_interest") {sscanf(xml_val.c_str(),"%d",&ly_interest);} + else if (xml_tag == "ly_coal_tax") {sscanf(xml_val.c_str(),"%d",&ly_coal_tax);} + else if (xml_tag == "coal_tax") {sscanf(xml_val.c_str(),"%d",&coal_tax);} + else if (xml_tag == "coal_tax_rate") {sscanf(xml_val.c_str(),"%d",&coal_tax_rate);} + + else if (xml_tag == "ly_unemployment_cost") {sscanf(xml_val.c_str(),"%d",&ly_unemployment_cost);} + else if (xml_tag == "unemployment_cost") {sscanf(xml_val.c_str(),"%d",&unemployment_cost);} + else if (xml_tag == "dole_rate") {sscanf(xml_val.c_str(),"%d",&dole_rate);} + + else if (xml_tag == "ly_transport_cost") {sscanf(xml_val.c_str(),"%d",&ly_transport_cost);} + else if (xml_tag == "transport_cost") {sscanf(xml_val.c_str(),"%d",&transport_cost);} + else if (xml_tag == "transport_cost_rate") {sscanf(xml_val.c_str(),"%d",&transport_cost_rate);} + else if (xml_tag == "ly_goods_tax") {sscanf(xml_val.c_str(),"%d",&ly_goods_tax);} + else if (xml_tag == "goods_tax") {sscanf(xml_val.c_str(),"%d",&goods_tax);} + else if (xml_tag == "goods_tax_rate") {sscanf(xml_val.c_str(),"%d",&goods_tax_rate);} + + else if (xml_tag == "ly_export_tax") {sscanf(xml_val.c_str(),"%d",&ly_export_tax);} + else if (xml_tag == "export_tax") {sscanf(xml_val.c_str(),"%d",&export_tax);} + else if (xml_tag == "export_tax_rate") {sscanf(xml_val.c_str(),"%d",&export_tax_rate);} + else if (xml_tag == "ly_import_cost") {sscanf(xml_val.c_str(),"%d",&ly_import_cost);} + else if (xml_tag == "import_cost") {sscanf(xml_val.c_str(),"%d",&import_cost);} + else if (xml_tag == "import_cost_rate") {sscanf(xml_val.c_str(),"%d",&import_cost_rate);} + + else if (xml_tag == "ly_university_cost") {sscanf(xml_val.c_str(),"%d",&ly_university_cost);} + else if (xml_tag == "university_cost") {sscanf(xml_val.c_str(),"%d",&university_cost);} + else if (xml_tag == "ly_recycle_cost") {sscanf(xml_val.c_str(),"%d",&ly_recycle_cost);} + else if (xml_tag == "recycle_cost") {sscanf(xml_val.c_str(),"%d",&recycle_cost);} + else if (xml_tag == "ly_school_cost") {sscanf(xml_val.c_str(),"%d",&ly_school_cost);} + else if (xml_tag == "school_cost") {sscanf(xml_val.c_str(),"%d",&school_cost);} + + else if (xml_tag == "ly_health_cost") {sscanf(xml_val.c_str(),"%d",&ly_health_cost);} + else if (xml_tag == "health_cost") {sscanf(xml_val.c_str(),"%d",&health_cost);} + else if (xml_tag == "ly_deaths_cost") {sscanf(xml_val.c_str(),"%d",&ly_deaths_cost);} + else if (xml_tag == "deaths_cost") {sscanf(xml_val.c_str(),"%d",&deaths_cost);} + else if (xml_tag == "ly_rocket_pad_cost") {sscanf(xml_val.c_str(),"%d",&ly_rocket_pad_cost);} + else if (xml_tag == "rocket_pad_cost") {sscanf(xml_val.c_str(),"%d",&rocket_pad_cost);} + + else if (xml_tag == "ly_windmill_cost") {sscanf(xml_val.c_str(),"%d",&ly_windmill_cost);} + else if (xml_tag == "windmill_cost") {sscanf(xml_val.c_str(),"%d",&windmill_cost);} + else if (xml_tag == "ly_fire_cost") {sscanf(xml_val.c_str(),"%d",&ly_fire_cost);} + else if (xml_tag == "fire_cost") {sscanf(xml_val.c_str(),"%d",&fire_cost);} + else if (xml_tag == "ly_cricket_cost") {sscanf(xml_val.c_str(),"%d",&ly_cricket_cost);} + else if (xml_tag == "cricket_cost") {sscanf(xml_val.c_str(),"%d",&cricket_cost);} + + else if (xml_tag == "tech_level") {sscanf(xml_val.c_str(),"%d",&tech_level);} + else if (xml_tag == "highest_tech_level") {sscanf(xml_val.c_str(),"%d",&highest_tech_level);} + else if (xml_tag == "tpopulation") {sscanf(xml_val.c_str(),"%d",&tpopulation);} + else if (xml_tag == "thousing") {sscanf(xml_val.c_str(),"%d",&thousing);} + else if (xml_tag == "tstarving_population") {sscanf(xml_val.c_str(),"%d",&tstarving_population);} + else if (xml_tag == "tunemployed_population") {sscanf(xml_val.c_str(),"%d",&tunemployed_population);} + + else if (xml_tag == "total_pollution") {sscanf(xml_val.c_str(),"%d",&total_pollution);} + else if (xml_tag == "rockets_launched") {sscanf(xml_val.c_str(),"%d",&rockets_launched);} + else if (xml_tag == "rockets_launched_success") {sscanf(xml_val.c_str(),"%d",&rockets_launched_success);} + + else if (xml_tag == "coal_survey_done") {sscanf(xml_val.c_str(),"%d",&coal_survey_done);} + else if (xml_tag == "cheat_flag") {sscanf(xml_val.c_str(),"%d",&cheat_flag);} + else if (xml_tag == "total_pollution_deaths") {sscanf(xml_val.c_str(),"%d",&total_pollution_deaths);} + else if (xml_tag == "pollution_deaths_history") {sscanf(xml_val.c_str(),"%f",&pollution_deaths_history);} + else if (xml_tag == "total_starve_deaths") {sscanf(xml_val.c_str(),"%d",&total_starve_deaths);} + else if (xml_tag == "starve_deaths_history") {sscanf(xml_val.c_str(),"%f",&starve_deaths_history);} + + else if (xml_tag == "total_unemployed_years") {sscanf(xml_val.c_str(),"%d",&total_unemployed_years);} + else if (xml_tag == "unemployed_history") {sscanf(xml_val.c_str(),"%f",&unemployed_history);} + else if (xml_tag == "max_pop_ever") {sscanf(xml_val.c_str(),"%d",&max_pop_ever);} + else if (xml_tag == "total_evacuated") {sscanf(xml_val.c_str(),"%d",&total_evacuated);} + else if (xml_tag == "total_births") {sscanf(xml_val.c_str(),"%d",&total_births);} + + else if (xml_tag == "sust_dig_ore_coal_tip_flag") {sscanf(xml_val.c_str(),"%d",&sust_dig_ore_coal_tip_flag);} + else if (xml_tag == "sust_dig_ore_coal_count") {sscanf(xml_val.c_str(),"%d",&sust_dig_ore_coal_count);} + else if (xml_tag == "sust_port_count") {sscanf(xml_val.c_str(),"%d",&sust_port_count);} + else if (xml_tag == "sust_old_money_count") {sscanf(xml_val.c_str(),"%d",&sust_old_money_count);} + else if (xml_tag == "sust_old_population_count") {sscanf(xml_val.c_str(),"%d",&sust_old_population_count);} + else if (xml_tag == "sust_old_tech_count") {sscanf(xml_val.c_str(),"%d",&sust_old_tech_count);} + else if (xml_tag == "sust_fire_count") {sscanf(xml_val.c_str(),"%d",&sust_fire_count);} + else if (xml_tag == "sust_old_money") {sscanf(xml_val.c_str(),"%d",&sust_old_money);} + else if (xml_tag == "sust_port_flag") {sscanf(xml_val.c_str(),"%d",&sust_port_flag);} + else if (xml_tag == "sust_old_population") {sscanf(xml_val.c_str(),"%d",&sust_old_population);} + else if (xml_tag == "sust_old_tech") {sscanf(xml_val.c_str(),"%d",&sust_old_tech);} + else if (xml_tag == "sustain_flag") {sscanf(xml_val.c_str(),"%d",&sustain_flag);} + + else if (xml_tag == "monthgraph_size") + { + sscanf(xml_val.c_str(),"%d",&monthgraph_size_in_file); + } + + else + { + std::cout<<"Unknown XML entry "<< line << " while reading <GlobalVariables>"<<std::endl; + globalCount--; + } + } + else if (r == 1) //an opening xml tag + { + globalCount++; + if (xml_tag == "monthgraph_pop") + { readArray(monthgraph_pop, monthgraph_size_in_file, monthgraph_size);} + else if (xml_tag == "monthgraph_starve") + { readArray(monthgraph_starve, monthgraph_size_in_file, monthgraph_size);} + else if (xml_tag == "monthgraph_nojobs") + { readArray(monthgraph_nojobs, monthgraph_size_in_file, monthgraph_size);} + else if (xml_tag == "monthgraph_ppool") + { readArray(monthgraph_ppool, monthgraph_size_in_file, monthgraph_size);} + else if (xml_tag == "pbar") + { readPbar();} + else if (xml_tag == "Pollution") + { readPollution();} + else + { + std::cout << "Unknown XML opening " << line << " while reading <GlobalVariables>"<<std::endl; + globalCount--; + } + } + else if ((r == -1) && line != "</GlobalVariables>") + { + std::cout << "Unknown XML closing " << line << " while reading <GlobalVariables>"<<std::endl; + } + } + while (line != "</GlobalVariables>" && !gzeof(gz_xml_file)); + ly_other_cost = ly_university_cost + ly_recycle_cost + ly_deaths_cost + + ly_health_cost + ly_rocket_pad_cost + ly_school_cost + + ly_interest + ly_windmill_cost + ly_fire_cost + ly_cricket_cost; + + globalSection = false; +} + +void XMLloadsave::saveMapTiles() +{ + xml_file_out << "<MapTileSection>" << std::endl; + const int len = world.len(); + const int area = len * len; + for (int index = 0; index<area; index++) + { + if(!seed_compression || (world(index)->flags & FLAG_ALTERED)) + { + world(index)->saveMembers(&xml_file_out); + flush_gz_output(); + } + } + if (binary_mode) + { xml_file_out << std::endl;} + xml_file_out << "</MapTileSection>" << std::endl; + //flush_gz_output(); +} + +void XMLloadsave::loadMapTiles() +{ + int x, y, r; + unsigned int value; + bool inside_MapTile; + MapTile *cur_tile = world(0); + + prescan = true; + inside_MapTile = false; + x = -1; + y = -1; + + do + { + get_interpreted_line(); + //std::cout << line << "*" << std::endl; + if (line == "<MapTile>") + { + inside_MapTile = true; + //pos_in_xml_file = xml_file_in.tellg(); + continue; + } + // preread x and y + if (inside_MapTile && prescan) + { + if(sscanf(line.c_str(), "<map_x>%u</map_x>", &value)) + x = value; + else if(sscanf(line.c_str(), "<map_y>%u</map_y>", &value)) + y = value; + } + if ( !prescan && inside_MapTile) + { + r = sliceXMLline(); + if ((r == 2) && (xml_val.length())) + { + //iss.str(xml_val); + if (xml_tag == "map_x");//ignore map_x + else if (xml_tag == "map_y");//ignore map_y + //mapTile + else if (xml_tag == "flags") {sscanf(xml_val.c_str(),"%d",&cur_tile->flags);} + else if (xml_tag == "type") {sscanf(xml_val.c_str(),"%hu",&cur_tile->type);} + else if (xml_tag == "group") {sscanf(xml_val.c_str(),"%hu",&cur_tile->group);} + else if (xml_tag == "air_pol") {sscanf(xml_val.c_str(),"%d",&cur_tile->pollution);} + else if (xml_tag == "ore") {sscanf(xml_val.c_str(),"%hu",&cur_tile->ore_reserve);} + else if (xml_tag == "coal") {sscanf(xml_val.c_str(),"%hu",&cur_tile->coal_reserve);} + //ground + else if (xml_tag == "altitude") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.altitude);} + else if (xml_tag == "ecotable") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.ecotable);} + else if (xml_tag == "wastes") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.wastes);} + else if (xml_tag == "grd_pol") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.pollution);} + else if (xml_tag == "water_alt") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.water_alt);} + else if (xml_tag == "water_pol") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.water_pol);} + else if (xml_tag == "water_wast") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.water_wast);} + else if (xml_tag == "water_next") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.water_next);} + else if (xml_tag == "int1") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.int1);} + else if (xml_tag == "int2") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.int2);} + else if (xml_tag == "int3") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.int3);} + else if (xml_tag == "int4") {sscanf(xml_val.c_str(),"%d",&cur_tile->ground.int4);} + else + { + std::cout<<"Unknown XML entry "<< line << " while reading <MapTile>"<<std::endl; + } + + } + else if (r == 1 && line != "<MapTile>") + std::cout<<"Unknown XML opening "<< line << " while reading <MapTileSection>"<<std::endl; + else if (r == -1 && line != "</MapTile>") + std::cout<<"Unknown XML closing "<< line << " while reading <MapTileSection>"<<std::endl; + } + if (line == "</MapTile>") + { + if( world.is_inside(x, y) && prescan) + { + mapTileCount++; + rewind(); + cur_tile = world(x, y); + prescan = false; + continue; + } + cur_tile->flags &= ~VOLATILE_FLAGS; + interpreting_template = false; + inside_MapTile = false; + prescan = true; + x = -1; + y = -1; + } + } + while (line != "</MapTileSection>" && !gzeof(gz_xml_file)); + + mapTileSection = false; +} + +void XMLloadsave::writeArray(std::string aryname, int ary[], int len) +{ + int i; + xml_file_out << "<"<<aryname<<">" << std::endl; + xml_file_out << "<int>"; + for (i=0;i<len;i++) + { xml_file_out << ary[i] << "\t";} + xml_file_out << "</int>" << std::endl; + xml_file_out << "</"<<aryname<<">" << std::endl; + flush_gz_output(); +} + +//TODO template this for other array types +void XMLloadsave::readArray(int ary[], int max_len, int len) +{ + int i = 0; + int r, pos; + std::string val; + //std::cout << "reading " << len << " elements from int["<< max_len << "]" << std::endl; + do + { + get_interpreted_line(); + r = sliceXMLline(); + if ((r == 2) && (xml_tag == "int") && (xml_val.length()) && (i<len) && (i<max_len)) + { + while(!xml_val.empty()) + { + pos = xml_val.find("\t"); + val = xml_val.substr(0, pos); + sscanf(val.c_str(),"%d",&ary[i++]); + if ((i > max_len) || (i > len)) + { + return; + } + xml_val.erase(0, pos); + xml_val.erase(0,1); + } + } + else if (r != -1 && (xml_tag != "int")) + { + std::cout << "unexpected syntax in array: " << line << std::endl; + return; + } + } + while (r == 2 && !gzeof(gz_xml_file)); //read as long as their a pairs of identical xmltags + while (i < len) + { + //std::cout << 0; + ary[i++] = 0; + } + + +} + +void XMLloadsave::writePollution(void) +{ + int items = 0; + xml_file_out << "<"<<"Pollution"<<">" << std::endl; + xml_file_out << "<"<<"places"<<">" << std::endl; + xml_file_out << "<int>"; + for ( std::set<int>::iterator it=world.polluted.begin();it != world.polluted.end();++it) + { + if(items > 100) + { + xml_file_out << "</int>" << std::endl << "<int>"; + items = 0; + } + xml_file_out << *it << "\t"; + ++items; + } + xml_file_out << "</int>" << std::endl; + xml_file_out << "</places"<<">" << std::endl; + + items = 0; + xml_file_out << "<"<<"air_pollution"<<">" << std::endl; + xml_file_out << "<int>"; + for ( std::set<int>::iterator it = world.polluted.begin();it != world.polluted.end();++it) + { + if(items > 100) + { + xml_file_out << "</int>" << std::endl << "<int>"; + items = 0; + } + xml_file_out << world(*it)->pollution << "\t"; + ++items; + } + xml_file_out << "</int>" << std::endl; + xml_file_out << "</air_pollution"<<">" << std::endl; + xml_file_out << "<"<<"/Pollution"<<">" << std::endl; + flush_gz_output(); +} + +void XMLloadsave::readPollution(void) +{ + int r, pos; + std::string val; + //std::cout << "reading " << len << " elements from int["<< max_len << "]" << std::endl; + get_interpreted_line(); + r = sliceXMLline(); + if ((r==1) && xml_tag == "places") + { + world.polluted.clear(); + do + { + get_interpreted_line(); + r = sliceXMLline(); + if ((r == 2) && (xml_tag == "int") && (xml_val.length())) + { + while(!xml_val.empty()) + { + pos = xml_val.find("\t"); + val = xml_val.substr(0, pos); + int value = 0; + sscanf(val.c_str(),"%d",&value); + world.polluted.insert(value); + xml_val.erase(0, pos); + xml_val.erase(0,1); + } + } + else if (r != -1 && (xml_tag != "int")) + { + std::cout << "unexpected syntax in Pollution/places: " << line << std::endl; + return; + } + } + while (r == 2 && !gzeof(gz_xml_file)); //read as long as there a pairs of identical xmltags + } + get_interpreted_line(); + r = sliceXMLline(); + if ((r==1) && xml_tag == "air_pollution") + { + std::set<int>::iterator it = world.polluted.begin(); + do + { + get_interpreted_line(); + r = sliceXMLline(); + if ((r == 2) && (xml_tag == "int") && (xml_val.length())) + { + while(!xml_val.empty() && (it != world.polluted.end())) + { + pos = xml_val.find("\t"); + val = xml_val.substr(0, pos); + //int value = 0; + sscanf(val.c_str(),"%d",&(world(*it++)->pollution)); + xml_val.erase(0, pos); + xml_val.erase(0,1); + } + } + else if (r != -1 && (xml_tag != "int")) + { + std::cout << "unexpected syntax in Pollution/air_pollution: " << line << std::endl; + return; + } + if(it == world.polluted.end() && (!xml_val.empty())) + { std::cout << "warning places and air_pollution dont match" << std::endl;} + } + while (r == 2 && !gzeof(gz_xml_file)); //read as long as there a pairs of identical xmltags + } + get_interpreted_line(); + r = sliceXMLline(); + if( (r!=-1) && (xml_tag != "Pollution") ) + { std::cout << "expected </Pollution> instead of: " << line << std::endl;} +} + + + +void XMLloadsave::readPbar() +{ + int r; + int ID = -1; + //pos_in_xml_file = xml_file_in.tellg(); + bool ID_ok = false; + bool oldtot_ok = false; + bool diff_ok = false; + bool data_ok = false; + bool pre_scan = true; + + do + { + get_interpreted_line(); + r = sliceXMLline(); + if (r == 2) + { + //if (!pre_scan) std::cout << "reading pbar attribute " << line << std::endl; + if (xml_tag == "ID" && pre_scan) + { + sscanf(xml_val.c_str(),"%d",&ID); + ID_ok = true; + pre_scan = false; + rewind(); + //xml_file_in.seekg(pos_in_xml_file); + } + else if (xml_tag == "oldtot" && (ID != -1)) + { sscanf(xml_val.c_str(),"%d",&pbars[ID].oldtot); oldtot_ok = true;} + else if (xml_tag == "diff" && (ID != -1)) + { sscanf(xml_val.c_str(),"%d",&pbars[ID].diff); diff_ok = true;} + else if (xml_tag != "ID") + { std::cout << "unknown pbar content" << std::endl;} + } + else if ((r == 1) && xml_tag == "array" && (ID != -1)) + { + //std::cout << "reading data of pbar" << ID <<std::endl; + readArray(pbars[ID].data, PBAR_DATA_SIZE, PBAR_DATA_SIZE); + data_ok = true; + } + } + while (!((line == "</pbar>") &&/* !xml_file_in.eof() &&*/ !gzeof(gz_xml_file))); + interpreting_template = false; + if (!(data_ok && diff_ok && oldtot_ok && ID_ok)) + std::cout << "Warning: stumpled accross corrupted pbar" << std::endl; +} + +int XMLloadsave::sliceXMLline() +{ + unsigned int position[4] = {0}; + std::string xml_tag2; + + position[0] = line.find("<"); //should be 0 + position[1] = line.find(">",position[0]+1); //closing of xml begintag + position[2] = line.find("</",position[1]+1); //opening of xml endtag + position[3] = line.find(">",position[2]+2); //should be line.length()-1 + if ((position[1] < position[3]))//There are two different xml tags in this line + { + xml_tag = line.substr(position[0]+1,position[1]-position[0]-1); + xml_val = line.substr(position[1]+1,position[2]-position[1]-1); + xml_tag2 = line.substr(position[2]+2,position[3]-position[2]-2); + if (xml_tag == xml_tag2) + { + return 2; // a matching pair + } + else + { + std::cout << "unexpected syntax: " << line <<std::endl; + return 0; // unexpected syntax + } + } + if ((position[0] < position[1]) + && (position[1] == line.length()-1)) + { + xml_tag = line.substr(position[0]+1,position[1]-position[0]-1); + xml_tag2.clear(); + xml_val.clear(); + if (xml_tag[xml_tag.length()-1] == '/') + { + xml_tag = xml_tag.erase(xml_tag.length()-1,1); + //std::cout << " 0: |" << *xml_tag1 <<"|"<< *xml_val << "|" << std::endl; + return 0; //an empty XMLtag + } + else if (xml_tag.at(0) == '/') + { + //*xml_tag1 = + xml_tag.erase(0,1); + //std::cout << "-1: |" << *xml_tag1 <<"|"<< *xml_val << "|" << std::endl; + return -1; //closing XMLtag + } + //std::cout << " 1: |" << *xml_tag1 <<"|"<< *xml_val << "|" << std::endl; + return 1; // an opening XMLtag + } + // probably an empty line + xml_tag.clear(); + xml_val.clear(); + return 0; +} + +int XMLloadsave::get_interpreted_line() +{ + int r; + if (interpreting_template) //in tempated meta reading mode + { + if (!cur_template->reached_end()) + { + cur_template->fillLine(&line); + cur_template->step(); + } + else + { + if (constructionSection) + { line = "</Construction>";} + else if (mapTileSection) + { line = "</MapTile>";} + else if (globalSection) + { line ="</pbar>";} + } + return 1; + } + else //in file read mode + { + //std::getline(xml_file_in, line); + get_raw_line(); + r = sliceXMLline(); + if (line == "<Template>") // There is a template definition + { + templateDefinition = true; + do + { + //std::getline(xml_file_in, line); + get_raw_line(); + //std::cout << line << "|" << std::endl; + r = sliceXMLline(); + if (r == 2) + { + readTemplate(); + } + else if (line != "</Template>") + { + std::cout << "Unknown syntax inside Template definition: " << line << std::endl; + } + + } + while (line != "</Template>" &&/* !xml_file_in.eof() &&*/ !gzeof(gz_xml_file)); + templateDefinition = false; + } + else if ((r == 2) && xml_template_libary.count(xml_tag)) + //found a line with a previously defined template + { + cur_template = xml_template_libary[xml_tag]; + cur_template->rewind(); + loadTemplateValues(); + interpreting_template = true; + if (constructionSection) + { line = "<Construction>";} + else if (mapTileSection) + { line = "<MapTile>";} + else if (globalSection) + { line ="<pbar>";} + else + std::cout << "Illdefined sectioning (static context)" << std::endl; + + } + else if ((r == 1) && ((xml_tag == "Construction") || + (xml_tag == "MapTile" ) || (xml_tag == "pbar" ))) + // Here we got an oldstyle xml formated block. create the template on the fly + { + cur_template = new XMLTemplate("temp_on_the_fly"); + do + { + //std::getline(xml_file_in, line); + get_raw_line(); + r = sliceXMLline(); + if (r == 2) + { + cur_template->putTag(xml_tag); + cur_template->putVal(xml_val); + } + else if ((xml_tag != "Construction") && (xml_tag != "MapTile") && + (xml_tag != "pbar" )) //other environments e.g. array + { + cur_template->putTag(""); + cur_template->putVal(line); + } + } + while ( (xml_tag != "Construction") && (xml_tag != "MapTile") && + (xml_tag != "pbar" ) && !gzeof(gz_xml_file)); + cur_template->rewind(); + interpreting_template = true; + //cur_template->validate(); + if (constructionSection) + { line = "<Construction>";} + else if (mapTileSection) + { line = "<MapTile>";} + else if (globalSection) + { line ="<pbar>";} + else + std::cout << "Illdefined sectioning (dynamic context)" << std::endl; + } + return 0; + } +} + +void XMLloadsave::get_raw_line() +{ + //std::cout << "get line: "; + //std::cout.flush(); + if (gzgets(gz_xml_file, buffer_line, sizeof(buffer_line)-1) != Z_NULL) + { + line = buffer_line; + if (!line.empty() && line[line.length()-1] == '\n') + { + line.erase(line.length()-1); + } + if (!line.empty() && line[line.length()-1] == '\r') + { + line.erase(line.length()-1); + } + } + else + { + line.clear(); + } +} + +void XMLloadsave::flush_gz_output() +{ + xml_file_out.flush(); + //std::cout << "flushing gz output: " << xml_file_out.str() ; + gzwrite(gz_xml_file, (char*)&(xml_file_out.str()[0]), xml_file_out.tellp()); + xml_file_out.str(""); + //xml_file_out.clear(); +} + +void XMLloadsave::rewind() +{ + cur_template->rewind(); +} + +void XMLloadsave::reportLibary(std::ostream *os) +{ + *os << "<Template>" << std::endl; + for(template_it = xml_template_libary.begin(); template_it != xml_template_libary.end(); template_it++) + { template_it->second->report(os);} + *os << "</Template>" << std::endl; +} + +void XMLTemplate::report(std::ostream *os) +{ + *os << "<" << template_tag << ">"; + for (size_t i = 0; i < tag_sequence.size(); ++i) + { *os << tag_sequence[i] << '\t';} + *os << "</" << template_tag << ">" << std::endl; +} + diff -Nru lincity-ng-2.0/src/lincity/xmlloadsave.h lincity-ng-2.9~git20150314/src/lincity/xmlloadsave.h --- lincity-ng-2.0/src/lincity/xmlloadsave.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity/xmlloadsave.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,117 @@ +/* ---------------------------------------------------------------------- * + * xmlloadsave.h + * This file is part of lincity-NG + * ---------------------------------------------------------------------- */ + +/* This is the xml extension of the loading/saving facility */ + +#ifndef __xmlloadsave_h__ +#define __xmlloadsave_h__ + +/* New load/save format */ +#define XML_LOADSAVE_VERSION 1328 + +#include <map> +#include <vector> +#include <string> +#include <fstream> +#include <sstream> +#include <iostream> +#include <zlib.h> + +class XMLTemplate; +extern std::map <std::string, XMLTemplate*> xml_template_libary; +extern std::map <unsigned short, XMLTemplate*> bin_template_libary; + +class XMLTemplate +{ +public: + XMLTemplate(std::string templateXY); //register in libary + ~XMLTemplate(); //unregister in case + void rewind(); //resets index + void clearVal(); //clears val_sequence + std::string const &getTag(); //returns current xml_tag + std::string const &getVal(); //returns current xml_val + //size_t getNumChars(); //returns the bytes in current entry + void fillLine(std::string *line); //writes xml formated entry to line + int step(); //increases cur_index and returns its new value + void putTag(std::string const &xml_tag); //appends another xml_tag to the tag_sequence + void putVal(std::string const &xml_val); //appends another value to the val_sequence + bool reached_end(); //returns true after last tag has been got + bool validate(); //checks if cur_index == 0 and there are as many val as tags ready for interpreting + size_t len(); //length of template if binary_mode + void add_len(size_t chunk); //add char length to template length + void set_group(int grp); //set group and register in bin_template_libary + void report(std::ostream *os); // write <tag> .... </tag> to stream + std::string template_tag; //the name of an instance +private: + unsigned short template_group; //the corresponding group of an instance + unsigned int cur_index; //the current index + std::vector<std::string> tag_sequence; //the sequence of tags in an xml template + std::vector<std::string> val_sequence; //the sequence of values for reading an xml template + size_t char_len; //the total binary length including the 2 char head +}; + + +class XMLloadsave +{ +public: + XMLloadsave(); + ~XMLloadsave(); + int saveXMLfile(std::string xml_file_name); + int loadXMLfile(std::string xml_file_name); +private: + std::ostringstream xml_file_out; + gzFile gz_xml_file; + XMLTemplate * cur_template; + std::map <std::string, XMLTemplate*>::iterator template_it; + std::string line, xml_tag, xml_val; + char buffer_line[4096]; + bool interpreting_template; + bool globalSection; + bool mapTileSection; + bool constructionSection; + bool templateSection; + bool templateDefinition; + bool prescan; //true while prescanning constructions or maptiles + int memberCount; + int constructionCount; + int globalCount; + int mapTileCount; + int altered_tiles; + int totalConstructions; + + bool no_Section(); //true if not inside global mapTile or constructionSection + void clearXMLlibary(); //clears all previous template definitions + void fillXMLlibary(); //creates all templates needed for current mode + void reportLibary(std::ostream *os);//writes the template definitions to a stream + void saveGlobals(); //Write all global variables to xml_file_out + void saveMapTiles(); //Write all mapTiles in world to xml_file_out; + void saveConstructions(); //writes template definitions and constructions to xml_file_out + void loadGlobals(); //reads Globals from xml_file_in + void loadMapTiles(); //reads MapTiles + void loadTileTemplates(); //reads an construction from a stream of binary data + void loadConstructions(); //reads constructions and template definitions from xml_file_in + void loadConstructionTemplates();//reads an construction from a stream of binary data + void readTemplateSection(); //reads the optional dedicated TemplateSection + void readPbar(); //reads a Pbar (inside GlobalSection) + void readArray(int ary[], int max_len, int len); //reads an array of ints <int>%d</int> + void writeArray(std::string aryname, int ary[], int len); + + void writePollution(); //writes Air pollution to file + void readPollution(); //reads Air pollution from file + + int sliceXMLline(); // fills xml_tag and xml_val according to line + int get_interpreted_line(); // fills line either from xml_file_in or the current template + void get_raw_line(); // fills the buffer line from file and copies it to line; + void flush_gz_output(); // writes the gz_output to file; + void rewind(); // returns to start of current entity (Construction or MapTile) + void loadTemplateValues(); // creates template named xml_tag with \t sepparated fields from xml_val + void readTemplate(); +}; + +extern XMLloadsave xml_loadsave; + +#endif /* __xmlloadsave_h__ */ + +/** @file lincity/loadsave.h */ diff -Nru lincity-ng-2.0/src/lincity-ng/binreloc.c lincity-ng-2.9~git20150314/src/lincity-ng/binreloc.c --- lincity-ng-2.0/src/lincity-ng/binreloc.c 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/binreloc.c 2015-05-05 16:32:51.000000000 +0000 @@ -766,3 +766,6 @@ #endif /* __cplusplus */ #endif /* __BINRELOC_C__ */ + +/** @file lincity-ng/binreloc.c */ + diff -Nru lincity-ng-2.0/src/lincity-ng/binreloc.h lincity-ng-2.9~git20150314/src/lincity-ng/binreloc.h --- lincity-ng-2.0/src/lincity-ng/binreloc.h 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/binreloc.h 2015-05-05 16:32:51.000000000 +0000 @@ -78,3 +78,6 @@ #endif /* __cplusplus */ #endif /* __BINRELOC_H__ */ + +/** @file lincity-ng/binreloc.h */ + diff -Nru lincity-ng-2.0/src/lincity-ng/ButtonInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/ButtonInterface.cpp --- lincity-ng-2.0/src/lincity-ng/ButtonInterface.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ButtonInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -19,10 +19,12 @@ #include "gui_interface/shared_globals.h" -int module_help_flag[NUMOF_MODULES]; -int selected_module; -int sbut[NUMOF_MODULES]; +//TODO delete this file +//int module_help_flag[NUMOF_MODULES]; +//int selected_module; +//int sbut[NUMOF_MODULES]; +/* void highlight_module_button (int module) { (void) module; @@ -37,4 +39,7 @@ { (void) type; } +*/ + +/** @file lincity-ng/ButtonInterface.cpp */ diff -Nru lincity-ng-2.0/src/lincity-ng/ButtonPanel.cpp lincity-ng-2.9~git20150314/src/lincity-ng/ButtonPanel.cpp --- lincity-ng-2.0/src/lincity-ng/ButtonPanel.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ButtonPanel.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -16,7 +16,6 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ #include "ButtonPanel.hpp" -#include "Util.hpp" #include <exception> #include <sstream> @@ -33,6 +32,11 @@ #include "gui_interface/shared_globals.h" #include "lincity/lctypes.h" +#include "lincity/lin-city.h" +#include "lincity/groups.h" +#include "lincity/lintypes.h" +#include "lincity/all_buildings.h" +#include "lincity/modules/all_modules.h" #include "tinygettext/gettext.hpp" #include "GameView.hpp" @@ -46,15 +50,14 @@ ButtonPanel *ButtonPanelInstance=0; -int selected_module_type = CST_NONE; - ButtonPanel *getButtonPanel() { - return ButtonPanelInstance; + return ButtonPanelInstance; } ButtonPanel::ButtonPanel() { + userOperation = new UserOperation(); } void @@ -89,36 +92,37 @@ while(reader.read() && reader.getDepth() > depth) { if(reader.getNodeType() == XML_READER_TYPE_ELEMENT) { const std::string& element = (const char*) reader.getName(); - if(element == "menu") { + if(element == "menu") + { std::string menuName=getAttribute(reader,"name"); std::string defName=getAttribute(reader,"default"); mMenus.push_back(menuName); - doButton(defName); - mMenuSelected[menuName]=selected_module_type; - } else if(element == "button") { - mButtons.push_back(getAttribute(reader,"name")); - } else if(element == "menubutton") { - mMenuButtons.push_back(getAttribute(reader,"name")); - } else { + activeButtons.push_back(defName); + } + else if(element == "button") + { mButtons.push_back(getAttribute(reader,"name"));} + else if(element == "menubutton") + { mMenuButtons.push_back(getAttribute(reader,"name"));} + else + { Component* component = parseEmbeddedComponent(reader); addChild(component); - if(component->getFlags() & FLAG_RESIZABLE) { - component->resize(width, height); - } - - //width = component->getWidth(); - //height = component->getHeight(); + if(component->getFlags() & FLAG_RESIZABLE) + { component->resize(width, height);} } } - } - + } +#ifdef DEBUG + assert(!ButtonPanelInstance); +#endif ButtonPanelInstance = this; - previousTool = selected_module_type=selected_module=module=CST_GREEN; + previousName = "BPMPointerButton"; alreadyAttached=false; - selected_module_type=CST_NONE; - + + userOperation->action = UserOperation::ACTION_QUERY; checked_cast<CheckButton>(findComponent(mMenuButtons[0]))->check(); - lastShownTechType = 0; + lastShownTechGroup = 0; + ButtonOperations.clear();//discard initial default names, attachbuttons() will create proper map } std::string ButtonPanel::getAttribute(XmlReader &reader,const std::string &pName) const @@ -129,55 +133,14 @@ const char* name = (const char*) iter.getName(); const char* value = (const char*) iter.getValue(); if(pName == name) - return value; + { return value;} } - - return rname; -} -//show required tech in display-format -float ButtonPanel::requiredTech(int moduleType) { - if( moduleType == CST_NONE ){ - return 0; - } - int group = get_group_of_type( moduleType ); - float tl; - //High Tech Residences are special - if( group == GROUP_RESIDENCE_LH || group == GROUP_RESIDENCE_MH - || group == GROUP_RESIDENCE_HH ){ - tl = 3 * MAX_TECH_LEVEL / 10; - } else { - tl = main_groups[ group ].tech * MAX_TECH_LEVEL/1000; - } - - return tl * 100 / MAX_TECH_LEVEL; -} - -//test if there is enough tech to build moduleType. -bool ButtonPanel::enoughTech( int moduleType ){ - if( moduleType == CST_NONE ){ - return true; - } - int group = get_group_of_type( moduleType ); - //High Tech Residences are special - if( group == GROUP_RESIDENCE_LH || group == GROUP_RESIDENCE_MH - || group == GROUP_RESIDENCE_HH ){ - if( ( ( tech_level * 10 ) / MAX_TECH_LEVEL) > 2 ){ - return true; - } else { - return false; - } - } - if ( tech_level >= main_groups[ group ].tech * MAX_TECH_LEVEL/1000 ){ - return true; - } - return false; + return rname; } /* * enable/disable buttons according to tech. - * lincity/ldsvguts.cpp - * oldgui/module_buttons.cpp */ void ButtonPanel::checkTech( int showInfo ){ std::string name; @@ -189,84 +152,58 @@ examineMenuButtons(); if (tech_level > MODERN_WINDMILL_TECH && modern_windmill_flag == 0 && showInfo != 0){ - ok_dial_box ("mod_wind_up.mes", GOOD, 0L); - modern_windmill_flag = 1; + ok_dial_box ("mod_wind_up.mes", GOOD, 0L); + modern_windmill_flag = 1; } } -std::string ButtonPanel::createTooltip( int module, bool root /* = true */ ){ - std::stringstream tooltip; - switch( module ){ - case CST_NONE: tooltip << _( "Query Tool" ); break; - case CST_GREEN: tooltip << _( "Bulldozer" ); break; - - case CST_RESIDENCE_LL: tooltip << _( "Residential: 50 denizens, low birthrate, high deathrate" ); break; - case CST_RESIDENCE_ML: tooltip << _( "Residential: 100 denizens, high birthrate, low deathrate" ); break; - case CST_RESIDENCE_HL: tooltip << _( "Residential: 200 denizens, high birthrate, high deathrate" ); break; - case CST_RESIDENCE_LH: tooltip << _( "Residential: 100 denizens, low birthrate, high deathrate" ); break; - case CST_RESIDENCE_MH: tooltip << _( "Residential: 200 denizens, high birthrate, low deathrate" ); break; - case CST_RESIDENCE_HH: tooltip << _( "Residential: 400 denizens, high birthrate, high deathrate" ); break; - - default:{ - int group = main_types[ module ].group; - std::string buildingName = main_groups[ group ].name; - tooltip << dictionaryManager->get_dictionary().translate( buildingName ); - } - } - if( !root ){ - tooltip << _(" [Click right for help.]"); - } - return tooltip.str(); -} - -void ButtonPanel::examineButton( std::string name, int showInfo ){ - int tmp = selected_module_type; - Component *c=findComponent( name ); + +void ButtonPanel::examineButton(const std::string &name, int showInfo ) +{ + UserOperation *usrOp = &(ButtonOperations[name]); + Component *c = findComponent( name ); if( !c ) { std::cerr << "examineButton# Component "<< name << " not found!?\n"; return; } + CheckButton* b = dynamic_cast<CheckButton*>(c); if( !b ){ std::cerr << "examineButton# Component "<< name << " is not a Button???\n"; return; } - doButton( name ); - if ( enoughTech( selected_module_type ) ){ - if( !b->isEnabled() ){ - newTechMessage( selected_module_type, showInfo ); - b->setTooltip( createTooltip( selected_module_type, false ) ); + + if ( usrOp->enoughTech() ) + { + if( !b->isEnabled() ) + { + newTechMessage( usrOp->constructionGroup->group, showInfo ); + b->setTooltip( usrOp->createTooltip( false ) ); b->enable(); } - } else { - if( b->isEnabled() ){ - b->enable( false ); - char tooltip[2048]; - snprintf(tooltip, sizeof(tooltip), _("%s (Techlevel %.1f required.)"), - createTooltip(selected_module_type, false ).c_str(), - requiredTech(selected_module_type)); - b->setTooltip(tooltip); - } } - if ( (name=="BPMWaterwellButton") & !use_waterwell ) { + else + { + if( b->isEnabled() ) + { b->enable( false ); - char tooltip[2048]; - snprintf(tooltip, sizeof(tooltip), _("%s is disabled (loaded old game)."), - createTooltip(selected_module_type, false ).c_str()); - b->setTooltip(tooltip); + std::ostringstream os; + os << usrOp->createTooltip( false ).c_str() << " (" + << _("Techlevel") << " " << usrOp->requiredTech() + << " " << _("required") << ")"; + b->setTooltip(os.str().c_str()); + } } - - - selected_module_type = tmp; } void ButtonPanel::examineMenuButtons(){ - std::string name; + std::string name; Component *c; for( size_t number=0; number < mMenuButtons.size(); number++ ){ - name = mMenuButtons[ number ]; + name = mMenuButtons[ number ]; + UserOperation *usrOp = &(ButtonOperations[activeButtons[number]]); c=findComponent( name ); - + if( !c ) { std::cerr << "examineMenuButton# Component" << name << "not found!?\n"; return; @@ -276,20 +213,23 @@ std::cerr << "examineMenuButton# Component "<< name << " is not a Button???\n"; return; } - int type = mMenuSelected[mMenus[number]]; - if ( enoughTech( type ) ){ + if ( usrOp->enoughTech() ) + { if( !b->isEnabled() ){ - b->setTooltip( createTooltip( type ) ); + b->setTooltip( usrOp->createTooltip( ) ); b->enable(); } - } else { - if( b->isEnabled() ){ - char tooltip[2048]; - snprintf(tooltip, sizeof(tooltip), _("%s (Techlevel %.1f required.)"), - createTooltip( type ).c_str(), - requiredTech(type)); - b->setTooltip( tooltip ); + } + else + { + if( b->isEnabled() ) + { b->enable( false ); + std::ostringstream os; + os << usrOp->createTooltip( false ).c_str() << " (" + << _("Techlevel") << " " << usrOp->requiredTech() + << " " << _("required") << ")"; + b->setTooltip(os.str().c_str()); } } } @@ -297,176 +237,181 @@ /* Display message for module when it is activated (see above) */ // see oldgui/module_buttons.cpp activate_module -void ButtonPanel::newTechMessage( int moduleType, int showInfo ) +void ButtonPanel::newTechMessage( unsigned short group, int showInfo ) { - if( showInfo == 0) return; + if( showInfo == 0) + { return;} - int module = get_group_of_type( moduleType ); - if( lastShownTechType == module ){ + if( lastShownTechGroup == group ) + { //std::cout << "suppressing Tech Msg: " << module << "\n"; return; } - switch( module ){ - case GROUP_WINDMILL: + switch( group ){ + case GROUP_WINDMILL: ok_dial_box ("windmillup.mes", GOOD, 0L); break; case GROUP_COAL_POWER: - ok_dial_box ("coalpowerup.mes", GOOD, 0L); + ok_dial_box ("coalpowerup.mes", GOOD, 0L); break; case GROUP_SOLAR_POWER: - ok_dial_box ("solarpowerup.mes", GOOD, 0L); + ok_dial_box ("solarpowerup.mes", GOOD, 0L); break; case GROUP_COALMINE: - ok_dial_box ("coalmineup.mes", GOOD, 0L); + ok_dial_box ("coalmineup.mes", GOOD, 0L); break; case GROUP_RAIL: - ok_dial_box ("railwayup.mes", GOOD, 0L); + ok_dial_box ("railwayup.mes", GOOD, 0L); break; case GROUP_ROAD: - ok_dial_box ("roadup.mes", GOOD, 0L); + ok_dial_box ("roadup.mes", GOOD, 0L); break; case GROUP_INDUSTRY_L: - ok_dial_box ("ltindustryup.mes", GOOD, 0L); + ok_dial_box ("ltindustryup.mes", GOOD, 0L); break; case GROUP_UNIVERSITY: - ok_dial_box ("universityup.mes", GOOD, 0L); + ok_dial_box ("universityup.mes", GOOD, 0L); break; case GROUP_OREMINE: if (GROUP_OREMINE_TECH > 0){ - ok_dial_box ("oremineup.mes", GOOD, 0L); + ok_dial_box ("oremineup.mes", GOOD, 0L); } break; - case GROUP_PORT: /* exports are the same */ - ok_dial_box ("import-exportup.mes", GOOD, 0L); + case GROUP_PORT: /* exports are the same */ + ok_dial_box ("import-exportup.mes", GOOD, 0L); break; case GROUP_INDUSTRY_H: - ok_dial_box ("hvindustryup.mes", GOOD, 0L); + ok_dial_box ("hvindustryup.mes", GOOD, 0L); break; case GROUP_PARKLAND: - if (GROUP_PARKLAND_TECH > 0){ - ok_dial_box ("parkup.mes", GOOD, 0L); + if (GROUP_PARKLAND_TECH > 0){ + ok_dial_box ("parkup.mes", GOOD, 0L); } break; case GROUP_RECYCLE: - ok_dial_box ("recycleup.mes", GOOD, 0L); + ok_dial_box ("recycleup.mes", GOOD, 0L); break; case GROUP_RIVER: - if (GROUP_WATER_TECH > 0){ - ok_dial_box ("riverup.mes", GOOD, 0L); + if (GROUP_WATER_TECH > 0){ + ok_dial_box ("riverup.mes", GOOD, 0L); } break; case GROUP_HEALTH: - ok_dial_box ("healthup.mes", GOOD, 0L); + ok_dial_box ("healthup.mes", GOOD, 0L); break; case GROUP_ROCKET: - ok_dial_box ("rocketup.mes", GOOD, 0L); + ok_dial_box ("rocketup.mes", GOOD, 0L); break; case GROUP_SCHOOL: - if (GROUP_SCHOOL_TECH > 0){ - ok_dial_box ("schoolup.mes", GOOD, 0L); + if (GROUP_SCHOOL_TECH > 0){ + ok_dial_box ("schoolup.mes", GOOD, 0L); } break; case GROUP_BLACKSMITH: - if (GROUP_BLACKSMITH_TECH > 0){ - ok_dial_box ("blacksmithup.mes", GOOD, 0L); + if (GROUP_BLACKSMITH_TECH > 0){ + ok_dial_box ("blacksmithup.mes", GOOD, 0L); } break; case GROUP_MILL: - if (GROUP_MILL_TECH > 0){ - ok_dial_box ("millup.mes", GOOD, 0L); + if (GROUP_MILL_TECH > 0){ + ok_dial_box ("millup.mes", GOOD, 0L); } break; case GROUP_POTTERY: - if (GROUP_POTTERY_TECH > 0){ - ok_dial_box ("potteryup.mes", GOOD, 0L); + if (GROUP_POTTERY_TECH > 0){ + ok_dial_box ("potteryup.mes", GOOD, 0L); } break; case GROUP_FIRESTATION: - ok_dial_box ("firestationup.mes", GOOD, 0L); + ok_dial_box ("firestationup.mes", GOOD, 0L); break; case GROUP_CRICKET: - ok_dial_box ("cricketup.mes", GOOD, 0L); + ok_dial_box ("cricketup.mes", GOOD, 0L); break; default: return; } - lastShownTechType = module; + lastShownTechGroup = group; //remember last Type so we don't show the message twice if we lose just a little tech. } void ButtonPanel::attachButtons() { - if(alreadyAttached) - return; - alreadyAttached=true; - for(size_t i=0;i<mMenuButtons.size();i++) - { - Component *c=findComponent(mMenuButtons[i]); - if(c) - { - CheckButton* b = dynamic_cast<CheckButton*>(c); - if(b) + if(alreadyAttached) + { return;} + alreadyAttached = true; + UserOperation *usrOp = 0; + + for(size_t i=0;i<mButtons.size();i++) + { + Component *c=findComponent(mButtons[i]); + if(c) { - b->clicked.connect(makeCallback(*this, &ButtonPanel::menuButtonClicked)); - if( b->isEnabled() ){ - b->setTooltip( createTooltip( mMenuSelected[ mMenus[ i ] ] ) ); - } else { - char tooltip[2048]; - snprintf(tooltip, sizeof(tooltip), _("%s (Techlevel %.1f required.)"), - createTooltip( mMenuSelected[ mMenus[ i ] ] ).c_str(), - requiredTech( mMenuSelected[ mMenus[ i ] ])); - b->setTooltip(tooltip); - } - } - } - } - int tmp = selected_module_type; - for(size_t i=0;i<mButtons.size();i++) - { - Component *c=findComponent(mButtons[i]); - if(c) - { - CheckButton* b = dynamic_cast<CheckButton*>(c); - if(b) + CheckButton* b = dynamic_cast<CheckButton*>(c); + if(b) + { + b->clicked.connect(makeCallback(*this, &ButtonPanel::chooseButtonClicked)); + doButton( mButtons[i] ); + usrOp = &(ButtonOperations[mButtons[i]]); + if( b->isEnabled() ) + { b->setTooltip( usrOp->createTooltip( false ) );} + else + { + std::ostringstream os; + os << usrOp->createTooltip( false ) << " (" + << _("Techlevel") << " " << usrOp->requiredTech() + << " " << _("required") << ")"; + b->setTooltip(os.str()); + } + } + } + } + + for(size_t i=0;i<mMenuButtons.size();i++) + { + usrOp = &(ButtonOperations[activeButtons[i]]); + Component *c=findComponent(mMenuButtons[i]); + if(c) { - b->clicked.connect(makeCallback(*this, &ButtonPanel::chooseButtonClicked)); - doButton( mButtons[i] ); - if( b->isEnabled() ){ - b->setTooltip( createTooltip( selected_module_type, false ) ); - } else { - char tooltip[2048]; - snprintf(tooltip, sizeof(tooltip), _("%s (Techlevel %.1f required.)"), - createTooltip( selected_module_type, false ).c_str(), - requiredTech(selected_module_type)); - b->setTooltip(tooltip); - } - } - } - } - selected_module_type = tmp; - checkTech(0); - //FIXME : disable all menus - - // now hide menu - for(size_t i=0;i<mMenuButtons.size();i++) + CheckButton* b = dynamic_cast<CheckButton*>(c); + if(b) + { + b->clicked.connect(makeCallback(*this, &ButtonPanel::menuButtonClicked)); + if( b->isEnabled() ) + { b->setTooltip( usrOp->createTooltip( ) );} + else + { + std::ostringstream os; + os << usrOp->createTooltip( false ) << " (" + << _("Techlevel") << " " << usrOp->requiredTech() + << _("required") << ")"; + b->setTooltip(os.str()); + } + } + } + } + + checkTech(0); + // now hide menu + for(size_t i=0;i<mMenuButtons.size();i++) { // get Component Component *c=findComponent(mMenus[i]); if(c) { - // try en-/disabling compoent - // first get parent - Component *p=c->getParent(); - if(p) - { - Childs::iterator i=p->childs.begin(); - for(;i!=p->childs.end();i++) - if(i->getComponent()==c) - { - i->enable(false); - } - } + // try en-/disabling compoent + // first get parent + Component *p=c->getParent(); + if(p) + { + Childs::iterator i=p->childs.begin(); + for(;i!=p->childs.end();i++) + { + if(i->getComponent()==c) + { i->enable(false);} + } + } } } } @@ -475,8 +420,8 @@ * Show Information about selected Tool */ void ButtonPanel::updateToolInfo() -{ - //Tool was changed, so reset the bulldozeflags to enable +{ + //Tool was changed, so reset the bulldozeflags to enable //the warnings again. monument_bul_flag = 0; river_bul_flag = 0; @@ -493,192 +438,53 @@ void ButtonPanel::selectQueryTool(){ CheckButton* queryButton = getCheckButton( *this, "BPMPointerButton"); - chooseButtonClicked( queryButton, SDL_BUTTON_LEFT ); + chooseButtonClicked( queryButton, SDL_BUTTON_LEFT ); } -void ButtonPanel::toggleBulldozeTool(){ - if( selected_module_type == CST_GREEN ){ - switchToTool( previousTool ); - } - else{ - previousTool = selected_module_type; - CheckButton* bulldozeButton = getCheckButton( *this, "BPMBullDozeButton"); - chooseButtonClicked( bulldozeButton, SDL_BUTTON_LEFT ); - } +bool ButtonPanel::selectedQueryTool(){ + if (previousName == "BPMPointerButton") + return true; + return false; } -void ButtonPanel::showToolHelp( int tooltype ){ - switch( tooltype ) { - case CST_NONE: - getGame()->showHelpWindow( "query" ); break; - case CST_GREEN : - getGame()->showHelpWindow( "bulldoze" ); break; - - case CST_RESIDENCE_LL: - case CST_RESIDENCE_ML: - case CST_RESIDENCE_HL: - case CST_RESIDENCE_LH: - case CST_RESIDENCE_MH: - case CST_RESIDENCE_HH: - getGame()->showHelpWindow( "residential" ); break; - - case CST_FARM_O0: - getGame()->showHelpWindow( "farm" ); break; - case CST_MILL_0: - getGame()->showHelpWindow( "mill" ); break; - - case CST_HEALTH: - getGame()->showHelpWindow( "health" ); break; - case CST_CRICKET_1: - getGame()->showHelpWindow( "cricket" ); break; - case CST_FIRESTATION_1: - getGame()->showHelpWindow( "firestation" ); break; - case CST_SCHOOL: - getGame()->showHelpWindow( "school" ); break; - case CST_UNIVERSITY: - getGame()->showHelpWindow( "university" ); break; - - case CST_TRACK_LR: - getGame()->showHelpWindow( "track" ); break; - case CST_ROAD_LR: - getGame()->showHelpWindow( "road" ); break; - case CST_RAIL_LR: - getGame()->showHelpWindow( "rail" ); break; - case CST_EX_PORT: - getGame()->showHelpWindow( "port" ); break; - case CST_ROCKET_1: - getGame()->showHelpWindow( "rocket" ); break; - - case CST_POWERL_H_L: - getGame()->showHelpWindow( "powerline" ); break; - - case CST_POWERS_COAL_EMPTY: - getGame()->showHelpWindow( "powerscoal" ); break; - case CST_POWERS_SOLAR: - getGame()->showHelpWindow( "powerssolar" ); break; - case CST_SUBSTATION_R: - getGame()->showHelpWindow( "substation" ); break; - case CST_WINDMILL_1_R: - getGame()->showHelpWindow( "windmill" ); break; - - case CST_COMMUNE_1: - getGame()->showHelpWindow( "commune" ); break; - case CST_COALMINE_EMPTY: - getGame()->showHelpWindow( "coalmine" ); break; - case CST_OREMINE_1: - getGame()->showHelpWindow( "oremine" ); break; - case CST_TIP_0: - getGame()->showHelpWindow( "tip" ); break; - case CST_RECYCLE: - getGame()->showHelpWindow( "recycle" ); break; - - case CST_INDUSTRY_L_C: - getGame()->showHelpWindow( "industryl" ); break; - case CST_INDUSTRY_H_C: - getGame()->showHelpWindow( "industryh" ); break; - case CST_MARKET_EMPTY: - getGame()->showHelpWindow( "market" ); break; - case CST_POTTERY_0: - getGame()->showHelpWindow( "pottery" ); break; - case CST_BLACKSMITH_0: - getGame()->showHelpWindow( "blacksmith" ); break; - - case CST_MONUMENT_0: - getGame()->showHelpWindow( "monument" ); break; - case CST_PARKLAND_PLANE: - getGame()->showHelpWindow( "park" ); break; - case CST_WATER: - getGame()->showHelpWindow( "river" ); break; - case CST_WATERWELL: - getGame()->showHelpWindow( "waterwell" ); break; - default: - std::cerr << "ButtonPanel::showToolHelp# unknown Type " << tooltype << "\n"; +void ButtonPanel::toggleBulldozeTool() +{ + if( userOperation == &ButtonOperations["BPMBullDozeButton"] ) + { + CheckButton* newButton = getCheckButton( *this, previousName ); + chooseButtonClicked( newButton, SDL_BUTTON_LEFT ); } -} - -void ButtonPanel::switchToTool( int newModuleType ){ - std::string newName; - switch( newModuleType ){ - case CST_NONE: newName = "BPMPointerButton"; break; - case CST_GREEN :newName = "BPMBullDozeButton"; break; - - case CST_RESIDENCE_LL: newName = "BPMResidence1Button"; break; - case CST_RESIDENCE_ML: newName = "BPMResidence2Button"; break; - case CST_RESIDENCE_HL: newName = "BPMResidence3Button"; break; - case CST_RESIDENCE_LH: newName = "BPMResidence4Button"; break; - case CST_RESIDENCE_MH: newName = "BPMResidence5Button"; break; - case CST_RESIDENCE_HH: newName = "BPMResidence6Button"; break; - - case CST_FARM_O0: newName ="BPMFarmButton"; break; - case CST_MILL_0: newName ="BPMMillButton"; break; - - case CST_HEALTH: newName="BPMHealthButton"; break; - case CST_CRICKET_1: newName="BPMSportsButton"; break; - case CST_FIRESTATION_1: newName="BPMFireButton"; break; - case CST_SCHOOL: newName="BPMSchoolButton"; break; - case CST_UNIVERSITY: newName="BPMUniversityButton"; break; - - case CST_TRACK_LR: newName="BPMTrackButton"; break; - case CST_ROAD_LR: newName="BPMStreetButton"; break; - case CST_RAIL_LR: newName="BPMRailButton"; break; - case CST_EX_PORT: newName="BPMPortButton"; break; - case CST_ROCKET_1: newName ="BPMRocketButton"; break; - - case CST_POWERL_H_L: newName ="BPMPowerLineButton"; break; - - case CST_POWERS_COAL_EMPTY: newName ="BPMCoalPSButton"; break; - case CST_POWERS_SOLAR: newName ="BPMSolarPSButton"; break; - case CST_SUBSTATION_R: newName ="BPMSubstationButton"; break; - case CST_WINDMILL_1_R: newName ="BPMWindmillButton"; break; - - case CST_COMMUNE_1: newName ="BPMCommuneButton"; break; - case CST_COALMINE_EMPTY: newName ="BPMCoalButton"; break; - case CST_OREMINE_1: newName ="BPMOreButton"; break; - case CST_TIP_0: newName ="BPMTipButton"; break; - case CST_RECYCLE: newName ="BPMRecycleButton"; break; - - case CST_INDUSTRY_L_C: newName ="BPMLIndustryButton"; break; - case CST_INDUSTRY_H_C: newName ="BPMHIndustryButton"; break; - case CST_MARKET_EMPTY: newName ="BPMMarketButton"; break; - case CST_POTTERY_0: newName ="BPMPotteryButton"; break; - case CST_BLACKSMITH_0: newName ="BPMBlacksmithButton"; break; - - case CST_MONUMENT_0: newName ="BPMMonumentButton"; break; - case CST_PARKLAND_PLANE: newName ="BPMParkButton"; break; - case CST_WATER: newName ="BPMWaterButton"; break; - case CST_WATERWELL: newName ="BPMWaterwellButton"; break; - default: - std::cerr << "ButtonPanel::switchToTool# unknown Type " << newModuleType << "\n"; - newName ="BPMPointerButton"; + else + { + std::string lastpreviousName = previousName; + CheckButton* bulldozeButton = getCheckButton( *this, "BPMBullDozeButton"); + chooseButtonClicked( bulldozeButton, SDL_BUTTON_LEFT ); + previousName = lastpreviousName; //revert previous tool } - CheckButton* newButton = getCheckButton( *this, newName ); - chooseButtonClicked( newButton, SDL_BUTTON_LEFT ); } - + void ButtonPanel::chooseButtonClicked(CheckButton* button, int mousebutton ) { - Image *i=dynamic_cast<Image*>(button->getCaption()); - CheckButton *cb = 0; - std::string mmain=button->getMain(); - int prevTech = selected_module_type; - doButton(button->getName()); - - if( mousebutton == SDL_BUTTON_RIGHT ){ - showToolHelp( selected_module_type ); - selected_module_type = prevTech; - updateSelectedCost(); + if( mousebutton == SDL_BUTTON_RIGHT ) + { + getGame()->showHelpWindow( ButtonOperations[button->getName()].helpName ); return; } - - if(i) + + UserOperation *btnOp = &(ButtonOperations[button->getName()]); + //CK could return here to simply ignore clicks on inactive buttons + Image *img = dynamic_cast<Image*>(button->getCaption()); + CheckButton *cb = 0; + std::string mmain = button->getMain(); + if(img) { - std::string filename=i->getFilename(); - + std::string filename = img->getFilename(); // set menu-caption if(mmain.length()) { Component *c=findComponent(mmain); - if(c && enoughTech( selected_module_type)) + //update choice if enough tech + if(c && btnOp->enoughTech()) { cb=dynamic_cast<CheckButton*>(c); if(cb) @@ -692,137 +498,140 @@ } } } - - doButton(button->getName()); - // now hide menu - for(size_t i=0;i<mMenuButtons.size();i++) { + + //now hide the menu + for(size_t i=0;i<mMenuButtons.size();i++) + { if(mmain==mMenuButtons[i]) { - if(enoughTech( selected_module_type)) { - mMenuSelected[mMenus[i]]=selected_module_type;// set default - } + if(btnOp->enoughTech()) + { activeButtons[i] = button->getName();} // get Component Component *c=findComponent(mMenus[i]); - if(c) { + if(c) + { // try en-/disabling compoent // first get parent Component *p=c->getParent(); - if(p) { - Childs::iterator i=p->childs.begin(); - for(;i!=p->childs.end();i++) { - if(i->getComponent()==c) { - i->enable(false); - } + if(p) + { + Childs::iterator itr=p->childs.begin(); + for(;itr!=p->childs.end();++itr) + { + if(itr->getComponent()==c) + { itr->enable(false);} } } } } } - - if(!enoughTech( selected_module_type)) { - std::cout <<"chooseButton not enough tech for " << selected_module_type << "\n"; - selected_module_type = prevTech; - updateSelectedCost(); + + if(!btnOp->enoughTech()) + { +#ifdef DEBUG + ConstructionGroup *constructionGroup = btnOp->constructionGroup; + std::cout <<"chooseButton not enough tech for: " << (constructionGroup?constructionGroup->name:"unknown") << std::endl; +#endif + return; //Nothing more to do } + + previousName = button->getName(); + userOperation = &(ButtonOperations[previousName]); + if(cb != 0) - cb->setTooltip( createTooltip( selected_module_type ) ); + { cb->setTooltip( userOperation->createTooltip() );} examineMenuButtons(); - - //Tell GameView to use the right Cursor - if( selected_module_type == CST_NONE ) { - getGameView()->setCursorSize( 0 ); - } else { - int selected_module_group = get_group_of_type(selected_module_type); - int size = main_groups[selected_module_group].size; - getGameView()->setCursorSize( size ); - } - updateToolInfo(); + getGameView()->setCursorSize( userOperation->cursorSize() ); + updateToolInfo(); } void ButtonPanel::toggleMenu(std::string pName,bool enable) { Component *c=findComponent(pName); - if(c) { + if(c) + { // try en-/disabling compoent // first get parent Component *p=c->getParent(); - if(p) { - Childs::iterator i=p->childs.begin(); - for(;i!=p->childs.end();i++) - if(i->getComponent()==c) - i->enable(enable); + if(p) + { + Childs::iterator itr=p->childs.begin(); + for(;itr!=p->childs.end();++itr) + { + if(itr->getComponent()==c) + { + itr->enable(enable); + } + } } } } -void ButtonPanel::menuButtonClicked(CheckButton* button,int b) +void ButtonPanel::menuButtonClicked(CheckButton* button, int b) { - for(size_t i=0;i<mMenuButtons.size();i++) { - if(button->getName()==mMenuButtons[i]) { + for(size_t i=0;i<mMenuButtons.size();i++) + { + if(button->getName()==mMenuButtons[i]) + { // get Component Component* c=findComponent(mMenus[i]); //Check if Techlevel is sufficient. - if( enoughTech( mMenuSelected[mMenus[i]] ) && ( b == SDL_BUTTON_RIGHT ) ){ - selected_module_type=selected_module=mMenuSelected[mMenus[i]]; - updateSelectedCost(); + if( ButtonOperations[mMenuButtons[i]].enoughTech() && ( b != SDL_BUTTON_RIGHT ) ) + { button->check(); - } - if( mMenuSelected[mMenus[i]] == selected_module_type ){ //button toggles on every click - button->check(); - } else { - button->uncheck(); + Image *img = dynamic_cast<Image*>(button->getCaption()); + if (img) + { + //select tool from menubutton and set cursor in GameView + UserOperation *usrOp = &(ButtonOperations[activeButtons[i]]); + if(usrOp->enoughTech()) + { + previousName = activeButtons[i]; + userOperation = usrOp; + getGameView()->setCursorSize( userOperation->cursorSize() ); + } + menuButtonClicked(button,SDL_BUTTON_RIGHT); //simulate right click + } } - if(c) { - // try en-/disabling compoent + + if(c) + { + // try en-/disabling component // first get parent Component *p=c->getParent(); - if(p) { + if(p) + { Childs::iterator i=p->childs.begin(); - for(;i!=p->childs.end();i++) { + for(;i!=p->childs.end();i++) + { if(i->getComponent()==c) { if(i->isEnabled()) - i->enable(false); + { i->enable(false);} else if(b!=SDL_BUTTON_RIGHT) - i->enable(true); + { i->enable(true);} } } } } - } else if(b==SDL_BUTTON_RIGHT) { + } + else if(b==SDL_BUTTON_RIGHT) + { toggleMenu(mMenus[i],false); try { CheckButton *b=checked_cast<CheckButton>(findComponent(mMenuButtons[i])); // uncheck button, ignore disabled buttons - if( b->isEnabled() ){ - b->uncheck(); - } - } catch(std::exception &e) { + if( b->isEnabled() ) + { b->uncheck();} } - } else { - toggleMenu(mMenus[i],false); + catch(...)//(std::exception &e) + { } } + else + { toggleMenu(mMenus[i],false);} } - - // get selected button and set module - - //Tell GameView to use the right Cursor - if( selected_module_type == CST_NONE ) { - getGameView()->setCursorSize( 0 ); - } else { - int selected_module_group = get_group_of_type(selected_module_type); - int size = main_groups[selected_module_group].size; - getGameView()->setCursorSize( size ); - } - updateToolInfo(); - setDirty(); -} - -int ButtonPanel::getModule() const -{ - return module; } bool ButtonPanel::opaque(const Vector2& pos) const @@ -831,106 +640,276 @@ if(i->getComponent()->opaque(pos)) return true; } - return false; } - + void ButtonPanel::doButton(const std::string &button) { + UserOperation *buttonOperation = &(ButtonOperations[button]); if(button=="BPMPointerButton") - selected_module_type=CST_NONE; + { + buttonOperation->constructionGroup = NULL; + buttonOperation->action = UserOperation::ACTION_QUERY; + buttonOperation->helpName = "query"; + } else if(button=="BPMBullDozeButton") - selected_module_type=CST_GREEN; - - + { + buttonOperation->constructionGroup = NULL; + buttonOperation->action = UserOperation::ACTION_BULLDOZE; + buttonOperation->helpName = "bulldoze"; + } + else if(button=="BPMEvacuateButton") + { + buttonOperation->constructionGroup = NULL; + buttonOperation->action = UserOperation::ACTION_EVACUATE; + buttonOperation->helpName = "evacuate"; + } else if(button=="BPMResidence1Button") - selected_module_type=CST_RESIDENCE_LL; + { + buttonOperation->constructionGroup = &residenceLLConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "residential"; + } else if(button=="BPMResidence2Button") - selected_module_type=CST_RESIDENCE_ML; + { + buttonOperation->constructionGroup = &residenceMLConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "residential"; + } else if(button=="BPMResidence3Button") - selected_module_type=CST_RESIDENCE_HL; + { + buttonOperation->constructionGroup = &residenceHLConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "residential"; + } else if(button=="BPMResidence4Button") - selected_module_type=CST_RESIDENCE_LH; + { + buttonOperation->constructionGroup = &residenceLHConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "residential"; + } else if(button=="BPMResidence5Button") - selected_module_type=CST_RESIDENCE_MH; + { + buttonOperation->constructionGroup = &residenceMHConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "residential"; + } else if(button=="BPMResidence6Button") - selected_module_type=CST_RESIDENCE_HH; - - + { + buttonOperation->constructionGroup = &residenceHHConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "residential"; + } else if(button=="BPMFarmButton") - selected_module_type=CST_FARM_O0; + { + buttonOperation->constructionGroup = &organic_farmConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "farm"; + } else if(button=="BPMMillButton") - selected_module_type=CST_MILL_0; - + { + buttonOperation->constructionGroup = &millConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "mill"; + } else if(button=="BPMHealthButton") - selected_module_type=CST_HEALTH; + { + buttonOperation->constructionGroup = &healthCentreConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "health"; + } else if(button=="BPMSportsButton") - selected_module_type=CST_CRICKET_1; + { + buttonOperation->constructionGroup = &cricketConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "cricket"; + } else if(button=="BPMFireButton") - selected_module_type=CST_FIRESTATION_1; + { + buttonOperation->constructionGroup = &fireStationConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "firestation"; + } else if(button=="BPMSchoolButton") - selected_module_type=CST_SCHOOL; + { + buttonOperation->constructionGroup = &schoolConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "school"; + } else if(button=="BPMUniversityButton") - selected_module_type=CST_UNIVERSITY; - + { + buttonOperation->constructionGroup = &universityConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "university"; + } else if(button=="BPMTrackButton") - selected_module_type=CST_TRACK_LR; + { + buttonOperation->constructionGroup = &trackConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "track"; + } else if(button=="BPMStreetButton") - selected_module_type=CST_ROAD_LR; + { + buttonOperation->constructionGroup = &roadConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "road"; + } else if(button=="BPMRailButton") - selected_module_type=CST_RAIL_LR; + { + buttonOperation->constructionGroup = &railConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "rail"; + } else if(button=="BPMPortButton") - selected_module_type=CST_EX_PORT; + { + buttonOperation->constructionGroup = &portConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "port"; + } else if(button=="BPMRocketButton") - selected_module_type=CST_ROCKET_1; - + { + buttonOperation->constructionGroup = &rocketPadConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "rocket"; + } + else if(button=="BPMPowerLineButton") - selected_module_type=CST_POWERL_H_L; + { + buttonOperation->constructionGroup = &powerlineConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "powerline"; + } else if(button=="BPMCoalPSButton") - selected_module_type=CST_POWERS_COAL_EMPTY; + { + buttonOperation->constructionGroup = &coal_powerConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "powerscoal"; + } else if(button=="BPMSolarPSButton") - selected_module_type=CST_POWERS_SOLAR; + { + buttonOperation->constructionGroup = &solarPowerConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "powerssolar"; + } else if(button=="BPMSubstationButton") - selected_module_type=CST_SUBSTATION_R; + { + buttonOperation->constructionGroup = &substationConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "substation"; + } else if(button=="BPMWindmillButton") - selected_module_type=CST_WINDMILL_1_R; - + { + if (tech_level < WIND_POWER_TECH) + { buttonOperation->constructionGroup = &windmillConstructionGroup;} + else + { buttonOperation->constructionGroup = &windpowerConstructionGroup;} + buttonOperation->helpName = "windmill"; + buttonOperation->action = UserOperation::ACTION_BUILD; + } + else if(button=="BPMCommuneButton") - selected_module_type=CST_COMMUNE_1; + { + buttonOperation->constructionGroup = &communeConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "commune"; + } else if(button=="BPMCoalButton") - selected_module_type=CST_COALMINE_EMPTY; + { + buttonOperation->constructionGroup = &coalmineConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "coalmine"; + } else if(button=="BPMOreButton") - selected_module_type=CST_OREMINE_1; + { + buttonOperation->constructionGroup = &oremineConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "oremine"; + } else if(button=="BPMTipButton") - selected_module_type=CST_TIP_0; + { + buttonOperation->constructionGroup = &tipConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "tip"; + } else if(button=="BPMRecycleButton") - selected_module_type=CST_RECYCLE; - + { + buttonOperation->constructionGroup = &recycleConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "recycle"; + } + else if(button=="BPMLIndustryButton") - selected_module_type=CST_INDUSTRY_L_C; + { + buttonOperation->constructionGroup = &industryLightConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "industryl"; + } else if(button=="BPMHIndustryButton") - selected_module_type=CST_INDUSTRY_H_C; + { + buttonOperation->constructionGroup = &industryHeavyConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "industryh"; + } else if(button=="BPMMarketButton") - selected_module_type=CST_MARKET_EMPTY; + { + buttonOperation->constructionGroup = &marketConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "market"; + } else if(button=="BPMPotteryButton") - selected_module_type=CST_POTTERY_0; + { + buttonOperation->constructionGroup = &potteryConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "pottery"; + } else if(button=="BPMBlacksmithButton") - selected_module_type=CST_BLACKSMITH_0; - + { + buttonOperation->constructionGroup = &blacksmithConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "blacksmith"; + } + else if(button=="BPMMonumentButton") - selected_module_type=CST_MONUMENT_0; + { + buttonOperation->constructionGroup = &monumentConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "monument"; + } else if(button=="BPMParkButton") - selected_module_type=CST_PARKLAND_PLANE; + { + buttonOperation->constructionGroup = &parklandConstructionGroup; + buttonOperation->action = UserOperation::ACTION_BUILD; + buttonOperation->helpName = "park"; + } else if(button=="BPMWaterButton") - selected_module_type=CST_WATER; + { + buttonOperation->constructionGroup = NULL; + buttonOperation->action = UserOperation::ACTION_FLOOD; + buttonOperation->helpName = "river"; + } else if(button=="BPMWaterwellButton") - selected_module_type=CST_WATERWELL; + { + buttonOperation->constructionGroup = &waterwellConstructionGroup; + buttonOperation->helpName = "waterwell"; + buttonOperation->action = UserOperation::ACTION_BUILD; + } + else + { std::cout << "Unknown Button: " << button << std::endl;} + } void ButtonPanel::updateSelectedCost() { - selected_module_cost = get_type_cost (selected_module_type); + if (userOperation->action == UserOperation::ACTION_BUILD) + { selected_module_cost = userOperation->constructionGroup->getCosts();} + else if (userOperation->action == UserOperation::ACTION_FLOOD) + { selected_module_cost = GROUP_WATER_COST;} + else + { selected_module_cost = 0;} } -IMPLEMENT_COMPONENT_FACTORY(ButtonPanel); +IMPLEMENT_COMPONENT_FACTORY(ButtonPanel) + + +/** @file lincity-ng/ButtonPanel.cpp */ diff -Nru lincity-ng-2.0/src/lincity-ng/ButtonPanel.hpp lincity-ng-2.9~git20150314/src/lincity-ng/ButtonPanel.hpp --- lincity-ng-2.0/src/lincity-ng/ButtonPanel.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ButtonPanel.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -19,6 +19,7 @@ #define __BUTTON_PANEL_HPP__ #include "gui/Component.hpp" +#include "lincity/UserOperation.h" #include <map> @@ -32,44 +33,41 @@ void parse(XmlReader& reader); - int getModule() const; - virtual void draw(Painter &painter); void chooseButtonClicked(CheckButton* button,int); void menuButtonClicked(CheckButton* button,int); virtual bool opaque(const Vector2& pos) const; void checkTech( int showInfo ); void selectQueryTool(); + bool selectedQueryTool(); void toggleBulldozeTool(); - void switchToTool( int newModuleType ); - + private: void attachButtons(); std::string getAttribute(XmlReader &reader,const std::string &pName) const; void doButton(const std::string &button); void toggleMenu(std::string pName,bool enable); void updateToolInfo(); - void showToolHelp( int tooltype ); - int module; bool alreadyAttached; - bool enoughTech( int moduleType ); - float requiredTech( int moduleType ); - void examineButton( std::string name, int showInfo ); + void examineButton(const std::string &name, int showInfo ); void examineMenuButtons(); - void newTechMessage( int moduleType, int showInfo ); + void newTechMessage( unsigned short group, int showInfo ); void updateSelectedCost(); - int previousTool; - int lastShownTechType; - - std::string createTooltip( int module, bool root = true ); + std::string previousName; + int lastShownTechGroup; + std::vector<std::string> mMenuButtons; std::vector<std::string> mMenus; std::vector<std::string> mButtons; - - std::map<std::string,int> mMenuSelected; + std::vector<std::string> activeButtons; + + std::map<std::string, UserOperation> ButtonOperations; }; ButtonPanel *getButtonPanel(); #endif + +/** @file lincity-ng/ButtonPanel.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/CheckButton.cpp lincity-ng-2.9~git20150314/src/lincity-ng/CheckButton.cpp --- lincity-ng-2.0/src/lincity-ng/CheckButton.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/CheckButton.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -32,9 +32,29 @@ #include "gui/XmlReader.hpp" CheckButton::CheckButton() - : state(STATE_NORMAL), lowerOnClick(false), checked(false), - mclicked(false), mouseholdTicks(0) + : state(STATE_NORMAL), lowerOnClick(true), checked(false), + mclicked(false), mouseholdTicks(0) { + /* // FIXME no utput at crash + std::cout << "constructing: " << this << ": "; + std::cout.flush(); + state = STATE_NORMAL; + std::cout << "."; + std::cout.flush(); + lowerOnClick = false; + std::cout << "."; + std::cout.flush(); + checked = false; + std::cout << "."; + std::cout.flush(); + mclicked = false; + std::cout << "."; + std::cout.flush(); + mouseholdTicks = 0; + std::cout << "."; + std::cout.flush(); + std::cout << " done" << std::endl; + */ } CheckButton::~CheckButton() @@ -45,6 +65,8 @@ CheckButton::parse(XmlReader& reader) { // parse xml attributes + //std::cout << "parsing Checkbutton ..."; + //std::cout.flush(); XmlReader::AttributeIterator iter(reader); while(iter.next()) { const char* attribute = (const char*) iter.getName(); @@ -76,7 +98,7 @@ } else if(strcmp(value, "false") == 0) { uncheck(); } else { - std::cerr << "Unknown value '" << value + std::cerr << "Unknown value '" << value << "' in check attribute." << " Should be 'true' or 'false'.\n"; } @@ -88,7 +110,7 @@ // we need 6 child components childs.assign(6, Child()); - + // parse contents of the xml-element bool parseTooltip = false; int depth = reader.getDepth(); @@ -158,7 +180,7 @@ if(!parseTooltip) continue; - const char* p = GUI_TRANSLATE((const char*) reader.getValue()); + const char* p = GUI_TRANSLATE((const char*) reader.getValue()); // skip trailing spaces while(*p != 0 && isspace(static_cast<unsigned char>(*p))) @@ -176,7 +198,7 @@ tooltip += *p; } } - } + } } if(comp_normal().getComponent() == 0) @@ -204,10 +226,11 @@ if(!child.getComponent()) continue; Component* component = child.getComponent(); - + child.setPos( Vector2 ((width - component->getWidth())/2, (height - component->getHeight())/2)); } + //std::cout << " done" << std::endl; } void @@ -260,7 +283,7 @@ CheckButton::event(const Event& event) { bool nochange=false; - + State oldstate=state; switch(event.type) { case Event::MOUSEMOTION: @@ -307,7 +330,7 @@ } nochange=true; break; - } + } default: nochange=true; break; @@ -368,23 +391,31 @@ case STATE_NORMAL: drawChild(comp_normal(), painter); break; - + default: assert(false); } - if(lowerOnClick && state==STATE_CLICKED) + if(lowerOnClick) { - painter.pushTransform(); - painter.translate(Vector2(1,1)); + if(state == STATE_CLICKED) + { + painter.pushTransform(); + painter.translate(Vector2(3,3)); + } + else if(state == STATE_HOVER) + { + painter.pushTransform(); + painter.translate(Vector2(1,1)); + } } if(comp_caption().isEnabled()) { if(state == STATE_DISABLED && comp_disabled().isEnabled()) - drawChild(comp_disabled(), painter); + { drawChild(comp_disabled(), painter);} else - drawChild(comp_caption(), painter); + { drawChild(comp_caption(), painter);} } - if(lowerOnClick && state==STATE_CLICKED) - painter.popTransform(); + if(lowerOnClick && (state==STATE_CLICKED || state == STATE_HOVER)) + { painter.popTransform();} } Component *CheckButton::getCaption() @@ -423,10 +454,13 @@ Paragraph *p=dynamic_cast<Paragraph*>(cm); if(p) s=p->getText(); - } - + } + return s; } -IMPLEMENT_COMPONENT_FACTORY(CheckButton); +IMPLEMENT_COMPONENT_FACTORY(CheckButton) + + +/** @file lincity-ng/CheckButton.cpp */ diff -Nru lincity-ng-2.0/src/lincity-ng/CheckButton.hpp lincity-ng-2.9~git20150314/src/lincity-ng/CheckButton.hpp --- lincity-ng-2.0/src/lincity-ng/CheckButton.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/CheckButton.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -96,3 +96,6 @@ }; #endif + +/** @file lincity-ng/CheckButton.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Config.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Config.cpp --- lincity-ng-2.0/src/lincity-ng/Config.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Config.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -34,7 +34,7 @@ Config *getConfig() { if(configPtr == 0) - configPtr = new Config(); + { configPtr = new Config();} return configPtr; } @@ -44,25 +44,31 @@ assert(configPtr == 0); //Default Values - useOpenGL = true; + useOpenGL = true; //OpenGL is often way too slow useFullScreen = true; - videoX = 1024; + videoX = 1024; videoY = 768; soundVolume = 100; musicVolume = 50; soundEnabled = true; musicEnabled = true; + carsEnabled = true; restartOnChangeScreen = true; - - //#define MONTHGRAPH_W 120 + + //#define MONTHGRAPH_W 120 //#define MONTHGRAPH_H 64 monthgraphW = 190; monthgraphH = 64; skipMonthsFast = 1; - quickness = FAST_TIME_FOR_YEAR; + quickness = 10; + + //TODO ensure that this is right, because it's + //critical for backwards compatibility... + musicTheme = "default"; + + language = "autodetect"; - playSongName = "02 - Robert van Herk - City Blues.ogg"; //First we load the global File which should contain try { //sane defaults for the local system. @@ -85,9 +91,7 @@ Config::~Config() { if( configPtr == this ) - { - configPtr = 0; - } + { configPtr = 0;} } /* @@ -95,8 +99,8 @@ * use defaultValue on Errors or if Value is not in given Interval. */ int Config::parseInt( const char* value, int defaultValue, int minValue, int maxValue ) { - int tmp; - if(sscanf(value, "%i", &tmp) != 1) + int tmp; + if(sscanf(value, "%i", &tmp) != 1) { std::cerr << "Config::parseInt# Error parsing integer value '" << value << "'.\n"; tmp = defaultValue; @@ -115,12 +119,12 @@ void Config::load( const std::string& filename ){ XmlReader reader( filename ); while( reader.read() ) { - if( reader.getNodeType() == XML_READER_TYPE_ELEMENT) + if( reader.getNodeType() == XML_READER_TYPE_ELEMENT) { const std::string& element = (const char*) reader.getName(); if( element == "video" ) { XmlReader::AttributeIterator iter(reader); - while(iter.next()) + while(iter.next()) { const char* name = (const char*) iter.getName(); const char* value = (const char*) iter.getValue(); @@ -134,14 +138,16 @@ useFullScreen = parseBool(value, false); } else if(strcmp(name, "restartOnChangeScreen") == 0) { restartOnChangeScreen = parseBool(value, true); - } else { + } else if(strcmp(name, "WorldSideLen") == 0) { + world.len(parseInt(value, WORLD_SIDE_LEN, 50, 10000)); + }else { std::cerr << "Config::load# Unknown attribute '" << name; std::cerr << "' in element '" << element << "' from " << filename << ".\n"; } } } else if ( element == "audio" ) { XmlReader::AttributeIterator iter(reader); - while(iter.next()) + while(iter.next()) { const char* name = (const char*) iter.getName(); const char* value = (const char*) iter.getValue(); @@ -153,8 +159,8 @@ soundEnabled = parseBool(value, true); } else if(strcmp(name, "musicEnabled") == 0) { musicEnabled = parseBool(value, true); - } else if(strcmp(name, "playSongName") == 0) { - playSongName = value; + } else if(strcmp(name, "musicTheme") == 0) { + musicTheme = value; } else { std::cerr << "Config::load# Unknown attribute '" << name; std::cerr << "' in element '" << element << "' from " << filename << ".\n"; @@ -162,19 +168,27 @@ } } else if ( element == "game" ) { XmlReader::AttributeIterator iter(reader); - while(iter.next()) + while(iter.next()) { const char* name = (const char*) iter.getName(); const char* value = (const char*) iter.getValue(); - if(strcmp(name, "skipMonthsFast" ) == 0) { - skipMonthsFast = parseInt( value, 1, 1 ); - } else if( strcmp(name, "monthgraphW" ) == 0 ){ + if( strcmp(name, "monthgraphW" ) == 0 ){ monthgraphW = parseInt(value, 120, 0); } else if( strcmp(name, "monthgraphH" ) == 0 ){ monthgraphH = parseInt(value, 64, 0); } else if( strcmp(name, "quickness" ) == 0 ){ - quickness = parseInt(value, 9, 1, 9); - } else { + quickness = parseInt(value, 2, 1, 100); + } else if( strcmp(name, "language" ) == 0 ){ + language = value; + } else if(strcmp(name, "WorldSideLen") == 0) { + world.len(parseInt(value, WORLD_SIDE_LEN, 50, 10000)); + } else if(strcmp(name, "binarySaveGames") == 0) { + binary_mode = parseBool(value, true); + } else if(strcmp(name, "seed_compression") == 0) { + seed_compression = parseBool(value, true); + } else if(strcmp(name, "carsEnabled") == 0) { + carsEnabled = parseBool(value, true); + }else { std::cerr << "Config::load# Unknown attribute '" << name; std::cerr << "' in element '" << element << "' from " << filename << ".\n"; } @@ -212,15 +226,25 @@ OFileStream userconfig( "userconfig.xml" ); userconfig << "<?xml version=\"1.0\"?>\n"; userconfig << "<configuration>\n"; - userconfig << " <video x=\"" << videoX << "\" y=\"" << videoY << "\" useOpenGL=\"" - << (useOpenGL?"yes":"no") << "\" fullscreen=\"" << (useFullScreen?"yes":"no") + userconfig << " <video x=\"" << videoX << "\" y=\"" << videoY << "\" useOpenGL=\"" + << (useOpenGL?"yes":"no") << "\" fullscreen=\"" << (useFullScreen?"yes":"no") + << "\" restartOnChangeScreen=\"" << (restartOnChangeScreen?"yes":"no") << "\" />\n"; - userconfig << " <audio soundEnabled=\"" << (soundEnabled?"yes":"no") + userconfig << " <audio soundEnabled=\"" << (soundEnabled?"yes":"no") << "\" soundVolume=\"" << soundVolume << "\" \n"; - userconfig << " musicEnabled=\"" << (musicEnabled?"yes":"no") + userconfig << " musicEnabled=\"" << (musicEnabled?"yes":"no") << "\" musicVolume=\"" << musicVolume << "\"\n"; - userconfig << " playSongName=\"" << playSongName << "\" />\n"; - userconfig << " <game quickness=\""<< quickness <<"\" />\n"; + userconfig << " musicTheme=\"" << musicTheme << "\" />\n"; + userconfig << " <game quickness=\""<< quickness <<"\" " + << "language=\"" << language // + << "\" WorldSideLen=\"" << ((world.len()<50)?50:world.len()) + << "\" binarySaveGames=\"" << (binary_mode?"yes":"no") + << "\" seed_compression=\"" << (seed_compression?"yes":"no") + << "\" carsEnabled=\"" << (carsEnabled?"yes":"no") + << "\" />\n"; userconfig << "</configuration>\n"; } + +/** @file lincity-ng/Config.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Config.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Config.hpp --- lincity-ng-2.0/src/lincity-ng/Config.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Config.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -22,34 +22,37 @@ #include <limits.h> #include <float.h> -class Config +class Config { public: Config(); ~Config(); - + bool useOpenGL; bool useFullScreen; bool restartOnChangeScreen; int videoX, videoY; int monthgraphW, monthgraphH; - + // sound volume 0..100 (0=silent) int soundVolume; // music volume 0..100 int musicVolume; bool soundEnabled; bool musicEnabled; + bool carsEnabled; //std::string lincityHome; int skipMonthsFast; // how fast is fast_time_for_year int quickness; + std::string language; + std::string musicTheme; + void save(); - std::string playSongName; private: void load( const std::string& filename ); - int parseInt(const char* value, int defaultValue, int minValue = INT_MIN, + int parseInt(const char* value, int defaultValue, int minValue = INT_MIN, int maxValue = INT_MAX ); bool parseBool(const char* value, bool defaultvalue); }; @@ -57,3 +60,6 @@ Config* getConfig(); #endif + +/** @file lincity-ng/Config.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Debug.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Debug.cpp --- lincity-ng-2.0/src/lincity-ng/Debug.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Debug.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -20,3 +20,6 @@ #include "Debug.hpp" int D::d=0; + +/** @file lincity-ng/Debug.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Debug.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Debug.hpp --- lincity-ng-2.0/src/lincity-ng/Debug.hpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Debug.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -97,3 +97,6 @@ #endif #endif + +/** @file lincity-ng/Debug.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Dialog.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Dialog.cpp --- lincity-ng-2.0/src/lincity-ng/Dialog.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Dialog.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -33,7 +33,8 @@ #include "lincity/simulate.h" #include "lincity/lclib.h" #include "lincity/loadsave.h" - +#include "lincity/lin-city.h" +#include "lincity/modules/all_modules.h" #include "gui_interface/shared_globals.h" #include "gui/ComponentLoader.hpp" @@ -56,7 +57,7 @@ } Dialog::Dialog( int type ){ - initDialog(); + initDialog(); switch( type ){ case ASK_COAL_SURVEY: coalSurvey(); @@ -70,9 +71,9 @@ throw std::runtime_error(msg.str()); } } - + Dialog::Dialog( int type, std::string message, std::string extraString){ - initDialog(); + initDialog(); switch( type ){ case MSG_DIALOG: msgDialog( message, extraString ); @@ -123,7 +124,7 @@ while( root->getParent() ) root = root->getParent(); desktop = dynamic_cast<Desktop*> (root); - if(!desktop) + if(!desktop) std::cerr << "Root not a desktop!?!\n"; } else { std::cerr << "Dialog: Root not found.\n"; @@ -139,8 +140,8 @@ } void Dialog::unRegisterDialog(){ - std::vector<Dialog*>::iterator iter = dialogVector.begin(); - std::vector<Dialog*>::iterator del; + std::vector<Dialog*>::iterator iter = dialogVector.begin(); + std::vector<Dialog*>::iterator del; while( iter <= dialogVector.end() ){ if ( *iter == this ){ del = iter; @@ -171,7 +172,7 @@ } Paragraph* p = getParagraph( *myDialogComponent, "DialogTitle" ); std::stringstream title; - title << _("Launchsite") << " ( " << pointX <<" , " << pointY << " )"; + title << _("Launchsite") << " ( " << pointX <<" , " << pointY << " )"; p->setText( title.str() ); // connect signals Button* yesButton = getButton( *myDialogComponent, "Yes" ); @@ -328,11 +329,11 @@ } } -/* +/* * Show game statistics in dialog and write them to RESULTS_FILENAME. * - * gamestats.xml has 11 lines - * statistic_text1 + * gamestats.xml has 11 lines + * statistic_text1 * [...] * statistic_text11 * and 15 lines in a Table with 6 columns @@ -361,52 +362,51 @@ } else { useExisting = true; } - + // Fill in Fields. int line = 1; int maxlength = 567; char* outf = (char *) malloc ( maxlength ); - int group_count[NUM_OF_GROUPS]; - count_all_groups (group_count); if (cheat_flag){ setParagraphN( "statistic_text", line++, _("----- IN TEST MODE -------") ); } - snprintf (outf, maxlength, _("Game statistics from LinCity-NG Version %s"), PACKAGE_VERSION); + snprintf (outf, maxlength,"%s %s", _("Game statistics from LinCity-NG Version"), PACKAGE_VERSION); setParagraphN( "statistic_text", line++, outf ); if (strlen (given_scene) > 3){ - snprintf (outf, maxlength, _("Initial loaded scene - %s"), given_scene); + snprintf (outf, maxlength,"%s - %s", _("Initial loaded scene"), given_scene); setParagraphN( "statistic_text", line++, outf ); } if (sustain_flag){ - snprintf (outf, maxlength, _("Economy is sustainable")); + snprintf (outf, maxlength, "%s", _("Economy is sustainable")); setParagraphN( "statistic_text", line++, outf ); } - snprintf (outf, maxlength, _("Population %d of which %d are not housed.") - ,housed_population + people_pool, people_pool); + snprintf (outf, maxlength, "%s %d %s %d %s.", + _("Population"), population + people_pool, _("of which"), people_pool, _("are not housed")); setParagraphN( "statistic_text", line++, outf ); - snprintf (outf, maxlength, - _("Max population %d Number evacuated %d Total births %d") - ,max_pop_ever, total_evacuated, total_births); + snprintf (outf, maxlength, "%s %d %s %d %s %d", + _("Max population"), max_pop_ever, _("Number evacuated"), total_evacuated, _("Total births"), total_births); setParagraphN( "statistic_text", line++, outf ); - snprintf (outf, maxlength, - _("Date %s %04d Money %8d Tech-level %5.1f (%5.1f)"), - current_month(total_time), current_year(total_time), total_money, - (float) tech_level * 100.0 / MAX_TECH_LEVEL, - (float) highest_tech_level * 100.0 / MAX_TECH_LEVEL); + snprintf (outf, maxlength, "%s %s %04d %s %8d %s %5.1f (%5.1f)", + _("Date"), current_month(total_time), current_year(total_time), + _("Money"), total_money, _("Tech-level"), + (float) tech_level * 100.0 / MAX_TECH_LEVEL, + (float) highest_tech_level * 100.0 / MAX_TECH_LEVEL); setParagraphN( "statistic_text", line++, outf ); - snprintf (outf, maxlength, - _("Deaths by starvation %7d History %8.3f"), - total_starve_deaths, starve_deaths_history); + snprintf (outf, maxlength, "%s %7d %s %8.3f", + _("Deaths by starvation"), total_starve_deaths, + _("History"), starve_deaths_history); setParagraphN( "statistic_text", line++, outf ); - snprintf (outf, maxlength, - _("Deaths from pollution %7d History %8.3f"), - total_pollution_deaths, pollution_deaths_history); + snprintf (outf, maxlength, "%s %7d %s %8.3f", + _("Deaths from pollution"), total_pollution_deaths, + _("History"), pollution_deaths_history); setParagraphN( "statistic_text", line++, outf ); - snprintf (outf, maxlength, _("Years of unemployment %7d History %8.3f"), - total_unemployed_years, unemployed_history); + snprintf (outf, maxlength, "%s %7d %s %8.3f", + _("Years of unemployment"), total_unemployed_years, + _("History"), unemployed_history); setParagraphN( "statistic_text", line++, outf ); - snprintf (outf, maxlength, _("Rockets launched %2d Successful launches %2d"), - rockets_launched, rockets_launched_success); + snprintf (outf, maxlength, "%s %2d %s %2d", + _("Rockets launched"), rockets_launched, + _("Successful launches"), rockets_launched_success); setParagraphN( "statistic_text", line++, outf ); while( line <= 11 ){ //clear remaining lines @@ -415,71 +415,66 @@ free( outf ); setTableRC("statistic", 1, 1, _("Residences"), - group_count[GROUP_RESIDENCE_LL] + - group_count[GROUP_RESIDENCE_ML] + - group_count[GROUP_RESIDENCE_HL] + - group_count[GROUP_RESIDENCE_LH] + - group_count[GROUP_RESIDENCE_MH] + - group_count[GROUP_RESIDENCE_HH]); - setTableRC("statistic", 1, 2, _("Markets"), group_count[GROUP_MARKET] ); - setTableRC("statistic", 1, 3, _("Farms"), group_count[GROUP_ORGANIC_FARM]); - - setTableRC("statistic", 2, 1, _("Water wells"), group_count[GROUP_WATERWELL]); - setTableRC("statistic", 2, 2, "", ""); + Counted<Residence>::getInstanceCount()); + setTableRC("statistic", 1, 2, _("Markets"), Counted<Market>::getInstanceCount()); + setTableRC("statistic", 1, 3, _("Farms"), Counted<Organic_farm>::getInstanceCount()); + + setTableRC("statistic", 2, 1, _("Water wells"), Counted<Waterwell>::getInstanceCount()); + setTableRC("statistic", 2, 2, _("Wind powers"), Counted<Windpower>::getInstanceCount()); setTableRC("statistic", 2, 3, "", ""); setTableRC("statistic", 3, 1, "", ""); setTableRC("statistic", 3, 2, "", ""); setTableRC("statistic", 3, 3, "", ""); - setTableRC("statistic", 4, 1, _("Monuments"), group_count[GROUP_MONUMENT]); - setTableRC("statistic", 4, 2, _("Schools"), group_count[GROUP_SCHOOL]); - setTableRC("statistic", 4, 3, _("Universities"), group_count[GROUP_UNIVERSITY]); - - setTableRC("statistic", 5, 1, _("Fire stations"), group_count[GROUP_FIRESTATION]); - setTableRC("statistic", 5, 2, _("Parks"), group_count[GROUP_PARKLAND]); - setTableRC("statistic", 5, 3, _("Sports fields"), group_count[GROUP_CRICKET]); - - setTableRC("statistic", 6, 1, _("Health centres"), group_count[GROUP_HEALTH]); - setTableRC("statistic", 6, 2, _("Tips"), group_count[GROUP_TIP]); - setTableRC("statistic", 6, 3, _("Shanties"), group_count[GROUP_SHANTY]); + setTableRC("statistic", 4, 1, _("Monuments"), Counted<Monument>::getInstanceCount()); + setTableRC("statistic", 4, 2, _("Schools"), Counted<School>::getInstanceCount()); + setTableRC("statistic", 4, 3, _("Universities"), Counted<University>::getInstanceCount()); + + setTableRC("statistic", 5, 1, _("Fire stations"), Counted<FireStation>::getInstanceCount()); + setTableRC("statistic", 5, 2, _("Parks"), Counted<Parkland>::getInstanceCount()); + setTableRC("statistic", 5, 3, _("Sports fields"), Counted<Cricket>::getInstanceCount()); + + setTableRC("statistic", 6, 1, _("Health centres"), Counted<HealthCentre>::getInstanceCount()); + setTableRC("statistic", 6, 2, _("Tips"), Counted<Tip>::getInstanceCount()); + setTableRC("statistic", 6, 3, _("Shanties"), Counted<Shanty>::getInstanceCount()); setTableRC("statistic", 7, 1, "", ""); setTableRC("statistic", 7, 2, "", ""); setTableRC("statistic", 7, 3, "", ""); - setTableRC("statistic", 8, 1, _("Windmills"), group_count[GROUP_WINDMILL]); - setTableRC("statistic", 8, 2, _("Coal powers"), group_count[GROUP_COAL_POWER]); - setTableRC("statistic", 8, 3, _("Solar powers"), group_count[GROUP_SOLAR_POWER]); - - setTableRC("statistic", 9, 1, _("Substations"), group_count[GROUP_SUBSTATION]); - setTableRC("statistic", 9, 2, _("Power lines"), group_count[GROUP_POWER_LINE]); - setTableRC("statistic", 9, 3, _("Ports"), group_count[GROUP_PORT]); - - setTableRC("statistic", 10, 1, _("Tracks"), group_count[GROUP_TRACK]); - setTableRC("statistic", 10, 2, _("Roads"), group_count[GROUP_ROAD]); - setTableRC("statistic", 10, 3, _("Rail"), group_count[GROUP_RAIL]); + setTableRC("statistic", 8, 1, _("Windmills"), Counted<Windmill>::getInstanceCount()); + setTableRC("statistic", 8, 2, _("Coal powers"), Counted<Coal_power>::getInstanceCount()); + setTableRC("statistic", 8, 3, _("Solar powers"), Counted<SolarPower>::getInstanceCount()); + + setTableRC("statistic", 9, 1, _("Substations"), Counted<Substation>::getInstanceCount()); + setTableRC("statistic", 9, 2, _("Power lines"), Counted<Powerline>::getInstanceCount()); + setTableRC("statistic", 9, 3, _("Ports"), Counted<Port>::getInstanceCount()); + + setTableRC("statistic", 10, 1, _("Tracks"), Counted<Track>::getInstanceCount()); + setTableRC("statistic", 10, 2, _("Roads"), Counted<Road>::getInstanceCount()); + setTableRC("statistic", 10, 3, _("Rail"), Counted<Rail>::getInstanceCount()); setTableRC("statistic", 11, 1, "", ""); setTableRC("statistic", 11, 2, "", ""); setTableRC("statistic", 11, 3, "", ""); - setTableRC("statistic", 12, 1, _("Potteries"), group_count[GROUP_POTTERY]); - setTableRC("statistic", 12, 2, _("Blacksmiths"), group_count[GROUP_BLACKSMITH]); - setTableRC("statistic", 12, 3, _("Mills"), group_count[GROUP_MILL]); - - setTableRC("statistic", 13, 1, _("Light inds"), group_count[GROUP_INDUSTRY_L]); - setTableRC("statistic", 13, 2, _("Heavy inds"), group_count[GROUP_INDUSTRY_H]); - setTableRC("statistic", 13, 3, _("Recyclers"), group_count[GROUP_RECYCLE]); - - setTableRC("statistic", 14, 1, _("Coal mines"), group_count[GROUP_COALMINE]); - setTableRC("statistic", 14, 2, _("Ore mines"), group_count[GROUP_OREMINE]); - setTableRC("statistic", 14, 3, _("Communes"), group_count[GROUP_COMMUNE]); + setTableRC("statistic", 12, 1, _("Potteries"), Counted<Pottery>::getInstanceCount()); + setTableRC("statistic", 12, 2, _("Blacksmiths"), Counted<Blacksmith>::getInstanceCount()); + setTableRC("statistic", 12, 3, _("Mills"), Counted<Mill>::getInstanceCount()); + + setTableRC("statistic", 13, 1, _("Light inds"), Counted<IndustryLight>::getInstanceCount()); + setTableRC("statistic", 13, 2, _("Heavy inds"), Counted<IndustryHeavy>::getInstanceCount()); + setTableRC("statistic", 13, 3, _("Recyclers"), Counted<Recycle>::getInstanceCount()); + + setTableRC("statistic", 14, 1, _("Coal mines"), Counted<Coalmine>::getInstanceCount()); + setTableRC("statistic", 14, 2, _("Ore mines"), Counted<Oremine>::getInstanceCount()); + setTableRC("statistic", 14, 3, _("Forests"), Counted<Commune>::getInstanceCount()); setTableRC("statistic", 15, 1, "", ""); setTableRC("statistic", 15, 2, "", ""); setTableRC("statistic", 15, 3, "", ""); - + if( !useExisting ){ // connect signals Button* noButton = getButton( *myDialogComponent, "Okay" ); @@ -487,7 +482,7 @@ } } -/* +/* * Save game statistics to RESULTS_FILENAME. Do NOT translate text here! * That way the files can be used for highscores. */ @@ -495,118 +490,114 @@ //open File char *s; if ((s = (char *) malloc (lc_save_dir_len + strlen (LC_SAVE_DIR) - + strlen (RESULTS_FILENAME) + 64)) == 0) - malloc_failure (); + + strlen (RESULTS_FILENAME) + 64)) == 0) + malloc_failure (); sprintf (s, "%s%c%s", lc_save_dir, PATH_SLASH, RESULTS_FILENAME); std::ofstream results( s ); free( s ); - + // Fill in Fields. int maxlength = 567; char* outf = (char *) malloc ( maxlength ); - int group_count[NUM_OF_GROUPS]; - count_all_groups (group_count); + //int group_count[NUM_OF_GROUPS]; + //count_all_groups (group_count); if (cheat_flag){ results << "----- IN TEST MODE -------" << std::endl; } snprintf (outf, maxlength, "Game statistics from LinCity-NG Version %s", PACKAGE_VERSION); results << outf << std::endl; if (strlen (given_scene) > 3){ - snprintf (outf, maxlength, "Initial loaded scene - %s", given_scene); + snprintf (outf, maxlength, "Initial loaded scene - %s", given_scene); results << outf << std::endl; } if (sustain_flag){ - snprintf (outf, maxlength, "Economy is sustainable"); + snprintf (outf, maxlength, "%s", "Economy is sustainable"); results << outf << std::endl; } snprintf (outf, maxlength, "Population %d of which %d are not housed." - ,housed_population + people_pool, people_pool); + ,population + people_pool, people_pool); results << outf << std::endl; snprintf (outf, maxlength, - "Max population %d Number evacuated %d Total births %d" - ,max_pop_ever, total_evacuated, total_births); + "Max population %d Number evacuated %d Total births %d" + ,max_pop_ever, total_evacuated, total_births); results << outf << std::endl; snprintf (outf, maxlength, - "Date %02d/%04d Money %8d Tech-level %5.1f (%5.1f)", - 1 + ((total_time % NUMOF_DAYS_IN_YEAR) / NUMOF_DAYS_IN_MONTH), current_year(total_time), total_money, - (float) tech_level * 100.0 / MAX_TECH_LEVEL, - (float) highest_tech_level * 100.0 / MAX_TECH_LEVEL); + "Date %02d/%04d Money %8d Tech-level %5.1f (%5.1f)", + 1 + ((total_time % NUMOF_DAYS_IN_YEAR) / NUMOF_DAYS_IN_MONTH), current_year(total_time), total_money, + (float) tech_level * 100.0 / MAX_TECH_LEVEL, + (float) highest_tech_level * 100.0 / MAX_TECH_LEVEL); results << outf << std::endl; snprintf (outf, maxlength, - " Deaths by starvation %7d History %8.3f", - total_starve_deaths, starve_deaths_history); + " Deaths by starvation %7d History %8.3f", + total_starve_deaths, starve_deaths_history); results << outf << std::endl; snprintf (outf, maxlength, - "Deaths from pollution %7d History %8.3f", - total_pollution_deaths, pollution_deaths_history); + "Deaths from pollution %7d History %8.3f", + total_pollution_deaths, pollution_deaths_history); results << outf << std::endl; snprintf (outf, maxlength, "Years of unemployment %7d History %8.3f", - total_unemployed_years, unemployed_history); + total_unemployed_years, unemployed_history); results << outf << std::endl; snprintf (outf, maxlength, "Rockets launched %2d Successful launches %2d", - rockets_launched, rockets_launched_success); + rockets_launched, rockets_launched_success); results << outf << std::endl; results << "" << std::endl; snprintf (outf, maxlength, " Residences %4d Markets %4d Farms %4d", - group_count[GROUP_RESIDENCE_LL] + - group_count[GROUP_RESIDENCE_ML] + - group_count[GROUP_RESIDENCE_HL] + - group_count[GROUP_RESIDENCE_LH] + - group_count[GROUP_RESIDENCE_MH] + - group_count[GROUP_RESIDENCE_HH], - group_count[GROUP_MARKET], - group_count[GROUP_ORGANIC_FARM]); + Counted<Residence>::getInstanceCount(), + Counted<Market>::getInstanceCount(), + Counted<Organic_farm>::getInstanceCount()); results << outf << std::endl; - snprintf (outf, maxlength, " Water wells %4d", group_count[GROUP_WATERWELL]); + snprintf (outf, maxlength, " Water wells %4d Wind powers %4d", + Counted<Waterwell>::getInstanceCount(),Counted<Windpower>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, " Monuments %4d Schools %4d Universities %4d" - ,group_count[GROUP_MONUMENT], group_count[GROUP_SCHOOL] - ,group_count[GROUP_UNIVERSITY]); + ,Counted<Monument>::getInstanceCount(), Counted<School>::getInstanceCount() + ,Counted<University>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, " Fire stations %4d Parks %4d Sports fields %4d" - ,group_count[GROUP_FIRESTATION], group_count[GROUP_PARKLAND] - ,group_count[GROUP_CRICKET]); + ,Counted<FireStation>::getInstanceCount(), Counted<Parkland>::getInstanceCount() + ,Counted<Cricket>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, "Health centres %4d Tips %4d Shanties %4d", - group_count[GROUP_HEALTH], group_count[GROUP_TIP], - group_count[GROUP_SHANTY]); + Counted<HealthCentre>::getInstanceCount(), Counted<Tip>::getInstanceCount(), + Counted<Shanty>::getInstanceCount()); results << outf << std::endl; results << "" << std::endl; snprintf (outf, maxlength, " Windmills %4d Coal powers %4d Solar powers %4d", - group_count[GROUP_WINDMILL], - group_count[GROUP_COAL_POWER], - group_count[GROUP_SOLAR_POWER]); + Counted<Windmill>::getInstanceCount(), + Counted<Coal_power>::getInstanceCount(), + Counted<SolarPower>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, " Substations %4d Power lines %4d Ports %4d" - ,group_count[GROUP_SUBSTATION], group_count[GROUP_POWER_LINE] - ,group_count[GROUP_PORT]); + ,Counted<Substation>::getInstanceCount(), Counted<Powerline>::getInstanceCount() + ,Counted<Port>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, " Tracks %4d Roads %4d Rail %4d" - ,group_count[GROUP_TRACK], group_count[GROUP_ROAD] - ,group_count[GROUP_RAIL]); + ,Counted<Track>::getInstanceCount(), Counted<Road>::getInstanceCount() + ,Counted<Road>::getInstanceCount()); results << outf << std::endl; results << "" << std::endl; snprintf (outf, maxlength, " Potteries %4d Blacksmiths %4d Mills %4d" - ,group_count[GROUP_POTTERY], group_count[GROUP_BLACKSMITH] - ,group_count[GROUP_MILL]); + ,Counted<Pottery>::getInstanceCount(), Counted<Blacksmith>::getInstanceCount() + ,Counted<Mill>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, " Light inds %4d Heavy inds %4d Recyclers %4d" - ,group_count[GROUP_INDUSTRY_L], group_count[GROUP_INDUSTRY_H] - ,group_count[GROUP_RECYCLE]); + ,Counted<IndustryLight>::getInstanceCount(), Counted<IndustryHeavy>::getInstanceCount() + ,Counted<Recycle>::getInstanceCount()); results << outf << std::endl; snprintf (outf, maxlength, " Coal mines %4d Ore mines %4d Communes %4d" - ,group_count[GROUP_COALMINE], group_count[GROUP_OREMINE] - ,group_count[GROUP_COMMUNE]); + ,Counted<Coalmine>::getInstanceCount(), Counted<Oremine>::getInstanceCount() + ,Counted<Commune>::getInstanceCount()); results << outf << std::endl; results << "" << std::endl; - + //close File results.close(); - + free( outf ); } @@ -629,34 +620,39 @@ // set Dialog to Market-Data Paragraph* p = getParagraph( *myDialogComponent, "DialogTitle" ); std::stringstream title; - title << _("Market") << " ( " << pointX <<" , " << pointY << " )"; + title << _("Market") << " ( " << pointX <<" , " << pointY << " )"; p->setText( title.str() ); - + Market * market = static_cast <Market *> (world(pointX, pointY)->reportingConstruction); CheckButton* cb; cb = getCheckButton( *myDialogComponent, "BuyJobs" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_JOBS ) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_JOBS].take ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellJobs" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_JOBS ) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_JOBS].give ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyFood" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_FOOD) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_FOOD].take ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellFood" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_FOOD) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_FOOD].give ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyCoal" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_COAL) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_COAL].take ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellCoal" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_COAL) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_COAL].give ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyOre" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_ORE) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_ORE].take ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellOre" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_ORE) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_ORE].give ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyGoods" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_GOODS) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_GOODS].take ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellGoods" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_GOODS) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_GOODS].give ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuySteel" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_STEEL) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_STEEL].take ) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellSteel" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_STEEL) cb->check(); else cb->uncheck(); + if( market->commodityRuleCount[Construction::STUFF_STEEL].give) cb->check(); else cb->uncheck(); + cb = getCheckButton( *myDialogComponent, "BuyWaste" ); + if( market->commodityRuleCount[Construction::STUFF_WASTE].take ) cb->check(); else cb->uncheck(); + cb = getCheckButton( *myDialogComponent, "SellWaste" ); + if( market->commodityRuleCount[Construction::STUFF_WASTE].give) cb->check(); else cb->uncheck(); + // connect signals Button* applyButton = getButton( *myDialogComponent, "Apply" ); applyButton->clicked.connect( makeCallback(*this, &Dialog::applyMarketButtonClicked ) ); @@ -681,32 +677,34 @@ return; } // set Dialog to Port-Data + //int port_flags = world(pointX, pointY)->reportingConstruction->flags; + Port *port = dynamic_cast<Port *>(world(pointX, pointY)->reportingConstruction); Paragraph* p = getParagraph( *myDialogComponent, "DialogTitle" ); std::stringstream title; - title << _("Port") << " ( " << pointX <<" , " << pointY << " )"; + title << _("Port") << " ( " << pointX <<" , " << pointY << " )"; p->setText( title.str() ); CheckButton* cb; cb = getCheckButton( *myDialogComponent, "BuyFood" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_FOOD) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_FOOD].take) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellFood" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_FOOD) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_FOOD].give) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyCoal" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_COAL) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_COAL].take) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellCoal" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_COAL) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_COAL].give) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyOre" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_ORE) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_ORE].take) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellOre" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_ORE) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_ORE].give) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuyGoods" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_GOODS) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_GOODS].take) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellGoods" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_GOODS) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_GOODS].give) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "BuySteel" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MB_STEEL) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_STEEL].take) cb->check(); else cb->uncheck(); cb = getCheckButton( *myDialogComponent, "SellSteel" ); - if( MP_INFO( pointX,pointY ).flags & FLAG_MS_STEEL) cb->check(); else cb->uncheck(); + if( port->commodityRuleCount[Construction::STUFF_STEEL].give) cb->check(); else cb->uncheck(); // connect signals Button* applyButton = getButton( *myDialogComponent, "Apply" ); applyButton->clicked.connect( makeCallback(*this, &Dialog::applyPortButtonClicked ) ); @@ -714,92 +712,206 @@ gotoButton->clicked.connect( makeCallback( *this, &Dialog::gotoButtonClicked ) ); } -void Dialog::applyMarketButtonClicked( Button* b ){ +void Dialog::applyMarketButtonClicked( Button* ){ CheckButton* cb; + Market * market = static_cast <Market *> (world(pointX, pointY)->construction); cb = getCheckButton( *myDialogComponent, "BuyJobs" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MB_JOBS; + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_JOBS].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MB_JOBS; + market->commodityRuleCount[Construction::STUFF_JOBS].take = false; } cb = getCheckButton( *myDialogComponent, "SellJobs" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MS_JOBS; + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_JOBS].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_JOBS].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyFood" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_FOOD].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MS_JOBS; + market->commodityRuleCount[Construction::STUFF_FOOD].take = false; } - applyPortButtonClicked( b ); + cb = getCheckButton( *myDialogComponent, "SellFood" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_FOOD].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_FOOD].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyCoal" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_COAL].take = true; + } else { + market->commodityRuleCount[Construction::STUFF_COAL].take = false; + } + cb = getCheckButton( *myDialogComponent, "SellCoal" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_COAL].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_COAL].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyOre" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_ORE].take = true; + } else { + market->commodityRuleCount[Construction::STUFF_ORE].take = false; + } + cb = getCheckButton( *myDialogComponent, "SellOre" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_ORE].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_ORE].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyGoods" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_GOODS].take = true; + } else { + market->commodityRuleCount[Construction::STUFF_GOODS].take = false; + } + cb = getCheckButton( *myDialogComponent, "SellGoods" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_GOODS].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_GOODS].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuySteel" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_STEEL].take = true; + } else { + market->commodityRuleCount[Construction::STUFF_STEEL].take = false; + } + cb = getCheckButton( *myDialogComponent, "SellSteel" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_STEEL].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_STEEL].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyWaste" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_WASTE].take = true; + } else { + market->commodityRuleCount[Construction::STUFF_WASTE].take = false; + } + cb = getCheckButton( *myDialogComponent, "SellWaste" ); + if( cb->state == CheckButton::STATE_CHECKED ){ + market->commodityRuleCount[Construction::STUFF_WASTE].give = true; + } else { + market->commodityRuleCount[Construction::STUFF_WASTE].give = false; + } + mps_refresh(); + desktop->remove( myDialogComponent ); + blockingDialogIsOpen = false; + unRegisterDialog(); } - + void Dialog::applyPortButtonClicked( Button* ){ + Port *port = dynamic_cast<Port *>(world(pointX, pointY)->reportingConstruction); CheckButton* cb; + cb = getCheckButton( *myDialogComponent, "BuyFood" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MB_FOOD; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_FOOD].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MB_FOOD; + port->commodityRuleCount[Construction::STUFF_FOOD].take = false; } cb = getCheckButton( *myDialogComponent, "SellFood" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MS_FOOD; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_FOOD].give = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MS_FOOD; + port->commodityRuleCount[Construction::STUFF_FOOD].give = false; } + if ((port->commodityRuleCount[Construction::STUFF_FOOD].take) + && (port->commodityRuleCount[Construction::STUFF_FOOD].give)) + { + port->commodityRuleCount[Construction::STUFF_FOOD].take = false; + port->commodityRuleCount[Construction::STUFF_FOOD].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyCoal" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MB_COAL; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_COAL].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MB_COAL; + port->commodityRuleCount[Construction::STUFF_COAL].take = false; } cb = getCheckButton( *myDialogComponent, "SellCoal" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MS_COAL; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_COAL].give = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MS_COAL; + port->commodityRuleCount[Construction::STUFF_COAL].give = false; } + if ((port->commodityRuleCount[Construction::STUFF_COAL].take) + && (port->commodityRuleCount[Construction::STUFF_COAL].give)) + { + port->commodityRuleCount[Construction::STUFF_COAL].take = false; + port->commodityRuleCount[Construction::STUFF_COAL].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyOre" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MB_ORE; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_ORE].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MB_ORE; + port->commodityRuleCount[Construction::STUFF_ORE].take = false; } cb = getCheckButton( *myDialogComponent, "SellOre" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MS_ORE; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_ORE].give = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MS_ORE; + port->commodityRuleCount[Construction::STUFF_ORE].give = false; } + if ((port->commodityRuleCount[Construction::STUFF_ORE].take) + && (port->commodityRuleCount[Construction::STUFF_ORE].give)) + { + port->commodityRuleCount[Construction::STUFF_ORE].take = false; + port->commodityRuleCount[Construction::STUFF_ORE].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuyGoods" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MB_GOODS; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_GOODS].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MB_GOODS; + port->commodityRuleCount[Construction::STUFF_GOODS].take = false; } cb = getCheckButton( *myDialogComponent, "SellGoods" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MS_GOODS; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_GOODS].give = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MS_GOODS; + port->commodityRuleCount[Construction::STUFF_GOODS].give = false; } + if ((port->commodityRuleCount[Construction::STUFF_GOODS].take) + && (port->commodityRuleCount[Construction::STUFF_GOODS].give)) + { + port->commodityRuleCount[Construction::STUFF_GOODS].take = false; + port->commodityRuleCount[Construction::STUFF_GOODS].give = false; + } + cb = getCheckButton( *myDialogComponent, "BuySteel" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MB_STEEL; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_STEEL].take = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MB_STEEL; + port->commodityRuleCount[Construction::STUFF_STEEL].take = false; } cb = getCheckButton( *myDialogComponent, "SellSteel" ); - if( cb->state == CheckButton::STATE_CHECKED ){ - MP_INFO( pointX,pointY ).flags |= FLAG_MS_STEEL; + if( cb->state == CheckButton::STATE_CHECKED ){ + port->commodityRuleCount[Construction::STUFF_STEEL].give = true; } else { - MP_INFO( pointX,pointY ).flags &= ~FLAG_MS_STEEL; + port->commodityRuleCount[Construction::STUFF_STEEL].give = false; } + if ((port->commodityRuleCount[Construction::STUFF_STEEL].take) + && (port->commodityRuleCount[Construction::STUFF_STEEL].give)) + { + port->commodityRuleCount[Construction::STUFF_STEEL].take = false; + port->commodityRuleCount[Construction::STUFF_STEEL].give = false; + } + desktop->remove( myDialogComponent ); blockingDialogIsOpen = false; unRegisterDialog(); } -void Dialog::okayLaunchRocketButtonClicked( Button* ){ - launch_rocket( pointX, pointY ); +void Dialog::okayLaunchRocketButtonClicked( Button* ) +{ + static_cast<RocketPad*> (world(pointX, pointY)->reportingConstruction)-> launch_rocket(); desktop->remove( myDialogComponent ); blockingDialogIsOpen = false; unRegisterDialog(); @@ -807,7 +919,7 @@ void Dialog::okayCoalSurveyButtonClicked( Button* ){ - do_coal_survey(); + do_coal_survey(); desktop->remove( myDialogComponent ); blockingDialogIsOpen = false; unRegisterDialog(); @@ -852,3 +964,6 @@ } unRegisterDialog(); } + +/** @file lincity-ng/Dialog.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Dialog.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Dialog.hpp --- lincity-ng-2.0/src/lincity-ng/Dialog.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Dialog.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -88,3 +88,6 @@ }; #endif + +/** @file lincity-ng/Dialog.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/EconomyGraph.cpp lincity-ng-2.9~git20150314/src/lincity-ng/EconomyGraph.cpp --- lincity-ng-2.0/src/lincity-ng/EconomyGraph.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/EconomyGraph.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -35,6 +35,7 @@ #include "lincity/engglobs.h" #include "lincity/stats.h" #include "lincity/lin-city.h" +#include "lincity/sustainable.h" #include "ScreenInterface.hpp" #include "Config.hpp" @@ -73,14 +74,14 @@ EconomyGraph::~EconomyGraph(){ if( economyGraphPtr == this ){ economyGraphPtr = 0; - } + } free( fps ); - delete labelTextureMIN; - delete labelTexturePRT; - delete labelTextureMNY; - delete labelTexturePOP; - delete labelTextureTEC; - delete labelTextureFIR; + delete labelTextureMIN; + delete labelTexturePRT; + delete labelTextureMNY; + delete labelTexturePOP; + delete labelTextureTEC; + delete labelTextureFIR; delete labelTextureEconomy; delete labelTextureSustainability; delete labelTextureFPS; @@ -107,7 +108,7 @@ throw std::runtime_error(msg.str()); } } else { - std::cerr << "Unknown attribute '" << name + std::cerr << "Unknown attribute '" << name << "' skipped in EconomyGraph.\n"; } } @@ -124,24 +125,24 @@ labelXXX = TTF_RenderUTF8_Blended( font, _("Mining"), labelStyle.text_color.getSDLColor() ); labelTextureMIN = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Trade"), labelStyle.text_color.getSDLColor() ); - labelTexturePRT = texture_manager->create( labelXXX ); + labelTexturePRT = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Money"), labelStyle.text_color.getSDLColor() ); - labelTextureMNY = texture_manager->create( labelXXX ); + labelTextureMNY = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Popul."), labelStyle.text_color.getSDLColor() ); - labelTexturePOP = texture_manager->create( labelXXX ); + labelTexturePOP = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Techn."), labelStyle.text_color.getSDLColor() ); - labelTextureTEC = texture_manager->create( labelXXX ); + labelTextureTEC = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Fire"), labelStyle.text_color.getSDLColor() ); - labelTextureFIR = texture_manager->create( labelXXX ); + labelTextureFIR = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Economy Overview:"), labelStyle.text_color.getSDLColor() ); - labelTextureEconomy = texture_manager->create( labelXXX ); - + labelTextureEconomy = texture_manager->create( labelXXX ); + labelXXX = TTF_RenderUTF8_Blended( font, _("Sustainability:"), labelStyle.text_color.getSDLColor() ); - labelTextureSustainability = texture_manager->create( labelXXX ); + labelTextureSustainability = texture_manager->create( labelXXX ); labelXXX = TTF_RenderUTF8_Blended( font, _("Frames per Second:"), labelStyle.text_color.getSDLColor() ); - labelTextureFPS = texture_manager->create( labelXXX ); + labelTextureFPS = texture_manager->create( labelXXX ); } //see do_history_linegraph in oldgui/screen.cpp @@ -150,7 +151,7 @@ float f; int w = getConfig()->monthgraphW; //thats the value oldgui uses, so saved data has same scale as new. - int h = 64; //MONTHGRAPH_H; + int h = 64; //MONTHGRAPH_H; for (i = w - 1; i > 0; i--) { monthgraph_pop[i] = monthgraph_pop[i-1]; @@ -158,39 +159,38 @@ monthgraph_nojobs[i] = monthgraph_nojobs[i-1]; monthgraph_starve[i] = monthgraph_starve[i-1]; } - if (tpopulation > 0) - { - monthgraph_pop[0] = ((int) (log ((tpopulation / NUMOF_DAYS_IN_MONTH) - + 1.f) * h / 15)) - 5; - if (monthgraph_pop[0] < 0) - monthgraph_pop[0] = 0; - f = ((float) tstarving_population - / ((float) tpopulation + 1.0)) * 100.0; - if (tpopulation > 3000) /* double the scale if pop > 3000 */ - f += f; - if (tpopulation > 6000) /* double it AGAIN if pop > 6000 */ - f += f; - monthgraph_starve[0] = (int) f; - /* max out at 32 */ - if (monthgraph_starve[0] >= h) - monthgraph_starve[0] = h - 1; - f = ((float) tunemployed_population - / ((float) tpopulation + 1.0)) * 100.0; - if (tpopulation > 3000) /* double the scale if pop > 3000 */ - f += f; - if (tpopulation > 6000) /* double it AGAIN if pop > 6000 */ - f += f; - monthgraph_nojobs[0] = (int) f; - /* max out at 32 */ - if (monthgraph_nojobs[0] >= h) - monthgraph_nojobs[0] = h - 1; - monthgraph_ppool[0] = ((int) (sqrt (people_pool + 1.f) * h) / 35); - if (monthgraph_ppool[0] < 0) - monthgraph_ppool[0] = 0; - if (monthgraph_ppool[0] >= h) - monthgraph_ppool[0] = h - 1; + if (tpopulation > 0) { + /* log scale 0 -> 200 000 = 10^5.3 */ + float scale = h / (5.3 * log(10.)); + float t = (total_time %NUMOF_DAYS_IN_MONTH + 1.f); + + monthgraph_pop[0] = (int) (log (tpopulation / t) * scale); + if (monthgraph_pop[0] < 0) + monthgraph_pop[0] = 0; + if (monthgraph_pop[0] >= h) + monthgraph_pop[0] = h - 1; + + monthgraph_starve[0] = (int) (log( tstarving_population / t) * scale); + if (monthgraph_starve[0] < 0) + monthgraph_starve[0] = 0; + if (monthgraph_starve[0] >= h) + monthgraph_starve[0] = h - 1; + + monthgraph_nojobs[0] = (int) (log( tunemployed_population / t) * scale); + if (monthgraph_nojobs[0] < 0) + monthgraph_nojobs[0] = 0; + if (monthgraph_nojobs[0] >= h) + monthgraph_nojobs[0] = h - 1; + + /* percentage scale */ + f = (float) people_pool / (float) (tpopulation / t + people_pool) * (float) h; + monthgraph_ppool[0] = (int) f; + if (monthgraph_ppool[0] < 0) + monthgraph_ppool[0] = 0; + if (monthgraph_ppool[0] >= h) + monthgraph_ppool[0] = h - 1; } - + //sustainability check from do_sust_barchart if (sust_dig_ore_coal_count >= SUST_ORE_COAL_YEARS_NEEDED && sust_port_count >= SUST_PORT_YEARS_NEEDED @@ -207,7 +207,7 @@ sustain_flag = 0; } - + //sustain_flag == 1 means player had a sustainable economy //total_evacuated >0 means player evacuated at least some people if( !housed_population && !people_pool ){ //no people left @@ -231,7 +231,7 @@ } else if( nobodyHomeDialogShown ){ //reset flag if there are people nobodyHomeDialogShown = false; } - + Component* root = this; while( root->getParent() ){ @@ -247,7 +247,7 @@ yellowStyle.text_color.parse("yellow"); redStyle.text_color.parse("red"); } - + // set tab Button colour if( switchEconomyGraphParagraph ){ if( monthgraph_starve[0] > 0 ){ // people are starving: RED @@ -258,7 +258,7 @@ switchEconomyGraphParagraph->setText(switchEconomyGraphText, normalStyle); } } - + //redraw setDirty(); } @@ -274,8 +274,8 @@ setDirty(); } -void EconomyGraph::drawHistoryLineGraph( Painter& painter, Rect2D mg ){ - // see oldgui/screen.cpp do_history_linegraph +void EconomyGraph::drawHistoryLineGraph( Painter& painter, Rect2D mg ){ + // see oldgui/screen.cpp do_history_linegraph Vector2 a; Vector2 b; @@ -286,28 +286,28 @@ brown.parse( "brown" ); grey.parse("#A9A9A9FF"); - painter.setClipRectangle( mg ); + painter.setClipRectangle( mg ); painter.setFillColor( grey ); painter.fillRectangle( mg ); int mgX = (int) mg.p1.x; int mgY = (int) mg.p1.y; - int mgW = (int) mg.getWidth(); + int mgW = (int) mg.getWidth(); int mgH = (int) mg.getHeight(); - + float scale = (float) mgH / 64; //MONTHGRAPH_H ; - + b.y = mgY + mgH; for( int i = mgW - 1; i >= 0; i-- ){ painter.setLineColor( yellow ); a.x = mgX + mgW - i; a.y = mgY + mgH - scale * monthgraph_nojobs[i]; - + b.x = mgX + mgW - i; painter.drawLine( a, b ); painter.setLineColor( red ); a.y = mgY + mgH - scale * monthgraph_starve[i]; painter.drawLine( a, b ); - } + } for( int i = mgW - 1; i > 0; i-- ){ painter.setLineColor( brown ); a.x = mgX + mgW - i; @@ -325,7 +325,7 @@ } -void EconomyGraph::drawSustBarGraph( Painter& painter, Rect2D mg ){ +void EconomyGraph::drawSustBarGraph( Painter& painter, Rect2D mg ){ // see oldgui/screen.cpp do_sust_barchart Color grey,yellow,orange,black,green,blue,red; grey.parse( "#A9A9A9FF" ); @@ -338,14 +338,14 @@ painter.setFillColor( grey ); painter.fillRectangle( mg ); - + int mgX = (int) mg.p1.x; int mgY = (int) mg.p1.y; - int mgW = (int) mg.getWidth(); + int mgW = (int) mg.getWidth(); int mgH = (int) mg.getHeight(); Vector2 a, b, p; - + #define SUST_BAR_H 5 #define SUST_BAR_GAP_Y 5 @@ -358,23 +358,23 @@ p.y = mgY; painter.setLineColor( yellow ); painter.drawLine( a, b); - + Rect2D bar; bar.p1.x = mgX + 36; bar.p1.y = mgY + SUST_BAR_GAP_Y; bar.setHeight( SUST_BAR_H ); int maxBarLen = mgW - 40; int newLen; - int len; - + int len; + /* ore coal */ newLen = maxBarLen * sust_dig_ore_coal_count / SUST_ORE_COAL_YEARS_NEEDED; len = 3 + ( ( newLen > maxBarLen ) ? maxBarLen : newLen ); bar.setWidth( len ); painter.setFillColor( orange ); painter.fillRectangle( bar ); - painter.drawTexture( labelTextureMIN, p ); - + painter.drawTexture( labelTextureMIN, p ); + /* import export */ p.y += SUST_BAR_H + SUST_BAR_GAP_Y ; newLen = maxBarLen * sust_port_count / SUST_PORT_YEARS_NEEDED; @@ -383,8 +383,8 @@ painter.setFillColor( black ); bar.move( Vector2( 0, SUST_BAR_H + SUST_BAR_GAP_Y ) ); painter.fillRectangle( bar ); - painter.drawTexture( labelTexturePRT, p ); - + painter.drawTexture( labelTexturePRT, p ); + /* money */ p.y += SUST_BAR_H + SUST_BAR_GAP_Y ; newLen = maxBarLen * sust_old_money_count / SUST_MONEY_YEARS_NEEDED; @@ -393,8 +393,8 @@ painter.setFillColor( green ); bar.move( Vector2( 0, SUST_BAR_H + SUST_BAR_GAP_Y ) ); painter.fillRectangle( bar ); - painter.drawTexture( labelTextureMNY, p ); - + painter.drawTexture( labelTextureMNY, p ); + /* population */ p.y += SUST_BAR_H + SUST_BAR_GAP_Y ; newLen = maxBarLen * sust_old_population_count / SUST_POP_YEARS_NEEDED; @@ -403,8 +403,8 @@ painter.setFillColor( blue ); bar.move( Vector2( 0, SUST_BAR_H + SUST_BAR_GAP_Y ) ); painter.fillRectangle( bar ); - painter.drawTexture( labelTexturePOP, p ); - + painter.drawTexture( labelTexturePOP, p ); + /* tech */ p.y += SUST_BAR_H + SUST_BAR_GAP_Y ; newLen = maxBarLen * sust_old_tech_count / SUST_TECH_YEARS_NEEDED; @@ -413,8 +413,8 @@ painter.setFillColor( yellow ); bar.move( Vector2( 0, SUST_BAR_H + SUST_BAR_GAP_Y ) ); painter.fillRectangle( bar ); - painter.drawTexture( labelTextureTEC, p ); - + painter.drawTexture( labelTextureTEC, p ); + /* fire */ p.y += SUST_BAR_H + SUST_BAR_GAP_Y ; newLen = maxBarLen * sust_fire_count / SUST_FIRE_YEARS_NEEDED; @@ -423,75 +423,78 @@ painter.setFillColor( red ); bar.move( Vector2( 0, SUST_BAR_H + SUST_BAR_GAP_Y ) ); painter.fillRectangle( bar ); - painter.drawTexture( labelTextureFIR, p ); + painter.drawTexture( labelTextureFIR, p ); } -void EconomyGraph::drawFPSGraph( Painter& painter, Rect2D fpsRect ){ +void EconomyGraph::drawFPSGraph( Painter& painter, Rect2D fpsRect ){ Color grey, blue; blue.parse( "blue" ); grey.parse("#A9A9A9FF"); int mgX = (int) fpsRect.p1.x; int mgY = (int) fpsRect.p1.y; - int mgW = (int) fpsRect.getWidth(); + int mgW = (int) fpsRect.getWidth(); int mgH = (int) fpsRect.getHeight(); - + painter.setFillColor( grey ); painter.fillRectangle( fpsRect ); - - painter.setClipRectangle( fpsRect ); - + + painter.setClipRectangle( fpsRect ); + Vector2 a; Vector2 b; painter.setLineColor( blue ); - + float scale = (float) mgH / 64; //MONTHGRAPH_H ; b.y = mgY + mgH; for( int i = mgW - 1; i >= 0; i-- ){ a.x = mgX + mgW - i; a.y = mgY + mgH - scale * fps[i]; - + b.x = mgX + mgW - i; painter.drawLine( a, b ); } painter.clearClipRectangle(); } - + void EconomyGraph::draw( Painter& painter ){ - + Color white; white.parse( "white" ); - + Rect2D background( 0, 0, getWidth(), getHeight() ); int mgX = border; int mgY = 3*border; - int mgW = getConfig()->monthgraphW; + int mgW = getConfig()->monthgraphW; int mgH = getConfig()->monthgraphH; - + painter.setFillColor( white ); painter.fillRectangle( background ); Vector2 labelPos( 2 * border, border-1 ); - + //Draw HistoryLineGraph - painter.drawTexture( labelTextureEconomy, labelPos ); + painter.drawTexture( labelTextureEconomy, labelPos ); Rect2D currentGraph( mgX, mgY, mgX + mgW, mgY + mgH ); drawHistoryLineGraph( painter, currentGraph ); //Draw Sustainability Bars - labelPos.y += 2 * border + mgH; - painter.drawTexture( labelTextureSustainability, labelPos ); + labelPos.y += 2 * border + mgH; + painter.drawTexture( labelTextureSustainability, labelPos ); currentGraph.move( Vector2( 0, 2 * border + mgH ) ); drawSustBarGraph( painter, currentGraph); //Draw FPS-Window - labelPos.y += 2 * border + mgH; - painter.drawTexture( labelTextureFPS, labelPos ); + labelPos.y += 2 * border + mgH; + painter.drawTexture( labelTextureFPS, labelPos ); currentGraph.move( Vector2( 0, 2 * border + mgH ) ); currentGraph.setHeight( mgH/2 ); drawFPSGraph( painter, currentGraph ); } -IMPLEMENT_COMPONENT_FACTORY(EconomyGraph); +IMPLEMENT_COMPONENT_FACTORY(EconomyGraph) + +/** @file lincity-ng/EconomyGraph.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/EconomyGraph.hpp lincity-ng-2.9~git20150314/src/lincity-ng/EconomyGraph.hpp --- lincity-ng-2.0/src/lincity-ng/EconomyGraph.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/EconomyGraph.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -67,3 +67,6 @@ EconomyGraph* getEconomyGraph(); #endif + +/** @file lincity-ng/EconomyGraph.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/ErrorInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/ErrorInterface.cpp --- lincity-ng-2.0/src/lincity-ng/ErrorInterface.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ErrorInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -29,3 +29,6 @@ { std::cerr<<"ERROR of degree "<<i<<":"<<s<<std::endl; } + +/** @file lincity-ng/ErrorInterface.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/ErrorInterface.hpp lincity-ng-2.9~git20150314/src/lincity-ng/ErrorInterface.hpp --- lincity-ng-2.0/src/lincity-ng/ErrorInterface.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ErrorInterface.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -1,5 +1,13 @@ #ifndef __ErrorInterface_h__ #define __ErrorInterface_h__ + +#define DO_ERROR(MESSAGE) \ + std::cerr << __FILE__ << "," << __LINE__ << ": " << MESSAGE << std::endl + void do_error (const char *s); void HandleError (const char *s, int i); + #endif + +/** @file lincity-ng/ErrorInterface.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Game.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Game.cpp --- lincity-ng-2.0/src/lincity-ng/Game.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Game.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -27,19 +27,23 @@ #include "gui/Button.hpp" #include "gui/callback/Callback.hpp" #include "lincity/fileutil.h" +#include "lincity/init_game.h" +#include "gui_interface/shared_globals.h" +#include "gui_interface/mps.h" #include "MainLincity.hpp" #include <iostream> #include <physfs.h> #include "Util.hpp" -#include "lincity/lin-city.h" #include "GameView.hpp" #include "HelpWindow.hpp" #include "ButtonPanel.hpp" #include "Dialog.hpp" #include "EconomyGraph.hpp" +#include "Config.hpp" extern int lincitySpeed; +extern void execute_timestep(void); Game* gameptr = 0; @@ -159,8 +163,8 @@ Uint32 lastticks = fpsTicks; Desktop* desktop = dynamic_cast<Desktop*> (gui.get()); if(!desktop) - throw std::runtime_error("Toplevel component is not a Desktop"); - + { throw std::runtime_error("Toplevel component is not a Desktop");} + gui->resize(getConfig()->videoX, getConfig()->videoY); int frame = 0; while(running) { getGameView()->scroll(); @@ -169,6 +173,8 @@ case SDL_VIDEORESIZE: initVideo(event.resize.w, event.resize.h); gui->resize(event.resize.w, event.resize.h); + getConfig()->videoX = event.resize.w; + getConfig()->videoY = event.resize.h; break; case SDL_KEYUP: { Event gui_event(event); @@ -180,6 +186,35 @@ getButtonPanel()->toggleBulldozeTool(); break; } +/* //FIXME hack for monitoring constructionCount + if( gui_event.keysym.sym == SDLK_c ){ + std::cout << "ConstructionCount.size() = " << constructionCount.size() << std::endl; + int i, j; + for (i = 0, j = 0; i < constructionCount.size(); i++) {constructionCount[i]?j++:j;} + std::cout << "for a total of " << j << " active constructions" << std::endl; + break; + } +*/ + if( gui_event.keysym.sym == SDLK_p ){ + + static int i = 0; + while(i < constructionCount.size() && !constructionCount[i]) {i++;} + if (i < constructionCount.size()) + { + main_screen_originx = constructionCount[i]->x; + main_screen_originy = constructionCount[i]->y; + getGameView()->readOrigin(true); + mps_set( main_screen_originx, main_screen_originy, MPS_MAP); + mps_update(); + mps_refresh(); + i++; + } + else + { + i = 0; + } + break; + } if( gui_event.keysym.sym == SDLK_F1 ){ helpWindow->showTopic("help"); break; @@ -198,6 +233,23 @@ break; } #endif + int need_break=true; + switch(gui_event.keysym.sym) { + case SDLK_BACKQUOTE: getMiniMap()->mapViewChangeDisplayMode(MiniMap::NORMAL); break; + case SDLK_1: getMiniMap()->mapViewChangeDisplayMode(MiniMap::STARVE); break; + case SDLK_2: getMiniMap()->mapViewChangeDisplayMode(MiniMap::UB40); break; + case SDLK_3: getMiniMap()->mapViewChangeDisplayMode(MiniMap::POWER); break; + case SDLK_4: getMiniMap()->mapViewChangeDisplayMode(MiniMap::FIRE); break; + case SDLK_5: getMiniMap()->mapViewChangeDisplayMode(MiniMap::CRICKET); break; + case SDLK_6: getMiniMap()->mapViewChangeDisplayMode(MiniMap::HEALTH); break; + case SDLK_7: getMiniMap()->mapViewChangeDisplayMode(MiniMap::TRAFFIC); break; + case SDLK_8: getMiniMap()->mapViewChangeDisplayMode(MiniMap::POLLUTION); break; + case SDLK_9: getMiniMap()->mapViewChangeDisplayMode(MiniMap::COAL); break; + case SDLK_0: getMiniMap()->mapViewChangeDisplayMode(MiniMap::COMMODITIES); break; + default: need_break=false; + } + if (need_break) break; + gui->event(gui_event); break; } @@ -234,25 +286,30 @@ lastticks = ticks; helpWindow->update(); - if(desktop->needsRedraw()) { + if(desktop->needsRedraw()) + { desktop->draw(*painter); flipScreenBuffer(); - } - frame++; + } + frame++; // Slow down cpu consumption in pause mode - if(ticks - fpsTicks > 1000 && lincitySpeed) { + if(ticks - fpsTicks > 1000 && lincitySpeed) + { #ifdef DEBUG_FPS printf("FPS: %d.\n", (frame*1000) / (ticks - fpsTicks)); #endif getEconomyGraph()->newFPS( frame ); frame = 0; fpsTicks = ticks; - } else if(!lincitySpeed) - frame = 0; - /* SDL_Delay is done in execute_timestep , which is called by doLincityStep */ - doLincityStep(); + } + else if(!lincitySpeed) + { frame = 0;} + /* SDL_Delay is done in execute_timestep */ + execute_timestep (); } - return quitState; } + +/** @file lincity-ng/Game.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Game.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Game.hpp --- lincity-ng-2.0/src/lincity-ng/Game.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Game.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -53,3 +53,6 @@ #endif + +/** @file lincity-ng/Game.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/GameView.cpp lincity-ng-2.9~git20150314/src/lincity-ng/GameView.cpp --- lincity-ng-2.0/src/lincity-ng/GameView.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/GameView.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -19,6 +19,7 @@ #include "GameView.hpp" +#include "gui_interface/mps.h" #include "gui/TextureManager.hpp" #include "gui/Painter.hpp" #include "gui/Rect2D.hpp" @@ -30,16 +31,21 @@ #include "gui/Paragraph.hpp" #include "gui/Desktop.hpp" -#include "lincity/lin-city.h" +#include "lincity/lintypes.h" #include "lincity/lctypes.h" #include "lincity/engglobs.h" +#include "lincity/modules/all_modules.h" +#include "lincity/engine.h" +#include "lincity/lin-city.h" +#include "Mps.hpp" #include "MapEdit.hpp" #include "MiniMap.hpp" #include "Dialog.hpp" #include "Config.hpp" #include "ScreenInterface.hpp" #include "Util.hpp" +#include "Debug.hpp" #include <SDL_keysym.h> #include <math.h> @@ -52,12 +58,14 @@ #include "gui/callback/Callback.hpp" #include "gui/Button.hpp" #include "CheckButton.hpp" +#include "ButtonPanel.hpp" + -extern int is_allowed_here(int x, int y, short cst_type, short msg); +const int scale3d = 128; // guestimate value for good looking 3d view; const float GameView::defaultTileWidth = 128; const float GameView::defaultTileHeight = 64; -const float GameView::defaultZoom = 0.5; +const float GameView::defaultZoom = 1.0; // fastest drawing GameView* gameViewPtr = 0; @@ -65,46 +73,36 @@ { return gameViewPtr; } - + GameView::GameView() { assert(gameViewPtr == 0); gameViewPtr = this; - mTextures = SDL_CreateMutex(); - mThreadRunning = SDL_CreateMutex(); loaderThread = 0; keyScrollState = 0; mouseScrollState = 0; + remaining_images = 0; + textures_ready = false; } GameView::~GameView() { stopThread = true; - SDL_mutexP( mThreadRunning ); - //SDL_KillThread( loaderThread ); SDL_WaitThread( loaderThread, NULL ); - - SDL_DestroyMutex( mThreadRunning ); - SDL_DestroyMutex( mTextures ); - - for(int i = 0; i < NUM_OF_TYPES; ++i) { - delete cityTextures[i]; - // in case the image was loaded but no texture created yet we have a - // dangling SDL_Surface here - SDL_FreeSurface(cityImages[i]); - } - if(gameViewPtr == this) - gameViewPtr = 0; + { gameViewPtr = 0;} } //Static function to use with SDL_CreateThread int GameView::gameViewThread( void* data ) { GameView* gv = (GameView*) data; - gv->loadTextures(); - gv->requestRedraw(); + gv->preReadImages(); + gv->textures_ready = true; + //keep thread alive as long as there are SDL_Surfaces + while(!gv->stopThread && gv->remaining_images!=0) + { SDL_Delay(100);} return 0; } @@ -115,7 +113,7 @@ while(iter.next()) { const char* attribute = (const char*) iter.getName(); const char* value = (const char*) iter.getValue(); - + //check if Attribute handled by parent if(parseAttribute(attribute, value)) { continue; @@ -124,36 +122,36 @@ } } // no more elements to parse + blankGraphicsInfo.texture = readTexture( "blank.png" ); + blankGraphicsInfo.x = blankGraphicsInfo.texture->getWidth() / 2; + blankGraphicsInfo.y = blankGraphicsInfo.texture->getHeight(); - //Load Textures - blankTexture = readTexture( "blank.png" ); - memset( &cityTextures, 0, sizeof( cityTextures ) ); - memset( &cityImages, 0, sizeof( cityImages ) ); stopThread = false; - SDL_mutexP( mThreadRunning ); loaderThread = SDL_CreateThread( gameViewThread, this ); - SDL_mutexV( mThreadRunning ); - + //GameView is resizable setFlags(FLAG_RESIZABLE); //start at location from savegame zoom = defaultZoom; tileWidth = defaultTileWidth * zoom; - tileHeight = defaultTileHeight * zoom; - virtualScreenWidth = tileWidth * WORLD_SIDE_LEN; - virtualScreenHeight = tileHeight * WORLD_SIDE_LEN; + tileHeight = defaultTileHeight * zoom; + virtualScreenWidth = tileWidth * world.len(); + virtualScreenHeight = tileHeight * world.len(); readOrigin( false ); mouseInGameView = false; dragging = false; - leftButtonDown = false; + leftButtonDown = false; roadDragging = false; + ctrDrag = false; + areaBulldoze = false; startRoad = MapPoint(0, 0); rightButtonDown = false; tileUnderMouse = MapPoint(0, 0); dragStart = Vector2(0, 0); hideHigh = false; + showTerrainHeight = false; cursorSize = 0; mapOverlay = overlayNone; @@ -176,7 +174,10 @@ } Button* button = getButton( *root, "hideHighBuildings" ); button->clicked.connect( makeCallback(*this, &GameView::buttonClicked ) ); - + + button = getButton( *root, "showTerrainHeight" ); + button->clicked.connect( makeCallback(*this, &GameView::buttonClicked ) ); + button = getButton( *root, "mapOverlay" ); button->clicked.connect( makeCallback(*this, &GameView::buttonClicked ) ); } @@ -191,29 +192,39 @@ requestRedraw(); return; } - if( name == "mapOverlay" ){ - mapOverlay++; - if( mapOverlay > overlayMAX ) { - mapOverlay = overlayNone; + if( name == "showTerrainHeight" ){ + if( alt_step != 0 ){ + showTerrainHeight = !showTerrainHeight; + } else { // map is completely flat + showTerrainHeight = false; } requestRedraw(); return; } + if( name == "mapOverlay" ){ + mapOverlay = (mapOverlay + 1) % (overlayMAX + 1); + requestRedraw(); + return; + } std::cerr << "GameView::buttonClicked# Unhandled Button '" << name <<"',\n"; } - +int GameView::gameAreaMax() +{ + return world.len() -2; +} + /* * size in Tiles of marking under Cursor * atm 0 is an outlined Version of size 1. */ void GameView::setCursorSize( int size ) { - if( size != cursorSize ) + if( size != cursorSize ) { cursorSize = size; setDirty(); } -} +} /* * evaluate main_screen_originx and main_screen_originy @@ -229,7 +240,7 @@ void GameView::writeOrigin(){ main_screen_originx = getCenter().x; main_screen_originy = getCenter().y; -} +} /* * inform GameView about change in Mini Map Mode */ @@ -250,20 +261,31 @@ case MiniMap::POWER: printStatusMessage( _("Minimap: power supply") ); break; - case MiniMap::FIRE: + case MiniMap::FIRE: printStatusMessage( _("Minimap: firedepartment cover") ); break; - case MiniMap::CRICKET: + case MiniMap::CRICKET: printStatusMessage( _("Minimap: sport cover") ); break; - case MiniMap::HEALTH: + case MiniMap::HEALTH: printStatusMessage( _("Minimap: medical care") ); break; - case MiniMap::COAL: - printStatusMessage( _("Minimap: coal depots") ); + case MiniMap::COAL: + printStatusMessage( _("Minimap: coal deposits") ); + break; + case MiniMap::TRAFFIC: + { + std::string s1 = _("Minimap: traffic density:"); + std::string s2 = commodityNames[getMiniMap()->getStuffID()]; + printStatusMessage( s1 + " " + s2 ); + } break; - case MiniMap::TRAFFIC: - printStatusMessage( _("Minimap: traffic density") ); + case MiniMap::COMMODITIES: + { + std::string s1 = _("Minimap: commodities:"); + std::string s2 = commodityNames[getMiniMap()->getStuffID()]; + printStatusMessage( s1 + " " + s2 ); + } break; default: std::cerr << "Unknown minimap mode " << mMode<<"\n"; @@ -282,29 +304,30 @@ */ MapPoint GameView::getCenter(){ Vector2 center( getWidth() / 2, getHeight() / 2 ); - return getTile( center ); + return getTile( center ); } - + /* * Adjust the Zoomlevel. */ void GameView::setZoom(float newzoom){ - MapPoint centerTile = getCenter(); - - if ( newzoom < .0625 ) return; + MapPoint centerTile = getCenter(); + + //if ( newzoom < .0625 ) return; + if ( newzoom < .0312 ) return; if ( newzoom > 4 ) return; - + zoom = newzoom; - + // fix rounding errors... if(fabs(zoom - 1.0) < .01) - zoom = 1; - + { zoom = 1;} + tileWidth = defaultTileWidth * zoom; tileHeight = defaultTileHeight * zoom; //a virtual screen containing the whole city - virtualScreenWidth = tileWidth * WORLD_SIDE_LEN; - virtualScreenHeight = tileHeight * WORLD_SIDE_LEN; + virtualScreenWidth = tileWidth * world.len(); + virtualScreenHeight = tileHeight * world.len(); //std::cout << "Zoom " << zoom << "\n"; //Show the Center @@ -327,14 +350,14 @@ } /** - * Show City Tile(x/y) by centering the screen + * Show City Tile(x/y) by centering the screen * redraw = false is used on initialisation. */ void GameView::show( MapPoint map , bool redraw /* = true */ ) -{ +{ Vector2 center; center.x = virtualScreenWidth / 2 + ( map.x - map.y ) * ( tileWidth / 2 ); - center.y = ( map.x + map.y ) * ( tileHeight / 2 ) + ( tileHeight / 2 ); + center.y = ( map.x + map.y ) * ( tileHeight / 2 ) + ( tileHeight / 2 ); if( redraw ){ viewport.x = center.x - ( getWidth() / 2 ); viewport.y = center.y - ( getHeight() / 2 ); @@ -346,12 +369,15 @@ } /* - * Loads Texture from filename, Returns Pointer to Texture - * or Null if no file found. + * Loads Texture from filename, Returns Pointer to Texture + * or Null if no file found. NOT THREADSAFE */ + Texture* GameView::readTexture(const std::string& filename) { - std::string nfilename = std::string("images/tiles/") + filename; + std::string dirsep = PHYSFS_getDirSeparator(); + std::string nfilename = std::string("images") + dirsep + + std::string("tiles") + dirsep + filename; Texture* currentTexture; try { currentTexture = texture_manager->load(nfilename); @@ -364,11 +390,19 @@ /* * Loads Image from filename, Returns Pointer to Image - * or Null if no file found. + * or Null if no file found. IS THREADSAFE */ SDL_Surface* GameView::readImage(const std::string& filename) { - std::string nfilename = std::string("images/tiles/") + filename; + std::string dirsep = PHYSFS_getDirSeparator(); + + //std::string nfilename; + //nfilename = std::string("images") + dirsep + std::string("tiles") + dirsep + filename; + + std::ostringstream os; + os << "images" << dirsep << "tiles" << dirsep << filename; + std::string nfilename = os.str(); + SDL_Surface* currentImage; if( !PHYSFS_exists( nfilename.c_str() ) ){ std::cerr << "GameView::readImage# No image file "<< nfilename << " found.\n"; @@ -382,435 +416,141 @@ } /** - * preload a City Texture and fill in X and Y Data. + * preload all images and with X and Y offsets. + * from data/images/tiles/images.xml + * + *images and offsets are appended to ConstructionGroup::graphicVectorInfo see lintypes.h + *the resourceID strings are hard coded in all_modules.cpp and match the names of the sounds * - * images/tiles/images.xml contains the x-Coordinate of the + * some images contain the x-Coordinate of the * middle of the Building in Case the Image is asymetric, - * eg. a high tower with a long shadow to the right - * + * eg. a high tower with a long shadow to the right + * * Some of the Image to Texture Conversion seems not to be threadsave - * in OpenGL, so load just Images and convert them to Textures on - * demand in the main Tread. + * in OpenGL, so load just Images and convert them to Textures on + * demand in the main Tread. */ -void GameView::preReadCityTexture( int textureType, const std::string& filename ) + +void GameView::preReadImages(void) { - //skip loading if we stop anyway - if(stopThread) { - return; - } - XmlReader reader( "images/tiles/images.xml" ); - int xmlX = -1; - int xmlY = -1; - bool hit = false; - - SDL_mutexP( mTextures ); - cityImages[ textureType ] = readImage( filename ); - if( cityImages[ textureType ] ) - { - //now we need to find x for our filename in images/tiles/images.xml + std::string dirsep = PHYSFS_getDirSeparator(); - while( reader.read() ) + std::ostringstream os; + os << "images" << dirsep << "tiles" << dirsep << "images.xml"; + std::string xmlfile = os.str(); + + XmlReader reader( xmlfile ); + + ResourceGroup *resourceGroup = 0; + int resourceID_level = 0; + std::string key; + + while( reader.read() ) + { + if( reader.getNodeType() == XML_READER_TYPE_ELEMENT) { - if( reader.getNodeType() == XML_READER_TYPE_ELEMENT) + const std::string& element = (const char*) reader.getName(); + + if( element == "resourceID") { - const std::string& element = (const char*) reader.getName(); - if( element == "image" ) + XmlReader::AttributeIterator iter(reader); + while(iter.next()) { - XmlReader::AttributeIterator iter(reader); - while(iter.next()) + const char* name = (const char*) iter.getName(); + const char* value = (const char*) iter.getValue(); + if( strcmp(name, "name" ) == 0 ) { - const char* name = (const char*) iter.getName(); - const char* value = (const char*) iter.getValue(); - if( strcmp(name, "file" ) == 0 ) + if(resourceGroup) + { resourceGroup->images_loaded = true;} + + if(ResourceGroup::resMap.count(value)) { - if( filename.compare( value ) == 0 ) + resourceGroup = ResourceGroup::resMap[value]; + resourceID_level = reader.getDepth(); + if(resourceGroup->images_loaded) { - hit = true; + std::cout << "Duplicate resourceID in images.xml: " << value << std::endl; + assert(false); } } - else if( strcmp(name, "x" ) == 0 ) + else { - if(sscanf(value, "%i", &xmlX) != 1) - { - std::cerr << "GameView::preReadCityTexture# Error parsing integer value '" << value << "' in x attribute.\n"; - xmlX = -1; - } + std::cout << "unknown resourceID: " << value << " in images.xml" << std::endl; + resourceGroup = 0; + resourceID_level = 0; } - else if(strcmp(name, "y") == 0 ) + } + } + } + //check if we are still inside context of last resorceID + if(reader.getDepth() < resourceID_level-1) + { + resourceGroup->images_loaded = true; + resourceGroup = 0; + resourceID_level = 0; + } + if( element == "image" ) + { + XmlReader::AttributeIterator iter(reader); + int xmlX = 64; + int xmlY = 32; + bool xmlX_set = false; + bool xmlY_set = false; + while(iter.next()) + { + const char* name = (const char*) iter.getName(); + const char* value = (const char*) iter.getValue(); + if( strcmp(name, "file" ) == 0 ) + { key = value;} + else if( strcmp(name, "x" ) == 0 ) + { + if(sscanf(value, "%i", &xmlX) != 1) { - if(sscanf(value, "%i", &xmlY) != 1) - { - std::cerr << "GameView::preReadCityTexture# Error parsing integer value '" << value << "' in y attribute.\n"; - xmlY = -1; - } + std::cerr << "GameView::preReadCityXY# Error parsing integer value '" << value << "' in x attribute.\n"; } - } - if( hit ) + else + { xmlX_set = true;} + } + else if(strcmp(name, "y") == 0 ) { - break; + if(sscanf(value, "%i", &xmlY) != 1) + { + std::cerr << "GameView::preReadCityXY# Error parsing integer value '" << value << "' in y attribute.\n"; + } + else + { xmlY_set = true;} } } + + if (resourceID_level && resourceGroup) + { + resourceGroup->growGraphicsInfoVector(); + GraphicsInfo *graphicsInfo = &(resourceGroup->graphicsInfoVector.back()); + graphicsInfo->image = readImage( key ); + if(!graphicsInfo->image) + { + std::cout << "image error: " << key << std::endl; + } + if(!xmlX_set) + { xmlX = int(graphicsInfo->image->w/2);} + if(!xmlY_set) + { xmlY = int(graphicsInfo->image->h);} + graphicsInfo->x = xmlX; + graphicsInfo->y = xmlY; + ++remaining_images; + } + key.clear(); } - } - - if( hit && ( xmlX >= 0 ) ) - { - cityTextureX[ textureType ] = xmlX; - } - else - { - cityTextureX[ textureType ] = int( ( cityImages[ textureType ]->w / 2 ) ); } - cityTextureY[ textureType ] = int( cityImages[ textureType ]->h ); } - SDL_mutexV( mTextures ); -} - -/** - * Preload all required Textures. (his Function is called by loaderThread) - * Some of the Image to Texture Conversion seems not to be threadsave - * in OpenGL, so load just Images and convert them to Textures on - * demand in the main Tread. - */ -void GameView::loadTextures() -{ - //We need Textures for all Types from lincity/lctypes.h - //Code Generation: - /* - grep -e LCT src/lincity/lctypes.h | sed \ - -e 's/#define LC/ preReadCityTexture( CS/' \ - -e 's/_G /, /' \ - -e 's/_G\t/, /' \ - -e 's/"/.png" );/2' - */ - preReadCityTexture( CST_GREEN, "green.png" ); - preReadCityTexture( CST_DESERT_0, "desert_0.png" ); - preReadCityTexture( CST_DESERT_1L, "desert_1l.png" ); - preReadCityTexture( CST_DESERT_1R, "desert_1r.png" ); - preReadCityTexture( CST_DESERT_1U, "desert_1u.png" ); - preReadCityTexture( CST_DESERT_1D, "desert_1d.png" ); - preReadCityTexture( CST_DESERT_2LR, "desert_2lr.png" ); - preReadCityTexture( CST_DESERT_2LU, "desert_2lu.png" ); - preReadCityTexture( CST_DESERT_2LD, "desert_2ld.png" ); - preReadCityTexture( CST_DESERT_2RU, "desert_2ru.png" ); - preReadCityTexture( CST_DESERT_2RD, "desert_2rd.png" ); - preReadCityTexture( CST_DESERT_2UD, "desert_2ud.png" ); - preReadCityTexture( CST_DESERT_3LRD, "desert_3lrd.png" ); - preReadCityTexture( CST_DESERT_3LRU, "desert_3lru.png" ); - preReadCityTexture( CST_DESERT_3LUD, "desert_3lud.png" ); - preReadCityTexture( CST_DESERT_3RUD, "desert_3rud.png" ); - preReadCityTexture( CST_DESERT, "desert.png" ); - preReadCityTexture( CST_TREE, "tree.png" ); - preReadCityTexture( CST_TREE2, "tree2.png" ); - preReadCityTexture( CST_TREE3, "tree3.png" ); - preReadCityTexture( CST_POWERL_H_L, "powerlhl.png" ); - preReadCityTexture( CST_POWERL_V_L, "powerlvl.png" ); - preReadCityTexture( CST_POWERL_LD_L, "powerlldl.png" ); - preReadCityTexture( CST_POWERL_RD_L, "powerlrdl.png" ); - preReadCityTexture( CST_POWERL_LU_L, "powerllul.png" ); - preReadCityTexture( CST_POWERL_RU_L, "powerlrul.png" ); - preReadCityTexture( CST_POWERL_LDU_L, "powerlldul.png" ); - preReadCityTexture( CST_POWERL_LDR_L, "powerlldrl.png" ); - preReadCityTexture( CST_POWERL_LUR_L, "powerllurl.png" ); - preReadCityTexture( CST_POWERL_UDR_L, "powerludrl.png" ); - preReadCityTexture( CST_POWERL_LUDR_L, "powerlludrl.png" ); - preReadCityTexture( CST_POWERL_H_D, "powerlhd.png" ); - preReadCityTexture( CST_POWERL_V_D, "powerlvd.png" ); - preReadCityTexture( CST_POWERL_LD_D, "powerlldd.png" ); - preReadCityTexture( CST_POWERL_RD_D, "powerlrdd.png" ); - preReadCityTexture( CST_POWERL_LU_D, "powerllud.png" ); - preReadCityTexture( CST_POWERL_RU_D, "powerlrud.png" ); - preReadCityTexture( CST_POWERL_LDU_D, "powerlldud.png" ); - preReadCityTexture( CST_POWERL_LDR_D, "powerlldrd.png" ); - preReadCityTexture( CST_POWERL_LUR_D, "powerllurd.png" ); - preReadCityTexture( CST_POWERL_UDR_D, "powerludrd.png" ); - preReadCityTexture( CST_POWERL_LUDR_D, "powerlludrd.png" ); - preReadCityTexture( CST_SHANTY, "shanty.png" ); - preReadCityTexture( CST_POWERS_SOLAR, "powerssolar.png" ); - preReadCityTexture( CST_POWERS_COAL_EMPTY, "powerscoal-empty.png" ); - preReadCityTexture( CST_POWERS_COAL_LOW, "powerscoal-low.png" ); - preReadCityTexture( CST_POWERS_COAL_MED, "powerscoal-med.png" ); - preReadCityTexture( CST_POWERS_COAL_FULL, "powerscoal-full.png" ); - preReadCityTexture( CST_BURNT, "burnt_land.png" ); - preReadCityTexture( CST_SUBSTATION_R, "substation-R.png" ); - preReadCityTexture( CST_SUBSTATION_G, "substation-G.png" ); - preReadCityTexture( CST_SUBSTATION_RG, "substation-RG.png" ); - preReadCityTexture( CST_UNIVERSITY, "university.png" ); - preReadCityTexture( CST_RESIDENCE_LL, "reslowlow.png" ); - preReadCityTexture( CST_RESIDENCE_ML, "resmedlow.png" ); - preReadCityTexture( CST_RESIDENCE_HL, "reshilow.png" ); - preReadCityTexture( CST_RESIDENCE_LH, "reslowhi.png" ); - preReadCityTexture( CST_RESIDENCE_MH, "resmedhi.png" ); - preReadCityTexture( CST_RESIDENCE_HH, "reshihi.png" ); - preReadCityTexture( CST_MARKET_EMPTY, "market-empty.png" ); - preReadCityTexture( CST_MARKET_LOW, "market-low.png" ); - preReadCityTexture( CST_MARKET_MED, "market-med.png" ); - preReadCityTexture( CST_MARKET_FULL, "market-full.png" ); - preReadCityTexture( CST_RECYCLE, "recycle-centre.png" ); - preReadCityTexture( CST_TRACK_LR, "tracklr.png" ); - preReadCityTexture( CST_TRACK_LU, "tracklu.png" ); - preReadCityTexture( CST_TRACK_LD, "trackld.png" ); - preReadCityTexture( CST_TRACK_UD, "trackud.png" ); - preReadCityTexture( CST_TRACK_UR, "trackur.png" ); - preReadCityTexture( CST_TRACK_DR, "trackdr.png" ); - preReadCityTexture( CST_TRACK_LUR, "tracklur.png" ); - preReadCityTexture( CST_TRACK_LDR, "trackldr.png" ); - preReadCityTexture( CST_TRACK_LUD, "tracklud.png" ); - preReadCityTexture( CST_TRACK_UDR, "trackudr.png" ); - preReadCityTexture( CST_TRACK_LUDR, "trackludr.png" ); - preReadCityTexture( CST_PARKLAND_PLANE, "parkland-plane.png" ); - preReadCityTexture( CST_PARKLAND_LAKE, "parkland-lake.png" ); - preReadCityTexture( CST_MONUMENT_0, "monument0.png" ); - preReadCityTexture( CST_MONUMENT_1, "monument1.png" ); - preReadCityTexture( CST_MONUMENT_2, "monument2.png" ); - preReadCityTexture( CST_MONUMENT_3, "monument3.png" ); - preReadCityTexture( CST_MONUMENT_4, "monument4.png" ); - preReadCityTexture( CST_MONUMENT_5, "monument5.png" ); - preReadCityTexture( CST_COALMINE_EMPTY, "coalmine-empty.png" ); - preReadCityTexture( CST_COALMINE_LOW, "coalmine-low.png" ); - preReadCityTexture( CST_COALMINE_MED, "coalmine-med.png" ); - preReadCityTexture( CST_COALMINE_FULL, "coalmine-full.png" ); - preReadCityTexture( CST_RAIL_LR, "raillr.png" ); - preReadCityTexture( CST_RAIL_LU, "raillu.png" ); - preReadCityTexture( CST_RAIL_LD, "railld.png" ); - preReadCityTexture( CST_RAIL_UD, "railud.png" ); - preReadCityTexture( CST_RAIL_UR, "railur.png" ); - preReadCityTexture( CST_RAIL_DR, "raildr.png" ); - preReadCityTexture( CST_RAIL_LUR, "raillur.png" ); - preReadCityTexture( CST_RAIL_LDR, "railldr.png" ); - preReadCityTexture( CST_RAIL_LUD, "raillud.png" ); - preReadCityTexture( CST_RAIL_UDR, "railudr.png" ); - preReadCityTexture( CST_RAIL_LUDR, "railludr.png" ); - preReadCityTexture( CST_FIRE_1, "fire1.png" ); - preReadCityTexture( CST_FIRE_2, "fire2.png" ); - preReadCityTexture( CST_FIRE_3, "fire3.png" ); - preReadCityTexture( CST_FIRE_4, "fire4.png" ); - preReadCityTexture( CST_FIRE_5, "fire5.png" ); - preReadCityTexture( CST_FIRE_DONE1, "firedone1.png" ); - preReadCityTexture( CST_FIRE_DONE2, "firedone2.png" ); - preReadCityTexture( CST_FIRE_DONE3, "firedone3.png" ); - preReadCityTexture( CST_FIRE_DONE4, "firedone4.png" ); - preReadCityTexture( CST_ROAD_LR, "roadlr.png" ); - preReadCityTexture( CST_ROAD_LU, "roadlu.png" ); - preReadCityTexture( CST_ROAD_LD, "roadld.png" ); - preReadCityTexture( CST_ROAD_UD, "roadud.png" ); - preReadCityTexture( CST_ROAD_UR, "roadur.png" ); - preReadCityTexture( CST_ROAD_DR, "roaddr.png" ); - preReadCityTexture( CST_ROAD_LUR, "roadlur.png" ); - preReadCityTexture( CST_ROAD_LDR, "roadldr.png" ); - preReadCityTexture( CST_ROAD_LUD, "roadlud.png" ); - preReadCityTexture( CST_ROAD_UDR, "roadudr.png" ); - preReadCityTexture( CST_ROAD_LUDR, "roadludr.png" ); - preReadCityTexture( CST_OREMINE_5, "oremine5.png" ); - preReadCityTexture( CST_OREMINE_6, "oremine6.png" ); - preReadCityTexture( CST_OREMINE_7, "oremine7.png" ); - preReadCityTexture( CST_OREMINE_8, "oremine8.png" ); - preReadCityTexture( CST_OREMINE_1, "oremine1.png" ); - preReadCityTexture( CST_OREMINE_2, "oremine2.png" ); - preReadCityTexture( CST_OREMINE_3, "oremine3.png" ); - preReadCityTexture( CST_OREMINE_4, "oremine4.png" ); - preReadCityTexture( CST_HEALTH, "health.png" ); - preReadCityTexture( CST_SCHOOL, "school0.png" ); - preReadCityTexture( CST_EX_PORT, "ex_port.png" ); - preReadCityTexture( CST_MILL_0, "mill0.png" ); - preReadCityTexture( CST_MILL_1, "mill1.png" ); - preReadCityTexture( CST_MILL_2, "mill2.png" ); - preReadCityTexture( CST_MILL_3, "mill3.png" ); - preReadCityTexture( CST_MILL_4, "mill4.png" ); - preReadCityTexture( CST_MILL_5, "mill5.png" ); - preReadCityTexture( CST_MILL_6, "mill6.png" ); - preReadCityTexture( CST_ROCKET_1, "rocket1.png" ); - preReadCityTexture( CST_ROCKET_2, "rocket2.png" ); - preReadCityTexture( CST_ROCKET_3, "rocket3.png" ); - preReadCityTexture( CST_ROCKET_4, "rocket4.png" ); - preReadCityTexture( CST_ROCKET_5, "rocket5.png" ); - preReadCityTexture( CST_ROCKET_6, "rocket6.png" ); - preReadCityTexture( CST_ROCKET_7, "rocket7.png" ); - preReadCityTexture( CST_ROCKET_FLOWN, "rocketflown.png" ); - preReadCityTexture( CST_WINDMILL_1_G, "windmill1g.png" ); - preReadCityTexture( CST_WINDMILL_2_G, "windmill2g.png" ); - preReadCityTexture( CST_WINDMILL_3_G, "windmill3g.png" ); - preReadCityTexture( CST_WINDMILL_1_RG, "windmill1rg.png" ); - preReadCityTexture( CST_WINDMILL_2_RG, "windmill2rg.png" ); - preReadCityTexture( CST_WINDMILL_3_RG, "windmill3rg.png" ); - preReadCityTexture( CST_WINDMILL_1_R, "windmill1r.png" ); - preReadCityTexture( CST_WINDMILL_2_R, "windmill2r.png" ); - preReadCityTexture( CST_WINDMILL_3_R, "windmill3r.png" ); - preReadCityTexture( CST_WINDMILL_1_W, "windmill1w.png" ); - preReadCityTexture( CST_WINDMILL_2_W, "windmill2w.png" ); - preReadCityTexture( CST_WINDMILL_3_W, "windmill3w.png" ); - preReadCityTexture( CST_BLACKSMITH_0, "blacksmith0.png" ); - preReadCityTexture( CST_BLACKSMITH_1, "blacksmith1.png" ); - preReadCityTexture( CST_BLACKSMITH_2, "blacksmith2.png" ); - preReadCityTexture( CST_BLACKSMITH_3, "blacksmith3.png" ); - preReadCityTexture( CST_BLACKSMITH_4, "blacksmith4.png" ); - preReadCityTexture( CST_BLACKSMITH_5, "blacksmith5.png" ); - preReadCityTexture( CST_BLACKSMITH_6, "blacksmith6.png" ); - preReadCityTexture( CST_POTTERY_0, "pottery0.png" ); - preReadCityTexture( CST_POTTERY_1, "pottery1.png" ); - preReadCityTexture( CST_POTTERY_2, "pottery2.png" ); - preReadCityTexture( CST_POTTERY_3, "pottery3.png" ); - preReadCityTexture( CST_POTTERY_4, "pottery4.png" ); - preReadCityTexture( CST_POTTERY_5, "pottery5.png" ); - preReadCityTexture( CST_POTTERY_6, "pottery6.png" ); - preReadCityTexture( CST_POTTERY_7, "pottery7.png" ); - preReadCityTexture( CST_POTTERY_8, "pottery8.png" ); - preReadCityTexture( CST_POTTERY_9, "pottery9.png" ); - preReadCityTexture( CST_POTTERY_10, "pottery10.png" ); - preReadCityTexture( CST_WATER, "water.png" ); - preReadCityTexture( CST_WATER_D, "waterd.png" ); - preReadCityTexture( CST_WATER_R, "waterr.png" ); - preReadCityTexture( CST_WATER_U, "wateru.png" ); - preReadCityTexture( CST_WATER_L, "waterl.png" ); - preReadCityTexture( CST_WATER_LR, "waterlr.png" ); - preReadCityTexture( CST_WATER_UD, "waterud.png" ); - preReadCityTexture( CST_WATER_LD, "waterld.png" ); - preReadCityTexture( CST_WATER_RD, "waterrd.png" ); - preReadCityTexture( CST_WATER_LU, "waterlu.png" ); - preReadCityTexture( CST_WATER_UR, "waterur.png" ); - preReadCityTexture( CST_WATER_LUD, "waterlud.png" ); - preReadCityTexture( CST_WATER_LRD, "waterlrd.png" ); - preReadCityTexture( CST_WATER_LUR, "waterlur.png" ); - preReadCityTexture( CST_WATER_URD, "waterurd.png" ); - preReadCityTexture( CST_WATER_LURD, "waterlurd.png" ); - preReadCityTexture( CST_WATERWELL, "waterwell.png" ); - preReadCityTexture( CST_CRICKET_1, "cricket1.png" ); - preReadCityTexture( CST_CRICKET_2, "cricket2.png" ); - preReadCityTexture( CST_CRICKET_3, "cricket3.png" ); - preReadCityTexture( CST_CRICKET_4, "cricket4.png" ); - preReadCityTexture( CST_CRICKET_5, "cricket5.png" ); - preReadCityTexture( CST_CRICKET_6, "cricket6.png" ); - preReadCityTexture( CST_CRICKET_7, "cricket7.png" ); - preReadCityTexture( CST_FIRESTATION_1, "firestation1.png" ); - preReadCityTexture( CST_FIRESTATION_2, "firestation2.png" ); - preReadCityTexture( CST_FIRESTATION_3, "firestation3.png" ); - preReadCityTexture( CST_FIRESTATION_4, "firestation4.png" ); - preReadCityTexture( CST_FIRESTATION_5, "firestation5.png" ); - preReadCityTexture( CST_FIRESTATION_6, "firestation6.png" ); - preReadCityTexture( CST_FIRESTATION_7, "firestation7.png" ); - preReadCityTexture( CST_FIRESTATION_8, "firestation8.png" ); - preReadCityTexture( CST_FIRESTATION_9, "firestation9.png" ); - preReadCityTexture( CST_FIRESTATION_10, "firestation10.png" ); - preReadCityTexture( CST_TIP_0, "tip0.png" ); - preReadCityTexture( CST_TIP_1, "tip1.png" ); - preReadCityTexture( CST_TIP_2, "tip2.png" ); - preReadCityTexture( CST_TIP_3, "tip3.png" ); - preReadCityTexture( CST_TIP_4, "tip4.png" ); - preReadCityTexture( CST_TIP_5, "tip5.png" ); - preReadCityTexture( CST_TIP_6, "tip6.png" ); - preReadCityTexture( CST_TIP_7, "tip7.png" ); - preReadCityTexture( CST_TIP_8, "tip8.png" ); - preReadCityTexture( CST_COMMUNE_1, "commune1.png" ); - preReadCityTexture( CST_COMMUNE_2, "commune2.png" ); - preReadCityTexture( CST_COMMUNE_3, "commune3.png" ); - preReadCityTexture( CST_COMMUNE_4, "commune4.png" ); - preReadCityTexture( CST_COMMUNE_5, "commune5.png" ); - preReadCityTexture( CST_COMMUNE_6, "commune6.png" ); - preReadCityTexture( CST_COMMUNE_7, "commune7.png" ); - preReadCityTexture( CST_COMMUNE_8, "commune8.png" ); - preReadCityTexture( CST_COMMUNE_9, "commune9.png" ); - preReadCityTexture( CST_COMMUNE_10, "commune10.png" ); - preReadCityTexture( CST_COMMUNE_11, "commune11.png" ); - //preReadCityTexture( CST_COMMUNE_12, "commune12.png" ); - //preReadCityTexture( CST_COMMUNE_13, "commune13.png" ); - //preReadCityTexture( CST_COMMUNE_14, "commune14.png" ); - preReadCityTexture( CST_INDUSTRY_H_C, "industryhc.png" ); - preReadCityTexture( CST_INDUSTRY_H_L1, "industryhl1.png" ); - preReadCityTexture( CST_INDUSTRY_H_L2, "industryhl2.png" ); - preReadCityTexture( CST_INDUSTRY_H_L3, "industryhl3.png" ); - preReadCityTexture( CST_INDUSTRY_H_L4, "industryhl4.png" ); - preReadCityTexture( CST_INDUSTRY_H_L5, "industryhl5.png" ); - preReadCityTexture( CST_INDUSTRY_H_L6, "industryhl6.png" ); - preReadCityTexture( CST_INDUSTRY_H_L7, "industryhl7.png" ); - preReadCityTexture( CST_INDUSTRY_H_L8, "industryhl8.png" ); - preReadCityTexture( CST_INDUSTRY_H_M1, "industryhm1.png" ); - preReadCityTexture( CST_INDUSTRY_H_M2, "industryhm2.png" ); - preReadCityTexture( CST_INDUSTRY_H_M3, "industryhm3.png" ); - preReadCityTexture( CST_INDUSTRY_H_M4, "industryhm4.png" ); - preReadCityTexture( CST_INDUSTRY_H_M5, "industryhm5.png" ); - preReadCityTexture( CST_INDUSTRY_H_M6, "industryhm6.png" ); - preReadCityTexture( CST_INDUSTRY_H_M7, "industryhm7.png" ); - preReadCityTexture( CST_INDUSTRY_H_M8, "industryhm8.png" ); - preReadCityTexture( CST_INDUSTRY_H_H1, "industryhh1.png" ); - preReadCityTexture( CST_INDUSTRY_H_H2, "industryhh2.png" ); - preReadCityTexture( CST_INDUSTRY_H_H3, "industryhh3.png" ); - preReadCityTexture( CST_INDUSTRY_H_H4, "industryhh4.png" ); - preReadCityTexture( CST_INDUSTRY_H_H5, "industryhh5.png" ); - preReadCityTexture( CST_INDUSTRY_H_H6, "industryhh6.png" ); - preReadCityTexture( CST_INDUSTRY_H_H7, "industryhh7.png" ); - preReadCityTexture( CST_INDUSTRY_H_H8, "industryhh8.png" ); - preReadCityTexture( CST_INDUSTRY_L_C, "industrylc.png" ); - preReadCityTexture( CST_INDUSTRY_L_Q1, "industrylq1.png" ); - preReadCityTexture( CST_INDUSTRY_L_Q2, "industrylq2.png" ); - preReadCityTexture( CST_INDUSTRY_L_Q3, "industrylq3.png" ); - preReadCityTexture( CST_INDUSTRY_L_Q4, "industrylq4.png" ); - preReadCityTexture( CST_INDUSTRY_L_L1, "industryll1.png" ); - preReadCityTexture( CST_INDUSTRY_L_L2, "industryll2.png" ); - preReadCityTexture( CST_INDUSTRY_L_L3, "industryll3.png" ); - preReadCityTexture( CST_INDUSTRY_L_L4, "industryll4.png" ); - preReadCityTexture( CST_INDUSTRY_L_M1, "industrylm1.png" ); - preReadCityTexture( CST_INDUSTRY_L_M2, "industrylm2.png" ); - preReadCityTexture( CST_INDUSTRY_L_M3, "industrylm3.png" ); - preReadCityTexture( CST_INDUSTRY_L_M4, "industrylm4.png" ); - preReadCityTexture( CST_INDUSTRY_L_H1, "industrylh1.png" ); - preReadCityTexture( CST_INDUSTRY_L_H2, "industrylh2.png" ); - preReadCityTexture( CST_INDUSTRY_L_H3, "industrylh3.png" ); - preReadCityTexture( CST_INDUSTRY_L_H4, "industrylh4.png" ); - preReadCityTexture( CST_FARM_O0, "farm0.png" ); - //preReadCityTexture( CST_FARM_O1, "farm1.png" ); - //preReadCityTexture( CST_FARM_O2, "farm2.png" ); - preReadCityTexture( CST_FARM_O3, "farm3.png" ); - //preReadCityTexture( CST_FARM_O4, "farm4.png" ); - //preReadCityTexture( CST_FARM_O5, "farm5.png" ); - //preReadCityTexture( CST_FARM_O6, "farm6.png" ); - preReadCityTexture( CST_FARM_O7, "farm7.png" ); - //preReadCityTexture( CST_FARM_O8, "farm8.png" ); - //preReadCityTexture( CST_FARM_O9, "farm9.png" ); - //preReadCityTexture( CST_FARM_O10, "farm10.png" ); - preReadCityTexture( CST_FARM_O11, "farm11.png" ); - //preReadCityTexture( CST_FARM_O12, "farm12.png" ); - //preReadCityTexture( CST_FARM_O13, "farm13.png" ); - //preReadCityTexture( CST_FARM_O14, "farm14.png" ); - preReadCityTexture( CST_FARM_O15, "farm15.png" ); - //preReadCityTexture( CST_FARM_O16, "farm16.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_LR, "Trackbridge2.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_UD, "Trackbridge1.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_LRP, "Trackbridge_pg1.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_UDP, "Trackbridge_pg2.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_ILR, "Trackbridge_entrance_270.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_OLR, "Trackbridge_entrance_90.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_IUD, "Trackbridge_entrance_00.png" ); - preReadCityTexture( CST_TRACK_BRIDGE_OUD, "Trackbridge_entrance_180.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_LR, "Roadbridge1.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_UD, "Roadbridge2.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_LRP, "Roadbridge1s.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_UDP, "Roadbridge2s.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_LRPG, "Roadbridge_pg1.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_UDPG, "Roadbridge_pg2.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_I1LR, "Roadbridge_entrance1_270.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_O1LR, "Roadbridge_entrance1_90.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_I1UD, "Roadbridge_entrance1_00.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_O1UD, "Roadbridge_entrance1_180.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_I2LR, "Roadbridge_entrance2_270.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_O2LR, "Roadbridge_entrance2_90.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_I2UD, "Roadbridge_entrance2_00.png" ); - preReadCityTexture( CST_ROAD_BRIDGE_O2UD, "Roadbridge_entrance2_180.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_LR, "Railbridge1.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_UD, "Railbridge2.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_LRPG, "Railbridge_pg1.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_UDPG, "Railbridge_pg2.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_I1LR, "Railbridge_entrance1_270.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_O1LR, "Railbridge_entrance1_90.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_I1UD, "Railbridge_entrance1_00.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_O1UD, "Railbridge_entrance1_180.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_I2LR, "Railbridge_entrance2_270.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_O2LR, "Railbridge_entrance2_90.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_I2UD, "Railbridge_entrance2_00.png" ); - preReadCityTexture( CST_RAIL_BRIDGE_O2UD, "Railbridge_entrance2_180.png" ); - - // End of generated Code. + if(resourceGroup) + { + resourceGroup->images_loaded = true; + resourceGroup = 0; + } } + /* * Scroll the map. */ @@ -879,38 +619,52 @@ viewport += event.mousemove; setDirty(); break; - } + } if(!event.inside) { mouseInGameView = false; break; } mouseInGameView = true; + if( !dragging && rightButtonDown ) { dragging = true; dragStart = event.mousepos; SDL_ShowCursor( SDL_DISABLE ); dragStartTime = SDL_GetTicks(); - } + } MapPoint tile = getTile(event.mousepos); - if( !roadDragging && leftButtonDown && ( cursorSize == 1 ) ) { + if( !roadDragging && leftButtonDown && ( cursorSize == 1 ) && + (userOperation->action != UserOperation::ACTION_EVACUATE)) + { roadDragging = true; startRoad = tile; + areaBulldoze = (SDL_GetModState() & KMOD_CTRL); } - if( roadDragging && ( cursorSize != 1 ) ){ + + if( roadDragging && ( cursorSize != 1 ) ) + { roadDragging = false; + areaBulldoze = false; + ctrDrag = false; } // bulldoze at once while still dragging - if( roadDragging && (selected_module_type == CST_GREEN) ){ - if( tile != startRoad ){ - editMap( startRoad, SDL_BUTTON_LEFT); + + if( roadDragging && ( (userOperation->action == UserOperation::ACTION_BULLDOZE)) + && !areaBulldoze){ + if( tile != startRoad ) { + check_bulldoze_area (startRoad.x, startRoad.y); startRoad = tile; } } - + if(tileUnderMouse != tile) { tileUnderMouse = tile; setDirty(); + //update mps target + if(userOperation->action == UserOperation::ACTION_EVACUATE) + { mps_set( tile.x, tile.y, MPS_MAP );} } + break; } case Event::MOUSEBUTTONDOWN: { @@ -919,13 +673,16 @@ } if( event.mousebutton == SDL_BUTTON_RIGHT ) { dragging = false; + ctrDrag = false; rightButtonDown = true; - break; + break; } if( event.mousebutton == SDL_BUTTON_LEFT ) { roadDragging = false; + areaBulldoze = false; + ctrDrag = false; leftButtonDown = true; - break; + break; } if( event.mousebutton == SDL_BUTTON_MIDDLE ) { if( inCity( getTile( event.mousepos ) ) ) { @@ -935,74 +692,125 @@ break; } case Event::MOUSEBUTTONUP: + if(event.mousebutton == SDL_BUTTON_MIDDLE ){ getMiniMap()->hideMpsEnv(); } + if( event.mousebutton == SDL_BUTTON_RIGHT ){ if ( dragging ) { dragging = false; rightButtonDown = false; SDL_ShowCursor( SDL_ENABLE ); SDL_WarpMouse((Uint16) dragStart.x, (Uint16) dragStart.y); + getButtonPanel()->selectQueryTool(); break; - } + } dragging = false; rightButtonDown = false; } if( event.mousebutton == SDL_BUTTON_LEFT ){ resetLastMessage(); - if ( roadDragging && event.inside ) { + if ( roadDragging && event.inside ) + { MapPoint endRoad = getTile( event.mousepos ); roadDragging = false; + areaBulldoze = false; leftButtonDown = false; if( cursorSize != 1 ){//roadDragging was aborted with Escape break; } - MapPoint currentTile = startRoad; + //build last tile first to play the sound - if( !blockingDialogIsOpen ) - editMap(endRoad, SDL_BUTTON_LEFT); - //turn off effects for the rest of the tiles - bool fx = getConfig()->soundEnabled; - getConfig()->soundEnabled = false; + if( !blockingDialogIsOpen && + userOperation->is_allowed_here(endRoad.x, endRoad.y, true)) + { editMap(endRoad, SDL_BUTTON_LEFT);} //use same method to find all Tiles as in void GameView::draw() + MapPoint currentTile = startRoad; int stepx = ( startRoad.x > endRoad.x ) ? -1 : 1; int stepy = ( startRoad.y > endRoad.y ) ? -1 : 1; - while( currentTile.x != endRoad.x ) { - if( !blockingDialogIsOpen ) - editMap(currentTile, SDL_BUTTON_LEFT); - currentTile.x += stepx; + if ( userOperation->action == UserOperation::ACTION_BULLDOZE ) + { + for (;currentTile.x != endRoad.x + stepx; currentTile.x += stepx) + { + for (currentTile.y = startRoad.y; currentTile.y != endRoad.y + stepy; currentTile.y += stepy) + { + if( !blockingDialogIsOpen ) + { check_bulldoze_area(currentTile.x, currentTile.y);} + } + } } - while( currentTile.y != endRoad.y ) { - if( !blockingDialogIsOpen ) - editMap(currentTile, SDL_BUTTON_LEFT); - currentTile.y += stepy; + else if (userOperation->action == UserOperation::ACTION_BUILD) + { + int* v1 = ctrDrag ? ¤tTile.y :¤tTile.x; + int* v2 = ctrDrag ? ¤tTile.x :¤tTile.y; + int* l1 = ctrDrag ? &endRoad.y :&endRoad.x; + int* l2 = ctrDrag ? &endRoad.x :&endRoad.y; + int* s1 = ctrDrag ? &stepy: &stepx; + int* s2 = ctrDrag ? &stepx: &stepy; + ConstructionGroup* cstgrp = userOperation->constructionGroup; + unsigned short size = cstgrp->size; + + while( *v1 != *l1 ) + { + if(userOperation->is_allowed_here(currentTile.x, currentTile.y, false)) + { + cstgrp->placeItem(currentTile.x, currentTile.y); + connect_transport(currentTile.x - 2, currentTile.y - 2, currentTile.x + size + 1, currentTile.y + size + 1); + desert_water_frontiers(currentTile.x - 1, currentTile.y - 1, size + 2, size + 2); + } + *v1 += *s1; + } + + while( *v2 != *l2 ) + { + if(userOperation->is_allowed_here(currentTile.x, currentTile.y, false)) + { + userOperation->constructionGroup->placeItem(currentTile.x, currentTile.y); + connect_transport(currentTile.x - 2, currentTile.y - 2, currentTile.x + size + 1, currentTile.y + size + 1); + desert_water_frontiers(currentTile.x - 1, currentTile.y - 1, size + 2, size + 2); + } + *v2 += *s2; + } } - getConfig()->soundEnabled = fx; break; - } + } roadDragging = false; + ctrDrag = false; + areaBulldoze = false; leftButtonDown = false; } if(!event.inside) { break; } - - if( event.mousebutton == SDL_BUTTON_LEFT ){ //left - if( !blockingDialogIsOpen ) - editMap( getTile( event.mousepos ), SDL_BUTTON_LEFT); //edit tile - } - else if( event.mousebutton == SDL_BUTTON_RIGHT ){ //middle - recenter(event.mousepos); //adjust view - } - else if( event.mousebutton == SDL_BUTTON_WHEELUP ){ //up - zoomIn(); //zoom in - } - else if( event.mousebutton == SDL_BUTTON_WHEELDOWN ){ //down - zoomOut(); //zoom out + + if( event.mousebutton == SDL_BUTTON_LEFT ){ //left + if( !blockingDialogIsOpen ) //edit tile + { editMap( getTile( event.mousepos ), SDL_BUTTON_LEFT);} + } + else if( event.mousebutton == SDL_BUTTON_RIGHT ){ //middle + if (getButtonPanel()->selectedQueryTool()) + recenter(event.mousepos); //adjust view + else + getButtonPanel()->selectQueryTool(); + } + else if( event.mousebutton == SDL_BUTTON_WHEELUP ){ //up + recenter(event.mousepos); //adjust view + SDL_WarpMouse((Uint16) getWidth() / 2, (Uint16) getHeight() / 2);//set mouse to center + zoomIn(); //zoom in + } + else if( event.mousebutton == SDL_BUTTON_WHEELDOWN ){ //down + recenter(event.mousepos); //adjust view + SDL_WarpMouse((Uint16) getWidth() / 2, (Uint16) getHeight() / 2);//set mouse to center + zoomOut(); //zoom out } break; case Event::KEYDOWN: + if( event.keysym.sym == SDLK_LCTRL || event.keysym.sym == SDLK_RCTRL ){ + if (roadDragging) + { ctrDrag = !ctrDrag;} + break; + } if( event.keysym.sym == SDLK_KP8 || event.keysym.sym == SDLK_UP ){ keyScrollState |= SCROLL_UP; break; @@ -1043,15 +851,36 @@ keyScrollState |= SCROLL_RSHIFT; break; } + + + // use G to show ground info aka MpsEnv without middle mouse button + if( event.keysym.sym == SDLK_g){ + if( inCity(tileUnderMouse) ) { + getMiniMap()->showMpsEnv( tileUnderMouse ); + } + break; + } + // hotkeys for scrolling pages up and down + if(event.keysym.sym == SDLK_n) + { + getMiniMap()->scrollPageDown(true); + break; + } + if (event.keysym.sym == SDLK_m) + { + getMiniMap()->scrollPageDown(false); + break; + } break; case Event::KEYUP: +/* //TEst if( event.keysym.sym == SDLK_x ){ writeOrigin(); readOrigin(); break; } - +*/ //Hide High Buildings if( event.keysym.sym == SDLK_h ){ if( hideHigh ){ @@ -1064,10 +893,7 @@ } //overlay MiniMap Information if( event.keysym.sym == SDLK_v ){ - mapOverlay++; - if( mapOverlay > overlayMAX ) { - mapOverlay = overlayNone; - } + mapOverlay = (mapOverlay+1)%(overlayMAX+1); requestRedraw(); break; } @@ -1080,7 +906,7 @@ zoomOut(); break; } - if( event.keysym.sym == SDLK_KP_ENTER ){ + if( event.keysym.sym == SDLK_KP_ENTER || event.keysym.sym == SDLK_RETURN){ resetZoom(); break; } @@ -1127,7 +953,7 @@ } if ( event.keysym.sym == SDLK_KP5 ) { - show(MapPoint(WORLD_SIDE_LEN / 2, WORLD_SIDE_LEN / 2)); + show(MapPoint(world.len() / 2, world.len() / 2)); setDirty(); break; } @@ -1144,7 +970,7 @@ } /* - * Parent tells us to change size. + * Parent tells us to change size. */ void GameView::resize(float newwidth , float newheight ) { @@ -1161,12 +987,23 @@ if( !getMiniMap() ){ //initialization not completed return; } - //TODO: do this only when View changed - //Tell Minimap about new Corners - getMiniMap()->setGameViewCorners( getTile(Vector2(0, 0)), - getTile(Vector2(getWidth(), 0)), - getTile(Vector2(getWidth(), getHeight())), - getTile(Vector2(0, getHeight()) ) ); + + static MapPoint oldCenter = this->getCenter(); + static float oldZoom = zoom; + + MapPoint newCenter = this->getCenter(); + + if ( (oldCenter != newCenter) || (oldZoom != zoom) ) { + //Tell Minimap about new Corners + getMiniMap()->setGameViewCorners( + getTile(Vector2(0, 0)), + getTile(Vector2(getWidth(), getHeight())) + ); + + oldCenter = newCenter; + oldZoom = zoom; + + } //request redraw setDirty(); @@ -1180,7 +1017,7 @@ Vector2 position = pos + viewport; viewport.x = floor( position.x - ( getWidth() / 2 ) ); viewport.y = floor( position.y - ( getHeight() / 2 ) ); - + //request redraw requestRedraw(); } @@ -1193,12 +1030,18 @@ { Vector2 point; point.x = virtualScreenWidth / 2 + (map.x - map.y) * ( tileWidth / 2 ); - point.y = (map.x + map.y) * ( tileHeight / 2 ); - + point.y = (map.x + map.y) * ( tileHeight / 2 ); + //we want the lower right corner point.y += tileHeight; + + if ((showTerrainHeight) && (inCity(map))){ + // shift the tile upward to show altitude + point.y -= (float) ( (world(map.x, map.y)->ground.altitude) * scale3d) * zoom / (float) alt_step ; + } + //on Screen - point -= viewport; + point -= viewport; return point; } @@ -1211,7 +1054,7 @@ MapPoint tile; // Map Point to virtual Screen Vector2 point = p + viewport; - float x = (point.x - virtualScreenWidth / 2 ) / tileWidth + float x = (point.x - virtualScreenWidth / 2 ) / tileWidth + point.y / tileHeight; tile.x = (int) floorf(x); tile.y = (int) floorf( 2 * point.y / tileHeight - x ); @@ -1233,7 +1076,7 @@ points[ 2 ].y = rect.p2.y; points[ 3 ].x = rect.p2.x; points[ 3 ].y = rect.p1.y + ( rect.getHeight() / 2 ); - painter.fillPolygon( 4, points ); + painter.fillPolygon( 4, points ); } /* @@ -1252,34 +1095,32 @@ points[ 2 ].y = rect.p2.y; points[ 3 ].x = rect.p2.x; points[ 3 ].y = rect.p1.y + ( rect.getHeight() / 2 ); - painter.drawPolygon( 4, points ); + painter.drawPolygon( 4, points ); } /* * Check if Tile is in City - * in oldgui you can edit (1,1) to (98,98) with WORLD_SIDE_LEN 100 + * in oldgui you can edit (1,1) to (98,98) with world.len() 100 * i.e. there is a hidden border of green tiles arround the city */ -bool GameView::inCity( MapPoint tile ){ - if( tile.x > gameAreaMax || tile.y > gameAreaMax || tile.x < gameAreaMin || tile.y < gameAreaMin ) { - return false; - } - return true; +bool GameView::inCity( MapPoint tile ) +{ + return world.is_visible(tile.x, tile.y); } /* * Draw MiniMapOverlay for tile. */ -void GameView::drawOverlay(Painter& painter, MapPoint tile){ +void GameView::drawOverlay(Painter& painter, const MapPoint &tile){ Color black; black.parse("black"); Color miniMapColor; - + Vector2 tileOnScreenPoint = getScreenPoint(tile); Rect2D tilerect( 0, 0, tileWidth, tileHeight ); tileOnScreenPoint.x = tileOnScreenPoint.x - ( tileWidth / 2); - tileOnScreenPoint.y -= tileHeight; - tilerect.move( tileOnScreenPoint ); + tileOnScreenPoint.y -= tileHeight; + tilerect.move( tileOnScreenPoint ); //Outside of the Map gets Black overlay if( !inCity( tile ) ) { painter.setFillColor( black ); @@ -1290,221 +1131,301 @@ } painter.setFillColor( miniMapColor ); } - fillDiamond( painter, tilerect ); + fillDiamond( painter, tilerect ); } /* - * If the current Tile is Part of a Building, return the + * If the current Tile is Part of a Building, return the * Coordinates of the tile that contains the real informations. - */ -MapPoint GameView::realTile( MapPoint tile ){ + */ +MapPoint GameView::realTile( MapPoint tile ) +{ MapPoint real = tile; if( ! inCity( tile ) ) return real; - if ( MP_TYPE( tile.x, tile.y ) == CST_USED ) + if(world(tile.x, tile.y)->reportingConstruction) { - real.x = MP_INFO(tile.x, tile.y).int_1; - real.y = MP_INFO(tile.x, tile.y).int_2; + real.x = world(tile.x, tile.y)->reportingConstruction->x; + real.y = world(tile.x, tile.y)->reportingConstruction->y; + return real; } return real; } -void GameView::drawTile(Painter& painter, MapPoint tile) +void GameView::fetchTextures() +{ + std::map<std::string, ResourceGroup*>::iterator it; + for(it= ResourceGroup::resMap.begin(); it != ResourceGroup::resMap.end(); ++it) + { + for(size_t i = 0; i < it->second->graphicsInfoVector.size(); ++i) + { + if( !it->second->graphicsInfoVector[i].texture) + { + if(it->second->graphicsInfoVector[i].image) + { + it->second->graphicsInfoVector[i].texture = texture_manager->create( it->second->graphicsInfoVector[i].image ); + if (it->second->graphicsInfoVector[i].texture) + { it->second->graphicsInfoVector[i].image = 0;} //Image was erased by texture_manager->create. + --remaining_images; + } + } + } + } +} + + + +void GameView::drawTexture(Painter& painter, const MapPoint &tile, GraphicsInfo *graphicsInfo) { Rect2D tilerect( 0, 0, tileWidth, tileHeight ); Vector2 tileOnScreenPoint = getScreenPoint( tile ); - - //is Tile in City? If not draw Blank - if( ! inCity( tile ) ) + // Test if we have to convert Preloaded Image to Texture + if( !graphicsInfo->texture ) //&& !economyGraph_open { - tileOnScreenPoint.x -= (blankTexture->getWidth() / 2) * zoom; - tileOnScreenPoint.y -= blankTexture->getHeight() * zoom; - tilerect.move( tileOnScreenPoint ); - tilerect.setSize(blankTexture->getWidth() * zoom, - blankTexture->getHeight() * zoom); - if(zoom == 1.0) + if(graphicsInfo->image) { - painter.drawTexture( blankTexture, tilerect.p1 ); + graphicsInfo->texture = texture_manager->create( graphicsInfo->image ); + if ( graphicsInfo->texture) + { graphicsInfo->image = 0;} //Image was erased by texture_manager->create. + --remaining_images; } + } + if (graphicsInfo->texture) + { + tileOnScreenPoint.x -= graphicsInfo->x * zoom; + tileOnScreenPoint.y -= graphicsInfo->y * zoom; + tilerect.move( tileOnScreenPoint ); + tilerect.setSize(graphicsInfo->texture->getWidth() * zoom, + graphicsInfo->texture->getHeight() * zoom); + if( zoom == 1.0 ) // Floating point test of equality ! + { painter.drawTexture(graphicsInfo->texture, tilerect.p1);} else - { - painter.drawStretchTexture( blankTexture, tilerect ); - } - return; + { painter.drawStretchTexture(graphicsInfo->texture, tilerect);} } +} - Texture* texture; - int size; - int upperLeftX = tile.x; - int upperLeftY = tile.y; - if ( MP_TYPE( tile.x, tile.y ) == CST_USED ) - { - upperLeftX = MP_INFO(tile.x, tile.y).int_1; - upperLeftY = MP_INFO(tile.x, tile.y).int_2; - } - size = MP_SIZE( upperLeftX, upperLeftY ); +void GameView::drawTile(Painter& painter, const MapPoint &tile) +{ - //is Tile the lower left corner of the Building? - //dont't draw if not. - if ( ( tile.x != upperLeftX ) || ( tile.y - size +1 != upperLeftY ) ) + //is Tile in City? If not draw Blank + if( ! inCity( tile ) ) { + drawTexture(painter, tile, &blankGraphicsInfo); return; } - //adjust OnScreenPoint of big Tiles - if( size > 1 ) { + + //Texture* texture = 0; + MapPoint upperLeft = realTile(tile); + int x = upperLeft.x; + int y = upperLeft.y; + + ConstructionGroup *cstgrp = world(x,y)->getTopConstructionGroup(); + ResourceGroup *resgrp; + unsigned short size = cstgrp->size; + + //Attention map is rotated for displaying + if ( ( tile.x == x ) && ( tile.y - size +1 == y ) ) //Signs are tested + { + resgrp = world(x, y)->getTileResourceGroup(); + //adjust OnScreenPoint of big Tiles MapPoint lowerRightTile( tile.x + size - 1 , tile.y ); - tileOnScreenPoint = getScreenPoint( lowerRightTile ); - } - - int textureType = MP_TYPE( upperLeftX, upperLeftY ); - texture = cityTextures[ textureType ]; - // Test if we have to convert Preloaded Image to Texture - if( !texture ) { - SDL_mutexP( mTextures ); - if( cityImages[ textureType ] ){ - cityTextures[ textureType ] = texture_manager->create( cityImages[ textureType ] ); - cityImages[ textureType ] = 0; //Image is erased by texture_manager->create. - texture = cityTextures[ textureType ]; - } - SDL_mutexV( mTextures ); - } - - if( texture && ( !hideHigh || size == 1 ) ) - { - /* TODO: it seems possible to put green or desert tile first, - * so that buildings without ground will look nice - * especially power lines :) */ - tileOnScreenPoint.x -= cityTextureX[textureType] * zoom; - tileOnScreenPoint.y -= cityTextureY[textureType] * zoom; - tilerect.move( tileOnScreenPoint ); - tilerect.setSize(texture->getWidth() * zoom, texture->getHeight() * zoom); - if( zoom == 1.0 ) { - painter.drawTexture(texture, tilerect.p1); + unsigned short textureType = world(x, y)->getTopType(); + + // if we hide high buildings, hide trees as well + if (hideHigh && (cstgrp == &treeConstructionGroup + || cstgrp == &tree2ConstructionGroup + || cstgrp == &tree3ConstructionGroup )) + { + cstgrp = &bareConstructionGroup; + resgrp = ResourceGroup::resMap["Green"]; } - else + GraphicsInfo *graphicsInfo = 0; + //draw visible tiles underneath constructions + if( (world(x, y)->reportingConstruction || world(x,y)->framesptr) && !(world(x,y)->flags & FLAG_INVISIBLE) ) { - painter.drawStretchTexture(texture, tilerect); + if (resgrp->images_loaded) + { + size_t s = resgrp->graphicsInfoVector.size(); + if (s) + { + graphicsInfo = &resgrp->graphicsInfoVector + [ world(x, y)->type % s]; + drawTexture(painter, lowerRightTile, graphicsInfo); + } + } + } + bool draw_colored_site = true; + + if( (size==1 || !hideHigh) ) + { + draw_colored_site = false; + if (world(x,y)->framesptr) + { + for(std::list<ExtraFrame>::iterator frit = world(x, y)->framesptr->begin(); + frit != world(x,y)->framesptr->end(); std::advance(frit, 1)) + { + if(frit->resourceGroup && frit->resourceGroup->images_loaded) + { + size_t s2 = frit->resourceGroup->graphicsInfoVector.size(); + if((frit->frame >= 0) && s2) + { + graphicsInfo = &frit->resourceGroup->graphicsInfoVector[ frit->frame % s2 ]; //needed + int old_x = graphicsInfo->x; + int old_y = graphicsInfo->y; + graphicsInfo->x = old_x - frit->move_x; + graphicsInfo->y = old_y - frit->move_y; + if( frit->resourceGroup->is_vehicle) + { + //only draw vehicles on top of... + switch (cstgrp->group) + { + case GROUP_BARE: + case GROUP_DESERT: + case GROUP_WATER: + case GROUP_TRACK: + case GROUP_TRACK_BRIDGE: + case GROUP_ROAD: + case GROUP_ROAD_BRIDGE: + case GROUP_RAIL: + case GROUP_RAIL_BRIDGE: + case GROUP_ORGANIC_FARM: + case GROUP_WATERWELL: + case GROUP_SHANTY: + case GROUP_CRICKET: + case GROUP_SUBSTATION: + //add anything else with low northen corner + drawTexture(painter, upperLeft, graphicsInfo); + break; + default: + break; + } + + + } + else + { drawTexture(painter, lowerRightTile, graphicsInfo);} + graphicsInfo->x = old_x; + graphicsInfo->y = old_y; + } + } + else + { draw_colored_site = true;} + } + } + else + { + size_t s = resgrp->graphicsInfoVector.size(); + if(s && resgrp->images_loaded) + { + graphicsInfo = &resgrp->graphicsInfoVector[ textureType % s]; //needed + drawTexture(painter, lowerRightTile, graphicsInfo); + } + } + } + + if(draw_colored_site) + { + Rect2D tilerect( 0, 0, size * tileWidth, size * tileHeight ); + Vector2 tileOnScreenPoint = getScreenPoint( lowerRightTile ); + tileOnScreenPoint.x = tileOnScreenPoint.x - ( tileWidth*size / 2); + tileOnScreenPoint.y -= tileHeight*size; + tilerect.move( tileOnScreenPoint ); + painter.setFillColor( getMiniMap()->getColorNormal( tile.x, tile.y ) ); + fillDiamond( painter, tilerect ); + } + //last draw suspended power cables on top + //only works for size == 1 + if (world(x, y)->flags & (FLAG_POWER_CABLES_0 | FLAG_POWER_CABLES_90)) + { + resgrp = ResourceGroup::resMap["PowerLine"]; + if(resgrp->images_loaded) + { + if (world(x, y)->flags & FLAG_POWER_CABLES_0) + { drawTexture(painter, upperLeft, &resgrp->graphicsInfoVector[23]);} + if (world(x, y)->flags & FLAG_POWER_CABLES_90) + { drawTexture(painter, upperLeft, &resgrp->graphicsInfoVector[22]);} + } } } - else - { - tileOnScreenPoint.x = tileOnScreenPoint.x - ( tileWidth*size / 2); - tileOnScreenPoint.y -= tileHeight*size; - tilerect.move( tileOnScreenPoint ); - tilerect.setSize( size * tileWidth, size * tileHeight ); - painter.setFillColor( getMiniMap()->getColorNormal( tile.x, tile.y ) ); - fillDiamond( painter, tilerect ); - } + + } /* * Mark a tile with current cursor */ -void GameView::markTile( Painter& painter, MapPoint tile ) +void GameView::markTile( Painter& painter, const MapPoint &tile ) { Vector2 tileOnScreenPoint = getScreenPoint(tile); - if( cursorSize == 0 ) { + int x = tile.x; + int y = tile.y; + { + MapPoint upperLeft = realTile(tile); + if(upperLeft.x == mps_x && upperLeft.y == mps_y && userOperation->action == UserOperation::ACTION_QUERY) + { + if(world(x,y)->reportingConstruction) + { + ConstructionGroup *constructionGroup = world(x,y)->reportingConstruction->constructionGroup; + int range = constructionGroup->range; + int edgelen = 2 * range + constructionGroup->size ; + painter.setFillColor( Color( 0, 255, 0, 64 ) ); + Rect2D rangerect( 0,0, + tileWidth * ( edgelen) , + tileHeight * ( edgelen) ); + Vector2 screenPoint = getScreenPoint(upperLeft); + screenPoint.x -= tileWidth * ( 0.5*(edgelen) ); + screenPoint.y -= tileHeight * ( range + 1 ); + rangerect.move( screenPoint ); + fillDiamond( painter, rangerect ); + }//endif + }//endif mps + } + + if( userOperation->action == UserOperation::ACTION_QUERY) // cursorSize == 0 + { Color alphawhite( 255, 255, 255, 128 ); painter.setLineColor( alphawhite ); Rect2D tilerect( 0, 0, tileWidth, tileHeight ); - tileOnScreenPoint.x = tileOnScreenPoint.x - ( tileWidth / 2); - tileOnScreenPoint.y -= tileHeight; - tilerect.move( tileOnScreenPoint ); - drawDiamond( painter, tilerect ); - } else { + tileOnScreenPoint.x -= ( tileWidth / 2); + tileOnScreenPoint.y -= tileHeight; + tilerect.move( tileOnScreenPoint ); + drawDiamond( painter, tilerect ); + } + else + { Color alphablue( 0, 0, 255, 128 ); Color alphared( 255, 0, 0, 128 ); - painter.setFillColor( alphablue ); - //check if building is inside the map, if not use Red Cursor - int x = (int) tile.x; - int y = (int) tile.y; - MapPoint seCorner( x + cursorSize -1, y + cursorSize -1 ); - if( !inCity( seCorner ) || !inCity( tile ) ) { - painter.setFillColor( alphared ); - } else { - for( y = (int) tile.y; y < tile.y + cursorSize; y++ ){ - for( x = (int) tile.x; x < tile.x + cursorSize; x++ ){ - if( !GROUP_IS_BARE(MP_GROUP( x, y ))) { - if( !((MP_GROUP( x, y ) == GROUP_WATER) && ( // bridge on water is OK - (selected_module_type == CST_TRACK_LR ) || - (selected_module_type == CST_ROAD_LR ) || - (selected_module_type == CST_RAIL_LR ) ))) { - painter.setFillColor( alphared ); - y += cursorSize; - break; - } - } - } - } - } - //check if building is allowed here, if not use Red Cursor - // These tests are in engine.cpp with place_item. - if ( !is_allowed_here(tile.x, tile.y, selected_module_type, 0) ) - painter.setFillColor( alphared ); + if(userOperation->is_allowed_here(x, y, false)) + { painter.setFillColor( alphablue );} + else + { painter.setFillColor( alphared );} Rect2D tilerect( 0, 0, tileWidth * cursorSize, tileHeight * cursorSize ); - tileOnScreenPoint.x = tileOnScreenPoint.x - (tileWidth * cursorSize / 2); - tileOnScreenPoint.y -= tileHeight; - tilerect.move( tileOnScreenPoint ); - fillDiamond( painter, tilerect ); - - // Draw range for selected_module_type - int range = 0; - int reduceNW = 0; // substation and market reduce the range to nort west by one. - switch ( selected_module_type ){ - //case CST_RESIDENCE_LL: break; - //case CST_RESIDENCE_ML: break; - //case CST_RESIDENCE_HL: break; - //case CST_RESIDENCE_LH: break; - //case CST_RESIDENCE_MH: break; - //case CST_RESIDENCE_HH: break; - //case CST_FARM_O0: break; - //case CST_MILL_0: break; - case CST_HEALTH: range = HEALTH_CENTRE_RANGE; break; - case CST_CRICKET_1: range = CRICKET_RANGE; break; - case CST_FIRESTATION_1: range = FIRESTATION_RANGE; break; - //case CST_SCHOOL: break; - //case CST_UNIVERSITY: break; - //case CST_TRACK_LR: break; - //case CST_ROAD_LR: break; - //case CST_RAIL_LR: break; - //case CST_EX_PORT: break; - //case CST_ROCKET_1: break; - //case CST_POWERL_H_L: break; - //case CST_POWERS_COAL_EMPTY: break; - //case CST_POWERS_SOLAR: break; - case CST_SUBSTATION_R: range = SUBSTATION_RANGE; reduceNW = 1; break; - case CST_WINDMILL_1_R: range = SUBSTATION_RANGE; reduceNW = 1; break; //Windmills are handled like substations - //case CST_COMMUNE_1: break; - case CST_COALMINE_EMPTY: range = COAL_RESERVE_SEARCH_LEN; break; - //case CST_OREMINE_1: break; - //case CST_TIP_0: break; - //case CST_RECYCLE: break; - //case CST_INDUSTRY_L_C: break; - //case CST_INDUSTRY_H_C: break; - case CST_MARKET_EMPTY: range = MARKET_RANGE; reduceNW = 1; break; - //case CST_POTTERY_0: break; - //case CST_BLACKSMITH_0: break; - //case CST_MONUMENT_0: break; - //case CST_PARKLAND_PLANE: break; - //case CST_WATER: break; - case CST_WATERWELL: range = WATERWELL_RANGE; break; - } - - if (range > 0 ) + tileOnScreenPoint.x -= (tileWidth * cursorSize / 2); + tileOnScreenPoint.y -= tileHeight; + tilerect.move( tileOnScreenPoint ); + fillDiamond( painter, tilerect ); + + if(userOperation->action == UserOperation::ACTION_BUILD) { - painter.setFillColor( Color( 0, 0, 128, 64 ) ); - Rect2D rangerect( 0,0, - tileWidth * ( 2 * range - reduceNW ) , - tileHeight * ( 2 * range - reduceNW ) ); - Vector2 screenPoint = getScreenPoint(tile); - screenPoint.x -= tileWidth * ( range - 0.5 * reduceNW ); - screenPoint.y -= tileHeight * ( range + 1 - reduceNW ); - rangerect.move( screenPoint ); - fillDiamond( painter, rangerect ); - } - } + // Draw range for selected_building + int range = userOperation->constructionGroup->range; + if (range > 0 ) + { + int edgelen = 2 * range + userOperation->constructionGroup->size ; + painter.setFillColor( Color( 0, 0, 128, 64 ) ); + Rect2D rangerect( 0,0, + tileWidth * ( edgelen) , + tileHeight * ( edgelen) ); + Vector2 screenPoint = getScreenPoint(tile); + screenPoint.x -= tileWidth * ( 0.5*edgelen ); + screenPoint.y -= tileHeight * ( range + 1 ); + rangerect.move( screenPoint ); + fillDiamond( painter, rangerect ); + }//endif range > 0 + } + }//endelse ACTION_QUERY } /* @@ -1516,48 +1437,58 @@ //adjust viewport so it is. MapPoint centerTile = getCenter(); bool outside = false; - if( centerTile.x < gameAreaMin ) { + if( centerTile.x < gameAreaMin ) + { centerTile.x = gameAreaMin; outside = true; } - if( centerTile.x > gameAreaMax ) { - centerTile.x = gameAreaMax; + if( centerTile.x > gameAreaMax() ) + { + centerTile.x = gameAreaMax(); outside = true; } - if( centerTile.y < gameAreaMin ) { + if( centerTile.y < gameAreaMin ) + { centerTile.y = gameAreaMin; outside = true; } - if( centerTile.y > gameAreaMax ) { - centerTile.y = gameAreaMax; + if( centerTile.y > gameAreaMax() ) + { + centerTile.y = gameAreaMax(); outside = true; } - if( outside ){ + if( outside ) + { mouseScrollState = 0; //Avoid clipping in pause mode keyScrollState = 0; show( centerTile ); return; } + + //The Corners of The Screen - //TODO: change here to only draw dirtyRect - // dirtyRectangle is the current Clippingarea (if set) - // so we should get clippingArea (as soon this is implemented) - // and adjust these Vectors: Vector2 upperLeft( 0, 0); Vector2 upperRight( getWidth(), 0 ); Vector2 lowerLeft( 0, getHeight() ); - + + if (showTerrainHeight) + { + // printf("h = %f, z = %f \n ", getHeight(), zoom); + // getHeight = size in pixel of the screen (eg 1024x768) + Vector2 lowerLeft( 0, getHeight() * ( 1 + getHeight() * zoom / (float)scale3d )); + } + //Find visible Tiles - MapPoint upperLeftTile = getTile( upperLeft ); + MapPoint upperLeftTile = getTile( upperLeft ); MapPoint upperRightTile = getTile( upperRight ); - MapPoint lowerLeftTile = getTile( lowerLeft ); - + MapPoint lowerLeftTile = getTile( lowerLeft ); + //draw Background Color green; Rect2D background( 0, 0, getWidth(), getHeight() ); green.parse( "green" ); painter.setFillColor( green ); - painter.fillRectangle( background ); + painter.fillRectangle( background ); //draw Tiles MapPoint currentTile; @@ -1568,7 +1499,8 @@ upperRightTile.x += extratiles; lowerLeftTile.y += extratiles; - if( mapOverlay != overlayOnly ){ + if (mapOverlay != overlayOnly) + { for(int k = 0; k <= 2 * ( lowerLeftTile.y - upperLeftTile.y ); k++ ) { for(int i = 0; i <= upperRightTile.x - upperLeftTile.x; i++ ) @@ -1579,7 +1511,8 @@ } } } - if( mapOverlay != overlayNone ){ + if( mapOverlay != overlayNone ) + { for(int k = 0; k <= 2 * ( lowerLeftTile.y - upperLeftTile.y ); k++ ) { for(int i = 0; i <= upperRightTile.x - upperLeftTile.x; i++ ) @@ -1590,50 +1523,77 @@ } } } - - int cost = 0; - //Mark Tile under Mouse + + int cost = 0; + //display commodities continously + if(userOperation->action == UserOperation::ACTION_EVACUATE) + { + mps_update(); + mps_refresh(); + } + //Mark Tile under Mouse // TODO: handle showTerrainHeight if( mouseInGameView && !blockingDialogIsOpen ) { MapPoint lastRazed( -1,-1 ); int tiles = 0; - if( roadDragging && ( cursorSize == 1 ) ){ + if( roadDragging && ( cursorSize == 1 ) && + (userOperation->action == UserOperation::ACTION_BUILD || userOperation->action == UserOperation::ACTION_BULLDOZE)) + { //use same method to find all Tiles as in GameView::event(const Event& event) int stepx = ( startRoad.x > tileUnderMouse.x ) ? -1 : 1; int stepy = ( startRoad.y > tileUnderMouse.y ) ? -1 : 1; currentTile = startRoad; - while( currentTile.x != tileUnderMouse.x ) { - markTile( painter, currentTile ); - //we are speaking of tools, so CST_GREEN == bulldozer - if( (selected_module_type == CST_GREEN) && (realTile( currentTile ) != lastRazed) ){ - cost += bulldozeCost( currentTile ); - lastRazed = realTile( currentTile ); - } else { - cost += buildCost( currentTile ); + + if ( (userOperation->action == UserOperation::ACTION_BULLDOZE)) + { + for (;currentTile.x != tileUnderMouse.x + stepx; currentTile.x += stepx) { + for (currentTile.y = startRoad.y; currentTile.y != tileUnderMouse.y + stepy; currentTile.y += stepy) { + markTile( painter, currentTile ); + if( realTile( currentTile ) != lastRazed ){ + cost += bulldozeCost( currentTile ); + lastRazed = realTile( currentTile ); + } + tiles++; + } } - tiles++; - currentTile.x += stepx; } - while( currentTile.y != tileUnderMouse.y ) { - markTile( painter, currentTile ); - if( (selected_module_type == CST_GREEN ) && realTile( currentTile ) != lastRazed ){ - cost += bulldozeCost( currentTile ); - lastRazed = realTile( currentTile ); - } else { + else if (userOperation->action == UserOperation::ACTION_BUILD) + { + int* v1 = ctrDrag ? ¤tTile.y :¤tTile.x; + int* v2 = ctrDrag ? ¤tTile.x :¤tTile.y; + int* l1 = ctrDrag ? &tileUnderMouse.y :&tileUnderMouse.x; + int* l2 = ctrDrag ? &tileUnderMouse.x :&tileUnderMouse.y; + int* s1 = ctrDrag ? &stepy: &stepx; + int* s2 = ctrDrag ? &stepx: &stepy; + + while( *v1 != *l1) + { + markTile( painter, currentTile ); + cost += buildCost( currentTile ); + tiles++; + *v1 += *s1; + } + while( *v2 != *l2 + *s2 ) + { + markTile( painter, currentTile ); cost += buildCost( currentTile ); + tiles++; + *v2 += *s2; } - tiles++; - currentTile.y += stepy; + } - } - markTile( painter, tileUnderMouse ); - tiles++; - if( (selected_module_type == CST_GREEN ) && realTile( currentTile ) != lastRazed ) { - cost += bulldozeCost( tileUnderMouse ); - } else { - cost += buildCost( tileUnderMouse ); - } + } + else + { + markTile( painter, tileUnderMouse ); + tiles++; + if( (userOperation->action == UserOperation::ACTION_BULLDOZE ) && realTile( currentTile ) != lastRazed ) { + cost += bulldozeCost( tileUnderMouse ); + } else { + cost += buildCost( tileUnderMouse ); + } + } std::stringstream prize; - if( selected_module_type == CST_GREEN ){ + if( userOperation->action == UserOperation::ACTION_BULLDOZE ){ if( roadDragging ){ prize << _("Estimated Bulldoze Cost: "); } else { @@ -1645,12 +1605,11 @@ prize << _("n/a"); } printStatusMessage( prize.str() ); - } else if( selected_module_type == CST_TRACK_LR || selected_module_type == CST_ROAD_LR - || selected_module_type == CST_RAIL_LR ) + } + else if( userOperation->action == UserOperation::ACTION_BUILD) { - int group = main_types[ selected_module_type ].group; - std::string buildingName = main_groups[ group ].name; - prize << dictionaryManager->get_dictionary().translate( buildingName ); + std::string buildingName = userOperation->constructionGroup->name; + prize << dictionaryManager->get_dictionary().translate( buildingName ); prize << _(": Cost to build "); if( cost > 0 ) { prize << cost << _("$"); @@ -1660,37 +1619,45 @@ printStatusMessage( prize.str() ); } else { showToolInfo( tiles ); - } + } } } /* * Show informatiosn about selected Tool - */ + */ void GameView::showToolInfo( int number /*= 0*/ ) -{ +{ std::stringstream infotextstream; - - if( selected_module_type == CST_NONE ) //query - { - infotextstream << _("Query Tool: Show information about selected building."); - } - else if( selected_module_type == CST_GREEN ) //bulldoze + + if( userOperation->action == UserOperation::ACTION_QUERY ) //query { - infotextstream << _("Bulldozer: remove building -price varies-"); + infotextstream << _("Query Tool: Show information about selected building."); } - else + else if( userOperation->action == UserOperation::ACTION_BULLDOZE ) //bulldoze { - int group = main_types[ selected_module_type ].group; - std::string buildingName = main_groups[ group ].name; - infotextstream << dictionaryManager->get_dictionary().translate( buildingName ); - infotextstream << _(": Cost to build ") << selected_module_cost <<_("$"); - infotextstream << _(", to bulldoze ") << main_groups[ group ].bul_cost <<_("$."); + infotextstream << _("Bulldozer: remove building -price varies-"); + } + else if( userOperation->action == UserOperation::ACTION_BUILD ) + { + infotextstream << userOperation->constructionGroup->getName(); + infotextstream << _(": Cost to build ") << userOperation->constructionGroup->getCosts() <<_("$"); + infotextstream << _(", to bulldoze ") << userOperation->constructionGroup->bul_cost <<_("$") << "."; if( number > 1 ){ infotextstream << _(" To build ") << number << _(" of them "); - infotextstream << _("will cost about ") << number*selected_module_cost << _("$."); + infotextstream << _("will cost about ") << number*userOperation->constructionGroup->getCosts() << _("$") << "-"; } } + else if ( userOperation->action == UserOperation::ACTION_EVACUATE ) + { + infotextstream << _("Evacuation of commodities is for free."); + } + else if ( userOperation->action == UserOperation::ACTION_FLOOD ) + { + infotextstream << _("Water") << _(": Cost to build ") << GROUP_WATER_COST << _("$"); + infotextstream << _(", to bulldoze ") << GROUP_WATER_BUL_COST << _("$") << "."; + } + printStatusMessage( infotextstream.str() ); } @@ -1722,52 +1689,46 @@ } int GameView::bulldozeCost( MapPoint tile ){ - int group; - int prize = 0; - if (MP_TYPE( tile.x, tile.y) == CST_USED) - group = MP_GROUP( MP_INFO(tile.x,tile.y).int_1, - MP_INFO(tile.x,tile.y).int_2 ); + + if (!world.is_visible(tile.x, tile.y)) + { return 0;} + Construction *reportingConstruction = world(tile.x, tile.y)->reportingConstruction; + if (reportingConstruction) + { return reportingConstruction->constructionGroup->bul_cost;} else - group = MP_GROUP( tile.x,tile.y ); - prize = main_groups[group].bul_cost; - return prize; + { + int group = world(tile.x, tile.y)->getGroup(); + if (group == GROUP_DESERT) + { return 0;} + else if (group == GROUP_WATER) + { return GROUP_WATER_BUL_COST;} + else + { return 1;} + } + return 0; } -int GameView::buildCost( MapPoint tile ){ - if( selected_module_type == CST_NONE ){ - return 0; - } - if (MP_TYPE( tile.x, tile.y ) == CST_USED) - return 0; - if (( selected_module_type == CST_TRACK_LR || selected_module_type == CST_ROAD_LR || - selected_module_type == CST_RAIL_LR) && - // Transport on water need a bridge - (MP_GROUP( tile.x, tile.y) == GROUP_WATER || - // upgrade bridge - ((selected_module_type == CST_ROAD_LR && (MP_GROUP( tile.x, tile.y) == GROUP_TRACK_BRIDGE)) || - (selected_module_type == CST_RAIL_LR && (MP_GROUP( tile.x, tile.y) == GROUP_TRACK_BRIDGE || - MP_GROUP( tile.x, tile.y) == GROUP_ROAD_BRIDGE))) ) ) - { - switch( selected_module_type ) { - case CST_TRACK_LR: - return get_group_cost( GROUP_TRACK_BRIDGE ); - case CST_ROAD_LR: - return get_group_cost( GROUP_ROAD_BRIDGE ); - case CST_RAIL_LR: - return get_group_cost( GROUP_RAIL_BRIDGE ); - } - // Not updgrade a transport - } else if ( !GROUP_IS_BARE(MP_GROUP( tile.x, tile.y )) && (selected_module_type == CST_TRACK_LR - || (selected_module_type == CST_ROAD_LR && (MP_GROUP( tile.x, tile.y) == GROUP_ROAD || - MP_GROUP( tile.x, tile.y) == GROUP_RAIL || MP_GROUP( tile.x, tile.y) == GROUP_RAIL_BRIDGE)) - || (selected_module_type == CST_RAIL_LR && - (MP_GROUP( tile.x, tile.y) == GROUP_RAIL || MP_GROUP( tile.x, tile.y) == GROUP_RAIL_BRIDGE)) - || (selected_module_type == CST_WATER && MP_GROUP( tile.x, tile.y) == GROUP_WATER )) ){ - return 0; +int GameView::buildCost( MapPoint tile ) +{ + if( !userOperation->is_allowed_here(tile.x, tile.y, false) || + userOperation->action == UserOperation::ACTION_QUERY || + userOperation->action == UserOperation::ACTION_EVACUATE) + { return 0;} + if( userOperation->action == UserOperation::ACTION_BUILD) + { if (world(tile.x, tile.y)->is_water()) //building a bridge + { return BRIDGE_FACTOR * userOperation->constructionGroup->getCosts();} + else //building on land + { return userOperation->constructionGroup->getCosts();} userOperation->constructionGroup->getCosts();} + if (userOperation->action == UserOperation::ACTION_FLOOD && + userOperation->is_allowed_here(tile.x, tile.y, false)) + { + return GROUP_WATER_COST; } - - return get_group_cost( main_types[ selected_module_type ].group ); + return 0; } //Register as Component -IMPLEMENT_COMPONENT_FACTORY(GameView); +IMPLEMENT_COMPONENT_FACTORY(GameView) + +/** @file lincity-ng/GameView.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/GameView.hpp lincity-ng-2.9~git20150314/src/lincity-ng/GameView.hpp --- lincity-ng-2.0/src/lincity-ng/GameView.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/GameView.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -23,7 +23,7 @@ #include "gui/Vector2.hpp" #include "gui/Texture.hpp" #include <time.h> -#include <SDL.h> +#include <SDL.h> #include <SDL_thread.h> #include <SDL_image.h> @@ -31,8 +31,6 @@ #include "MapPoint.hpp" #include "MiniMap.hpp" -#undef DEBUG_FPS - class GameView : public Component { public: @@ -40,29 +38,29 @@ ~GameView(); void parse(XmlReader& reader); - + void draw(Painter& painter); void resize(float width, float height ); void event(const Event& event); void requestRedraw(); - //Show City Tile(x/y) by centering the screen + //Show City Tile(x/y) by centering the screen void show(MapPoint point, bool redraw = true ); MapPoint getCenter(); - + //Set Zoomlevel to default void resetZoom(); - //increase Zoomlevel + //increase Zoomlevel void zoomIn(); - //decrease Zoomlevel + //decrease Zoomlevel void zoomOut(); //scroll the map void scroll( void ); //size in Tiles of marking under Cursor - void setCursorSize( int size ); + void setCursorSize( int size ); //inform GameView about change in Mini Map Mode void setMapMode( MiniMap::DisplayMode mMode ); @@ -73,31 +71,41 @@ //evaluate main_screen_originx and main_screen_originy void readOrigin( bool redraw = true ); //set main_screen_originx and main_screen_originy - void writeOrigin(); + void writeOrigin(); void printStatusMessage( std::string message ); + void fetchTextures(void); + //convert all remaining images in ConstructionGroup::reourceMap to textures + //check if tile is in city bool inCity( MapPoint tile ); + + int gameAreaMax(); + bool textures_ready; + //bool economyGraph_open; + int remaining_images; + private: void connectButtons(); void buttonClicked( Button* button ); void recenter(const Vector2& pos); Vector2 getScreenPoint(MapPoint point); MapPoint getTile(const Vector2& point); - void drawTile(Painter& painter, MapPoint point); - void drawOverlay(Painter& painter, MapPoint point); + void drawTile(Painter& painter, const MapPoint &point); + void drawTexture(Painter& painter, const MapPoint &point, GraphicsInfo *graphicsInfo); + void drawOverlay(Painter& painter, const MapPoint &point); void fillDiamond( Painter& painter, const Rect2D& rect ); void drawDiamond( Painter& painter, const Rect2D& rect ); - void loadTextures(); static int gameViewThread(void* data); - void setZoom(float newzoom); - Texture* readTexture(const std::string& filename); SDL_Surface* readImage(const std::string& filename); - void preReadCityTexture(int textureType, const std::string& filename); + void preReadImages(void); + Texture* readTexture(const std::string& filename); + //void loadTextures(); + //void preReadCityTexture(int textureType, const std::string& filename); - float tileWidth, tileHeight, zoom; + float tileWidth, tileHeight, zoom; //a virtual screen containing the whole city float virtualScreenWidth, virtualScreenHeight; @@ -111,7 +119,7 @@ SCROLL_DOWN_LEFT = (1 << 6), SCROLL_DOWN_RIGHT = (1 << 7), SCROLL_LSHIFT = (1 << 8), - SCROLL_RSHIFT = (1 << 9), + SCROLL_RSHIFT = (1 << 9) }; int keyScrollState; int mouseScrollState; @@ -121,31 +129,29 @@ int bulldozeCost( MapPoint tile ); int buildCost( MapPoint tile ); - - Texture* cityTextures[ NUM_OF_TYPES ]; - SDL_Surface* cityImages[ NUM_OF_TYPES ]; - Texture* blankTexture; - int cityTextureX[ NUM_OF_TYPES ]; - int cityTextureY[ NUM_OF_TYPES ]; - SDL_mutex* mTextures; - SDL_mutex* mThreadRunning; + + GraphicsInfo blankGraphicsInfo; + + //SDL_mutex* mTextures; + //SDL_mutex* mThreadRunning; SDL_Thread* loaderThread; - volatile bool stopThread; - + bool stopThread; + MapPoint tileUnderMouse; Vector2 dragStart; bool mouseInGameView; bool dragging, rightButtonDown; Uint32 dragStartTime; - - bool roadDragging, leftButtonDown; + + bool roadDragging, ctrDrag, leftButtonDown; MapPoint startRoad; - + bool areaBulldoze; + static const float defaultTileWidth; static const float defaultTileHeight; static const float defaultZoom; - bool hideHigh; + bool hideHigh, showTerrainHeight; int mapOverlay; MiniMap::DisplayMode mapMode; static const int overlayNone = 0; @@ -154,8 +160,8 @@ static const int overlayMAX = 2; static const int gameAreaMin = 1; - static const int gameAreaMax = WORLD_SIDE_LEN -2; - void markTile( Painter& painter, MapPoint map ); + + void markTile( Painter& painter, const MapPoint &tile ); int cursorSize; bool buttonsConnected; @@ -165,9 +171,12 @@ }; GameView* getGameView(); - + Uint32 autoScroll( Uint32 interval, void *param ); static const int scrollBorder = 5; #endif + +/** @file lincity-ng/GameView.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/getBundleSharePath.cpp lincity-ng-2.9~git20150314/src/lincity-ng/getBundleSharePath.cpp --- lincity-ng-2.0/src/lincity-ng/getBundleSharePath.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/getBundleSharePath.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,64 @@ + +#ifdef __APPLE__ + + /* + Function : getBundleSharePath() + Role : localisation shared datas in a bundle + Parameter : Name to add at the end of return path + Return : path to th data of the bundle + Author : Thierry Maillard - thierry dot maillard500 at orange dot fr + Date : 25/3/2007 + */ + + #include <CoreFoundation/CFBundle.h> + #include <string.h> + #include <sstream> + #include <stdexcept> + + char *getBundleSharePath(char *packageName) + { + CFBundleRef bundle; + CFURLRef bundle_url; + CFStringRef sr; + static char path[FILENAME_MAX]; + + if( !(bundle = CFBundleGetMainBundle()) ) + { + std::stringstream msg; + msg << "Can't get application name : CFBundleGetMainBundle()"; + throw std::runtime_error(msg.str()); + } + + if( !(bundle_url = CFBundleCopyBundleURL( bundle )) ) + { + std::stringstream msg; + msg << "Can't get application name : CFBundleCopyBundleURL()"; + throw std::runtime_error(msg.str()); + } + + if( !(sr = CFURLCopyFileSystemPath( bundle_url, kCFURLPOSIXPathStyle )) ) + { + CFRelease( bundle_url ); + std::stringstream msg; + msg << "Can't get application name : CFURLCopyFileSystemPath()"; + throw std::runtime_error(msg.str()); + } + + if( !CFStringGetCString( sr, path, FILENAME_MAX, kCFStringEncodingASCII ) ) + { + CFRelease( bundle_url ); + CFRelease( sr ); + std::stringstream msg; + msg << "Can't get application name : CFStringGetCString()"; + throw std::runtime_error(msg.str()); + } + + CFRelease( bundle_url ); + CFRelease( sr ); + + (void)strcat(path, "/Contents/Resources/share/"); + (void)strcat(path, packageName); + return path; + } /* char *getBundleSharePath() */ + +#endif diff -Nru lincity-ng-2.0/src/lincity-ng/HelpWindow.cpp lincity-ng-2.9~git20150314/src/lincity-ng/HelpWindow.cpp --- lincity-ng-2.0/src/lincity-ng/HelpWindow.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/HelpWindow.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -142,3 +142,6 @@ topicHistory.pop(); } } + +/** @file lincity-ng/HelpWindow.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/HelpWindow.hpp lincity-ng-2.9~git20150314/src/lincity-ng/HelpWindow.hpp --- lincity-ng-2.0/src/lincity-ng/HelpWindow.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/HelpWindow.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -46,3 +46,6 @@ }; #endif + +/** @file lincity-ng/HelpWindow.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/main.cpp lincity-ng-2.9~git20150314/src/lincity-ng/main.cpp --- lincity-ng-2.0/src/lincity-ng/main.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/main.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -21,6 +21,7 @@ #include <sstream> #include <stdexcept> #include <memory> +#include <new> #include <physfs.h> #include <SDL.h> #include <SDL_opengl.h> @@ -47,32 +48,20 @@ #include "lincity/loadsave.h" #include "lincity/engglobs.h" #include "lincity/lin-city.h" +#include "lincity/init_game.h" + #ifdef ENABLE_BINRELOC #include "binreloc.h" #endif Painter* painter = 0; -TinyGetText::DictionaryManager* dictionaryManager = 0; +tinygettext::DictionaryManager* dictionaryManager = 0; bool restart = false; -void initSDL() -{ - if(SDL_Init(SDL_INIT_EVERYTHING) < 0) { - std::stringstream msg; - msg << "Couldn't initialize SDL: " << SDL_GetError(); - throw std::runtime_error(msg.str()); - } -} - -void initTTF() -{ - if(TTF_Init() < 0) { - std::stringstream msg; - msg << "Couldn't initialize SDL_ttf: " << SDL_GetError(); - throw std::runtime_error(msg.str()); - } -} +#ifdef __APPLE__ + extern char *getBundleSharePath(char *packageName); +#endif void initPhysfs(const char* argv0) { @@ -108,7 +97,7 @@ if(!PHYSFS_setWriteDir(writedir)) { std::ostringstream msg; - msg << "Failed to use configuration directory '" << + msg << "Failed to use configuration directory '" << writedir << "': " << PHYSFS_getLastError(); delete[] writedir; throw std::runtime_error(msg.str()); @@ -127,7 +116,7 @@ char** rc = PHYSFS_enumerateFiles("/"); size_t extlen = strlen(archiveExt); //TODO sort .zip files! so we are sure which patch is first. -//and change all file access to physfs. what does PHYSFS_getRealDir +//and change all file access to physfs. what does PHYSFS_getRealDir //do when file in in archive? for(char** i = rc; *i != 0; ++i) { size_t l = strlen(*i); @@ -144,64 +133,146 @@ } PHYSFS_freeList(rc); - + // when started from source dir... std::string dir = PHYSFS_getBaseDir(); - dir += "/data"; - std::string testfname = dir; - testfname += "/images/tiles/images.xml"; - FILE* f = fopen(testfname.c_str(), "r"); + dir += "data"; + std::ostringstream testfname; + //TODO: Windows/Mingw does not like this test on other machine? + testfname << dir << dirsep << "images" << dirsep << "tiles" << dirsep << "images.xml"; + FILE* f = fopen(testfname.str().c_str(), "r"); if(f) { fclose(f); if(!PHYSFS_addToSearchPath(dir.c_str(), 1)) { #ifdef DEBUG - std::cout << "Warning: Couldn't add '" << dir << + std::cout << "Warning: Couldn't add '" << dir << "' to physfs searchpath: " << PHYSFS_getLastError() << "\n"; #endif } } -#if defined(APPDATADIR) || defined(ENABLE_BINRELOC) - std::string datadir; -#ifdef ENABLE_BINRELOC - BrInitError error; - if (br_init (&error) == 0 && error != BR_INIT_ERROR_DISABLED) { - printf ("Warning: BinReloc failed to initialize (error code %d)\n", - error); - printf ("Will fallback to hardcoded default path.\n"); - } - - char* brdatadir = br_find_data_dir("/usr/local/share"); - datadir = brdatadir; - datadir += "/" PACKAGE_NAME; - free(brdatadir); +#ifndef __APPLE__ + #if defined(APPDATADIR) || defined(ENABLE_BINRELOC) + std::string datadir; + #ifdef ENABLE_BINRELOC + BrInitError error; + if (br_init (&error) == 0 && error != BR_INIT_ERROR_DISABLED) { + printf ("Warning: BinReloc failed to initialize (error code %d)\n", + error); + printf ("Will fallback to hardcoded default path.\n"); + } + + char* brdatadir = br_find_data_dir("/usr/local/share"); + datadir = brdatadir; + datadir += "/" PACKAGE_NAME; + free(brdatadir); + #else + datadir = APPDATADIR; + #endif + + if(!PHYSFS_addToSearchPath(datadir.c_str(), 1)) { + std::cout << "Couldn't add '" << datadir + << "' to physfs searchpath: " << PHYSFS_getLastError() << "\n"; + } + #endif #else - datadir = APPDATADIR; -#endif - - if(!PHYSFS_addToSearchPath(datadir.c_str(), 1)) { - std::cout << "Couldn't add '" << datadir - << "' to physfs searchpath: " << PHYSFS_getLastError() << "\n"; - } + #if defined(APPDATADIR) || defined(ENABLE_BINRELOC) && __APPLE__ + std::string datadir; + #ifdef ENABLE_BINRELOC + BrInitError error; + if (br_init (&error) == 0 && error != BR_INIT_ERROR_DISABLED) { + printf ("Warning: BinReloc failed to initialize (error code %d)\n", + error); + printf ("Will fallback to hardcoded default path.\n"); + } + + char* brdatadir = br_find_data_dir("/usr/local/share"); + datadir = brdatadir; + datadir += "/" PACKAGE_NAME; + free(brdatadir); + #else + datadir = APPDATADIR; + #endif + datadir = getBundleSharePath(PACKAGE_NAME); + if(!PHYSFS_addToSearchPath(datadir.c_str(), 1)) { + std::cout << "Couldn't add '" << datadir + << "' to physfs searchpath: " << PHYSFS_getLastError() << "\n"; + } + #endif #endif // allow symbolic links PHYSFS_permitSymbolicLinks(1); - //show search Path - for(char** i = PHYSFS_getSearchPath(); *i != NULL; i++){ - printf("[%s] is in the search path.\n", *i); - } + //show search Path + for(char** i = PHYSFS_getSearchPath(); *i != NULL; i++) + { printf("[%s] is in the search path.\n", *i);} //show write directory printf("[%s] is the write directory.\n", PHYSFS_getWriteDir()); } +void musicHalted() { + getSound()->changeTrack(NEXT_OR_FIRST_TRACK); + //FIXME: options menu song entry doesn't update while song changes. +} + void initVideo(int width, int height) { int bpp = 0; int flags = 0; + const SDL_VideoInfo* VideoInfo; + +#ifdef DEBUG + + #define BUFFER_SIZE 256 + char myBuffer[BUFFER_SIZE]; + SDL_Rect** modes; + int i; + + + // Obtain the video driver name + if (SDL_VideoDriverName(myBuffer, BUFFER_SIZE) != NULL) { + std::cout << "\nThe video driver name is " << myBuffer << std::endl; + } else { + std::cerr << "\nFailed to obtain the video driver name." << std::endl; + } + + + /* Get available fullscreen/hardware modes */ + modes = SDL_ListModes(NULL, SDL_FULLSCREEN|SDL_HWSURFACE); + + /* Check if there are any modes available */ + if (modes == (SDL_Rect**)0) { + printf("No modes available!\n"); + exit(-1); + } + + /* Check if our resolution is restricted */ + if (modes == (SDL_Rect**)-1) { + printf("All resolutions available.\n"); + } else { + /* Print valid modes */ + printf("Available Modes\n"); + for (i=0; modes[i]; ++i) + printf(" %d x %d\n", modes[i]->w, modes[i]->h); + } + + + // more info on BEST Video Mode as we request these information *before* calling SDL_SetVideoMode + VideoInfo = SDL_GetVideoInfo(); + + printf("\n***BEST*** video mode properties\n"); + printf("Hardware surface available -> %i\n", VideoInfo->hw_available); + printf("hardware blit acceleration -> %i\n", VideoInfo->blit_hw); + printf("hardware color fill -> %i\n", VideoInfo->blit_fill); + printf("VIDEO memory available (on graphic card) (KB) -> %i \n (only if hw_available == 1, otherwise it is equal to 0)\n", VideoInfo->video_mem); + printf("Number of bytes per pixel in the video card -> %i\n", VideoInfo->vfmt->BytesPerPixel); + printf("Window manager available -> %i\n", VideoInfo->wm_available); + +#endif + if( getConfig()->useOpenGL ){ - flags = SDL_OPENGL; + flags = SDL_OPENGL | SDL_RESIZABLE; SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1); SDL_GL_SetAttribute(SDL_GL_RED_SIZE, 1); SDL_GL_SetAttribute(SDL_GL_GREEN_SIZE, 1); @@ -209,29 +280,45 @@ //SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, 0); //SDL_GL_SetAttribute(SDL_GL_DEPTH_SIZE, 16); } else { - flags = SDL_HWSURFACE; + flags = SDL_HWSURFACE | SDL_RESIZABLE | SDL_DOUBLEBUF; } if(getConfig()->useFullScreen) flags |= SDL_FULLSCREEN; SDL_Surface* screen = SDL_SetVideoMode(width, height, bpp, flags); + + if(!screen && (width > 1024 || height > 768 )){ + screen = SDL_SetVideoMode(1024, 768, bpp, flags); + std::cerr << "* Fallback to 1024x768.\n"; + } + if(!screen && (width > 800 || height > 600 )){ + screen = SDL_SetVideoMode(800, 600, bpp, flags); + std::cerr << "* Fallback to 800x600.\n"; + } + SDL_WM_SetCaption(PACKAGE_NAME " " PACKAGE_VERSION, 0); if(!screen) { std::stringstream msg; msg << "Couldn't set video mode (" << width << "x" << height - << "-" << bpp << "bpp) : " << SDL_GetError(); + << "-" << bpp << "bpp) : " << SDL_GetError() << std::endl; + if(getConfig()->useOpenGL) { - std::cerr << "* Fallback to software mode.\n"; + std::cerr << "* Fallback to SDL mode.\n"; getConfig()->useOpenGL = false; - initVideo(width, height); + initVideo(getConfig()->videoX, getConfig()->videoY); //width, height return; } throw std::runtime_error(msg.str()); } - delete painter; + if(painter) + { + delete painter; + painter = 0; + } + VideoInfo = SDL_GetVideoInfo(); if( getConfig()->useOpenGL ){ glDisable(GL_DEPTH_TEST); glDisable(GL_CULL_FACE); @@ -246,14 +333,14 @@ glOrtho(0, screen->w, screen->h, 0, -1, 1); glClear(GL_COLOR_BUFFER_BIT); - + painter = new PainterGL(); - std::cout << "OpenGL Mode " << getConfig()->videoX; - std::cout << "x" << getConfig()->videoY << "\n"; + std::cout << "\nOpenGL Mode " << VideoInfo->current_w; + std::cout << "x" << VideoInfo->current_h << "\n"; } else { painter = new PainterSDL(screen); - std::cout << "SDL Mode " << getConfig()->videoX; - std::cout << "x"<< getConfig()->videoY <<"\n"; + std::cout << "\nSDL Mode " << VideoInfo->current_w; + std::cout << "x"<< VideoInfo->current_h <<"\n"; } if(texture_manager == 0) { @@ -267,6 +354,21 @@ if(fontManager == 0) { fontManager = new FontManager(); } + +#ifdef DEBUG + // more info on CURRENT Video Mode + VideoInfo = SDL_GetVideoInfo(); + + printf("\n***CURRENT*** video mode properties\n"); + printf("Hardware surface available -> %i\n", VideoInfo->hw_available); + printf("hardware blit acceleration -> %i\n", VideoInfo->blit_hw); + printf("hardware color fill -> %i\n", VideoInfo->blit_fill); + printf("VIDEO memory available (on graphic card) (KB) -> %i\n", VideoInfo->video_mem); + printf("Number of butes per pixel in the video card -> %i\n", VideoInfo->vfmt->BytesPerPixel); + printf("Window manager available -> %i\n", VideoInfo->wm_available); + +#endif + } void checkGlErrors() @@ -291,13 +393,13 @@ case GL_STACK_OVERFLOW: std::cerr << "GL_STACK_OVERFLOW"; break; - case GL_STACK_UNDERFLOW: + case GL_STACK_UNDERFLOW: std::cerr << "GL_STACK_UNDERFLOW"; break; - case GL_TABLE_TOO_LARGE: + case GL_TABLE_TOO_LARGE: std::cerr << "GL_TABLE_TOO_LARGE"; break; - case GL_OUT_OF_MEMORY: + case GL_OUT_OF_MEMORY: std::cerr << "GL_OUT_OF_MEMORY"; break; default: @@ -325,33 +427,35 @@ std::auto_ptr<Game> game; MainState state = MAINMENU; MainState nextstate; - - //we need the game-gui to set all states while loading a savegame - if(game.get() == 0) - game.reset(new Game()); - while(!LCPBarInstance){//wait until PBars exist so they can be initalized - printf("."); - SDL_Delay(100); - } - initLincity(); - while(state != QUIT) { - switch(state) { + while(state != QUIT) + { + switch(state) + { case MAINMENU: { if(menu.get() == 0) - menu.reset(new MainMenu()); + { menu.reset(new MainMenu());} nextstate = menu->run(); } break; case INGAME: { if(game.get() == 0) + { game.reset(new Game()); + + while(!LCPBarPage1 || !LCPBarPage2) + {//wait until PBars exist so they can be initalized + printf("."); + SDL_Delay(100); + } + } nextstate = game->run(); if(menu.get() == 0) - menu.reset(new MainMenu()); + { menu.reset(new MainMenu());} menu->gotoMainMenu(); + } break; case RESTART: @@ -361,7 +465,6 @@ default: assert(false); } - state = nextstate; } } @@ -370,7 +473,7 @@ { for(int currentArgument = 1; currentArgument < argc; ++currentArgument) { std::string argStr = argv[currentArgument]; - + if(argStr == "-v" || argStr == "--version") { std::cout << PACKAGE_NAME << " version " << PACKAGE_VERSION << "\n"; exit(0); @@ -396,7 +499,7 @@ } else if(argStr == "-g" || argStr == "--gl") { getConfig()->useOpenGL = true; } else if(argStr == "-s" || argStr == "--sdl") { - getConfig()->useOpenGL = false; + getConfig()->useOpenGL = false; } else if(argStr == "-S" || argStr == "--size") { currentArgument++; if(currentArgument >= argc) { @@ -416,11 +519,10 @@ } getConfig()->videoX = newX; getConfig()->videoY = newY; - std::cout << newX << " " << newY << "\n"; } else if(argStr == "-f" || argStr == "--fullscreen") { - getConfig()->useFullScreen = true; + getConfig()->useFullScreen = true; } else if(argStr == "-w" || argStr == "--window") { - getConfig()->useFullScreen = false; + getConfig()->useFullScreen = false; } else if(argStr == "-m" || argStr == "--mute") { getConfig()->soundEnabled = false; getConfig()->musicEnabled = false; @@ -457,39 +559,55 @@ std::cout << "Starting " << PACKAGE_NAME << " (version " << PACKAGE_VERSION << ")...\n"; #else std::cout << "Starting " << PACKAGE_NAME << " (version " << PACKAGE_VERSION << ") in Debug Mode...\n"; -#endif +#endif initPhysfs(argv[0]); - dictionaryManager = new TinyGetText::DictionaryManager(); + + if( getConfig()->language != "autodetect" ){ + setenv("LINCITY_LANG", getConfig()->language.c_str(), false); + } + dictionaryManager = new tinygettext::DictionaryManager(); dictionaryManager->set_charset("UTF-8"); dictionaryManager->add_directory("locale"); std::cout << "Language is \"" << dictionaryManager->get_language() << "\".\n"; - + #ifndef DEBUG } catch(std::exception& e) { - std::cerr << "Unexpected exception: " << e.what() << "\n"; + std::cerr << "Unexpected exception: " << e.what() << "\n"; return 1; } catch(...) { std::cerr << "Unexpected exception.\n"; return 1; - } + } #endif - parseCommandLine(argc, argv); // Do not use getConfig() before parseCommandLine. - + parseCommandLine(argc, argv); // Do not use getConfig() before parseCommandLine for anything command line might change. + fast_time_for_year = getConfig()->quickness; fprintf(stderr," fast = %i\n", fast_time_for_year); - + // in debug mode we want a backtrace of the exceptions so we don't catch them #ifndef DEBUG try { #endif xmlInitParser (); - std::auto_ptr<Sound> sound; - sound.reset(new Sound()); - initSDL(); - initTTF(); + if(SDL_Init(SDL_INIT_EVERYTHING) < 0) { + std::stringstream msg; + msg << "Couldn't initialize SDL: " << SDL_GetError(); + throw std::runtime_error(msg.str()); + } + if(TTF_Init() < 0) { + std::stringstream msg; + msg << "Couldn't initialize SDL_ttf: " << SDL_GetError(); + throw std::runtime_error(msg.str()); + } initVideo(getConfig()->videoX, getConfig()->videoY); - + initLincity(); + std::auto_ptr<Sound> sound; + sound.reset(new Sound()); + //set a function to call when music stops + Mix_HookMusicFinished(musicHalted); mainLoop(); + getConfig()->save(); + destroy_game(); #ifndef DEBUG } catch(std::exception& e) { std::cerr << "Unexpected exception: " << e.what() << "\n"; @@ -499,7 +617,6 @@ result = 1; } #endif - getConfig()->save(); delete painter; delete fontManager; delete texture_manager; @@ -515,9 +632,9 @@ #ifdef WIN32 //Windows has a Problem with Whitespaces. std::string fixWhiteSpaceInPathnameProblem; - fixWhiteSpaceInPathnameProblem="\""; - fixWhiteSpaceInPathnameProblem+=argv[0]; - fixWhiteSpaceInPathnameProblem+="\""; + fixWhiteSpaceInPathnameProblem="\""; + fixWhiteSpaceInPathnameProblem+=argv[0]; + fixWhiteSpaceInPathnameProblem+="\""; execlp( argv[0], fixWhiteSpaceInPathnameProblem.c_str(), (char *) NULL ); #else execlp( argv[0], argv[0], (char *) NULL ); @@ -526,3 +643,6 @@ return result; } + +/** @file lincity-ng/main.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/main.hpp lincity-ng-2.9~git20150314/src/lincity-ng/main.hpp --- lincity-ng-2.0/src/lincity-ng/main.hpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/main.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -18,12 +18,13 @@ #ifndef __MAIN_HPP__ #define __MAIN_HPP__ -#include "tinygettext/TinyGetText.hpp" +#include "tinygettext/tinygettext.hpp" enum MainState { MAINMENU, INGAME, QUIT, RESTART }; + void initVideo(int width, int height); void flipScreenBuffer(); @@ -37,3 +38,6 @@ #endif + +/** @file lincity-ng/main.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MainLincity.cpp lincity-ng-2.9~git20150314/src/lincity-ng/MainLincity.cpp --- lincity-ng-2.0/src/lincity-ng/MainLincity.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MainLincity.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -27,25 +27,29 @@ #include <physfs.h> #include "lincity/init_game.h" -#include "lincity/simulate.h" #include "lincity/lin-city.h" +#include "lincity/simulate.h" #include "lincity/lc_locale.h" #include "lincity/fileutil.h" #include "lincity/loadsave.h" +#include "lincity/modules/all_modules.h" #include "gui_interface/screen_interface.h" #include "gui_interface/mps.h" #include "gui_interface/shared_globals.h" +#include "gui_interface/readpng.h" #include "TimerInterface.hpp" #include "GameView.hpp" +#include "Game.hpp" #include "ScreenInterface.hpp" #include "Dialog.hpp" #include "Config.hpp" extern void print_total_money(void); extern void init_types(void); +extern void initFactories(void); int lincitySpeed = MED_TIME_FOR_YEAR; /******************************************/ @@ -57,45 +61,46 @@ void execute_timestep () { + static int dontskip = 0; + + /* Get timestamp for this iteration */ + get_real_time(); if( lincitySpeed == 0 || blockingDialogIsOpen ) { SDL_Delay(10); //don't burn cpu in active loop return; - } else if ( lincitySpeed == fast_time_for_year) { - if ( (total_time % (10 - fast_time_for_year)) == 0 ) { - SDL_Delay(10); - /* fast = 1 => wait once for each 9 loop => 1.3 real second / game year - * beware it can warm hardware (nearly always active). - * - * fast = 9 = default => wait at each step => 12 real seconds / game year - * = nearly old behavior, except we no more skeep frames. - * - * On athlon-xp 2200+ (1600MHz) 750 MB + Nvidia geforce 420 MX (16 MB) - * this is the limiting factor for max_speed - * Removing it gives approximately the same speed as old-ng = 4.0 s/year - * instead of 24s/year with delay 10 (default fast = 9) - * - * SDL doc says to rely on at least 10 ms granurality on all OS without - * real time ability (Windows, Linux, MacOS X...) hence the trick - * of waiting 1/n loop. - */ - } - } else - SDL_Delay(lincitySpeed); + } // Do the simulation. Remember 1 month = 100 days, only the display fits real life :) do_time_step(); //draw the updated city - //in FAST-Mode, update at the last day in Month, so print_stats will work. - if( ( lincitySpeed != fast_time_for_year ) || - ( total_time % ( NUMOF_DAYS_IN_MONTH * getConfig()->skipMonthsFast ) ) == NUMOF_DAYS_IN_MONTH - 1 ){ - print_stats (); + if ( lincitySpeed != fast_time_for_year) { + SDL_Delay(lincitySpeed); // This is the limiting factor for speed + + print_stats(); updateDate(); print_total_money(); getGameView()->requestRedraw(); - } else if (fast_time_for_year != FAST_TIME_FOR_YEAR) { // The point of fast mode is to be really fast. So skip frames for speed by default. - getGameView()->requestRedraw(); // Users with fast machines who prefer nice animations in fast mode can set fast speed manually to get them back. + + } else { + /* SDL doc says to rely on at least 10 ms granurality on all OS without + * real time ability (Windows, Linux, MacOS X...) + * So, as we cannot wait 1ms, we just don't wait when we need speed. + */ + + //in FAST-Mode, update at the last day in Month, so print_stats will work. + if( ( total_time % NUMOF_DAYS_IN_MONTH ) == NUMOF_DAYS_IN_MONTH - 1 ){ + print_stats (); + updateDate(); + print_total_money(); + } + if (dontskip++ == fast_time_for_year ) { + // The point of fast mode is to be really fast. So skip frames for speed + // fast_time_for_year is read from config file = parameter named "quickness" + dontskip = 0; + getGameView()->requestRedraw(); + } } } @@ -103,93 +108,81 @@ * get Data form Lincity NG and Save City */ void saveCityNG( std::string newFilename ){ - GameView* gv = getGameView(); - if( gv ){ gv->writeOrigin(); } - save_city(const_cast<char*>( newFilename.c_str() ) ); + if (getGame()) + { + GameView* gv = getGameView(); + if( gv ){ gv->writeOrigin(); } + save_city(const_cast<char*>( newFilename.c_str() ) ); + } } /* * Load City and do setup for Lincity NG. */ bool loadCityNG( std::string filename ){ - /* TODO use PhysFS directly to load file instead of getRealDir hack */ - const char* directory = PHYSFS_getRealDir(filename.c_str()); - if( !directory ){ - return false; + if( PHYSFS_isDirectory( filename.c_str() )) + { return false;} + + + const char* directory = PHYSFS_getRealDir(filename.c_str()); + if (directory) + { + //FIXME PHYSFS_getWriteDir() does not work for built in scenarios + std::string dir = directory;//PHYSFS_getWriteDir(); + filename = dir + PHYSFS_getDirSeparator() + filename; + if( file_exists( const_cast<char*>( filename.c_str()) ) ) + { + load_city_2(const_cast<char*>(filename.c_str())); + update_avail_modules(0); + GameView* gv = getGameView(); + if( gv ){ gv->readOrigin(); } + return true; + } + else + { + std::cout << "could not locate: " << filename << std::endl; + } } - std::string dir = directory; - filename = dir + PHYSFS_getDirSeparator() + filename; - if( file_exists( const_cast<char*>( filename.c_str()) ) ){ - load_city_2(const_cast<char*>(filename.c_str())); - update_avail_modules(0); - GameView* gv = getGameView(); - if( gv ){ gv->readOrigin(); } - return true; + else + { + std::cout << "could not find: " << filename << std::endl; } return false; } -void initLCengine() +void initLincity() { - /* I18n */ - lincity_set_locale (); + /* I18n */ + lincity_set_locale(); - /* Set up the paths to certain files and directories */ - init_path_strings (); + /* Set up the paths to certain files and directories */ + init_path_strings(); - /* Make sure that things are installed where they should be */ - // verify_package (); + /* Make sure the save directory exists */ + check_savedir(); - /* Make sure the save directory exists */ - check_savedir (); - - /* Load preferences */ - //load_lincityrc (); //oldgui stuff, unused in NG - - /* Initialize random number generator */ - srand (time (0)); - - /* Save preferences */ - //save_lincityrc (); //oldgui stuff, unused in NG - // init_fonts (); // unsused in NG - - initialize_monthgraph (); - // init_mouse_registry (); - // init_mini_map_mouse (); - mps_init(); - - // setcustompalette (); - // draw_background (); - // prog_box (_("Loading the game"), 1); - init_types (); - // means "init buttons" init_modules(); + /*initialize Desktop Componenet Factories*/ + initFactories(); -} + /* Initialize random number generator */ + srand (time (0)); + initialize_monthgraph(); + //mps_init(); //CK no implemented -void initLincity() -{ - initLCengine(); + // initialize constructions + initializeModules(); + + // init_types (); + load_png_graphics(); + main_types[CST_USED].group = GROUP_USED; + main_types[CST_USED].graphic = 0; /* Won't be dereferenced! */ // animation time reset_start_time (); - - screen_full_refresh (); - //load current game if it exists - if( ! loadCityNG( std::string( "9_currentGameNG.scn" ) ) ) { - //create a new City with village just in case - new_city( &main_screen_originx, &main_screen_originy, 1 ); - } } -void doLincityStep() -{ - /* Get timestamp for this iteration */ - get_real_time(); - - execute_timestep (); - - // return true; -} +/** @file lincity-ng/MainLincity.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MainLincity.hpp lincity-ng-2.9~git20150314/src/lincity-ng/MainLincity.hpp --- lincity-ng-2.0/src/lincity-ng/MainLincity.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MainLincity.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -31,3 +31,6 @@ bool loadCityNG( std::string filename ); #endif + +/** @file lincity-ng/MainLincity.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MainMenu.cpp lincity-ng-2.9~git20150314/src/lincity-ng/MainMenu.cpp --- lincity-ng-2.0/src/lincity-ng/MainMenu.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MainMenu.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -35,7 +35,6 @@ #include "gui/callback/Callback.hpp" #include "gui_interface/shared_globals.h" -#include "lincity/lin-city.h" #include "lincity/fileutil.h" #include "CheckButton.hpp" @@ -45,12 +44,15 @@ #include "Config.hpp" #include "Sound.hpp" #include "GameView.hpp" +#include "Game.hpp" #include "MainLincity.hpp" #include "readdir.hpp" #include "tinygettext/gettext.hpp" -extern void new_city(int *originx, int *originy, int random_village); +#include "lincity/init_game.h" + +extern std::string autoLanguage; MainMenu::MainMenu() { @@ -59,6 +61,8 @@ baseName = ""; lastClickTick = 0; doubleClickButtonName = ""; + mFilename = ""; + baseName = ""; } MainMenu::~MainMenu() @@ -68,14 +72,14 @@ void MainMenu::loadMainMenu() { - if(mainMenu.get() == 0) { + if(mainMenu.get() == 0) + { mainMenu.reset(loadGUIFile("gui/mainmenu.xml")); - // connect signals Button* quitButton = getButton(*mainMenu, "QuitButton"); quitButton->clicked.connect( makeCallback(*this, &MainMenu::quitButtonClicked)); - Button* continueButton = getButton(*mainMenu, "ContinueButton"); + Button* continueButton = getButton(*mainMenu, "ContinueButton"); continueButton->clicked.connect( makeCallback(*this, &MainMenu::continueButtonClicked)); Button* newGameButton = getButton(*mainMenu, "NewGameButton"); @@ -93,26 +97,42 @@ Button* optionsButton = getButton(*mainMenu, "OptionsButton"); optionsButton->clicked.connect( makeCallback(*this, &MainMenu::optionsButtonClicked)); - + } - mainMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); + mainMenu->resize(getConfig()->videoX, getConfig()->videoY); //(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } void MainMenu::fillNewGameMenu() { +#if 1 + //Do not remove it! + //It is need for localization + // + // If you going to remove this, you must + // get names from data/opening/*scn files, + // and update messages.pot from script. + (void)N_("Rocket_98"); + (void)N_("Beach"); + (void)N_("bad_times"); + (void)N_("extreme_arid"); + (void)N_("extreme_wetland"); + (void)N_("good_times"); +#endif const std::string buttonNames[]={"File0","File1","File2","File3","File4","File5"}; - + char **files= PHYSFS_enumerateFiles("opening"); - + char **fptr=files; - fileMap.clear(); - + CheckButton *button; + + fileMap.clear(); + for(int i=0;i<6;i++) { - CheckButton *button=getCheckButton(*newGameMenu.get(),buttonNames[i]); - + button=getCheckButton(*newGameMenu.get(),buttonNames[i]); + button->clicked.connect(makeCallback(*this,&MainMenu::selectLoadGameButtonClicked)); while(*fptr) { @@ -128,7 +148,7 @@ } // save real name fileMap.insert(std::pair<std::string, std::string>(buttonNames[i], f )); - // use translated name for caption + // use translated name for caption button->setCaptionText(_(f.c_str())); fptr++; } @@ -136,26 +156,42 @@ button->setCaptionText(""); } PHYSFS_freeList(files); + + button=getCheckButton(*newGameMenu.get(),"WithVillage"); + button->check(); + //button->setCaptionText(_("random empty board")); + //button->clicked.connect(makeCallback(*this,&MainMenu::selectLoadGameButtonClicked)); + + button=getCheckButton(*newGameMenu.get(),"RiverDelta"); + button->setCaptionText(_("river delta")); + button->clicked.connect(makeCallback(*this,&MainMenu::selectLoadGameButtonClicked)); + + button=getCheckButton(*newGameMenu.get(),"DesertArea"); + button->setCaptionText(_("semi desert")); + button->clicked.connect(makeCallback(*this,&MainMenu::selectLoadGameButtonClicked)); + + button=getCheckButton(*newGameMenu.get(),"TemperateArea"); + button->setCaptionText(_("temperate")); + button->clicked.connect(makeCallback(*this,&MainMenu::selectLoadGameButtonClicked)); + + button=getCheckButton(*newGameMenu.get(),"SwampArea"); + button->setCaptionText(_("swamp")); + button->clicked.connect(makeCallback(*this,&MainMenu::selectLoadGameButtonClicked)); + return; - /* Is there a better way to add filenames to the directory? */ - _("good_times"); - _("bad_times"); - _("Beach"); - _("extreme_arid"); - _("extreme_wetland"); } void MainMenu::fillLoadMenu( bool save /*= false*/ ) { const std::string buttonNames[]={"File0","File1","File2","File3","File4","File5"}; - + char** rc = PHYSFS_enumerateFiles("/"); char* curfile; CheckButton *button; for(int i=0;i<6;i++) { - char* recentfile = NULL; + char* recentfile = NULL; PHYSFS_sint64 t = 0; std::stringstream filestart; @@ -165,8 +201,8 @@ } else { button = getCheckButton(*loadGameMenu.get(),buttonNames[i]); } - //make sure Button is connected only once - button->clicked.clear(); + //make sure Button is connected only once + button->clicked.clear(); if( save ) button->clicked.connect(makeCallback(*this,&MainMenu::selectSaveGameButtonClicked)); else { @@ -178,15 +214,15 @@ // && !( curfile->d_type & DT_DIR ) ) is not portable. So // don't create a directoy named 2_ in a savegame-directory or // you can no longer load from slot 2. - if (t == 0) { + if (t == 0) { recentfile = curfile; t = PHYSFS_getLastModTime(recentfile); } else { if (PHYSFS_getLastModTime(curfile) > t) { -#ifdef DEBUG +/*#ifdef DEBUG fprintf(stderr," %s is more recent than previous %s\n", curfile, recentfile); -#endif +#endif*/ recentfile = curfile; t = PHYSFS_getLastModTime(recentfile); } @@ -214,34 +250,28 @@ // connect signals Button* startButton = getButton(*newGameMenu, "StartButton"); - startButton->clicked.connect( - makeCallback(*this, &MainMenu::newGameStartButtonClicked)); + startButton->clicked.connect(makeCallback(*this, &MainMenu::newGameStartButtonClicked)); + Button* backButton = getButton(*newGameMenu, "BackButton"); - backButton->clicked.connect( - makeCallback(*this, &MainMenu::newGameBackButtonClicked)); - Button* startBareButton = getButton(*newGameMenu, "StartBareButton"); - startBareButton->clicked.connect( - makeCallback(*this, &MainMenu::newGameStartBareButtonClicked)); - Button* startVillageButton = getButton(*newGameMenu, "StartVillageButton"); - startVillageButton->clicked.connect( - makeCallback(*this, &MainMenu::newGameStartVillageClicked)); + backButton->clicked.connect(makeCallback(*this, &MainMenu::newGameBackButtonClicked)); + + fillNewGameMenu(); } - - newGameMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); + newGameMenu->resize(getConfig()->videoX, getConfig()->videoY); //(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } void MainMenu::loadCreditsMenu() { - if(creditsMenu.get() == 0) { + if(creditsMenu.get() == 0) + { creditsMenu.reset(loadGUIFile("gui/credits.xml")); Button* backButton = getButton(*creditsMenu, "BackButton"); backButton->clicked.connect( makeCallback(*this, &MainMenu::creditsBackButtonClicked)); } - - creditsMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); + creditsMenu->resize(getConfig()->videoX, getConfig()->videoY); //(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } void @@ -267,9 +297,25 @@ currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); currentCheckButton = getCheckButton(*optionsMenu, "TrackNext"); currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); - + currentCheckButton = getCheckButton(*optionsMenu, "ResolutionPrev"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "ResolutionNext"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "WorldLenPrev"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "WorldLenNext"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "LanguagePrev"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "LanguageNext"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "BinaryMode"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + currentCheckButton = getCheckButton(*optionsMenu, "SeedMode"); + currentCheckButton->clicked.connect( makeCallback(*this, &MainMenu::optionsMenuButtonClicked)); + Button* currentButton = getButton(*optionsMenu, "BackButton"); - currentButton->clicked.connect( makeCallback(*this, &MainMenu::creditsBackButtonClicked)); + currentButton->clicked.connect( makeCallback(*this, &MainMenu::optionsBackButtonClicked)); } //adjust checkbutton-states if( getConfig()->musicEnabled ){ @@ -287,11 +333,31 @@ } else { getCheckButton(*optionsMenu, "Fullscreen")->uncheck(); } + if (binary_mode) + { getCheckButton(*optionsMenu, "BinaryMode")->check();} + else + { getCheckButton(*optionsMenu, "BinaryMode")->uncheck();} + if (seed_compression) + { getCheckButton(*optionsMenu, "SeedMode")->check();} + else + { getCheckButton(*optionsMenu, "SeedMode")->uncheck();} //current background track musicParagraph = getParagraph( *optionsMenu, "musicParagraph"); - musicParagraph->setText(getConfig()->playSongName); + musicParagraph->setText(getSound()->currentTrack.title); - optionsMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); + std::stringstream mode; + mode << SDL_GetVideoSurface()->w << "x" << SDL_GetVideoSurface()->h; + getParagraph( *optionsMenu, "resolutionParagraph")->setText(mode.str()); + mode.str(""); + mode << world.len(); + getParagraph( *optionsMenu, "WorldLenParagraph")->setText(mode.str()); + languageParagraph = getParagraph( *optionsMenu, "languageParagraph"); + currentLanguage = getConfig()->language; + languageParagraph->setText( getConfig()->language ); + languages = dictionaryManager->get_languages(); + languages.insert( "autodetect" ); + languages.insert( "en" ); // English is the default when no translation is used + optionsMenu->resize(getConfig()->videoX, getConfig()->videoY); //(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } void @@ -311,7 +377,7 @@ // fill in file-names into slots fillLoadMenu(); - loadGameMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); + loadGameMenu->resize(getConfig()->videoX, getConfig()->videoY); //(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } void @@ -330,8 +396,7 @@ // fill in file-names into slots fillLoadMenu( true ); } - - saveGameMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); + saveGameMenu->resize(getConfig()->videoX, getConfig()->videoY); //(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } @@ -340,12 +405,15 @@ selectLoadSaveGameButtonClicked( button , i, false ); } -void +void MainMenu::selectSaveGameButtonClicked(CheckButton* button, int i){ selectLoadSaveGameButtonClicked( button , i, true ); } -void +/** + * Handle RadioButtons in load, save and new game dialog + */ +void MainMenu::selectLoadSaveGameButtonClicked(CheckButton* button , int, bool save ) { std::string fc=button->getCaptionText(); @@ -356,18 +424,18 @@ fc = iter->second; } } - + std::string file=""; - + /* I guess this should be the proper way of selecting in the menu. Everytime we check a new button the last one gets unchecked. - If the button checked is an empty one, nothing should be opened + If the button checked is an empty one, nothing should be opened Could be done the other way around: the first time an existing item is selected in the menu, an empty one could never be checked again. Anyway I don't think both should be checked, when an empty is checked after an existing one. */ - + const std::string bs[]={"File0","File1","File2","File3","File4","File5",""}; for(int i=0;std::string(bs[i]).length();i++) { CheckButton *b=getCheckButton(*currentMenu,bs[i]); @@ -378,28 +446,42 @@ } } + if( newGameMenu.get()==currentMenu ) { + const std::string rnd[]={"RiverDelta","DesertArea","TemperateArea","SwampArea",""}; + for(int i=0;std::string(rnd[i]).length();i++) { + CheckButton *b=getCheckButton(*currentMenu,rnd[i]); + if(b->getName()!=button->getName()){ + b->uncheck(); + } else { + b->check(); + fc = rnd[i]; + } + } + } + + if( !fc.length()) { mFilename = ""; return; } - + baseName = fc; if(newGameMenu.get()==currentMenu ) { file=std::string("opening/")+fc+".scn"; } else { file=fc; } - + mFilename=""; if(newGameMenu.get()!=currentMenu) { - slotNr = 1 + atoi( + slotNr = 1 + atoi( const_cast<char*>(button->getName().substr(4).c_str()) ); if( file.length() == 0){ mFilename = ""; return; } } - + mFilename+=file; Uint32 now = SDL_GetTicks(); @@ -410,7 +492,7 @@ lastClickTick = 0; doubleClickButtonName = ""; if( newGameMenu.get() == currentMenu ) { - //load scenario + //load scenario newGameStartButtonClicked( 0 ); } else { //load game @@ -430,19 +512,19 @@ } else if( buttonName == "MusicVolumePlus"){ int newVolume = getConfig()->musicVolume + 5; if( newVolume > 100 ){ - newVolume = 100; + newVolume = 100; } if( getConfig()->musicVolume != newVolume ){ - getSound()->setMusicVolume( newVolume ); + getSound()->setMusicVolume( newVolume ); getSound()->playSound("Click"); } } else if( buttonName == "MusicVolumeMinus"){ int newVolume = getConfig()->musicVolume -5; if( newVolume < 0 ){ - newVolume = 0; + newVolume = 0; } if( getConfig()->musicVolume != newVolume ){ - getSound()->setMusicVolume( newVolume ); + getSound()->setMusicVolume( newVolume ); getSound()->playSound("Click"); } } else if( buttonName == "SoundFX"){ @@ -451,87 +533,204 @@ } else if( buttonName == "FXVolumePlus"){ int newVolume = getConfig()->soundVolume + 5; if( newVolume > 100 ){ - newVolume = 100; + newVolume = 100; } if( getConfig()->soundVolume != newVolume ){ - getSound()->setSoundVolume( newVolume ); + getSound()->setSoundVolume( newVolume ); getSound()->playSound("Click"); } } else if( buttonName == "FXVolumeMinus"){ int newVolume = getConfig()->soundVolume - 5; if( newVolume < 0 ){ - newVolume = 0; + newVolume = 0; } if( getConfig()->soundVolume != newVolume ){ - getSound()->setSoundVolume( newVolume ); + getSound()->setSoundVolume( newVolume ); getSound()->playSound("Click"); } + } else if( buttonName == "ResolutionPrev"){ + changeResolution(false); + } else if( buttonName == "ResolutionNext"){ + changeResolution(true); + } else if( buttonName == "WorldLenPrev"){ + changeWorldLen(false); + } else if( buttonName == "WorldLenNext"){ + changeWorldLen(true); + } else if( buttonName == "LanguagePrev"){ + changeLanguage(false); + } else if( buttonName == "LanguageNext"){ + changeLanguage(true); } else if( buttonName == "Fullscreen"){ getSound()->playSound("Click"); - getConfig()->useFullScreen = !getConfig()->useFullScreen; - if( getConfig()->restartOnChangeScreen ){ + getConfig()->useFullScreen = !getConfig()->useFullScreen; + getConfig()->save(); + if( getConfig()->restartOnChangeScreen ) + { quitState = RESTART; running = false; - } else { - initVideo(getConfig()->videoX, getConfig()->videoY); - loadOptionsMenu(); + } + else + { + //SDL_IGNORE to avoid forth and back jumping resolution + SDL_EventState(SDL_VIDEORESIZE, SDL_IGNORE); + initVideo( getConfig()->videoX, getConfig()->videoY); + currentMenu->resize(getConfig()->videoX, getConfig()->videoY); + SDL_EventState(SDL_VIDEORESIZE, SDL_ENABLE); + loadOptionsMenu(); //in case resolution was changed while in fullscreen } } else if( buttonName == "TrackPrev"){ changeTrack(false); } else if( buttonName == "TrackNext"){ changeTrack(true); + } else if( buttonName == "BinaryMode"){ + binary_mode = !binary_mode; + } else if( buttonName == "SeedMode"){ + seed_compression = !seed_compression; } else { std::cerr << "MainMenu::optionsMenuButtonClicked " << buttonName << " unknown Button!\n"; - } + } } -void -MainMenu::changeTrack( bool next) -{ - std::string filename; - std::string directory = "music/"; - std::string fullname; - std::string currentname = getConfig()->playSongName; - std::string prevname = currentname; - std::string nextname = currentname; +/** Changes the displayed resolution in the options menu. +This does not actually change the resolution. initVideo has to be called to do this. +@param next if true change to the next resolution in the list; otherwise change to the previous one +@todo sort modes before in ascending order and remove unsupported modes like 640x480 +*/ +void MainMenu::changeResolution(bool next) { + static SDL_Rect** modes = NULL; - bool hit = false; + if(modes == NULL) { + Uint32 flags = 0; - char **files= PHYSFS_enumerateFiles(directory.c_str()); - char **fptr=files; - while(*fptr) + if(getConfig()->useOpenGL){ + flags = SDL_OPENGL; + } else { + flags = SDL_HWSURFACE; + } + flags |= SDL_FULLSCREEN; // only check for fullscreen modes to get useful results from SDL_ListModes + modes = SDL_ListModes(NULL, flags); + + } + + if(modes == NULL) { + std::cerr << "Error: SDL reports that no video modes are available!\n"; + return; + } else if (modes == (SDL_Rect**)-1) { + /* FIXME: SDL docs say that this means that "Any dimension is okay for the given + format". I'm not sure what to do in this case. For now I will just report an error. + It may be an option to just show some default modes. + Jaky */ + std::cerr << "FIXME: SDL reports that any video mode is possible. Please report to the lincity-ng bugtracker if you get this error. Please use the --size switch or edit userconfig.xml to set your resolution.\n"; + return; + } + + const int width = getConfig()->videoX ; + const int height = getConfig()->videoY; + int closest_mode = -1; + for (int i=0; modes[i]; ++i) { - fullname = directory; - fullname.append( *fptr ); - filename.assign( *fptr ); - - if(!PHYSFS_isDirectory(fullname.c_str())){ - if( filename == currentname ){ - hit = true; - } else if ( !hit ){ - prevname = filename; - } else { - nextname = filename; - break; + if((modes[i]->w == width) && (modes[i]->h == height)) + { + //std::cout << "detected mode: " << modes[i]->w << "x" << modes[i]->h << std::endl; + closest_mode = i; + break; + } + } + if (closest_mode == -1) //no exact match for current resolution + { + closest_mode = 0; + int dw2 = width-modes[0]->w; + dw2 = dw2*dw2; + int dh2 = height-modes[0]->h; + dh2 = dh2*dh2; + int best_fit = dw2 + dh2; + for (int i=1; modes[i]; ++i) + { //look for closeset match + //std::cout << "testing mode: " << modes[i]->w << "x" << modes[i]->h; + dw2 = width-modes[i]->w; + dw2 = dw2*dw2; + dh2 = height-modes[i]->h; + dh2 = dh2*dh2; + if(best_fit > (dw2 + dh2)) + { + closest_mode = i; + best_fit = dw2 + dh2; + //std::cout << ": better suited"; } + //std::cout << std::endl; } - fptr++; } - PHYSFS_freeList(files); + std::string currentMode = getParagraph( *optionsMenu, "resolutionParagraph")->getText(); + + int new_mode = 0; + + std::stringstream mode; + mode.str(""); + mode << modes[closest_mode]->w << "x" << modes[closest_mode]->h; + + if(next && modes[closest_mode+1]) { + new_mode = closest_mode+1; + } else if (!next && closest_mode > 0) { + new_mode = closest_mode-1; + } else { // nothing to do, because we are at the beginning and the user clicked prev or we are at the last mode and the user clickt next + return; + } + getSound()->playSound("Click"); + mode.str(""); + mode << modes[new_mode]->w << "x" << modes[new_mode]->h; + getParagraph( *optionsMenu, "resolutionParagraph")->setText(mode.str()); + getConfig()->videoX = modes[new_mode]->w; + getConfig()->videoY = modes[new_mode]->h; +} + +void +MainMenu::changeWorldLen(bool next) +{ + std::ostringstream os; + int new_len; + new_len = world.len()+(next?25:-25); + world.len(new_len); + os << world.len(); + getParagraph( *optionsMenu, "WorldLenParagraph")->setText(os.str()); +} + +void +MainMenu::changeTrack( bool next) +{ if(next){ - if( nextname != currentname){ - getSound()->playSound("Click"); - getSound()->playMusic(nextname); - } + getSound()->playSound("Click"); + getSound()->changeTrack(NEXT_TRACK); + } else { - if( prevname != currentname){ - getSound()->playSound("Click"); - getSound()->playMusic(prevname); + getSound()->playSound("Click"); + getSound()->changeTrack(PREV_TRACK); + } + musicParagraph->setText(getSound()->currentTrack.title); +} + +void +MainMenu::changeLanguage( bool next) +{ + std::set<std::string>::iterator i = languages.find( getConfig()->language ); + if( next ){ // next language in set + i++; + if( i == languages.end() ){ + i = languages.begin(); } + } else { // previous + if( i == languages.begin() ){ + i = languages.end(); + } + i--; } - musicParagraph->setText(getConfig()->playSongName); + + std::string newLang = *i; + languageParagraph->setText( newLang ); + getConfig()->language = newLang; + getSound()->playSound("Click"); } + void MainMenu::quitButtonClicked(Button* ) { @@ -545,7 +744,8 @@ { currentMenu = dynamic_cast<Desktop*> (newMenu); if(!currentMenu) - throw std::runtime_error("Menu Component is not a Desktop"); + { throw std::runtime_error("Menu Component is not a Desktop");} + currentMenu->resize(SDL_GetVideoSurface()->w, SDL_GetVideoSurface()->h); } void @@ -570,6 +770,21 @@ getSound()->playSound( "Click" ); quitState = INGAME; running = false; + //only act if world is still clean + if (!world.dirty) + { + //load current game if it exists + if( ! loadCityNG( std::string("9_currentGameNG.scn.gz") ) && + ! loadCityNG( std::string("9_currentGameNG.scn") ) ) + { + city_settings city; + city.with_village = true; + city.without_trees = false; + + //by default create a new City + new_city( &main_screen_originx, &main_screen_originy, &city); + } + } } void @@ -592,8 +807,11 @@ MainMenu::saveGameButtonClicked(Button* ) { getSound()->playSound( "Click" ); - loadSaveGameMenu(); - switchMenu(saveGameMenu.get()); + if(getGame()) + { + loadSaveGameMenu(); + switchMenu(saveGameMenu.get()); + } } void @@ -605,37 +823,88 @@ } void -MainMenu::newGameStartButtonClicked(Button* ) +MainMenu::optionsBackButtonClicked(Button* ) { - getSound()->playSound( "Click" ); - if( loadCityNG( mFilename ) ){ - strcpy (given_scene, baseName.c_str()); - quitState = INGAME; + getConfig()->save(); + if( getConfig()->videoX != SDL_GetVideoSurface()->w || getConfig()->videoY != SDL_GetVideoSurface()->h) + { + if( getConfig()->restartOnChangeScreen ) + { + quitState = RESTART; + running = false; + } + else + { + //SDL_IGNORE to avoid forth and back jumping resolution + SDL_EventState(SDL_VIDEORESIZE, SDL_IGNORE); + initVideo( getConfig()->videoX, getConfig()->videoY); + currentMenu->resize(getConfig()->videoX, getConfig()->videoY); + SDL_EventState(SDL_VIDEORESIZE, SDL_ENABLE); + gotoMainMenu(); + } + } + else if( currentLanguage != getConfig()->language ) + { + unsetenv("LINCITY_LANG"); + quitState = RESTART; running = false; } - mFilename = "empty"; //don't erase scenarios later + else + { + gotoMainMenu(); + } } +/** + * Either create selected random terrain or load a scenario. + **/ void -MainMenu::newGameStartBareButtonClicked(Button* ) +MainMenu::newGameStartButtonClicked(Button* ) { + if( mFilename.empty() ){ + // std::cout << "nothing selected\n"; + return; + } getSound()->playSound( "Click" ); - new_city( &main_screen_originx, &main_screen_originy, 0 ); - GameView* gv = getGameView(); - if( gv ){ gv->readOrigin(); } - quitState = INGAME; - running = false; -} -void -MainMenu::newGameStartVillageClicked(Button* ) -{ - getSound()->playSound( "Click" ); - new_city( &main_screen_originx, &main_screen_originy, 1 ); - GameView* gv = getGameView(); - if( gv ){ gv->readOrigin(); } - quitState = INGAME; - running = false; + city_settings city_obj; + city_settings *city=&city_obj; + + city->with_village = (getCheckButton(*currentMenu,"WithVillage" )->state == CheckButton::STATE_CHECKED); + city->without_trees = (getCheckButton(*currentMenu,"WithoutTrees")->state == CheckButton::STATE_CHECKED); + + if( baseName == "RiverDelta" ){ + new_city( &main_screen_originx, &main_screen_originy, city); + GameView* gv = getGameView(); + if( gv ){ gv->readOrigin(); } + quitState = INGAME; + running = false; + } else if( baseName == "DesertArea" ){ + new_desert_city( &main_screen_originx, &main_screen_originy, city); + GameView* gv = getGameView(); + if( gv ){ gv->readOrigin(); } + quitState = INGAME; + running = false; + } else if( baseName == "TemperateArea" ){ + new_temperate_city( &main_screen_originx, &main_screen_originy, city); + GameView* gv = getGameView(); + if( gv ){ gv->readOrigin(); } + quitState = INGAME; + running = false; + } else if( baseName == "SwampArea" ){ + new_swamp_city( &main_screen_originx, &main_screen_originy, city); + GameView* gv = getGameView(); + if( gv ){ gv->readOrigin(); } + quitState = INGAME; + running = false; + } else { + if( loadCityNG( mFilename ) ){ + strcpy (given_scene, baseName.c_str()); + quitState = INGAME; + running = false; + } + } + mFilename = "empty"; //don't erase scenarios later } void @@ -651,7 +920,7 @@ { getSound()->playSound( "Click" ); loadMainMenu(); - switchMenu(mainMenu.get()); + switchMenu(mainMenu.get()); } void @@ -659,7 +928,7 @@ { getSound()->playSound( "Click" ); loadMainMenu(); - switchMenu(mainMenu.get()); + switchMenu(mainMenu.get()); } void @@ -691,26 +960,27 @@ newStart << tech_level/10000; newStart << "_Cash"; if (total_money >= 0) - newStart << "+"; + { newStart << "+";} else - newStart << "-"; + { newStart << "-";} newStart << std::setfill('0') << std::setw(3); int money = abs(total_money); if (money > 1000000000) - newStart << money/1000000000 << "G"; + { newStart << money/1000000000 << "G";} else if (money > 1000000) - newStart << money/1000000 << "M"; + { newStart << money/1000000 << "M";} else if(money > 1000) - newStart << money/1000 << "K"; + { newStart << money/1000 << "K";} else - newStart << money/1 << "_"; - + { newStart << money << "_";} + newStart << "_P"; newStart << std::setfill('0') << std::setw(5); newStart << housed_population + people_pool; - std::string newFilename( newStart.str() ); + std::string newFilename( newStart.str() ); saveCityNG( newFilename ); fillLoadMenu( true ); + gotoMainMenu(); } @@ -720,15 +990,26 @@ SDL_Event event; running = true; quitState = QUIT; - Uint32 ticks = SDL_GetTicks(); - + Uint32 fpsTicks = SDL_GetTicks(); + Uint32 lastticks = fpsTicks; int frame = 0; - while(running) { - while(SDL_PollEvent(&event)) { + while(running) + { + while(SDL_PollEvent(&event)) + { switch(event.type) { case SDL_VIDEORESIZE: initVideo(event.resize.w, event.resize.h); currentMenu->resize(event.resize.w, event.resize.h); + getConfig()->videoX = event.resize.w; + getConfig()->videoY = event.resize.h; + if(currentMenu == optionsMenu.get())//update resolution display + { + std::stringstream mode; + mode.str(""); + mode << event.resize.w << "x" << event.resize.h; + getParagraph( *optionsMenu, "resolutionParagraph")->setText(mode.str()); + } break; case SDL_MOUSEMOTION: case SDL_MOUSEBUTTONUP: @@ -768,22 +1049,32 @@ } } - SDL_Delay(10); // give the CPU time to relax... (we are in main menu) + + SDL_Delay(100); // give the CPU time to relax... (we are in main menu) + + // create update Event + Uint32 ticks = SDL_GetTicks(); + float elapsedTime = ((float) (ticks - lastticks)) / 1000.0; + currentMenu->event(Event(elapsedTime)); + lastticks = ticks; if(currentMenu->needsRedraw()) { currentMenu->draw(*painter); flipScreenBuffer(); - } + } frame++; - if(SDL_GetTicks() - ticks > 1000) { + if(ticks - fpsTicks > 1000) { #ifdef DEBUG_FPS - printf("FPS: %d.\n", frame); + printf("MainMenu FPS: %d.\n", (frame*1000) / (ticks - fpsTicks)); #endif frame = 0; - ticks = SDL_GetTicks(); + fpsTicks = ticks; } } return quitState; } + +/** @file lincity-ng/MainMenu.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MainMenu.hpp lincity-ng-2.9~git20150314/src/lincity-ng/MainMenu.hpp --- lincity-ng-2.0/src/lincity-ng/MainMenu.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MainMenu.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -40,19 +40,20 @@ private: void switchMenu(Component* component); - + void loadMainMenu(); void loadNewGameMenu(); void loadLoadGameMenu(); void loadSaveGameMenu(); void loadCreditsMenu(); void loadOptionsMenu(); - + void fillLoadMenu( bool save = false ); void fillNewGameMenu(); void creditsBackButtonClicked(Button* ); - + void optionsBackButtonClicked(Button* ); + void quitButtonClicked(Button* ); void continueButtonClicked(Button* ); void creditsButtonClicked(Button* ); @@ -63,9 +64,7 @@ void newGameBackButtonClicked(Button* ); void newGameStartButtonClicked(Button* ); - void newGameStartBareButtonClicked(Button* ); - void newGameStartVillageClicked(Button* ); - + void loadGameBackButtonClicked(Button* ); void loadGameLoadButtonClicked(Button* ); void loadGameSaveButtonClicked(Button* ); @@ -82,22 +81,33 @@ std::auto_ptr<Component> creditsMenu; std::auto_ptr<Component> optionsMenu; Desktop* currentMenu; - + bool running; - MainState quitState; + MainState quitState; int slotNr; - - std::string mFilename; + + std::string mFilename; std::string baseName; static const Uint32 doubleClickTime = 1000; Uint32 lastClickTick; std::string doubleClickButtonName; - + Paragraph* musicParagraph; void changeTrack( bool next); + void changeResolution( bool next); + void changeWorldLen(bool next); + + Paragraph* languageParagraph; + void changeLanguage( bool next); + std::string currentLanguage; + std::set<std::string> languages; + std::map<std::string, std::string> fileMap; }; #endif + +/** @file lincity-ng/MainMenu.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MapEdit.cpp lincity-ng-2.9~git20150314/src/lincity-ng/MapEdit.cpp --- lincity-ng-2.0/src/lincity-ng/MapEdit.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MapEdit.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -25,6 +25,7 @@ #include "tinygettext/gettext.hpp" #include "lincity/engine.h" #include "lincity/lin-city.h" +#include "lincity/modules/all_modules.h" //for knowing the individual constructions #include "Sound.hpp" #include "MapEdit.hpp" @@ -35,75 +36,62 @@ extern void ok_dial_box(const char *, int, const char *); -int monument_bul_flag=0; -int river_bul_flag=0; -int shanty_bul_flag=0; -int build_bridge_flag=0; +int monument_bul_flag = 0; +int river_bul_flag = 0; +int shanty_bul_flag = 0; +int build_bridge_flag = 0; int last_message_group = 0; -#ifdef DEBUG -void DBG_TileInfo(int x, int y) { +/* #ifdef DEBUG + void DBG_TileInfo(int x, int y) { fprintf(stderr, "%u,%u:Type=%d, Group=%s(%d), Flags= %08X, Alt.=%d\n", x, y, - MP_TYPE(x, y), _(main_groups[MP_GROUP(x, y)].name), MP_GROUP(x, y), - MP_INFO(x, y).flags, ALT(x, y)); -} -#endif + world(x, y)->type, _(main_groups[world(x, y)->group].name), world(x, y)->group, + world(x, y)->flags, world(x, y)->ground.altitude); + } + #endif +*/ void resetLastMessage(){ last_message_group = 0; } -// Open Dialog for selected Port -void -clicked_port_cb (int x, int y) -{ - new Dialog( EDIT_PORT, x, y ); -} - -// Open Dialog for selected Market -void -clicked_market_cb (int x, int y) -{ - new Dialog( EDIT_MARKET, x, y ); -} - -void -check_bulldoze_area (int x, int y) +void check_bulldoze_area (int x, int y) { + int xx, yy; + unsigned short g = world(x,y)->getGroup(); //no need to bulldoze desert - if( MP_GROUP( x, y ) == GROUP_DESERT ) - return; - - int xx, yy, g; - if (MP_TYPE(x,y) == CST_USED) + if( g == GROUP_DESERT ) + { return;} + if (world(x,y)->reportingConstruction) { - xx = MP_INFO(x,y).int_1; - yy = MP_INFO(x,y).int_2; + xx = world(x,y)->reportingConstruction->x; + yy = world(x,y)->reportingConstruction->y; } - else + else { - xx = x; - yy = y; + xx = x; + yy = y; } - g = MP_GROUP(xx,yy); - if (g == GROUP_MONUMENT && monument_bul_flag == 0) + if (g == GROUP_MONUMENT && monument_bul_flag == 0) { - if( last_message_group != GROUP_MONUMENT ){ + if( (world(x,y)->reportingConstruction->flags & FLAG_EVACUATE) + && (last_message_group != GROUP_MONUMENT) ) + { new Dialog( BULLDOZE_MONUMENT, xx, yy ); // deletes itself last_message_group = GROUP_MONUMENT; } return; } - else if (g == GROUP_RIVER && river_bul_flag == 0) + else if (g == GROUP_RIVER && river_bul_flag == 0) { - if( last_message_group != GROUP_RIVER ){ + if(last_message_group != GROUP_RIVER ){ new Dialog( BULLDOZE_RIVER, xx, yy ); // deletes itself last_message_group = GROUP_RIVER; } return; } - else if (g == GROUP_SHANTY && shanty_bul_flag == 0) + else if (g == GROUP_SHANTY && shanty_bul_flag == 0) { if( last_message_group != GROUP_SHANTY ){ new Dialog( BULLDOZE_SHANTY, xx, yy ); // deletes itself @@ -111,17 +99,20 @@ } return; } - else if (g == GROUP_TIP) + // only empty landfills may be bulldozed + else if ( g == GROUP_TIP + && static_cast<Tip *>(world(x,y)->reportingConstruction)->total_waste > 0 ) + { + if( last_message_group != GROUP_TIP ) { - if( last_message_group != GROUP_TIP ){ ok_dial_box ("nobull-tip.mes", BAD, 0L); last_message_group = GROUP_TIP; } return; } - last_message_group = 0; - getSound()->playSound( "Raze" ); - bulldoze_item (xx,yy); + resetLastMessage(); + getSound()->playSound( "Raze" ); + bulldoze_item(xx,yy); } @@ -130,184 +121,187 @@ if( !getGameView()->inCity( point ) ){ return; } - + int x = point.x; int y = point.y; - int selected_module_group = get_group_of_type(selected_module_type); - - int size; - // int x, y; /* mappoint */ - int mod_x, mod_y; /* upper left coords of module clicked on */ + + + + int mod_x, mod_y; // upper left coords of module clicked on int mps_result; - - if (MP_TYPE(x,y) == CST_USED) { - mod_x = MP_INFO(x,y).int_1; - mod_y = MP_INFO(x,y).int_2; - } else { + + if(world(x,y)->reportingConstruction) + { + mod_x = world(x,y)->reportingConstruction->x; + mod_y = world(x,y)->reportingConstruction->y; + } + else + { mod_x = x; mod_y = y; } - /* Bring up mappoint_stats for any right mouse click */ - if (button == SDL_BUTTON_RIGHT) { - mps_set( x, y, MPS_ENV); - return; - } - - /* Handle bulldozing */ - if (selected_module_type == CST_GREEN && button != SDL_BUTTON_RIGHT) { - check_bulldoze_area (x, y); + // Handle bulldozing + if (userOperation->action == UserOperation::ACTION_BULLDOZE && button != SDL_BUTTON_RIGHT) + { + check_bulldoze_area (mod_x, mod_y); mps_result = mps_set( mod_x, mod_y, MPS_MAP ); // Update mps on bulldoze #ifdef DEBUG - DBG_TileInfo(x, y); + //DBG_TileInfo(x, y); #endif return; } - - /* Bring up mappoint_stats for certain left mouse clicks */ - /* Check market and port double-clicks here */ - /* Check rocket launches */ - if( !GROUP_IS_BARE(MP_GROUP( x,y )) ) { - if(mapMPS) + // show info on any click, but dont do double for query + if ((!world(mod_x,mod_y)->reportingConstruction) || (userOperation->action != UserOperation::ACTION_QUERY)) + { + mps_set(mod_x, mod_y, MPS_MAP); //fake Query action + if(userOperation->action == UserOperation::ACTION_QUERY) + { mapMPS->playBuildingSound( mod_x, mod_y ); - mps_result = mps_set( mod_x, mod_y, MPS_MAP ); //query Tool + return; + } + } + + if(!userOperation->is_allowed_here(mod_x, mod_y, true)) + { return;} + //from here on everything should be allowed + if (userOperation->action == UserOperation::ACTION_FLOOD && button != SDL_BUTTON_RIGHT) + { + world(x, y)->setTerrain(GROUP_WATER); + world(x, y)->flags |= FLAG_ALTERED; + adjust_money(-selected_module_cost); + connect_transport(x - 2, y - 2, x + 1 + 1, y + 1 + 1); + desert_water_frontiers(x - 1, y - 1, 1 + 2, 1 + 2); + connect_rivers(x, y); + return; + } + + // Check market and port double-clicks here + // Check rocket launches + // Hold d pressed to send load/save info details to console + if(userOperation->action == UserOperation::ACTION_QUERY) + { #ifdef DEBUG - DBG_TileInfo(x, y); + Uint8 *keystate = SDL_GetKeyState(NULL); + if ( !binary_mode && keystate[SDLK_d] && world(mod_x,mod_y)->reportingConstruction) + { + world(mod_x,mod_y)->reportingConstruction->saveMembers(&std::cout); + } #endif - if( mps_result >= 1 ){ - if( MP_GROUP( mod_x,mod_y ) == GROUP_MARKET ){ - clicked_market_cb (mod_x, mod_y); - return; - } else if (MP_GROUP(mod_x,mod_y) == GROUP_PORT) { - clicked_port_cb (mod_x, mod_y); + mps_result = mps_set( mod_x, mod_y, MPS_MAP ); + mapMPS->playBuildingSound( mod_x, mod_y ); + + //DBG_TileInfo(x, y); + + if( mps_result >= 1 ) + { + if( world(mod_x,mod_y)->getGroup() == GROUP_MARKET) + { + new Dialog( EDIT_MARKET, mod_x, mod_y ); return; - } else if (MP_TYPE(mod_x,mod_y) >= CST_ROCKET_5 && - MP_TYPE(mod_x,mod_y) <= CST_ROCKET_7){ - //Dialogs delete themself - new Dialog( ASK_LAUNCH_ROCKET, mod_x,mod_y ); + } else if (world(mod_x,mod_y)->getGroup() == GROUP_PORT) + { + new Dialog( EDIT_PORT, mod_x, mod_y ); return; + } else if(world(mod_x,mod_y)->getGroup() == GROUP_ROCKET) + { + if (world(mod_x,mod_y)->getType() >= 4 && + world(mod_x,mod_y)->getType() < 7) + { + new Dialog( ASK_LAUNCH_ROCKET, mod_x,mod_y ); + return; + } } - } - //to be here we are not in bulldoze-mode and the tile - //under the cursor is not empty. - //to allow up/downgrading of Tracks,Roads,Rails and bridges we can't always return. - if( ( selected_module_type != CST_TRACK_LR ) && - ( selected_module_type != CST_ROAD_LR ) && - ( selected_module_type != CST_RAIL_LR ) ) { - return; //not building a transport - } - - if( ( MP_GROUP(x,y) != GROUP_WATER ) && ( !( MP_INFO(x,y).flags & FLAG_IS_TRANSPORT ))){ - return; //target area is neither water not a transport - } - - if( selected_module_type == CST_TRACK_LR ) { - if( MP_GROUP( x, y ) == GROUP_TRACK || MP_GROUP( x, y ) == GROUP_TRACK_BRIDGE || - MP_GROUP( x, y ) == GROUP_ROAD || MP_GROUP( x, y ) == GROUP_ROAD_BRIDGE || - MP_GROUP( x, y ) == GROUP_RAIL || MP_GROUP( x, y ) == GROUP_RAIL_BRIDGE ) - return; - } else if( selected_module_type == CST_ROAD_LR ) { - if ( MP_GROUP( x, y ) == GROUP_ROAD || MP_GROUP( x, y ) == GROUP_ROAD_BRIDGE || - MP_GROUP( x, y ) == GROUP_RAIL || MP_GROUP( x, y ) == GROUP_RAIL_BRIDGE ) - return; - } else if( selected_module_type == CST_RAIL_LR ) { - if( MP_GROUP( x, y ) == GROUP_RAIL || MP_GROUP( x, y ) == GROUP_RAIL_BRIDGE ) - return; - } - } + }// end mps_result>1 - //query Tool - if(selected_module_type==CST_NONE) { - if (mapMPS) { - mapMPS->playBuildingSound( mod_x, mod_y ); - mapMPS->setView(MapPoint( mod_x, mod_y )); - } - mps_result = mps_set( mod_x, mod_y, MPS_MAP ); //query Tool on CST_NONE -#ifdef DEBUG - DBG_TileInfo(x, y); -#endif return; } - /* OK, by now we are certain that the user wants to place the item. - Set the origin based on the size of the selected_module_type, and - see if the selected item will fit. */ - size = main_groups[selected_module_group].size; - /* if (px > (mw->x + mw->w) - size*16) - px = (mw->x + mw->w) - size*16; - if (py > (mw->y + mw->h) - size*16) - py = (mw->y + mw->h) - size*16; - pixel_to_mappoint(px, py, &x, &y); - */ - //Check if we are too close to the border - if( x + size > WORLD_SIDE_LEN - 1 || y + size > WORLD_SIDE_LEN - 1 || x < 1 || y < 1 ) - return; - - if (size >= 2) { - if (!GROUP_IS_BARE(MP_GROUP(x + 1,y)) - || !GROUP_IS_BARE(MP_GROUP(x,y + 1)) - || !GROUP_IS_BARE(MP_GROUP(x + 1,y + 1))) - return; - } - if (size >= 3) { - if (!GROUP_IS_BARE(MP_GROUP(x + 2,y)) - || !GROUP_IS_BARE(MP_GROUP(x + 2,y + 1)) - || !GROUP_IS_BARE(MP_GROUP(x + 2,y + 2)) - || !GROUP_IS_BARE(MP_GROUP(x + 1,y + 2)) - || !GROUP_IS_BARE(MP_GROUP(x,y + 2))) - return; - } - if (size == 4) { - if (!GROUP_IS_BARE(MP_GROUP(x + 3,y)) - || !GROUP_IS_BARE(MP_GROUP(x + 3,y + 1)) - || !GROUP_IS_BARE(MP_GROUP(x + 3,y + 2)) - || !GROUP_IS_BARE(MP_GROUP(x + 3,y + 3)) - || !GROUP_IS_BARE(MP_GROUP(x + 2,y + 3)) - || !GROUP_IS_BARE(MP_GROUP(x + 1,y + 3)) - || !GROUP_IS_BARE(MP_GROUP(x,y + 3))) + //Handle Evacuation of Commodities + if (userOperation->action == UserOperation::ACTION_EVACUATE && button != SDL_BUTTON_RIGHT) + { + if(world(x,y)->reportingConstruction->constructionGroup->group == GROUP_MARKET) + { + (dynamic_cast<Market*>(world(x,y)->reportingConstruction))->toggleEvacuation(); return; - } - - //how to build a lake in the park? - //just hold 'W' key on build ;-) - if( selected_module_group == GROUP_PARKLAND ){ - Uint8 *keystate = SDL_GetKeyState(NULL); - if ( keystate[SDLK_w] ) - selected_module_type = CST_PARKLAND_LAKE; + } + if(world(x,y)->reportingConstruction->flags & FLAG_EVACUATE) + { world(x,y)->reportingConstruction->flags &= ~FLAG_EVACUATE;} else - selected_module_type = CST_PARKLAND_PLANE; + { world(x,y)->reportingConstruction->flags |= FLAG_EVACUATE;} + mps_result = mps_set( mod_x, mod_y, MPS_MAP ); // Update mps on evacuate + return; } - /* Place the selected item . Warning messages are managed by place_item(...) */ - last_message_group = place_item (x, y, selected_module_type); - switch (last_message_group) + if(userOperation->action == UserOperation::ACTION_BUILD) //MUST BE TRUE { - case 0: - /* Success */ - getSound()->playSound( "Build" ); - mps_result = mps_set( mod_x, mod_y, MPS_MAP ); // Update mps on well-built + //double check windmill tech + //int selected_module_group = userOperation->constructionGroup?userOperation->constructionGroup->group:0; + if ((userOperation->constructionGroup == &windmillConstructionGroup) && (tech_level >= MODERN_WINDMILL_TECH)) + { userOperation->constructionGroup = &windpowerConstructionGroup;} + else if (( userOperation->constructionGroup == &windpowerConstructionGroup) && (tech_level < MODERN_WINDMILL_TECH)) + { userOperation->constructionGroup = &windmillConstructionGroup;} + //how to build a lake in the park? + //just hold 'W' key on build ;-) + if( userOperation->constructionGroup == &parklandConstructionGroup || + userOperation->constructionGroup == &parkpondConstructionGroup ) + { + Uint8 *keystate = SDL_GetKeyState(NULL); + if ( keystate[SDLK_w] ) + { userOperation->constructionGroup = &parkpondConstructionGroup;} + else + { userOperation->constructionGroup = &parklandConstructionGroup;} + } +/* + //how to build a shanty? + //just hold 'S' key on building a water tower ;-) + + if( userOperation->constructionGroup == &waterwellConstructionGroup + || userOperation->constructionGroup == &shantyConstructionGroup) + { + Uint8 *keystate = SDL_GetKeyState(NULL); + if ( keystate[SDLK_s] ) + { userOperation->constructionGroup = &shantyConstructionGroup;} + else + { userOperation->constructionGroup = &waterwellConstructionGroup;} + } +*/ + // place the selected item. + last_message_group = place_item(mod_x, mod_y); + switch (last_message_group) + { + case 0: + /* Success */ + getSound()->playSound( "Build" ); + mps_result = mps_set( mod_x, mod_y, MPS_MAP ); // Update mps on well-built #ifdef DEBUG - DBG_TileInfo(x, y); + //DBG_TileInfo(x, y); #endif - break; - case -1000: - /* ouch group does not exist */ - case -1: - /* Not enough money */ - case -2: - /* Improper port placement */ - case -3: - /* too many windmills/substations */ - case -4: - /* too many market */ - case -5: - /* previous tip here, cannot build tip here */ - case -6: - /* previous tip here, cannot build oremine */ - case -7: - /* no ore reserve. cannot build oremine here */ - default: - /* warning messages are managed by place item */ - last_message_group = 0; + break; + case -1000: + /* ouch group does not exist */ + case -1: + /* Not enough money */ + case -2: + /* Improper port placement */ + case -3: + /* too many windmills/substations */ + case -4: + /* too many market */ + case -5: + /* previous tip here, cannot build tip here */ + case -6: + /* previous tip here, cannot build oremine */ + case -7: + /* no ore reserve. cannot build oremine here */ + default: + /* warning messages are managed by place item */ + resetLastMessage(); + } } + else + { std::cout << "unexpected UserOperation in MapEdit" << std::endl;} } + +/** @file lincity-ng/MapEdit.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MapEdit.hpp lincity-ng-2.9~git20150314/src/lincity-ng/MapEdit.hpp --- lincity-ng-2.0/src/lincity-ng/MapEdit.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MapEdit.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -30,3 +30,6 @@ extern int build_bridge_flag; #endif + +/** @file lincity-ng/MapEdit.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MapPoint.hpp lincity-ng-2.9~git20150314/src/lincity-ng/MapPoint.hpp --- lincity-ng-2.0/src/lincity-ng/MapPoint.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MapPoint.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -43,3 +43,6 @@ #endif + +/** @file lincity-ng/MapPoint.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MiniMap.cpp lincity-ng-2.9~git20150314/src/lincity-ng/MiniMap.cpp --- lincity-ng-2.0/src/lincity-ng/MiniMap.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MiniMap.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -20,6 +20,7 @@ #include "MiniMap.hpp" #include "GameView.hpp" #include "MainLincity.hpp" +#include "PBar.hpp" #include "gui/Painter.hpp" #include "gui/Button.hpp" @@ -33,6 +34,10 @@ #include "lincity/lin-city.h" #include "lincity/engglobs.h" #include "lincity/lctypes.h" +//#include "lincity/range.h" +#include "lincity/all_buildings.h" +#include "lincity/transport.h" +#include "lincity/modules/all_modules.h" #include "gui/callback/Callback.hpp" @@ -50,12 +55,11 @@ #include "Game.hpp" #include "HelpWindow.hpp" -extern int get_power(int x, int y, int power, int block_industry); /** List of mapview buttons. The "" entries separate mapview buttons that are * switched */ -const char* mapViewButtons[] = { +const char* mapViewButtons[] = { "MapViewNormal", "", "MapViewFood", "", "MapViewUB40", "", "MapViewPower", "", "MapViewFire", "", "MapViewSport", "", "MapViewHealth", "", "MapViewTraffic", "", "MapViewPollution", "", "MapViewCoal", "", 0}; @@ -98,20 +102,12 @@ { return miniMapPtr; } - + MiniMap::MiniMap() : mMode(NORMAL), tilesize(2), border(0), mTexture(0) -{ +{ assert( miniMapPtr == 0 ); miniMapPtr = this; - gameViewPoints[ 0 ].x = 0; - gameViewPoints[ 0 ].y = 0; - gameViewPoints[ 1 ].x = 0; - gameViewPoints[ 1 ].y = 0; - gameViewPoints[ 2 ].x = 0; - gameViewPoints[ 2 ].y = 0; - gameViewPoints[ 3 ].x = 0; - gameViewPoints[ 3 ].y = 0; } MiniMap::~MiniMap() @@ -120,6 +116,44 @@ miniMapPtr = 0; } +Construction::Commodities +MiniMap::getStuffID() +{ + return stuff_ID; +} + +void +MiniMap::toggleStuffID(int step) +{ + static const Construction::Commodities commodities[] = + {Construction::STUFF_FOOD,Construction::STUFF_JOBS, + Construction::STUFF_COAL,Construction::STUFF_ORE, + Construction::STUFF_GOODS,Construction::STUFF_STEEL, + Construction::STUFF_WASTE,Construction::STUFF_KWH, + Construction::STUFF_MWH,Construction::STUFF_WATER}; + + //chek if we are at the beginning or the end of commodities + if (step == 1 && stuff_ID == Construction::STUFF_WATER) + { + stuff_ID = Construction::STUFF_FOOD; + } + else if (step != 1 && stuff_ID == Construction::STUFF_FOOD) + { + stuff_ID = Construction::STUFF_WATER; + } + else //go a step forth or back + { + size_t pos = 0; + while (commodities[pos] != stuff_ID && pos < sizeof(commodities)/sizeof(stuff_ID)) + { ++pos;} + stuff_ID = commodities[pos+step]; + } + getGameView()->setMapMode( mMode ); +} + + + + void MiniMap::parse(XmlReader& reader) { @@ -161,10 +195,10 @@ } if(width <= 0 || height <= 0) throw std::runtime_error("Width or Height invalid"); - + // create alpha-surface SDL_Surface* image = SDL_CreateRGBSurface(0, (int) width, (int) height, 32, - 0x000000ff, 0x0000ff00, + 0x000000ff, 0x0000ff00, 0x00ff0000, 0xff000000); mTexture.reset(texture_manager->create(image)); @@ -175,40 +209,50 @@ mpsXOld = mps_x; mpsYOld = mps_y; mpsStyleOld = mps_style; - - //switchView("MiniMap"); + setGameViewCorners( + MapPoint( + main_screen_originx - width / tilesize / 2, + main_screen_originy - height / tilesize / 2 + ), + MapPoint( + main_screen_originx + width / tilesize / 2, + main_screen_originy + height / tilesize / 2 + ) + ); + this->stuff_ID = Construction::STUFF_FOOD; } Component *MiniMap::findRoot(Component *c) { while(c->getParent()) - return findRoot(c->getParent()); - + { return findRoot(c->getParent());} return c; } void MiniMap::attachButtons() { if(alreadyAttached) - return; + { return;} alreadyAttached=true; - + Component *root=findRoot(this); - - for(int i = 0; mapViewButtons[i] != 0; ++i) { - if(strlen(mapViewButtons[i])) { + + for(int i = 0; mapViewButtons[i] != 0; ++i) + { + if(strlen(mapViewButtons[i])) + { CheckButton* b = getCheckButton(*root, mapViewButtons[i]); if(i == 0) - b->check(); + { b->check();} b->clicked.connect(makeCallback(*this, &MiniMap::mapViewButtonClicked)); } } for(int i = 0; speedButtons[i] != 0; ++i) { CheckButton* b = getCheckButton(*root, speedButtons[i]); - setLincitySpeed(SLOW_TIME_FOR_YEAR); + setLincitySpeed(SLOW_TIME_FOR_YEAR); if(i == 1) - b->check(); + { b->check();} b->clicked.connect(makeCallback(*this, &MiniMap::speedButtonClicked)); } @@ -221,72 +265,109 @@ switchMinimapButton->clicked.connect( makeCallback(*this, &MiniMap::switchButton)); switchButtons.push_back(switchMinimapButton); - + CheckButton* switchPBarButton = getCheckButton(*root, "SwitchPBar"); switchPBarButton->clicked.connect( makeCallback(*this, &MiniMap::switchButton)); switchButtons.push_back(switchPBarButton); - + CheckButton* switchButton = getCheckButton(*root, "SwitchGlobalMPS"); switchButton->clicked.connect( makeCallback(*this, &MiniMap::switchButton)); switchButtons.push_back(switchButton); - + switchButton = getCheckButton(*root, "SwitchEconomyGraph"); switchButton->clicked.connect( makeCallback(*this, &MiniMap::switchButton)); switchButtons.push_back(switchButton); + + Button* scrollPageDown = getButton(*root, "ScrollPageDown"); + scrollPageDown->clicked.connect(makeCallback(*this, &MiniMap::scrollPageDownButtonClicked)); + Button* scrollPageUp = getButton(*root, "ScrollPageUp"); + scrollPageUp->clicked.connect(makeCallback(*this, &MiniMap::scrollPageUpButtonClicked)); + } void MiniMap::switchButton(CheckButton* button, int mousebutton) { - if( !alreadyAttached ){ - return; - } - if(mousebutton == SDL_BUTTON_RIGHT ) { - getGame()->showHelpWindow( "dialogs" ); - } + if( !alreadyAttached ) + { return;} + if(mousebutton == SDL_BUTTON_RIGHT ) + { getGame()->showHelpWindow( "dialogs" );} + std::string active_button_name = "Switch" + getSwitchComponent(*(findRoot(this)), "MiniMapSwitch")->getActiveComponent()->getName(); + std::string buttonName = button->getName(); - if(button->getName() == "SwitchGlobalMPS") { + if(buttonName == "SwitchGlobalMPS") { //cycle through global styles - mps_global_style++; - if( mps_global_style >= MPS_GLOBAL_STYLES ){ - mps_global_style = 0; - } + if (active_button_name == "SwitchGlobalMPS") + { mps_global_style = (mps_global_style + 1) % MPS_GLOBAL_STYLES;} mps_set(mps_x, mps_y, MPS_GLOBAL); - } else if(button->getName() == "SwitchMapMPS") { + } + else if(buttonName == "SwitchMapMPS") { + //FIXME + //that would be nice but MAP_MPS is actually the minimap +/* + if (active_button_name == "SwitchMapMPS") + { mps_map_page = (mps_map_page + 1) % MPS_MAP_PAGES;} +*/ mps_set(mps_x, mps_y, MPS_MAP); + } else if(buttonName == "SwitchPBar") { + //cycle through pbar styles + if ((active_button_name == "SwitchPBar") + || (active_button_name == "SwitchPBar2nd")) + { pbarGlobalStyle = (pbarGlobalStyle + 1) % PBAR_GLOBAL_STYLES;} + if (pbarGlobalStyle == 1) + { buttonName = "SwitchPBar2nd";} + refresh_pbars(); } - // remove "Switch" prefix - std::string switchname = std::string(button->getName(), - 6, button->getName().size()-1); + std::string switchname = std::string(buttonName, + 6, buttonName.size()-1); +/* + if(switchname == "EconomyGraph") + { + if(f!getGameView()->textures_ready) + { switchname = "MiniMap";} + else + { getGameView()->economyGraph_open = true;} + } +*/ switchView(switchname); } void MiniMap::switchView(const std::string& viewname) { - SwitchComponent* switchComponent + SwitchComponent* switchComponent = getSwitchComponent(*(findRoot(this)), "MiniMapSwitch"); switchComponent->switchComponent(viewname); +/* + if (viewname != "EconomyGraph") + { getGameView()->economyGraph_open = false;} +*/ + //TODO once this gets more complex PBar pages could become + //a nested switchComponent. For now only one case ;-) + std::string viewGroupName = viewname; + if (viewGroupName == "PBar2nd") + { viewGroupName = "PBar";} std::string buttonname = "Switch"; - buttonname += viewname; + buttonname += viewGroupName; + for(std::vector<CheckButton*>::iterator i = switchButtons.begin(); - i != switchButtons.end(); ++i) { + i != switchButtons.end(); ++i) + { CheckButton* cbutton = *i; - if(cbutton->getName() == buttonname) { - cbutton->check(); - } else { - cbutton->uncheck(); - } + if(cbutton->getName() == buttonname) + { cbutton->check();} + else + { cbutton->uncheck();} } } -void +void MiniMap::switchMapViewButton(const std::string &buttonName) { return; //no switch atm @@ -299,7 +380,7 @@ || buttonName=="MapViewFire" || buttonName=="MapViewSport") { switchName = "PowerSwitch"; } - + if(switchName != "") { SwitchComponent *switchComponent = getSwitchComponent(*(findRoot(this)), switchName); @@ -322,11 +403,11 @@ void MiniMap::showMpsEnv( MapPoint tile ){ if(mps_style != MPS_ENV) { - SwitchComponent* switchComponent + SwitchComponent* switchComponent = getSwitchComponent(*(findRoot(this)), "MiniMapSwitch"); - + //save old minimap and MPS setting - lastTabName = switchComponent->getActiveComponent()->getName(); + lastTabName = switchComponent->getActiveComponent()->getName(); mpsXOld = mps_x; mpsYOld = mps_y; mpsStyleOld = mps_style; @@ -344,6 +425,8 @@ return MiniMap::POLLUTION; if(pName=="MapViewTraffic") return MiniMap::TRAFFIC; + if(pName=="MapViewCommodities") + return MiniMap::COMMODITIES; if(pName=="MapViewFood") return MiniMap::STARVE; if(pName=="MapViewPower") @@ -367,83 +450,112 @@ if(pName==mapViewButtons[i]) break; assert(mapViewButtons[i]); - + i++; if(strlen(mapViewButtons[i])==0) { // end of row - go to beginning i--; // assuming that this is processed from front to back while(i>=0 && mapViewButtons[i] && strlen(mapViewButtons[i])) - i--; + { --i;} i++; // gone one too far } +#ifdef DEBUG assert(i>=0 && mapViewButtons[i] && strlen(mapViewButtons[i])); - +#endif return mapViewButtons[i]; } -void MiniMap::mapViewButtonClicked(CheckButton* button, int mousebutton) +void MiniMap::mapViewChangeDisplayMode(DisplayMode newMode) { Component *root = findRoot(this); - std::string name = button->getName(); + std::string name; + + switch(newMode) { + case NORMAL: name="MapViewNormal"; break; + case POLLUTION: name="MapViewPollution"; break; + case UB40: name="MapViewUB40"; break; + case STARVE: name="MapViewFood"; break; + case POWER: name="MapViewPower"; break; + case FIRE: name="MapViewFire"; break; + case CRICKET: name="MapViewSport"; break; + case HEALTH: name="MapViewHealth"; break; + case COAL: name="MapViewCoal"; break; + case TRAFFIC: name="MapViewTraffic"; break; + default: name=""; + //case COMMODITIES: name=//FIXME! + } + for(int b = 0; mapViewButtons[b] != 0; ++b) + { + if(strlen(mapViewButtons[b])) + { + CheckButton* button = getCheckButton(*root, mapViewButtons[b]); + if(button->getName()==name) + button->check(); + else + button->uncheck(); + } + } + + //FIXME there should be a way to actually use switch button + if (newMode==mMode && mMode == TRAFFIC) + { newMode = COMMODITIES;} + + if(mMode==COAL) + { + if(( coal_survey_done == 0 ) && ( !blockingDialogIsOpen )) + { new Dialog( ASK_COAL_SURVEY );} + } + + mMode=newMode; + //switchMapViewButton(name); + switchView("MiniMap"); + getGameView()->setMapMode( mMode ); + mFullRefresh=true; +} + +void MiniMap::mapViewButtonClicked(CheckButton* button, int mousebutton) +{ + std::string name = button->getName(); + if(mousebutton == SDL_BUTTON_RIGHT ) { - // switch button + // switch button std::string pName=getNextButton(button->getName()); if(pName=="MapViewNormal") getGame()->showHelpWindow( "msb-normal" ); else if (pName=="MapViewUB40") - getGame()->showHelpWindow( "msb-ub40" ); + getGame()->showHelpWindow( "msb-ub40" ); else if (pName=="MapViewPollution") - getGame()->showHelpWindow( "msb-pol" ); + getGame()->showHelpWindow( "msb-pol" ); else if (pName=="MapViewFood") - getGame()->showHelpWindow( "msb-starve" ); + getGame()->showHelpWindow( "msb-starve" ); else if (pName=="MapViewPower") - getGame()->showHelpWindow( "msb-power" ); + getGame()->showHelpWindow( "msb-power" ); else if (pName=="MapViewFire") - getGame()->showHelpWindow( "msb-fire" ); + getGame()->showHelpWindow( "msb-fire" ); else if (pName=="MapViewSport") - getGame()->showHelpWindow( "msb-cricket" ); + getGame()->showHelpWindow( "msb-cricket" ); else if (pName=="MapViewHealth") - getGame()->showHelpWindow( "msb-health" ); + getGame()->showHelpWindow( "msb-health" ); else if (pName=="MapViewCoal") - getGame()->showHelpWindow( "msb-coal" ); + getGame()->showHelpWindow( "msb-coal" ); else if (pName=="MapViewTraffic") - getGame()->showHelpWindow( "msb-transport" ); - + getGame()->showHelpWindow( "msb-transport" ); + return; } - - DisplayMode newMode=getMode(button->getName()); - if(newMode==mMode) { + DisplayMode newMode=getMode(name); + + if(newMode==mMode) + { // switch button - name=getNextButton(button->getName()); - mMode=getMode(name); - } else { - mMode=newMode; - } - - if(mMode==COAL) { - if(( coal_survey_done == 0 ) && ( !blockingDialogIsOpen )) - new Dialog( ASK_COAL_SURVEY ); + name=getNextButton(name); + newMode=getMode(name); } - - for(int b = 0; mapViewButtons[b] != 0; ++b) { - if(strlen(mapViewButtons[b])) { - CheckButton* button = getCheckButton(*root, mapViewButtons[b]); - if(button->getName()==name) - button->check(); - else - button->uncheck(); - } - } - - switchMapViewButton(name); - switchView("MiniMap"); - getGameView()->setMapMode( mMode ); - mFullRefresh=true; + mapViewChangeDisplayMode(newMode); } void @@ -456,7 +568,9 @@ if(name == speedButtons[i]) break; } +#ifdef DEBUG assert(speedButtons[i] != 0); +#endif for(int b = 0; speedButtons[b] != 0; ++b) { if(b != i) { @@ -467,7 +581,8 @@ } } - switch(i) { + switch(i) + { case 0: setLincitySpeed(0); break; @@ -498,23 +613,86 @@ getGameView()->zoomOut(); } +void +MiniMap::scrollPageDownButtonClicked(Button* ) +{ + scrollPageDown(true); +} + +void +MiniMap::scrollPageUpButtonClicked(Button* ) +{ + scrollPageDown(false); +} + +void +MiniMap::scrollPageDown(bool down) +{ + std::string viewname = getSwitchComponent(*(findRoot(this)), "MiniMapSwitch")->getActiveComponent()->getName(); + + if(viewname == "MapMPS") + { + mps_map_page = (mps_map_page + (down?1:(MPS_MAP_PAGES-1)))%MPS_MAP_PAGES; + mps_refresh(); + } + else if(viewname == "MiniMap") + { + //must either be -1 or 1 + toggleStuffID((down?-1:1)); + } + else if(viewname == "PBar" || viewname == "PBar2nd") + { + pbarGlobalStyle = (pbarGlobalStyle + (down?1:(PBAR_GLOBAL_STYLES-1))) % PBAR_GLOBAL_STYLES; + if (pbarGlobalStyle == 0) + { switchView("PBar");} + else if (pbarGlobalStyle == 1) + { switchView("PBar2nd");} + else + { + std::cout << "unknown pbarGlobalStyle in MiniMap:turnpage(): " << pbarGlobalStyle << std::endl; + assert(false); + } + refresh_pbars(); + } + else if(viewname == "GlobalMPS") + { + mps_global_style = (mps_global_style + (down?1:(MPS_GLOBAL_STYLES-1))) % MPS_GLOBAL_STYLES; + mps_set(mps_x, mps_y, MPS_GLOBAL); + } +#ifdef DEBUG + else if(viewname == "EconomyGraph") + { + //has only one page for now + } + else if(viewname == "EnvMPS") + { + //has only one page for now + } + else + { + std::cout << "Unknown active component in MiniMapSwitch: " << viewname << std::endl; + assert(false); + } +#endif +} + + Vector2 MiniMap::mapPointToVector(MapPoint p) { - return Vector2(p.x * tilesize, p.y * tilesize); + return Vector2((p.x - left) * tilesize , (p.y -top) * tilesize); } /* * Set the Corners of the GameView to show in Minimap */ -void MiniMap::setGameViewCorners(const MapPoint& upperLeft, - const MapPoint& upperRight, const MapPoint& lowerRight, - const MapPoint& lowerLeft ) -{ - gameViewPoints[ 0 ] = mapPointToVector(upperLeft); - gameViewPoints[ 1 ] = mapPointToVector(upperRight); - gameViewPoints[ 2 ] = mapPointToVector(lowerRight); - gameViewPoints[ 3 ] = mapPointToVector(lowerLeft); +void MiniMap::setGameViewCorners( + const MapPoint& upperLeft, const MapPoint& lowerRight +) { + this->upperLeft = upperLeft; + this->lowerRight = lowerRight; + left = (upperLeft.x + lowerRight.x) / 2 - (width / tilesize / 2); + top = (upperLeft.y + lowerRight.y) / 2 - (height / tilesize / 2); mFullRefresh = true; setDirty(); } @@ -523,123 +701,159 @@ { attachButtons(); int x, y; - short typ, grp; + unsigned short size; // simple and bad implementation // FIXME: should be stored SDL_Surface and then blitted - // SDL_Surface should be updated, only if needed - std::auto_ptr<Painter> mpainter + std::auto_ptr<Painter> mpainter (painter.createTexturePainter(mTexture.get())); Color white; white.parse( "white" ); - Rect2D miniRect( 0 , 0, WORLD_SIDE_LEN*tilesize, WORLD_SIDE_LEN*tilesize ); - Color mc = getColor( 0, 0 ); - if(mpainter.get() == 0) { + Rect2D miniRect( 0 , 0, width, height ); + Color mc = getColor( 0, 0 ); + if(mpainter.get() == 0) + { // workaround - so that it works with GL, too, as long as there's no TexturePainter for this - for(y=1;y<WORLD_SIDE_LEN-1 && y<height/tilesize;y++) - for(x=1;x<WORLD_SIDE_LEN-1 && x<width/tilesize;x++) { - typ = MP_TYPE(x,y); - if( mFullRefresh || typ != mappointoldtype[x][y] ) { - mappointoldtype[x][y] = typ; - if( typ != CST_USED ){ - grp = get_group_of_type(typ); - mc=getColor(x,y); - painter.setFillColor(mc); - painter.fillRectangle(Rect2D(x*tilesize,y*tilesize,(x+main_groups[grp].size)*tilesize+1,(y+main_groups[grp].size)*tilesize)); - } else if( mMode == COAL ) { //show coal under buildings, too - mc=getColor(x,y); - painter.setFillColor(mc); - painter.fillRectangle(Rect2D(x*tilesize,y*tilesize,(x+1)*tilesize+1,(y+1)*tilesize)); + if( mFullRefresh ) + { + painter.setFillColor( mc ); + painter.fillRectangle( miniRect ); + for(y=1;y<height/tilesize;y++) + { + for(x=1;x<width/tilesize;x++) + { + if (world.is_visible(left+x, top+y)) /*left + x > 0 && top + y > 0 && left + x < world.len()-1 && top + y < world.len()-1)*/ + { + if( (world(left + x, top + y)->construction)) { + size = world(left + x, top + y)->construction->constructionGroup->size; + mc = getColor(left + x,top + y); + painter.setFillColor(mc); + painter.fillRectangle(Rect2D((x)*tilesize,y*tilesize,(x+size)*tilesize+1,(y+size)*tilesize)); + } + else if( !world(left + x, top + y)->reportingConstruction) + { + size = world(left + x, top + y)->getTileConstructionGroup()->size; + mc=getColor(left + x,top + y); + painter.setFillColor(mc); + painter.fillRectangle(Rect2D((x)*tilesize,(y)*tilesize,(x+size)*tilesize+1,(y+size)*tilesize)); + } + if( mMode == COAL ) + { //show coal under buildings, too + mc=getColor(left + x,top + y); + painter.setFillColor(mc); + painter.fillRectangle(Rect2D((x)*tilesize,(y)*tilesize,(x+1)*tilesize+1,(y+1)*tilesize)); + } } } } - + } + //show current GameView - painter.setClipRectangle( miniRect ); - painter.setLineColor( white ); - painter.drawPolygon( 4, gameViewPoints ); + painter.setClipRectangle( miniRect ); +// FIXME: +// painter.setLineColor( white ); +// painter.drawPolygon( 4, gameViewPoints ); painter.clearClipRectangle(); return; } - if( mFullRefresh ){ + if( mFullRefresh ) + { mpainter->setFillColor( mc ); mpainter->fillRectangle( miniRect ); - } - for(y=1;y<WORLD_SIDE_LEN-1 && y<height/tilesize;y++) { - for(x=1;x<WORLD_SIDE_LEN-1 && x<width/tilesize;x++) { - typ = MP_TYPE(x,y); - if ( mFullRefresh || typ != mappointoldtype[x][y] ) { - mappointoldtype[x][y] = typ; - if( typ != CST_USED ){ - grp = get_group_of_type(typ); - mc=getColor(x,y); - mpainter->setFillColor(mc); - mpainter->fillRectangle(Rect2D(x*tilesize,y*tilesize,(x+main_groups[grp].size)*tilesize+1,(y+main_groups[grp].size)*tilesize)); + + for(y=1;y<height/tilesize;y++) + { + for(x=1;x<width/tilesize;x++) + { + if (world.is_visible(left+x, top+y)) + { + if( (world(left + x, top + y)->construction)) { + size = world(left + x, top + y)->construction->constructionGroup->size; + mc = getColor(left + x,top + y); + mpainter->setFillColor(mc); + mpainter->fillRectangle(Rect2D((x)*tilesize,(y)*tilesize,(x+size)*tilesize+1,(y+size)*tilesize)); + } + else if ( (!world(left + x, top + y)->reportingConstruction) ) + { + size = world(left + x, top + y)->getTileConstructionGroup()->size; + mc = getColor(left + x, top + y); + mpainter->setFillColor(mc); + mpainter->fillRectangle(Rect2D((x)*tilesize,(y)*tilesize,(x+size)*tilesize+1,(y+size)*tilesize)); + } + if( mMode == COAL ) + { //show coal under buildings, too + mc=getColor(left + x,top + y); + mpainter->setFillColor(mc); + mpainter->fillRectangle(Rect2D((x)*tilesize,(y)*tilesize,(x+1)*tilesize+1,(y+1)*tilesize)); + } } } } } - + //show current GameView - mpainter->setLineColor( white ); - mpainter->drawPolygon( 4, gameViewPoints ); +// FIXME: +// mpainter->setLineColor( white ); +// mpainter->drawPolygon( 4, gameViewPoints ); painter.drawTexture(mTexture.get(), Vector2(0, 0)); - mFullRefresh=false; } Color MiniMap::getColorNormal(int x, int y) const { - int xx,yy; - - xx=x; - yy=y; - if (MP_TYPE(x,y) == CST_USED) { - xx = MP_INFO(x,y).int_1; - yy = MP_INFO(x,y).int_2; - } + int mc = world(x,y)->getConstructionGroup()->colour; - int mc = main_groups[MP_GROUP(xx,yy)].colour; int red = 0; int green = 0; int blue = 0; - if( mc & 32 ) - red = 8 * ( mc & 31 ); + if( mc & 32 ) + { red = 8 * ( mc & 31 );} if( mc & 64 ) - green = 8 * ( mc & 31 ); + { green = 8 * ( mc & 31 );} if( mc & 128 ) - blue = 8 * (mc & 31 ); - - return Color( red, green, blue ); + { blue = 8 * (mc & 31 );} + + return Color( red, green, blue ); } Color MiniMap::getColor(int x,int y) const { + if(!world.is_inside( x, y)) + { + x = 0; + y = 0; + } int xx = x; int yy = y; - - if (MP_TYPE(x,y) == CST_USED) { - xx = MP_INFO(x,y).int_1; - yy = MP_INFO(x,y).int_2; + int conflags = 0; + int mapflags = 0; + unsigned short g = world(x,y)->getGroup(); + + // only needed to look up xx,yy for old style flags + if (world(x,y)->reportingConstruction) + { + xx = world(x,y)->reportingConstruction->x; + yy = world(x,y)->reportingConstruction->y; + conflags = world(x,y)->reportingConstruction->flags; } - /* FIXME: since here we should use xx, yy and not x,y */ - int flags=MP_INFO(xx,yy).flags; - - switch(mMode) { + mapflags = world(xx,yy)->flags; + switch(mMode) + { case NORMAL: #ifdef DEBUG -#define DEBUG_ALTITUDE +//#define DEBUG_ALTITUDE #ifdef DEBUG_ALTITUDE - if (GROUP_IS_BARE(MP_GROUP(xx,yy)) ) { + if (world(xx,yy)->is_bare()) + { // show ground altitude - int alt=ground[xx][yy].altitude; + int alt = world(xx,yy)->ground.altitude; if (alt > alt_min + 9 * alt_step) return Color(255,255,255); // white - else if ( alt > alt_min + 8 * alt_step ) + else if ( alt > alt_min + 8 * alt_step ) return Color(173,173,173); // bright grey else if ( alt > alt_min + 7 * alt_step ) return Color(130,130,130); // grey @@ -649,7 +863,7 @@ return Color(106,97,41); // brown else if ( alt > alt_min + 4 * alt_step ) return Color(0,198,0); // bright green - else if ( alt > alt_min + 3 * alt_step ) + else if ( alt > alt_min + 3 * alt_step ) return Color(16,125,8); // green else if ( alt > alt_min + 2 * alt_step ) return Color(248,229,30); // yellow @@ -661,230 +875,285 @@ else #endif #endif //DEBUG - { - return getColorNormal(xx,yy); - } - case POLLUTION: { - short p=MP_POL(x,y); - float v=p/600.0; - if(v<0) - v=0; - if(v>1) - v=1; + { return getColorNormal(xx,yy);} + case POLLUTION: + { + short p = world(x,y)->pollution; + float v = p/600.0; + if(v < 0) + v = 0; + if(v > 1) + v = 1; Color mc((int) (0xFF*v), (int) (0xFF*(1-v)), 0); - mc=light(mc,brightness(getColorNormal(x,y))); + mc = light(mc,brightness(getColorNormal(xx,yy))); return mc; } case FIRE: - if( MP_GROUP( x, y ) == GROUP_FIRE ){ - if( MP_INFO(x,y).int_2 < FIRE_LENGTH ){ + if( world(xx,yy)->getGroup() == GROUP_FIRE ) + { + if( ! static_cast<Fire*>(world(xx,yy)->reportingConstruction)->smoking_days ) + { return Color(0xFF,0,0); //still burning (red) } else { return Color(0xFF,0x99,0); //unbulldozable (orange) } } - if( MP_GROUP( x, y ) == GROUP_BURNT ){ +/* + //FIXME Does that group still exist? + if( world(xx,yy)->getGroup() == GROUP_BURNT ) + { return Color(0xFF,0xFF,0); //(yellow) } - if( MP_GROUP( x, y ) == GROUP_FIRESTATION ){ +*/ + if( world(xx,yy)->reportingConstruction && world(xx,yy)->reportingConstruction->constructionGroup == &fireStationConstructionGroup) + { return Color(0,0xFF,0); //green } //fall through case CRICKET: - if( (MP_GROUP( x, y ) == GROUP_CRICKET) && mMode==CRICKET ){ + if( (world(xx,yy)->reportingConstruction && world(xx,yy)->reportingConstruction->constructionGroup == &cricketConstructionGroup) && mMode==CRICKET ) + { return Color(0,0xFF,0); //green } //fall through case HEALTH: - if( (MP_GROUP( x, y ) == GROUP_HEALTH) && mMode==HEALTH ){ + if( (world(xx,yy)->reportingConstruction && world(xx,yy)->reportingConstruction->constructionGroup == &healthCentreConstructionGroup) && mMode==HEALTH ) + { return Color(0,0xFF,0); //green } - if( ((flags&FLAG_FIRE_COVER) && mMode==FIRE) || - ((flags&FLAG_CRICKET_COVER) && mMode==CRICKET) || - ((flags&FLAG_HEALTH_COVER) && mMode==HEALTH)) + if( ((mapflags & FLAG_FIRE_COVER) && mMode==FIRE) || + ((mapflags & FLAG_CRICKET_COVER) && mMode==CRICKET) || + ((mapflags & FLAG_HEALTH_COVER) && mMode==HEALTH)) { Color mc(0,0xFF,0); - mc=light(mc,brightness(getColorNormal(x,y))); + mc = light(mc,brightness(getColorNormal(xx,yy))); return mc; } else - return makeGrey(getColorNormal(x,y)); + return makeGrey(getColorNormal(xx,yy)); case UB40: { /* Display residence with un/employed people (red / green) == too many people here */ - if (MP_GROUP_IS_RESIDENCE(xx,yy)) { - if (MP_INFO(xx,yy).int_1 < -20) + int job_level = world(xx,yy)->reportingConstruction? + world(xx,yy)->reportingConstruction->tellstuff(Construction::STUFF_JOBS, -1):-1; + if (job_level == -1) // Not a "jobby" place at all + { + return makeGrey(getColorNormal(xx,yy)); + } + if ( world(xx,yy)->is_residence() ) + { + if ( job_level > 95 * TRANSPORT_QUANTA / 100 ) return Color(0xFF,0,0); - else if (MP_INFO(xx,yy).int_1 < 10) + else if ( job_level > 90 * TRANSPORT_QUANTA / 100 ) return Color(0x7F,0,0); else - return Color(0,0xFF,0); - } + return makeGrey(getColorNormal(xx,yy)); + //return Color(0,0xFF,0); + } /* display buildings with unsatisfied requests for jobs (yellow) == too few people here */ - if ( (MP_INFO(xx,yy).flags & FLAG_LACK_JOBS) > 0) { + + else //not a residence + { + if ( job_level < 5 * TRANSPORT_QUANTA / 100) return Color(0xFF,0xFF,0); // yellow + else if ( job_level < 10 * TRANSPORT_QUANTA / 100) + return Color(0xFF,0x99,0); // orange + else + return makeGrey(getColorNormal(xx,yy)); } - return makeGrey(getColorNormal(xx,yy)); } - case COAL: { + case COAL: //dont use xx and yy for coal deposits + { Color c(0x77,0,0); - if( coal_survey_done == 0 ) { + if( coal_survey_done == 0 ) + { return Color(0,0,0); } - if(MP_INFO(x,y).coal_reserve==0) + if(world(x,y)->coal_reserve==0) return makeGrey(getColorNormal(x,y)); - else if (MP_INFO(x,y).coal_reserve >= COAL_RESERVE_SIZE / 2) + else if (world(x,y)->coal_reserve >= COAL_RESERVE_SIZE / 2) return Color(0,0xFF,0); - else if (MP_INFO(x,y).coal_reserve < COAL_RESERVE_SIZE / 2) + else if (world(x,y)->coal_reserve < COAL_RESERVE_SIZE / 2) return Color(0xFF,0,0); - + return c; } - case STARVE: { - if (MP_GROUP_IS_RESIDENCE(xx,yy)) { - if ((total_time - MP_INFO(xx,yy).int_2) < 20) + case STARVE: + { + int food_level = world(xx,yy)->reportingConstruction? + world(xx,yy)->reportingConstruction->tellstuff(Construction::STUFF_FOOD, -1):1; + int water_level = world(xx,yy)->reportingConstruction? + world(xx,yy)->reportingConstruction->tellstuff(Construction::STUFF_WATER, -1):1; + int crit_level = water_level<food_level?water_level:food_level; + //dont care about other eaters or drinkers + if ( world(xx,yy)->is_residence() ) + { + if ( crit_level < 5 * TRANSPORT_QUANTA / 100 ) return Color(0xFF,0,0); - else if ((total_time - MP_INFO(xx,yy).int_2) < 100) + else if ( crit_level < 10 * TRANSPORT_QUANTA / 100 ) return Color(0x7F,0,0); else return Color(0,0xFF,0); - } else { - if (use_waterwell) { - if ((flags & FLAG_WATERWELL_COVER) != 0) - return makeBlue(getColorNormal(x,y)); - } - return makeGrey(getColorNormal(x,y)); } + else + { return makeGrey(getColorNormal(xx,yy));} } - case POWER: { + case POWER: + { Color mc; /* default color = grey */ - mc=Color(0x3F,0x3F,0x3F); - if (MP_INFO(xx, yy).flags & FLAG_ASKED_FOR_POWER) { - if ( (MP_INFO(xx, yy).flags & FLAG_GOT_POWER) != 0) { - /* Windmill powered */ - if (get_power (xx, yy, 0, 0) != 0) - mc=Color(0,0x7F,0); - /* Normal powered */ - if (get_power (xx, yy, 0, 1) != 0) - mc=Color(0,0xFF,0); - } else { - /* did not get power */ - /* !!! don't call get power here or the flags will be set :-) */ - mc=Color(0xFF,0,0); // (red) - } + //mc = Color(0x3F,0x3F,0x3F); + mc = makeGrey(getColorNormal(xx,yy)); + int kwh_level = world(xx,yy)->reportingConstruction? + world(xx,yy)->reportingConstruction->tellstuff(Construction::STUFF_KWH, -1):-1; + int mwh_level = world(xx,yy)->reportingConstruction? + world(xx,yy)->reportingConstruction->tellstuff(Construction::STUFF_MWH, -1):-1; + if (kwh_level > -1 || mwh_level > -1) + { + /* not enough power */ + mc = Color(0xFF,0,0); + /* kW powered */ + if (kwh_level > 5 * TRANSPORT_QUANTA / 100) + mc = Color(0,0x7F,0); + /* MW powered */ + if (mwh_level > 5 * TRANSPORT_QUANTA / 100) + mc = Color(0,0xFF,0); } - if (MP_GROUP(xx,yy) == GROUP_POWER_LINE) - mc=Color(0xFF,0xFF,0); //yellow - + if (g == GROUP_POWER_LINE) + { mc = Color(0xFF,0xFF,0);} //yellow return mc; } - case TRAFFIC: { - if ( MP_INFO(x,y).flags & FLAG_IS_TRANSPORT ) { - float max; - float nextValue; - if( MP_GROUP(x,y) == GROUP_ROAD || MP_GROUP(x,y) == GROUP_ROAD_BRIDGE ){ - max = MP_INFO(x,y).int_1 * 100.0 / MAX_FOOD_ON_ROAD; - nextValue = MP_INFO(x,y).int_2 * 100.0 / MAX_JOBS_ON_ROAD; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_ON_ROAD; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_4 * 100.0 / MAX_GOODS_ON_ROAD; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_5 * 100.0 / MAX_ORE_ON_ROAD; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_6 * 100.0 / MAX_STEEL_ON_ROAD; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_7 * 100.0 / MAX_WASTE_ON_ROAD; - if( nextValue > max ){ max = nextValue; } - } else if( MP_GROUP(x,y) == GROUP_TRACK || MP_GROUP(x,y) == GROUP_TRACK_BRIDGE ){ - max = MP_INFO(x,y).int_1 * 100.0 / MAX_FOOD_ON_TRACK; - nextValue = MP_INFO(x,y).int_2 * 100.0 / MAX_JOBS_ON_TRACK; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_ON_TRACK; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_4 * 100.0 / MAX_GOODS_ON_TRACK; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_5 * 100.0 / MAX_ORE_ON_TRACK; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_6 * 100.0 / MAX_STEEL_ON_TRACK; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_7 * 100.0 / MAX_WASTE_ON_TRACK; - if( nextValue > max ){ max = nextValue; } - } else { - max = MP_INFO(x,y).int_1 * 100.0 / MAX_FOOD_ON_RAIL; - nextValue = MP_INFO(x,y).int_2 * 100.0 / MAX_JOBS_ON_RAIL; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_3 * 100.0 / MAX_COAL_ON_RAIL; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_4 * 100.0 / MAX_GOODS_ON_RAIL; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_5 * 100.0 / MAX_ORE_ON_RAIL; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_6 * 100.0 / MAX_STEEL_ON_RAIL; - if( nextValue > max ){ max = nextValue; } - nextValue = MP_INFO(x,y).int_7 * 100.0 / MAX_WASTE_ON_RAIL; - if( nextValue > max ){ max = nextValue; } + case TRAFFIC: + { + if ( (conflags & FLAG_IS_TRANSPORT) || (g == GROUP_POWER_LINE)) + { + float loc_lvl = -1; + if (conflags & FLAG_IS_TRANSPORT) + { + Transport *transport; + transport = static_cast<Transport *>(world(xx,yy)->reportingConstruction); + if(transport->trafficCount.count(stuff_ID)) + { loc_lvl = transport->trafficCount[stuff_ID];} } - if( max > 99 ) //red - return Color(0xFF,0,0); - else if ( max > 85 ) //orange - return Color(0xFF,0x99,0); - else if ( max > 50 ) //yellow - return Color(0xFF,0xFF,0); - else //green - return Color(0,0xFF,0); - } else { //not a Transport, make bluish if in range of a markt - if (numof_markets > 0) { - for ( int q = 0; q < numof_markets; q++) { - if ( (abs (marketx[q] - xx) < MARKET_RANGE) - && (abs (markety[q] - yy) < MARKET_RANGE) ) - return makeBlue(getColorNormal(x,y)); - } + else if (g == GROUP_POWER_LINE) + { + Powerline *powerline; + powerline = static_cast<Powerline *>(world(xx,yy)->reportingConstruction); + if(powerline->trafficCount.count(stuff_ID)) + { loc_lvl = powerline->trafficCount[stuff_ID];} + } + if (loc_lvl < 0) + { return makeGrey(getColorNormal(xx,yy));} + loc_lvl = loc_lvl * TRANSPORT_RATE / TRANSPORT_QUANTA; + +#ifdef DEBUG + assert(!(loc_lvl > 0.928)); //should be limit from fluctuations +#endif + loc_lvl = 2-2/(1+((loc_lvl>0.928)?1:loc_lvl/0.928)); + //more contrast for small loads + Color mc((int) (0xFF*loc_lvl), (int) (0xFF*(1-loc_lvl)), 0); + return mc; + } + else + { //not a Transport, make bluish if in range of a markt + if ((mapflags & FLAG_MARKET_COVER) && + marketConstructionGroup.commodityRuleCount.count(stuff_ID)) + { + return makeBlue(getColorNormal(x,y)); } - return makeGrey(getColorNormal(x,y)); + return makeGrey(getColorNormal(xx,yy)); } } + case COMMODITIES: + { +/* + if (conflags & FLAG_IS_TRANSPORT) + return makeGrey(getColorNormal(xx,yy)); +*/ + float loc_lvl = world(xx,yy)->reportingConstruction? + world(xx,yy)->reportingConstruction->tellstuff(stuff_ID, -1):-1; + float red, green, blue; + + if (loc_lvl < 0) + { return makeGrey(getColorNormal(xx,yy));} + loc_lvl /= TRANSPORT_QUANTA; + if (stuff_ID == Construction::STUFF_WASTE) //so far waste is the only bad commodity + { loc_lvl = 1 - loc_lvl;} + red = 1 - 2.25 * loc_lvl; + if (red < 0) red = 0; + if (!world(xx,yy)->reportingConstruction->constructionGroup->commodityRuleCount[stuff_ID].take) + { red = 0;} + blue = 1 - 2.25 * (1 - loc_lvl); + if (blue < 0) blue = 0; + if (!world(xx,yy)->reportingConstruction->constructionGroup->commodityRuleCount[stuff_ID].give) + { blue = 0;} + green = 1 - red - blue; + Color mc(static_cast<int>(0xFF*red), static_cast<int>(0xFF*green),static_cast<int>(0xFF*blue)); + return mc; + } case MAX: std::cerr<<"Undefined MiniMap-Display-type!"<<std::endl; }; - + // default coloor is a nasty looking pink return Color(0xFF,0,0xFF); } void MiniMap::event(const Event& event) { + + int left, top; + + left = (upperLeft.x + lowerRight.x) / 2 - (width / tilesize / 2); + top = (upperLeft.y + lowerRight.y) / 2 - (height / tilesize / 2); + if(event.type == Event::MOUSEMOTION) { if(!event.inside) { inside = false; return; } if(!inside) { //mouse just enterd the minimap, show current mapmode - getGameView()->setMapMode( mMode ); + getGameView()->setMapMode( mMode ); inside = true; } return; } + + if(!event.inside) { return; } if(event.type==Event::MOUSEBUTTONDOWN) { // get Tile, that was clicked MapPoint tile ( - (int) ((event.mousepos.x - border ) / tilesize), - (int) ((event.mousepos.y - border ) / tilesize)); - - if(event.mousebutton == SDL_BUTTON_LEFT ) { - getGameView()->show(tile); // move main-map + (int) ((event.mousepos.x - border ) / tilesize + left), + (int) ((event.mousepos.y - border ) / tilesize) + top); + + if(event.mousebutton == SDL_BUTTON_LEFT ) + { getGameView()->show(tile);} // move main-map +/* + if(event.mousebutton == SDL_BUTTON_RIGHT ) { + } - if(event.mousebutton == SDL_BUTTON_WHEELUP ) { - getGameView()->zoomIn(); +*/ + + if(event.mousebutton == SDL_BUTTON_WHEELUP ) { + scrollPageDown(false); } if(event.mousebutton == SDL_BUTTON_WHEELDOWN ){ - getGameView()->zoomOut(); + scrollPageDown(true); } + + } +/* + else if (event.type == Event::KEYDOWN) + { + //moved 'm' and 'n' for pagescrolling to Gameview } +*/ } -IMPLEMENT_COMPONENT_FACTORY(MiniMap); +IMPLEMENT_COMPONENT_FACTORY(MiniMap) + + +/** @file lincity-ng/MiniMap.cpp */ diff -Nru lincity-ng-2.0/src/lincity-ng/MiniMap.hpp lincity-ng-2.9~git20150314/src/lincity-ng/MiniMap.hpp --- lincity-ng-2.0/src/lincity-ng/MiniMap.hpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MiniMap.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -20,10 +20,9 @@ #include "gui/Component.hpp" #include "gui/Color.hpp" -#include "lincity/lin-city.h" #include "gui/Texture.hpp" #include "MapPoint.hpp" - +#include "lincity/lintypes.h" //for knowing Construction #include <memory> class XmlReader; @@ -33,19 +32,19 @@ class MiniMap:public Component { public: - enum DisplayMode {NORMAL,POLLUTION,UB40,STARVE,POWER,FIRE,CRICKET,HEALTH,COAL,TRAFFIC,MAX}; + enum DisplayMode {NORMAL,POLLUTION,UB40,STARVE,POWER,FIRE,CRICKET,HEALTH,COAL,TRAFFIC,COMMODITIES,MAX}; MiniMap(); ~MiniMap(); void parse(XmlReader& reader); - + virtual void draw(Painter &painter); virtual void event(const Event& event); - - void setGameViewCorners(const MapPoint& upperLeft, - const MapPoint& upperRight, const MapPoint& lowerRight, - const MapPoint& lowerLeft); + + void setGameViewCorners( + const MapPoint& upperLeft, const MapPoint& lowerRight + ); Color getColor(int x,int y) const; Color getColorNormal(int x,int y) const; @@ -53,31 +52,41 @@ void hideMpsEnv(); void switchView(const std::string& viewname); + void scrollPageDown(bool down); + + Construction::Commodities getStuffID(); + void toggleStuffID(int step); + + void mapViewChangeDisplayMode(DisplayMode mode); private: void mapViewButtonClicked(CheckButton* button, int); void speedButtonClicked(CheckButton* button, int); void zoomInButtonClicked(Button* button); void zoomOutButtonClicked(Button* button); - + void scrollPageDownButtonClicked(Button* button); + void scrollPageUpButtonClicked(Button* button); + + void switchButton(CheckButton* button, int); void switchMapViewButton(const std::string &pName); - + void attachButtons(); Component *findRoot(Component *c); +//FIXME Vector2 mapPointToVector(MapPoint p); - - Vector2 gameViewPoints[ 4 ]; - short mappointoldtype[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; - DisplayMode mMode; + MapPoint upperLeft, lowerRight; + DisplayMode mMode; + Construction::Commodities stuff_ID; int tilesize; int border; + int left, top; //Positioning of minimap std::vector<CheckButton*> switchButtons; std::auto_ptr<Texture> mTexture; - + int mpsXOld, mpsYOld, mpsStyleOld; bool mFullRefresh; @@ -90,3 +99,6 @@ MiniMap* getMiniMap(); #endif + +/** @file lincity-ng/MiniMap.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Mps.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Mps.cpp --- lincity-ng-2.0/src/lincity-ng/Mps.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Mps.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -20,15 +20,14 @@ #include "Mps.hpp" #include "gui_interface/mps.h" #include "lincity/engglobs.h" -//#include "lincity/modules/all_modules.h" #include "lincity/lctypes.h" - #include "Util.hpp" #include "gui/XmlReader.hpp" #include "gui/ComponentFactory.hpp" #include "gui/ComponentLoader.hpp" #include "gui/Paragraph.hpp" +#include "lincity/modules/all_modules.h" #include "Sound.hpp" @@ -55,7 +54,7 @@ if(parseAttribute(name, value)) { continue; } else { - std::cerr << "Unknown attribute '" << name + std::cerr << "Unknown attribute '" << name << "' skipped in Mps.\n"; } } @@ -104,13 +103,11 @@ { int x = point.x; int y = point.y; - if( x < 0 || y < 0 || x >= WORLD_SIDE_LEN || y >= WORLD_SIDE_LEN ) - return; - - if (MP_TYPE(x,y) == CST_USED) - { - x = MP_INFO(x,y).int_1; - y = MP_INFO(x,y).int_2; + if( !world.is_inside(x, y)) {return;} + Construction *reportingConstruction = world(x,y)->reportingConstruction; + if (reportingConstruction) { + x = reportingConstruction->x; + y = reportingConstruction->y; } // Used with MPS_GLOBAL, MPS_ENV and MPS_MAP @@ -121,164 +118,22 @@ void Mps::playBuildingSound(int mps_x, int mps_y) { - switch(MP_GROUP(mps_x, mps_y)) + if(world(mps_x, mps_y)->reportingConstruction) { - case GROUP_BLACKSMITH: - getSound()->playSound( "Blacksmith" ); - break; - case GROUP_COALMINE: - getSound()->playSound( "CoalMine" ); - break; - case GROUP_COAL_POWER: - if( MP_TYPE( mps_x,mps_y) == CST_POWERS_COAL_FULL ) - getSound()->playSound( "PowerCoalFull" ); - else if( MP_TYPE( mps_x,mps_y) == CST_POWERS_COAL_MED ) - getSound()->playSound( "PowerCoalMed" ); - else if( MP_TYPE( mps_x,mps_y) == CST_POWERS_COAL_LOW ) - getSound()->playSound( "PowerCoalLow" ); - else //if( MP_TYPE( mps_x,mps_y) == CST_POWERS_COAL_EMPTY ) - getSound()->playSound( "PowerCoalEmpty" ); - break; - case GROUP_COMMUNE: - getSound()->playSound( "Commune" ); - break; - case GROUP_CRICKET: - getSound()->playSound( "SportsCroud" ); - break; - case GROUP_FIRESTATION: - getSound()->playSound( "FireStation" ); - break; - case GROUP_HEALTH: - getSound()->playSound( "Health" ); - break; - case GROUP_INDUSTRY_H: - getSound()->playSound( "IndustryHigh" ); - break; - case GROUP_INDUSTRY_L: - getSound()->playSound( "IndustryLight" ); - break; - case GROUP_MILL: - getSound()->playSound( "Mill" ); - break; - case (GROUP_MONUMENT): - if ((MP_INFO( mps_x,mps_y).int_1 * 100 / BUILD_MONUMENT_JOBS) >= 100) { - getSound()->playSound( "Monument" ); - } else { - getSound()->playSound( "MonumentConstruction" ); - } - break; - case (GROUP_OREMINE): - getSound()->playSound( "OreMine" ); - break; - case GROUP_ORGANIC_FARM: - getSound()->playSound( "OrganicFarm" ); - break; - case GROUP_PORT: - getSound()->playSound( "Harbor" ); - break; - case GROUP_POTTERY: - getSound()->playSound( "Pottery" ); - break; - case GROUP_POWER_LINE: - getSound()->playSound( "PowerLine" ); - break; - case GROUP_RAIL: - case GROUP_RAIL_BRIDGE: - getSound()->playSound( "RailTrain" ); - break; - case GROUP_RECYCLE: - getSound()->playSound( "Recycle" ); - break; - case GROUP_RESIDENCE_LL: - getSound()->playSound( "ResidentialLowLow" ); - break; - case GROUP_RESIDENCE_LH: - getSound()->playSound( "ResidentialLow" ); - break; - case GROUP_RESIDENCE_ML: - case GROUP_RESIDENCE_MH: - getSound()->playSound( "ResidentialMed" ); - break; - case GROUP_RESIDENCE_HL: - case GROUP_RESIDENCE_HH: - getSound()->playSound( "ResidentialHigh" ); - break; - case GROUP_ROAD: - case GROUP_ROAD_BRIDGE: - getSound()->playSound( "TraficLow" ); - //getSound()->playSound( "TraficHigh" ); - //TODO: find out when to use TraficHigh - break; - case GROUP_ROCKET: - getSound()->playSound( "Rocket" ); - //TODO: what about RocketExplosion RocketTakeoff - break; - case GROUP_SCHOOL: - getSound()->playSound( "School" ); - break; - case GROUP_SOLAR_POWER: - getSound()->playSound( "PowerSolar" ); - break; - case GROUP_SUBSTATION: - if( MP_TYPE( mps_x, mps_y )== CST_SUBSTATION_R ){ - getSound()->playSound( "SubstationOff" ); - } else if( MP_TYPE( mps_x, mps_y ) == CST_SUBSTATION_G ){ - getSound()->playSound( "SubstationOn" ); - } else{ //CST_SUBSTATION_RG - getSound()->playSound( "Substation" ); - } - break; - case GROUP_TIP: - getSound()->playSound( "Tip" ); - break; - case GROUP_TRACK: - case GROUP_TRACK_BRIDGE: - getSound()->playSound( "DirtTrack" ); - break; - case GROUP_MARKET: - if( MP_TYPE( mps_x, mps_y ) == CST_MARKET_EMPTY ) - getSound()->playSound( "MarketEmpty" ); - else if( MP_TYPE( mps_x, mps_y ) == CST_MARKET_LOW ) - getSound()->playSound( "MarketLow" ); - else if( MP_TYPE( mps_x, mps_y ) == CST_MARKET_MED ) - getSound()->playSound( "MarketMed" ); - else //if( MP_TYPE( mps_x, mps_y ) == CST_MARKET_FULL ) - getSound()->playSound( "MarketFull" ); - - break; - case GROUP_UNIVERSITY: - getSound()->playSound( "University" ); - break; - case GROUP_WATER: - getSound()->playSound( "Water" ); - break; - case GROUP_WINDMILL: - if( MP_TECH(mps_x, mps_y ) < MODERN_WINDMILL_TECH ){ - getSound()->playSound( "WindMill" ); - } else { - getSound()->playSound( "WindMillHTech" ); - } - break; - case GROUP_FIRE: - if( (MP_GROUP( mps_x, mps_y ) == GROUP_FIRE) && - ( MP_INFO( mps_x, mps_y ).int_2 < FIRE_LENGTH ) ){ - getSound()->playSound( "Fire" ); - } - break; - case GROUP_SHANTY: - getSound()->playSound( "Shanty" ); - break; - default: - if( GROUP_IS_BARE(MP_GROUP( mps_x, mps_y )) && (MP_GROUP( mps_x, mps_y) != GROUP_DESERT )){ - getSound()->playSound( "Green" ); - } - if( MP_TYPE( mps_x, mps_y ) == CST_PARKLAND_PLANE ){ - getSound()->playSound( "ParklandPlane" ); - } - if( MP_TYPE( mps_x, mps_y ) == CST_PARKLAND_LAKE ){ - getSound()->playSound( "ParklandLake" ); - } + unsigned short group = world(mps_x, mps_y)->reportingConstruction->constructionGroup->group; + if( group == GROUP_ROAD || group == GROUP_ROAD_BRIDGE) + { dynamic_cast<Transport *>(world(mps_x, mps_y)->reportingConstruction)->playSound();} + else + { world(mps_x, mps_y)->reportingConstruction->playSound();} } + else + { + ResourceGroup* resourceGroup = world(mps_x, mps_y)->getTileResourceGroup(); + int s = resourceGroup->chunks.size(); + if(s) + { getSound()->playASound( resourceGroup->chunks[ rand()%s ] );} + } + std::cout.flush(); } int mps_set_silent(int x, int y, int style); @@ -288,5 +143,8 @@ mps_set_silent(mps_x, mps_y, mps_style); } -IMPLEMENT_COMPONENT_FACTORY(Mps); +IMPLEMENT_COMPONENT_FACTORY(Mps) + + +/** @file lincity-ng/Mps.cpp */ diff -Nru lincity-ng-2.0/src/lincity-ng/Mps.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Mps.hpp --- lincity-ng-2.0/src/lincity-ng/Mps.hpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Mps.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -32,7 +32,7 @@ class Paragraph; /** - * The MPS component is more or less a text component with 13 lines that + * The MPS component is more or less a text component with 13 lines that * is used to display status information about the game/engine. */ class Mps : public Component @@ -45,7 +45,6 @@ void clear(); void setView(MapPoint point, int style = MPS_MAP ); - void setText(int i, const std::string &s); void playBuildingSound(int mps_x, int mps_y); @@ -60,3 +59,6 @@ extern Mps* envMPS; #endif + +/** @file lincity-ng/Mps.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/MpsInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/MpsInterface.cpp --- lincity-ng-2.0/src/lincity-ng/MpsInterface.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/MpsInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -29,9 +29,12 @@ #include "lincity/lclib.h" #include "lincity/engglobs.h" #include "tinygettext/gettext.hpp" -#include "lincity/modules/all_modules.h" -#include "tinygettext/gettext.hpp" +#include "lincity/modules/modules_interfaces.h" +#include "lincity/lctypes.h" +#include "lincity/lin-city.h" +#include "lincity/modules/shanty.h" //for counting Shanties in housing display #include "MiniMap.hpp" +#include "Game.hpp" // implement everything here @@ -40,35 +43,32 @@ int mps_x = 0; int mps_y = 0; int mps_style = 0; +int mps_map_page = 0; Mps* currentMPS = 0; - -void mps_full_refresh() -{ -} - -void mappoint_stats(int, int, int) -{ -} - +/* void mps_init() { } - +*/ int mps_set_silent(int x, int y, int style) { - int same_square = 0; + static int same_square = 0; mps_style = style; - switch(style) { + switch(style) + { case MPS_MAP: - case MPS_ENV: - if (mps_x == x && mps_y == y) { - same_square = 1; + case MPS_ENV: + if (mps_x == x && mps_y == y) + { ++same_square;} + else + { + same_square = 0; + mps_x = x; + mps_y = y; } - mps_x = x; - mps_y = y; break; - default: + default: break; } return same_square; @@ -76,176 +76,86 @@ int mps_set( int x, int y, int style ) /* Attaches an area or global display */ { + if(! getGame()) //there may be no longer a game when shuting down lincity + { return -1;} int same_square = mps_set_silent(x, y, style); + if(same_square) + { mps_map_page = (mps_map_page + 1)%MPS_MAP_PAGES;} switch(style) { case MPS_MAP: if(mapMPS) - mapMPS->clear(); + { mapMPS->clear();} getMiniMap()->switchView("MapMPS"); break; case MPS_ENV: if(envMPS) - envMPS->clear(); + { envMPS->clear();} getMiniMap()->switchView("EnvMPS"); break; case MPS_GLOBAL: if(globalMPS) - globalMPS->clear(); + { globalMPS->clear();} getMiniMap()->switchView("GlobalMPS"); break; default: assert(false); break; - } + } mps_refresh(); return same_square; } -void mps_redraw() /* Re-draw the mps area, bezel and all */ -{ - mps_refresh(); -} - void mps_refresh() /* refresh the information display's contents */ { - switch (mps_style) { + if(! world.is_visible(mps_x, mps_y)) + { return;} + switch (mps_style) + { case MPS_MAP: currentMPS = mapMPS; - switch(MP_GROUP(mps_x, mps_y)) + if (world(mps_x, mps_y)->reportingConstruction) { - case GROUP_BLACKSMITH: - mps_blacksmith (mps_x, mps_y); - break; - case GROUP_COALMINE: - mps_coalmine (mps_x, mps_y); - break; - case GROUP_COAL_POWER: - mps_coal_power (mps_x, mps_y); - break; - case GROUP_COMMUNE: - mps_commune (mps_x, mps_y); - break; - case GROUP_CRICKET: - mps_cricket (mps_x, mps_y); - break; - case GROUP_FIRESTATION: - mps_firestation (mps_x, mps_y); - break; - case GROUP_HEALTH: - mps_health_centre (mps_x, mps_y); - break; - case GROUP_INDUSTRY_H: - mps_heavy_industry (mps_x, mps_y); - break; - case GROUP_INDUSTRY_L: - mps_light_industry (mps_x, mps_y); - break; - case GROUP_MILL: - mps_mill (mps_x, mps_y); - break; - case (GROUP_MONUMENT): - mps_monument (mps_x, mps_y); - break; - case (GROUP_OREMINE): - mps_oremine (mps_x, mps_y); - break; - case GROUP_ORGANIC_FARM: - mps_organic_farm(mps_x, mps_y); - break; - case GROUP_PORT: - mps_port (mps_x, mps_y); - break; - case GROUP_POTTERY: - mps_pottery (mps_x, mps_y); - break; - case GROUP_POWER_LINE: - mps_power_line (mps_x, mps_y); - break; - case GROUP_RAIL: - case GROUP_RAIL_BRIDGE: - mps_rail (mps_x, mps_y); - break; - case GROUP_RECYCLE: - mps_recycle (mps_x, mps_y); - break; - case GROUP_RESIDENCE_LL: - mps_residence(mps_x, mps_y); - break; - case GROUP_RESIDENCE_LH: - mps_residence(mps_x, mps_y); - break; - case GROUP_RESIDENCE_ML: - case GROUP_RESIDENCE_MH: - case GROUP_RESIDENCE_HL: - case GROUP_RESIDENCE_HH: - mps_residence(mps_x, mps_y); - break; - case GROUP_ROAD: - case GROUP_ROAD_BRIDGE: - mps_road (mps_x, mps_y); - break; - case GROUP_ROCKET: - mps_rocket (mps_x, mps_y); - break; - case GROUP_SCHOOL: - mps_school (mps_x, mps_y); - break; - case GROUP_SOLAR_POWER: - mps_solar_power (mps_x, mps_y); - break; - case GROUP_SUBSTATION: - mps_substation (mps_x, mps_y); - break; - case GROUP_TIP: - mps_tip (mps_x, mps_y); - break; - case GROUP_TRACK: - case GROUP_TRACK_BRIDGE: - mps_track(mps_x, mps_y); - break; - case GROUP_MARKET: - mps_market (mps_x, mps_y); - break; - case GROUP_UNIVERSITY: - mps_university (mps_x, mps_y); - break; - case GROUP_WATER: - mps_water (mps_x, mps_y); - break; - case GROUP_WINDMILL: - mps_windmill (mps_x, mps_y); - break; - case GROUP_WATERWELL: - mps_waterwell (mps_x, mps_y); - break; - default: - //no special information on this group, just show the Name. - mps_store_title(0, - _(main_groups[MP_GROUP(mps_x, mps_y)].name)); - - mps_store_title(2, _("no further information available") ); - - if( GROUP_IS_BARE(MP_GROUP( mps_x, mps_y )) ){ - mps_store_title(4,_("build something here") ); - } -#ifdef DEBUG - mps_store_sd(10, "x = ", mps_x); - mps_store_sd(11, "y = ", mps_y); - mps_store_sd(12, "altitude = ", ALT(mps_x, mps_y)); - - fprintf(stderr, "x %i, y %i, Alt %i\n", mps_x, mps_y, ALT(mps_x,mps_y)); -#endif + world(mps_x, mps_y)->reportingConstruction->report(); } + else + { + switch(world(mps_x, mps_y)->getGroup()) + { + case GROUP_WATER: + mps_water (mps_x, mps_y); + break; + default: + //no special information on this group, just show the ground info. + + mps_store_sdd(0,world(mps_x, mps_y)->getTileConstructionGroup()->name, mps_x, mps_y); + //mps_store_sdd(0,main_groups[world(mps_x, mps_y)->getGroup()].name, mps_x, mps_y); + + mps_store_title(2, N_("no further information available") ); + + if( world(mps_x, mps_y)->is_bare() ) + { + mps_store_title(8, N_("build something here") ); + } + /*#ifdef DEBUG + mps_store_sd(10, "x", mps_x); + mps_store_sd(11, "y", mps_y); + mps_store_sd(12, "altitude", world(mps_x, mps_y)->ground.altitude); + + fprintf(stderr, "x %i, y %i, Alt %i\n", mps_x, mps_y, world(mps_x, mps_y)->ground.altitude); + #endif + */ + } //endswitch groups + } //elseif use of modern report currentMPS = 0; break; - + case MPS_ENV: currentMPS = envMPS; mps_right (mps_x, mps_y); currentMPS = 0; break; - + case MPS_GLOBAL: currentMPS = globalMPS; switch (mps_global_style) { @@ -272,35 +182,30 @@ /** Update text contents for later display (refresh) */ void mps_update() -{ - mps_update( mps_x, mps_y , mps_style ); -} - -/** Changes global var to next display */ -void mps_global_advance() { + mps_update( mps_x, mps_y , mps_style ); } /** * mps_info storage functions; place values of corresponding type into - * mps_info[], performing certain pretification. The single argument + * mps_info[], performing certain pretification. The single argument * forms center their argument. The dual arguments left-justify the * first and right-justify the second. the ..p forms put a % after - * the second argument + * the second argument */ -void mps_store_title(int i, const char * t) +void mps_store_title(int i, const std::string &t) { if(!currentMPS) return; - currentMPS->setText(i,t); + currentMPS->setText(i,_(t.c_str())); } void mps_store_fp(int i, double f) { if(!currentMPS) return; - + std::ostringstream os; os << std::setprecision(1) << std::fixed << f << "%"; currentMPS->setText(i,os.str()); @@ -310,61 +215,116 @@ { if(!currentMPS) return; - + std::ostringstream os; os<<std::setprecision(1)<<std::fixed; os<<f; currentMPS->setText(i,os.str()); } +void mps_store_sf(int i, const std::string &s, double fl) +{ + if(!currentMPS) + return; + + std::ostringstream os; + os<<std::setprecision(1)<<std::fixed; + os<<_(s.c_str())<<"\t"<<fl; + currentMPS->setText(i,os.str()); +} + + void mps_store_d(int i, int d) { if(!currentMPS) return; - + std::ostringstream os; os<<d; currentMPS->setText(i,os.str()); } -void mps_store_ss(int i, const char * s1, const char * s2) +void mps_store_ss(int i, const std::string &s1, const std::string &s2) { if(!currentMPS) return; - + std::ostringstream os; - os<<s1<<": "<<s2; + os<<_(s1.c_str())<<"\t"<<_(s2.c_str()); currentMPS->setText(i,os.str()); } -void mps_store_sd(int i, const char * s, int d) +void mps_store_sd(int i, const std::string &s, int d) { if(!currentMPS) return; - + std::ostringstream os; - os<<s<<": "<<d; + os<<_(s.c_str())<<"\t"<<d; currentMPS->setText(i,os.str()); } -void mps_store_sfp(int i, const char * s, double fl) +void mps_store_ssd(int i, const std::string &s1, const std::string &s2, int d) { if(!currentMPS) return; - + + std::ostringstream os; + os<<_(s1.c_str())<<"\t"<<_(s2.c_str())<<"\t"<<d; + currentMPS->setText(i,os.str()); +} + +void mps_store_sfp(int i, const std::string &s, double fl) +{ + if(!currentMPS) + return; + std::ostringstream os; os<<std::setprecision(1)<<std::fixed; - os<<s<<": "<<fl<<"%"; + os<<_(s.c_str())<<"\t"<<fl<<"%"; + currentMPS->setText(i,os.str()); +} + +void mps_store_sdd(int i, const std::string &s, int d1, int d2) +{ + if(!currentMPS) + return; + + std::ostringstream os; + os<<_(s.c_str())<<"\t"<<d1<<"\t"<<d2; currentMPS->setText(i,os.str()); } -void mps_store_sss(int i, const char * s1, const char * s2, const char * s3) +void mps_store_sddp(int i, const std::string &s, int d, int max) { if(!currentMPS) return; - + std::ostringstream os; - os<<s1<<": "<<s2<<" "<<s3; + os<<std::setprecision(1)<<std::fixed; + os<<_(s.c_str())<<"\t"<<d<<"\t"<<(d*100.0/max)<<"%"; + currentMPS->setText(i,os.str()); +} + +void mps_store_ssddp(int i, const std::string &ascii, const std::string &s2, int d, int max) +{ + if(!currentMPS) + return; + + std::ostringstream os; + os<<std::setprecision(1)<<std::fixed; + os<<ascii<<_(s2.c_str())<<"\t"<<d<<"\t"<<(d*100.0/max)<<"%"; + currentMPS->setText(i,os.str()); +} + + +void mps_store_sss(int i, const std::string &s1, const std::string &s2, const std::string &s3) +{ + if(!currentMPS) + return; + + std::ostringstream os; + os<<(s1.c_str())<<"\t"<<(s2.c_str())<<"\t"<<s3; currentMPS->setText(i,os.str()); } @@ -375,62 +335,97 @@ void mps_right (int x, int y) { int i = 0; - char s[12]; const char* p; - int g; - + unsigned short group = world(x,y)->group; + int pol = world(x,y)->pollution; currentMPS = envMPS; - snprintf(s,sizeof(s),"%d,%d",x,y); - mps_store_title(i++,s); - i++; - mps_store_title(i++,_("Coverage")); - p = (MP_INFO(x,y).flags & FLAG_FIRE_COVER) ? _("Yes") : _("No"); - mps_store_ss(i++,_("Fire"),p); - - p = (MP_INFO(x,y).flags & FLAG_HEALTH_COVER) ? _("Yes") : _("No"); - mps_store_ss(i++,_("Health"),p); - - p = (MP_INFO(x,y).flags & FLAG_CRICKET_COVER) ? _("Yes") : _("No"); - mps_store_ss(i++,_("Sport"),p); - i++; - mps_store_title(i++,_("Pollution")); - - if (MP_POL(x,y) < 10) - p = _("clear"); - else if (MP_POL(x,y) < 25) - p = _("good"); - else if (MP_POL(x,y) < 70) - p = _("fair"); - else if (MP_POL(x,y) < 190) - p = _("smelly"); - else if (MP_POL(x,y) < 450) - p = _("smokey"); - else if (MP_POL(x,y) < 1000) - p = _("smoggy"); - else if (MP_POL(x,y) < 1700) - p = _("bad"); - else if (MP_POL(x,y) < 3000) - p = _("very bad"); + Uint8 *keystate = SDL_GetKeyState(NULL); + if (!binary_mode && keystate[SDLK_d]) + { world(x,y)->saveMembers(&std::cout);} + mps_store_sdd(i++, world(x, y)->getTileConstructionGroup()->name, x, y); + + p = ((world(x,y)->flags & FLAG_HAS_UNDERGROUND_WATER) != 0) ? N_("Yes") : N_("No"); + mps_store_ss(i++, N_("Fertile"), p); + if( group == GROUP_WATER) + { + if ( world(x,y)->flags & FLAG_IS_LAKE ) + { p = N_("Lake");} + else if ( world(x,y)->flags & FLAG_IS_RIVER ) + { p = N_("River");} + else + { p = N_("Pond");} + mps_store_title(i++, p); + } + else + { + i++; + } + p = (world(x,y)->flags & FLAG_FIRE_COVER) ? N_("Yes") : N_("No"); + mps_store_ss(i++, N_("Fire Protection"), p); + + p = (world(x,y)->flags & FLAG_HEALTH_COVER) ? N_("Yes") : N_("No"); + mps_store_ss(i++, N_("Health Care"), p); + + p = (world(x,y)->flags & FLAG_CRICKET_COVER) ? N_("Yes") : N_("No"); + mps_store_ss(i++, N_("Public Sports"), p); + + p = (world(x,y)->flags & FLAG_MARKET_COVER) ? N_("Yes") : N_("No"); + mps_store_ss(i++, N_("Market Range"), p); + + if (pol < 10) + p = N_("clear"); + else if (pol < 25) + p = N_("good"); + else if (pol < 70) + p = N_("fair"); + else if (pol < 190) + p = N_("smelly"); + else if (pol < 450) + p = N_("smokey"); + else if (pol < 1000) + p = N_("smoggy"); + else if (pol < 1700) + p = N_("bad"); + else if (pol < 3000) + p = N_("very bad"); else - p = _("death!"); + p = N_("death!"); - mps_store_sd(i++,p,MP_POL(x,y)); - i++; + mps_store_ssd(i++, N_("Air Pollution"), p, pol); - mps_store_title(i++,_("Bulldoze Cost")); - if (MP_TYPE(x,y) == CST_USED) - g = MP_GROUP( MP_INFO(x,y).int_1, MP_INFO(x,y).int_2 ); + if (world(x,y)->reportingConstruction) + { + mps_store_sd(i++, N_("Bull. Cost"), world(x,y)->reportingConstruction->constructionGroup->bul_cost); + } else - g = MP_GROUP(x,y); - if (g == 0) { /* Can't bulldoze grass. */ - mps_store_title(i++,_("N/A")); - } else { - if (g < 7) - g--; /* translate into button type */ - mps_store_d(i++,main_groups[g].bul_cost); + { + if (group == GROUP_DESERT) + { mps_store_ss(i++, N_("Bull. Cost"), N_("N/A") );} + else + { mps_store_sd(i++, N_("Bull. Cost"), world(x, y)->getTileConstructionGroup()->bul_cost);} + } + mps_store_sd(i++, N_("Ore Reserve"), world(x,y)->ore_reserve); + mps_store_sd(i++, N_("Coal Reserve"), world(x,y)->coal_reserve); + mps_store_sd(i++, N_("ground level"), world(x,y)->ground.altitude); +/* //Not needed if altitude == flooding level + if(world(x,y)->is_water()) + { + mps_store_sd(i++, N_("water level"), world(x,y)->ground.water_alt); + } +*/ + p = "-"; + if (world.saddlepoint(x,y)) + { p = N_("saddle point");} + else if (!world(x,y)->is_water() && world.minimum(x,y)) + { p = N_("minimum");} + else if (!world(x,y)->is_water() && world.maximum(x,y)) + { p = N_("maximum");} + else if (world.checkEdgeMin(x,y)) + { p = N_("lowest edge");} + mps_store_title(i++, p); currentMPS = 0; } @@ -442,51 +437,51 @@ int cashflow = 0; currentMPS = globalMPS; - mps_store_title(i++,_("Tax Income")); + mps_store_title(i++, N_("Tax Income")); cashflow += ly_income_tax; - num_to_ansi (s, 12, ly_income_tax); - mps_store_ss(i++,_("Income"), s); + num_to_ansi (s, sizeof(s), ly_income_tax); + mps_store_ss(i++, N_("Income"), s); cashflow += ly_coal_tax; - num_to_ansi(s, 12, ly_coal_tax); - mps_store_ss(i++,_("Coal"), s); + num_to_ansi(s, sizeof(s), ly_coal_tax); + mps_store_ss(i++, Construction::getStuffName(Construction::STUFF_COAL), s); cashflow += ly_goods_tax; - num_to_ansi(s, 12, ly_goods_tax); - mps_store_ss(i++,_("Goods"), s); + num_to_ansi(s, sizeof(s), ly_goods_tax); + mps_store_ss(i++, Construction::getStuffName(Construction::STUFF_GOODS), s); cashflow += ly_export_tax; - num_to_ansi(s, 12, ly_export_tax); - mps_store_ss(i++,_("Export"), s); + num_to_ansi(s, sizeof(s), ly_export_tax); + mps_store_ss(i++, N_("Export"), s); mps_store_title(i++, ""); - mps_store_title(i++,_("Expenses")); + mps_store_title(i++, N_("Expenses") ); cashflow -= ly_unemployment_cost; - num_to_ansi(s, 12, ly_unemployment_cost); - mps_store_ss(i++,_("Unemp."), s); + num_to_ansi(s, sizeof(s), ly_unemployment_cost); + mps_store_ss(i++, N_("Unemp."), s); cashflow -= ly_transport_cost; - num_to_ansi(s, 12, ly_transport_cost); - mps_store_ss(i++,_("Transport"), s); + num_to_ansi(s, sizeof(s), ly_transport_cost); + mps_store_ss(i++, N_("Transport"), s); cashflow -= ly_import_cost; - num_to_ansi(s, 12, ly_import_cost); - mps_store_ss(i++,_("Imports"), s); + num_to_ansi(s, sizeof(s), ly_import_cost); + mps_store_ss(i++, N_("Imports"), s); cashflow -= ly_other_cost; - num_to_ansi(s, 12, ly_other_cost); - mps_store_ss(i++,_("Others"), s); + num_to_ansi(s, sizeof(s), ly_other_cost); + mps_store_ss(i++, N_("Others"), s); mps_store_title(i++, "" ); - num_to_ansi(s, 12, cashflow); - mps_store_ss(i++,_("Net"), s); + num_to_ansi(s, sizeof(s), cashflow); + mps_store_ss(i++, N_("Net"), s); currentMPS = 0; -} +} void mps_global_other_costs() { @@ -495,34 +490,34 @@ char s[12]; currentMPS = globalMPS; - mps_store_title(i++,_("Other Costs")); + mps_store_title(i++, N_("Other Costs") ); /* Don't write year if it's negative. */ year = (total_time / NUMOF_DAYS_IN_YEAR) - 1; if (year >= 0) { - mps_store_sd(i++, _("For year"), year); + mps_store_sd(i++, N_("For year"), year); } mps_store_title(i++,""); num_to_ansi(s,sizeof(s),ly_interest); - mps_store_ss(i++,_("Interest"),s); + mps_store_ss(i++, N_("Interest"), s); num_to_ansi(s,sizeof(s),ly_school_cost); - mps_store_ss(i++,_("Schools"),s); + mps_store_ss(i++, N_("Schools"), s); num_to_ansi(s,sizeof(s),ly_university_cost); - mps_store_ss(i++,_("Univers."),s); + mps_store_ss(i++, N_("Univers."), s); num_to_ansi(s,sizeof(s),ly_deaths_cost); - mps_store_ss(i++,_("Deaths"),s); + mps_store_ss(i++, N_("Deaths"), s); num_to_ansi(s,sizeof(s),ly_windmill_cost); - mps_store_ss(i++,_("Windmill"),s); + mps_store_ss(i++, N_("Windmill"), s); num_to_ansi(s,sizeof(s),ly_health_cost); - mps_store_ss(i++,_("Hospital"),s); + mps_store_ss(i++, N_("Hospital"), s); num_to_ansi(s,sizeof(s),ly_rocket_pad_cost); - mps_store_ss(i++,_("Rockets"),s); + mps_store_ss(i++, N_("Rockets") ,s); num_to_ansi(s,sizeof(s),ly_fire_cost); - mps_store_ss(i++,_("Fire Stn"),s); + mps_store_ss(i++, N_("Fire Stn"), s); num_to_ansi(s,sizeof(s),ly_cricket_cost); - mps_store_ss(i++,_("Sport"),s); + mps_store_ss(i++, N_("Sport"), s); num_to_ansi(s,sizeof(s),ly_recycle_cost); - mps_store_ss(i++,_("Recycle"),s); + mps_store_ss(i++, N_("Recycle"), s); currentMPS = 0; } @@ -530,29 +525,28 @@ void mps_global_housing() { int days = total_time % NUMOF_DAYS_IN_MONTH +1; // 1..NUMOF_DAYS_IN_MONTH - + int i = 0; - int tp = housed_population + people_pool; + int tp = population + people_pool; currentMPS = globalMPS; - mps_store_title(i++,_("Population")); + mps_store_title(i++, N_("Population") ); mps_store_title(i++,""); - mps_store_sd(i++,_("Total"),tp); - mps_store_sd(i++,_("Housed"),housed_population); - mps_store_sd(i++,_("Homeless"),people_pool); - mps_store_sd(i++,_("Shanties"),numof_shanties); - mps_store_sd(i++,_("Unn Dths"),unnat_deaths); - mps_store_title(i++,_("Unemployment")); - mps_store_sd(i++,_("Claims"),tunemployed_population/days); - mps_store_sfp(i++,_("Rate"), - (((tunemployed_population/days) * 100.0) / tp)); - mps_store_title(i++,_("Starvation")); - mps_store_sd(i++,_("Cases"),tstarving_population/days); - - mps_store_sfp(i++,_("Rate"), - (((tstarving_population/days) * 100.0) / tp)); + mps_store_sd(i++, N_("Total"), tp); + mps_store_sd(i++, N_("Housed"), population); + mps_store_sd(i++, N_("Homeless"), people_pool); + mps_store_sd(i++, N_("Shanties"), Counted<Shanty>::getInstanceCount()); + + mps_store_sddp(i++, N_("Unemployment"), tunemployed_population/days, tp ); + mps_store_sddp(i++, N_("Starvation"), tstarving_population/days, tp ); + mps_store_sddp(i++, N_("Births p.a."), ltbirths, tp ); + mps_store_sddp(i++, N_("Deaths p.a."), ltdeaths, tp ); + mps_store_sddp(i++, N_("Unnat. Deaths"), ltunnat_deaths, ltdeaths?ltdeaths:1 ); currentMPS = 0; } + +/** @file lincity-ng/MpsInterface.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/PBar.cpp lincity-ng-2.9~git20150314/src/lincity-ng/PBar.cpp --- lincity-ng-2.0/src/lincity-ng/PBar.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/PBar.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -24,18 +24,25 @@ #include "gui/XmlReader.hpp" #include "gui/Paragraph.hpp" #include "gui/Painter.hpp" +#include "../lincity/lintypes.h" +#include "../lincity/lclib.h" + +//LCPBar* LCPBarInstance = 0; +LCPBar* LCPBarPage1 = 0; +LCPBar* LCPBarPage2 = 0; +int pbarGlobalStyle = PBAR_GLOBAL_STYLES - 1; +extern const char *commodityNames[]; -LCPBar* LCPBarInstance = 0; LCPBar::LCPBar() { - LCPBarInstance = this; + //LCPBarInstance = this; } LCPBar::~LCPBar() { - if(LCPBarInstance == this) - LCPBarInstance = 0; +/* if(LCPBarInstance == this) + LCPBarInstance = 0;*/ } void @@ -49,11 +56,18 @@ if(parseAttribute(name, value)) { continue; } else { - std::cerr << "Unknown attribute '" << name + std::cerr << "Unknown attribute '" << name << "' skipped in PBar.\n"; } } - + + if(getName() == "PBar") + { LCPBarPage1 = this;} + else if(getName() == "PBar2nd") + { LCPBarPage2 = this;} + else + { std::cerr << "Unknown LCBar component '" << getName() << "' found.\n";} + Component* component = parseEmbeddedComponent(reader); addChild(component); @@ -61,103 +75,95 @@ height = component->getHeight(); } -// copied from old-gui -#define pbar_adjust_pop(diff) 2 * diff -#define pbar_adjust_tech(diff) diff > 0 ? diff / 4 + 1 : -((-diff+1)/ 2) -#define pbar_adjust_food(diff) diff > 0 ? diff / 2 + 1 : diff -#define pbar_adjust_jobs(diff) diff > 0 ? diff / 2 + 1 : diff -#define pbar_adjust_coal(diff) diff > 0 ? diff / 2 + 1 : diff -#define pbar_adjust_goods(diff) diff > 0 ? diff / 2 + 1 : diff -#define pbar_adjust_ore(diff) diff > 0 ? diff / 2 + 1 : diff -#define pbar_adjust_steel(diff) diff > 0 ? diff / 2 + 1 : diff +#define pbar_adjust_tech(diff) diff > 0 ? diff / 40 + 1 : -((-diff+1)/ 20) #define pbar_adjust_money(diff) diff > 0 ? diff / 800 + 1 : diff / 400 - + void LCPBar::setValue(int num, int value, int diff) { - std::ostringstream compname; - compname << "pbar_text" << (num+1); - Paragraph* p = getParagraph(*this, compname.str()); + if ((num > 8) && (pbarGlobalStyle == 0)) + { return;} + if ((pbarGlobalStyle == 1) && (num > 2) && (num < 9)) + { return;} std::ostringstream os; - os<<std::fixed; - os<<std::setprecision(1); + int line_number = num+1; + if ( (pbarGlobalStyle == 1) && (num>8)) + { line_number -= PBAR_PAGE_SHIFT;} + + os << "pbar_text" << line_number; + Paragraph* p = getParagraph(*this, os.str()); + os.str(""); + //compname << "pbar_title" << line_number; + //Paragraph* pt = getParagraph(*this, compname.str()); + if(num==PTECH) { + os<<std::fixed; + os<<std::setprecision(1); os<<value/10000.0; - } - else if(num==PMONEY) + } + else if(num==PMONEY || num==PPOP || num==PPOL) { - if(abs(value)>=1000000000) - os<<value/1000000<<"M"; - else if(abs(value)>1000000) - os<<value/1000000.0<<"M"; - else if(abs(value)>1000) - os<<value/1000.0<<"K"; - else - os<<value; + char s[12]; + num_to_ansi (s, sizeof(s), value); + os<<s; } - else - os<<value; - - if( diff != 0 ){ - p->setText(os.str()); + else if ((num >= PFOOD) && (num <= PHOUSE)) // millis displayed as % + { + os<<std::fixed; + os<<std::setprecision(1); + os<<value/10.0<<"%"; } - os.str(""); - os<<"pbar_barview"<<(num+1); + else + { os<<"default";} + if (p) + { p->setText(os.str());} float sv=0; switch(num) { case PPOP: - sv=pbar_adjust_pop(diff); + sv = 2 * diff; break; case PTECH: - sv=pbar_adjust_tech(diff); + sv = (diff > 0) ? (diff / 40 + 1) : -((-diff)/ 20); + case PPOL: + sv = value<5000?100*diff/(1+value):value<25000?500*diff/value:5000*diff/value; + break; + case PMONEY: + sv = pbar_adjust_money(diff); + break; + default: + sv = diff; break; - case PFOOD: - sv=pbar_adjust_food(diff);break; - case PJOBS: - sv=pbar_adjust_jobs(diff);break; - case PCOAL: - sv=pbar_adjust_coal(diff);break; - case PGOODS: - sv=pbar_adjust_goods(diff);break; - case PORE: - sv=pbar_adjust_ore(diff);break; - case PSTEEL: - sv=pbar_adjust_steel(diff);break; - case PMONEY: - sv=pbar_adjust_money(diff);break; }; - + sv/=10.0; - - + + if(sv>1.0) sv=1.0; if(sv<-1.0) - sv=-1.0; - + sv=-1.0; + + os.str(""); + os<<"pbar_barview"<< line_number; Component *c=findComponent(os.str()+"a"); if(c) { - BarView *bv=dynamic_cast<BarView*>(c); - if(bv) - { - bv->setValue(sv); - } + BarView *bv=dynamic_cast<BarView*>(c); + if(bv) + { bv->setValue(sv);} } c=findComponent(os.str()+"b"); if(c) { - BarView *bv=dynamic_cast<BarView*>(c); - if(bv) - { - bv->setValue(sv); - } + BarView *bv=dynamic_cast<BarView*>(c); + if(bv) + { bv->setValue(sv);} } - + } /////////////////////////////////////////////////////////////////////////////////////// @@ -176,6 +182,7 @@ BarView::parse(XmlReader& reader) { dir=true; + bad=false; // parse attributes... XmlReader::AttributeIterator iter(reader); while(iter.next()) { @@ -202,8 +209,15 @@ } else { dir=false; } - } else { - std::cerr << "Unknown attribute '" << name + } else if(strcmp(name, "bad") == 0) { + if(strcmp(value,"1") == 0) { + bad=true; + } else { + bad=false; + } + } + else { + std::cerr << "Unknown attribute '" << name << "' skipped in BarView.\n"; } } @@ -220,15 +234,20 @@ void BarView::draw(Painter &painter) { - painter.setFillColor(Color(0,0xAA,0,255)); - - if((int)(width*value)>0 && dir) { + if(((int)(width*value)>0 && dir)) + { + painter.setFillColor(bad?Color(0xFF,0,0,255):Color(0,0xAA,0,255)); painter.fillRectangle(Rect2D(0,0,width*value,height)); - } else if((int)(width*value)<0 && !dir) { - painter.setFillColor(Color(0xFF,0,0,255)); + } + else if(((int)(width*value)<0 && !dir)) + { + painter.setFillColor(bad?Color(0,0xAA,0,255):Color(0xFF,0,0,255)); painter.fillRectangle(Rect2D(width-1+width*value,0,width-1,height)); } } -IMPLEMENT_COMPONENT_FACTORY(LCPBar); -IMPLEMENT_COMPONENT_FACTORY(BarView); +IMPLEMENT_COMPONENT_FACTORY(LCPBar) +IMPLEMENT_COMPONENT_FACTORY(BarView) + +/** @file lincity-ng/PBar.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/PBar.hpp lincity-ng-2.9~git20150314/src/lincity-ng/PBar.hpp --- lincity-ng-2.0/src/lincity-ng/PBar.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/PBar.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -30,7 +30,11 @@ class XmlReader; class Component; -extern LCPBar *LCPBarInstance; +//extern LCPBar *LCPBarInstance; +extern LCPBar * LCPBarPage1; +extern LCPBar * LCPBarPage2; +extern int pbarGlobalStyle; +#define PBAR_GLOBAL_STYLES 2 class LCPBar : public Component { @@ -55,6 +59,10 @@ private: float value; bool dir; + bool bad; }; #endif + +/** @file lincity-ng/PBar.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/PbarInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/PbarInterface.cpp --- lincity-ng-2.0/src/lincity-ng/PbarInterface.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/PbarInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -25,23 +25,19 @@ struct pbar_st pbars[NUM_PBARS]; -void pbars_full_refresh (void) -{ - // TRACE; -} - void update_pbar (int pbar_num, int value, int month_flag) { - // copy of update_pbar from src/oldgui/pbar.cpp - // store values for savegame + // copy of update_pbar from src/oldgui/pbar.cpp + // store values for savegame int i; struct pbar_st * pbar = &pbars[pbar_num]; if (month_flag) { pbar->oldtot = pbar->tot; - + /* If the dataset isn't full, just add it and forget month_flag */ - if (pbar->data_size < PBAR_DATA_SIZE) { + if (pbar->data_size < PBAR_DATA_SIZE) + { pbar->oldtot += pbar->data[0];// new total has one additional value pbar->data_size++; month_flag = 0; @@ -50,36 +46,48 @@ pbar->tot = 0; - for (i = 0; i < (pbar->data_size - 1); i++) { - if (month_flag) - pbar->tot += (pbar->data[i] = pbar->data[i+1]); + for (i = 0; i < (pbar->data_size - 1); i++) + { + if (month_flag) + { pbar->tot += (pbar->data[i] = pbar->data[i+1]);} else - pbar->tot += pbar->data[i]; + { pbar->tot += pbar->data[i];} } pbar->tot += pbar->data[i] = value; pbar->diff = pbar->tot - pbar->oldtot; // new: update bars - // NG 1.91 AL1: FIXME is this test needed ? - if(LCPBarInstance) - LCPBarInstance->setValue(pbar_num,value,pbar->diff); + if(LCPBarPage1 && LCPBarPage2) + { + LCPBarPage1->setValue(pbar_num,value,pbar->diff); + LCPBarPage2->setValue(pbar_num,value,pbar->diff); + } } void refresh_pbars (void) { - // TRACE; + if(LCPBarPage1 && LCPBarPage2) + for (int p = 0; p<NUM_PBARS; p++) + { + struct pbar_st * pbar = &pbars[p]; + if (pbarGlobalStyle == 0) + { LCPBarPage1->setValue(p,pbar->data[pbar->data_size - 1],pbar->diff);} + else if (pbarGlobalStyle == 1) + { LCPBarPage2->setValue(p,pbar->data[pbar->data_size - 1],pbar->diff);} + } } void init_pbars (void) { int i, p; - for (p = 0; p < NUM_PBARS; p++) { + for (p = 0; p < NUM_PBARS; p++) + { pbars[p].data_size = 0; pbars[p].oldtot = 0; pbars[p].tot = 0; - pbars[p].diff = 0; + pbars[p].diff = 1; for (i = 0; i < PBAR_DATA_SIZE; i++) - pbars[p].data[i] = 0; + { pbars[p].data[i] = 0;} } } @@ -88,11 +96,44 @@ { update_pbar (PPOP, housed_population + people_pool, 1); update_pbar (PTECH, tech_level, 1); - update_pbar (PFOOD, tfood_in_markets / data_last_month, 1); - update_pbar (PJOBS, tjobs_in_markets / data_last_month, 1); - update_pbar (PCOAL, tcoal_in_markets / data_last_month, 1); - update_pbar (PGOODS, tgoods_in_markets / data_last_month, 1); - update_pbar (PORE, tore_in_markets / data_last_month, 1); - update_pbar (PSTEEL, tsteel_in_markets / data_last_month, 1); update_pbar (PMONEY, total_money, 1); + if (tstat_capacities[Construction::STUFF_FOOD] > 999) + { update_pbar (PFOOD, tstat_census[Construction::STUFF_FOOD] / (tstat_capacities[Construction::STUFF_FOOD]/1000), 1);} + else update_pbar (PFOOD,0,1); + if (tstat_capacities[Construction::STUFF_JOBS] > 999) + { update_pbar (PJOBS, tstat_census[Construction::STUFF_JOBS] / ( tstat_capacities[Construction::STUFF_JOBS]/1000), 1);} + else update_pbar (PJOBS,0,1); + if (tstat_capacities[Construction::STUFF_GOODS] > 999) + { update_pbar (PGOODS, tstat_census[Construction::STUFF_GOODS] / ( tstat_capacities[Construction::STUFF_GOODS]/1000), 1);} + else update_pbar (PGOODS,0,1); + if (tstat_capacities[Construction::STUFF_COAL] > 999) + { update_pbar (PCOAL, tstat_census[Construction::STUFF_COAL] / ( tstat_capacities[Construction::STUFF_COAL]/1000), 1);} + else update_pbar (PCOAL,0,1); + if (tstat_capacities[Construction::STUFF_ORE] > 999) + { update_pbar (PORE, tstat_census[Construction::STUFF_ORE] / ( tstat_capacities[Construction::STUFF_ORE]/1000), 1);} + else update_pbar (PORE,0,1); + if (tstat_capacities[Construction::STUFF_STEEL] > 999) + { update_pbar (PSTEEL, tstat_census[Construction::STUFF_STEEL] / ( tstat_capacities[Construction::STUFF_STEEL]/1000), 1);} + else update_pbar (PSTEEL,0,1); + + update_pbar (PPOL, total_pollution, 1); + if (tstat_capacities[Construction::STUFF_KWH] > 999) + { update_pbar (PKWH, tstat_census[Construction::STUFF_KWH] / ( tstat_capacities[Construction::STUFF_KWH]/1000), 1);} + else update_pbar (PKWH,0,1); + if (tstat_capacities[Construction::STUFF_MWH] > 999) + { update_pbar (PMWH, tstat_census[Construction::STUFF_MWH] / ( tstat_capacities[Construction::STUFF_MWH]/1000), 1);} + else update_pbar (PMWH,0,1); + if (tstat_capacities[Construction::STUFF_WATER] > 999) + { update_pbar (PWATER, tstat_census[Construction::STUFF_WATER] / ( tstat_capacities[Construction::STUFF_WATER]/1000), 1);} + else update_pbar (PWATER,0,1); + if (tstat_capacities[Construction::STUFF_WASTE] > 999) + { update_pbar (PWASTE, tstat_census[Construction::STUFF_WASTE] / (tstat_capacities[Construction::STUFF_WASTE]/1000), 1);} + else update_pbar (PWASTE,0,1); + if (total_housing) + { update_pbar (PHOUSE, (1000 * housed_population)/total_housing , 1);} + else update_pbar (PHOUSE,0,1); + } + +/** @file lincity-ng/PbarInterface.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Permutator.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Permutator.cpp --- lincity-ng-2.0/src/lincity-ng/Permutator.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Permutator.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,120 @@ +#include "Permutator.hpp" + +Permutator::Permutator(unsigned int range, unsigned int seed) { + if (range <= 0) DO_ERROR("range must be positive"); + if (seed == 0) DO_ERROR("seed must not be zero"); + + this->range = range; + + // determine indexRange as a power of 2 not less than the area + unsigned int indexRange = 1; + unsigned int bits = 0; + while (indexRange <= range) + { + indexRange <<= 1; + bits++; + } +/* + unsigned int irreduciblePolynomials[] = { + 0x0, 0x1, 0x3, 0x6, + 0xC, 0x14, 0x30, 0x60, + 0x95, 0x110, 0x240, 0x500, + 0xE08, 0x1860, 0x3802, 0x6000, + 0xB400, 0x12000, 0x20400, 0x50C00, + 0x90000 + }; +*/ + static unsigned int irreduciblePolynomials[] = { + 0x0, 0x1, 0x3, 0x6,//4 + 0xC, 0x17, 0x30, 0x47,//8 + 0x95, 0x110, 0x240, 0x40B,//12 + 0xE08, 0x100D, 0x2015, 0x400B,//16 + 0xB400, 0x10007, 0x20013, 0x40013,//20 + 0x90000, 0x140000, 0x420000, 0xE10000,//24 + 0x1200000, 0x2000023, 0x4000013, 0x9000000//28 + }; + if (bits >= sizeof(irreduciblePolynomials) / sizeof(irreduciblePolynomials[0])) { + DO_ERROR("range exceeded the supported irreducible polynomials"); + assert (false); + } + unsigned int irreduciblePolynomial = irreduciblePolynomials[bits]; + unsigned int mappedI = seed; + //p = new unsigned int[range]; + p.resize(range); + for (unsigned int i = 0; i < range; i++) { + do { + mappedI = (mappedI >> 1) ^ (-(mappedI & 1) & irreduciblePolynomial); + } while (mappedI > range); + //p[i] = mappedI - 1; + p[i] = mappedI - 1; + } +/* //has been tested up to 9000000 + // double check the permutaton p + std::vector <unsigned int> histogram; + histogram.resize(range); + for (unsigned int i = 0; i < range; i++) { + histogram[i] = 0; + } + for (unsigned int i = 0; i < range; i++) { + histogram[p[i]]++; + } + for (unsigned int i = 0; i < range; i++) { + if (histogram[i]!=1) + std::cout << "irred. polynomial bit "<< bits <<" index position" << i << std::endl; + assert (histogram[i] == 1); + } + histogram.clear(); +*/ + // compute the composition of the above permutaton p.p + //permutation = new unsigned int[range]; + permutation.resize(range); + for (unsigned int i = 0; i < range; i++) { + //permutation[i] = p[p[i]]; + permutation[i] = p[p[i]]; + } +} +Permutator::~Permutator() { + //delete[] permutation; + //delete[] p; + permutation.clear(); + p.clear(); +} +void Permutator::shuffle() { + // compute the composition of the above permutaton p.permutation + //unsigned int *nextPermutation = new unsigned int[range]; + std::vector <unsigned int> nextPermutation; + nextPermutation.resize(range); + for (unsigned int i = 0; i < range; i++) { + //nextPermutation[i] = p[permutation[i]]; + nextPermutation[i] = p[permutation[i]]; + } + for (unsigned int i = 0; i < range; i++) { + //permutation[i] = nextPermutation[i]; + permutation[i] = nextPermutation[i]; + } + //delete[] nextPermutation; + nextPermutation.clear(); +} + +void Permutator::test() { + unsigned int range = 100; + Permutator permutator(range, 1); + //unsigned int *histogram = new unsigned int[range]; + std::vector <unsigned int> histogram; + histogram.resize(range); + for (unsigned int i = 0; i < range; i++) { + //histogram[i] = 0; + histogram[i] = 0; + } + for (unsigned int i = 0; i < range; i++) { + //histogram[permutator.getIndex(i)]++; + histogram[permutator.getIndex(i)]++; + } + for (unsigned int i = 0; i < range; i++) { + //assert (histogram[i] == 1); + assert (histogram[i] == 1); + } + //delete[] histogram; + histogram.clear(); +} + diff -Nru lincity-ng-2.0/src/lincity-ng/Permutator.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Permutator.hpp --- lincity-ng-2.0/src/lincity-ng/Permutator.hpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Permutator.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,43 @@ +#ifndef __LC_Permutator_h__ +#define __LC_Permutator_h__ + +#include "ErrorInterface.hpp" + +#include <iostream> +#include <assert.h> +#include <vector> + +// Permutator uses a linear feedback shift register to iterate +// through a permutation of a range of values in an efficient +// and deterministic way. +// http://en.wikipedia.org/wiki/Linear_feedback_shift_register + +class Permutator { +public: + Permutator(unsigned int range, unsigned int seed); + ~Permutator(); + unsigned int getIndex(unsigned int i) const { + assert(i < range); + return permutation[i]; + } + void shuffle(); //take the next power of the permutation + static void test(); +protected: + unsigned int range; + //unsigned int *permutation, *p; + std::vector<unsigned int> permutation, p; +}; + +/* Use case: + +doSimulation() { + int size; + Permutator permutator(size, 10); + for (int i = 0; i < size; i++) { + permutator.getIndex(i); + } +} +*/ + +#endif + diff -Nru lincity-ng-2.0/src/lincity-ng/readdir.cpp lincity-ng-2.9~git20150314/src/lincity-ng/readdir.cpp --- lincity-ng-2.0/src/lincity-ng/readdir.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/readdir.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -71,3 +71,6 @@ #endif + +/** @file lincity-ng/readdir.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/readdir.hpp lincity-ng-2.9~git20150314/src/lincity-ng/readdir.hpp --- lincity-ng-2.0/src/lincity-ng/readdir.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/readdir.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -52,3 +52,6 @@ #endif #endif + +/** @file lincity-ng/readdir.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/ReadPngInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/ReadPngInterface.cpp --- lincity-ng-2.0/src/lincity-ng/ReadPngInterface.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ReadPngInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -22,7 +22,6 @@ #include <config.h> #include <stdlib.h> -#include "lincity/lin-city.h" #include "lincity/lctypes.h" #include "lincity/engglobs.h" @@ -39,7 +38,7 @@ * in the main_types array. */ int -load_png_graphics (char* , char* ) +load_png_graphics (void) { LG(CST_GREEN,GROUP_BARE,LCT_GREEN_G); @@ -245,15 +244,15 @@ LG(CST_SUBSTATION_G,GROUP_SUBSTATION,LCT_SUBSTATION_G_G); LG(CST_SUBSTATION_RG,GROUP_SUBSTATION,LCT_SUBSTATION_RG_G); - LG(CST_WINDMILL_1_G,GROUP_WINDMILL,LCT_WINDMILL_1_G_G); - LG(CST_WINDMILL_2_G,GROUP_WINDMILL,LCT_WINDMILL_2_G_G); - LG(CST_WINDMILL_3_G,GROUP_WINDMILL,LCT_WINDMILL_3_G_G); - LG(CST_WINDMILL_1_RG,GROUP_WINDMILL,LCT_WINDMILL_1_RG_G); - LG(CST_WINDMILL_2_RG,GROUP_WINDMILL,LCT_WINDMILL_2_RG_G); - LG(CST_WINDMILL_3_RG,GROUP_WINDMILL,LCT_WINDMILL_3_RG_G); - LG(CST_WINDMILL_1_R,GROUP_WINDMILL,LCT_WINDMILL_1_R_G); - LG(CST_WINDMILL_2_R,GROUP_WINDMILL,LCT_WINDMILL_2_R_G); - LG(CST_WINDMILL_3_R,GROUP_WINDMILL,LCT_WINDMILL_3_R_G); + LG(CST_WINDMILL_1_G,GROUP_WIND_POWER,LCT_WINDMILL_1_G_G); + LG(CST_WINDMILL_2_G,GROUP_WIND_POWER,LCT_WINDMILL_2_G_G); + LG(CST_WINDMILL_3_G,GROUP_WIND_POWER,LCT_WINDMILL_3_G_G); + LG(CST_WINDMILL_1_RG,GROUP_WIND_POWER,LCT_WINDMILL_1_RG_G); + LG(CST_WINDMILL_2_RG,GROUP_WIND_POWER,LCT_WINDMILL_2_RG_G); + LG(CST_WINDMILL_3_RG,GROUP_WIND_POWER,LCT_WINDMILL_3_RG_G); + LG(CST_WINDMILL_1_R,GROUP_WIND_POWER,LCT_WINDMILL_1_R_G); + LG(CST_WINDMILL_2_R,GROUP_WIND_POWER,LCT_WINDMILL_2_R_G); + LG(CST_WINDMILL_3_R,GROUP_WIND_POWER,LCT_WINDMILL_3_R_G); LG(CST_WINDMILL_1_W,GROUP_WINDMILL,LCT_WINDMILL_1_W_G); LG(CST_WINDMILL_2_W,GROUP_WINDMILL,LCT_WINDMILL_2_W_G); LG(CST_WINDMILL_3_W,GROUP_WINDMILL,LCT_WINDMILL_3_W_G); @@ -410,3 +409,6 @@ return 0; } + +/** @file lincity-ng/ReadPngInterface.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/ScreenInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/ScreenInterface.cpp --- lincity-ng-2.0/src/lincity-ng/ScreenInterface.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ScreenInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -45,110 +45,76 @@ #include "Dialog.hpp" #include "EconomyGraph.hpp" -extern void ok_dial_box(const char *, int, const char *); - - -short mappointoldtype[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; int selected_module_cost; // this must be changed, when module (or celltype-button) is changed -int getMainWindowWidth(); -int getMainWindowHeight(); - std::string lastDateText = ""; -int lastMoney = -123456789; +int lastMoney = -123456789; /* This is on in screen_full_refresh, used in *_refresh() */ -char screen_refreshing; const char* current_month (int current_time); void draw_cb_box (int row, int col, int checked); - +/* int ask_launch_rocket_now (int x, int y) { new Dialog( ASK_LAUNCH_ROCKET, x, y ); return 0; } - -void display_rocket_result_dialog (int result) -{ - switch (result) { - case ROCKET_LAUNCH_BAD: - ok_dial_box ("launch-fail.mes", BAD, 0L); - break; - case ROCKET_LAUNCH_GOOD: - ok_dial_box ("launch-good.mes", GOOD, 0L); - break; - case ROCKET_LAUNCH_EVAC: - ok_dial_box ("launch-evac.mes", GOOD, 0L); - break; - } -} -void draw_background (void); -void screen_full_refresh (void); -void init_fonts (void); +*/ +//void screen_full_refresh (void); void initialize_monthgraph (void){ int i; monthgraph_size = getConfig()->monthgraphW; monthgraph_pop = (int*) malloc (sizeof(int) * monthgraph_size); if (monthgraph_pop == 0) { - malloc_failure (); + malloc_failure (); } monthgraph_starve = (int*) malloc (sizeof(int) * monthgraph_size); if (monthgraph_starve == 0) { - malloc_failure (); + malloc_failure (); } monthgraph_nojobs = (int*) malloc (sizeof(int) * monthgraph_size); if (monthgraph_nojobs == 0) { - malloc_failure (); + malloc_failure (); } monthgraph_ppool = (int*) malloc (sizeof(int) * monthgraph_size); if (monthgraph_ppool == 0) { - malloc_failure (); + malloc_failure (); } for (i = 0; i < monthgraph_size; i++) { - monthgraph_pop[i] = 0; - monthgraph_starve[i] = 0; - monthgraph_nojobs[i] = 0; - monthgraph_ppool[i] = 0; + monthgraph_pop[i] = 0; + monthgraph_starve[i] = 0; + monthgraph_nojobs[i] = 0; + monthgraph_ppool[i] = 0; } } -void rotate_mini_screen (void); -void advance_mps_style (void); +//void rotate_mini_screen (void); +//void advance_mps_style (void); /*void update_main_screen (int full_refresh) { }*/ -void connect_transport_main_screen (void); +//void connect_transport_main_screen (void); -void refresh_mps (void); -void advance_monthgraph_style (void); -void refresh_monthgraph (void); -void draw_small_yellow_bezel (int x, int y, int h, int w); -void mini_screen_help (void); -void status_message(const char *m1, const char* m2); -void print_time_for_year (void); -void rotate_main_screen (void); -void screen_setup (void); +//void refresh_mps (void); +//void advance_monthgraph_style (void); +//void refresh_monthgraph (void); +//void draw_small_yellow_bezel (int x, int y, int h, int w); +//void mini_screen_help (void); +//void print_time_for_year (void); +//void rotate_main_screen (void); +//void screen_setup (void); /* Miniscreen */ -void init_mini_map_mouse(void); -void mini_map_handler(int x, int y, int button); -void mini_aux_handler(int x, int y, int button); -/* Message area */ -void display_info_message (int colour, const char* ss, const char* xs) -{ - std::ostringstream text; - text << "display_info_message: '"<< colour << ss << "' + \"" << xs << "\"\n"; - updateMessageText( text.str() ); -} - -void reset_status_message (void); +//void init_mini_map_mouse(void); +//void mini_map_handler(int x, int y, int button); +//void mini_aux_handler(int x, int y, int button); /* * Display some Text in a Dialog Box with an OK Button. - * + * * see oldgui/screen.cpp: ok_dial_box (char *fn, int good_bad, char *xs) * * in oldgui good_bad influences the color: @@ -159,10 +125,10 @@ * * fn is the FileName of the message * if good_bad is RESULTS the fn is an absolute filename else - * it is a File in message_path. - * + * it is a File in message_path. + * * xs is some additional Text, that is shown after the Message - * from the File. ( XtraString ) + * from the File. ( XtraString ) */ void ok_dial_box (const char *fn, int good_bad, const char *xs) { @@ -177,7 +143,7 @@ } } -/* +/* * Update Message in Message Window */ void updateMessageText( const std::string text ) @@ -207,7 +173,7 @@ desktop->addChildComponent(messageTextComponent); } Paragraph* messageText = getParagraph(*messageTextComponent, "messageText"); - + messageText->setText( text ); } catch(std::exception& e) { std::cerr << "Couldn't display message '" << text << "': " @@ -216,63 +182,80 @@ } } -void updateDate(){ +void updateDate() +{ std::ostringstream dateText; - + int day = total_time % NUMOF_DAYS_IN_MONTH +1; // 1..NUMOF_DAYS_IN_MONTH day = 1 + ( 29 * day / NUMOF_DAYS_IN_MONTH ); // 1..30 - dateText << day << ". "; + dateText << day << ". "; dateText << current_month( total_time ); dateText << " "<< current_year( total_time ); - + Component* root = getGameView(); if( !root ) return; while( root->getParent() ) root = root->getParent(); - + if( dateText.str() == lastDateText ){ return; - } + } Component* dateParagraphComponent = 0; dateParagraphComponent = root->findComponent( "dateParagraph" ); - if( dateParagraphComponent == 0 ) { - return; - } + if( dateParagraphComponent == 0 ) + { return;} Paragraph* dateParagraph = getParagraph( *root, "dateParagraph"); - if( !dateParagraph ) return; - + if( !dateParagraph ) + { return;} dateParagraph->setText( dateText.str() ); lastDateText = dateText.str(); } +void string_begadd_number(std::string &str, int number, bool fill) { + std::ostringstream result; + if (fill) result << std::setw(3) << std::setfill('0'); + result << number; + str = result.str() + std::string(" ") + str; +}; + void updateMoney() { if( lastMoney == total_money ){ return; } //Prevent overflow if (total_money > 2000000000) - total_money = 2000000000; + total_money = 2000000000; else if (total_money < -2000000000) - total_money = -2000000000; - + total_money = -2000000000; + std::ostringstream moneyText; + std::string postfix =""; + std::string moneystr=""; int money = total_money; - if( abs(money) > 100000000 ){ - moneyText << money/1000000 << _("MM"); - } else { - if( abs(money) > 1000000 ){ - moneyText << money/1000000 << " "; - money %= 1000000; - money = abs(money); - moneyText << std::setw(6); - moneyText << std::setfill('0'); - } - moneyText << money; - } - moneyText << _("$"); - + /* */if ( abs(money) > 100000000 ) { + money/=1000000; + postfix=_("M") + std::string(" "); + } else if ( abs(money) > 100000 ) { + money/=1000; + postfix=_("k") + std::string(" "); + } + + do { + int tmpmoney; + if (abs(money)<1000) { + string_begadd_number(moneystr, money, false); + money=0; + } else { + tmpmoney=abs(money)%1000; + money/=1000; + string_begadd_number(moneystr, tmpmoney, true); + } + } while (abs(money)>0); + + moneyText << moneystr << postfix << _("$"); + Component* root = getGameView(); if( !root ) return; while( root->getParent() ) @@ -284,7 +267,7 @@ } Paragraph* moneyParagraph = getParagraph( *root, "moneyParagraph"); if( !moneyParagraph ) return; - + moneyParagraph->setText( moneyText.str() ); lastMoney = total_money; } @@ -296,6 +279,7 @@ * showing percent completed, but is also used to update * the current Progressbar. */ + void prog_box (const char *title, int percent) { (void) title; @@ -311,14 +295,12 @@ { updateMoney(); } - +/* void refresh_population_text (void) { - // TRACE; - update_pbar (PPOP, housed_population + people_pool, 0); - + update_pbar (PPOP, housed_population + people_pool, 0); } - +*/ void update_avail_modules (int popup) { //tell ButtonPanel to check for tech change. @@ -327,51 +309,54 @@ bp->checkTech( popup ); } } - +/* void refresh_main_screen() { } - +*/ +/* void screen_full_refresh () { - updateDate(); - print_total_money(); - update_main_screen (true); + updateDate(); + print_total_money(); + update_main_screen (true); } +*/ void print_stats () { - // this show update the financy window or mps + // this show update the financy window or mps + if (total_time % NUMOF_DAYS_IN_MONTH == (NUMOF_DAYS_IN_MONTH - 1)) + { + update_pbars_monthly(); + mps_refresh(); + getEconomyGraph()->updateData(); + } - if (total_time % NUMOF_DAYS_IN_MONTH == (NUMOF_DAYS_IN_MONTH - 1)) { - update_pbars_monthly(); - mps_refresh(); - getEconomyGraph()->updateData(); - } - - if (total_time % (NUMOF_DAYS_IN_MONTH/5) == NUMOF_DAYS_IN_MONTH / 5 - 1) { - mps_refresh(); - } + if (total_time % (NUMOF_DAYS_IN_MONTH/5) == NUMOF_DAYS_IN_MONTH / 5 - 1) + { mps_refresh();} - //check for new tech - update_avail_modules (1); + //check for new tech + update_avail_modules (1); } + +/* void update_main_screen_normal (int full_refresh) { (void) full_refresh; return; -} - +}*/ +/* void update_main_screen (int full_refresh) { update_main_screen_normal (full_refresh); -} - +}*/ +/* void print_time_for_year () { -} - +}*/ +/* int getMainWindowWidth() { //is only used by old code. 0 is the value that hurts least when the @@ -382,7 +367,8 @@ { return 0; } - +*/ +/* int yn_dial_box (const char * s1, const char * s2, const char * s3, const char *s4) { @@ -395,3 +381,6 @@ std::cerr << "-------------------------\n"; return 0; } +*/ +/** @file lincity-ng/ScreenInterface.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/ScreenInterface.hpp lincity-ng-2.9~git20150314/src/lincity-ng/ScreenInterface.hpp --- lincity-ng-2.0/src/lincity-ng/ScreenInterface.hpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/ScreenInterface.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -21,13 +21,16 @@ #include "lincity/engglobs.h" #include "lincity/lctypes.h" -void screen_full_refresh (); +//void screen_full_refresh (); void print_stats (); -void update_main_screen (int full_refresh); +//void update_main_screen (int full_refresh); void updateDate(); void updateMoney(); void updateMessageText( const std::string text ); #endif + +/** @file lincity-ng/ScreenInterface.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Sound.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Sound.cpp --- lincity-ng-2.0/src/lincity-ng/Sound.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Sound.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -18,18 +18,23 @@ #include <config.h> #include "Sound.hpp" +#include "Game.hpp" #include <assert.h> #include <iostream> +#include <vector> #include <sstream> #include <stdexcept> +#include <math.h> +#include "gui/XmlReader.hpp" #include "PhysfsStream/PhysfsSDL.hpp" #include <SDL_mixer.h> #include <physfs.h> #include "Config.hpp" - +#include "lincity/engglobs.h" +#include "lincity/modules/all_modules.h" Sound* soundPtr = 0; @@ -45,42 +50,237 @@ sound->loadWaves(); return 0; } - + void Sound::loadWaves() { //Load Waves + std::string dirsep = PHYSFS_getDirSeparator(); + std::string directory = "sounds"; + directory += dirsep; + std::string xmlfile = directory + "sounds.xml"; + XmlReader reader( xmlfile ); std::string filename; - std::string directory = "sounds/"; std::string fullname; + std::vector<ResourceGroup*> resGrpVec; + resGrpVec.clear(); + int resourceID_level = 0; + std::string key; Mix_Chunk *chunk; SDL_RWops* file; - char **rc = PHYSFS_enumerateFiles( directory.c_str() ); - char **i; - for (i = rc; *i != NULL; i++) { - fullname = directory; - fullname.append( *i ); - filename.assign( *i ); - - if(PHYSFS_isDirectory(fullname.c_str())) - continue; - - try { - file = getPhysfsSDLRWops( fullname.c_str() ); - chunk = Mix_LoadWAV_RW( file, 1); - if(!chunk) { - std::stringstream msg; - msg << "Couldn't read soundfile '" << fullname - << "': " << SDL_GetError(); - throw std::runtime_error(msg.str()); - } - - std::string idName = getIdName( filename ); - waves.insert( std::pair<std::string,Mix_Chunk*>(idName, chunk) ); - } catch(std::exception& e) { - std::cerr << "Error: " << e.what() << "\n"; + while( reader.read() ) + { + if( reader.getNodeType() == XML_READER_TYPE_ELEMENT) + { + const std::string& element = (const char*) reader.getName(); + + if( element == "resourceID") + { + XmlReader::AttributeIterator iter(reader); + while(iter.next()) + { + const char* name = (const char*) iter.getName(); + const char* value = (const char*) iter.getValue(); + if( strcmp(name, "name" ) == 0 ) + { + if(ResourceGroup::resMap.count(value)) + { + resGrpVec.push_back( ResourceGroup::resMap[value] ); + resourceID_level = reader.getDepth(); + if( resGrpVec.back()->sounds_loaded) //could crash if game is already running + { std::cout << "Warning duplicate resourceID in sounds.xml: " << value << std::endl;} + } + else + { std::cout << "unknown resourceID: " << value << " in sounds.xml" << std::endl;} + } + } + } + if(reader.getDepth() < resourceID_level-1) + { + for(size_t i=0; i< resGrpVec.size(); ++i) + { resGrpVec[i]->sounds_loaded = true;} + resGrpVec.clear(); + resourceID_level = 0; + } + if( element == "sound" ) + { + XmlReader::AttributeIterator iter(reader); + while(iter.next()) + { + const char* name = (const char*) iter.getName(); + const char* value = (const char*) iter.getValue(); + if( strcmp(name, "file" ) == 0 ) + { key = value;} + else + { std::cout << "unknown atribute " << name << " in sounds.xml" << std::endl;} + } + fullname = directory + key; + file = getPhysfsSDLRWops( fullname.c_str() ); + chunk = Mix_LoadWAV_RW( file, 1); + if (resourceID_level && resGrpVec.size()) + { + for(size_t i=0; i< resGrpVec.size(); ++i) + { resGrpVec[i]->chunks.push_back(chunk);} + } + else + { + std::string idName = getIdName( key ); + waves.insert( std::pair<std::string,Mix_Chunk*>(idName, chunk) ); + } + key.clear(); + } } + } //end xml reader + if(resGrpVec.size()) + { + for(size_t i=0; i< resGrpVec.size(); ++i) + { resGrpVec[i]->sounds_loaded = true;} + resGrpVec.clear(); + } +} + + /* + * Load music theme from subfolder of 'music/'. + * If no theme files are present, load just plain playlist. + */ +void Sound::loadMusicTheme() { + + //TODO there should be a music directory in + // LINCITY_HOME + std::string dirsep = PHYSFS_getDirSeparator(); + std::string musicDir = "music" + dirsep; + //Reset track counter: + totalTracks=0; + playlist.clear(); + //Get the current music theme + std::string theme = getConfig()->musicTheme; + + //Separate folder, filename and extension: + /* + std::string format = theme.substr((theme.length()-4), 4); + std::string folder = ""; + std::string file = ""; + */ + /* + if(format == ".xml") { + size_t found; + found = theme.find_last_of("/"); + folder = theme.substr(0, found); + file = theme.substr(found+1); + } + */ + + std::string xml_name = musicDir + theme + dirsep + theme + ".xml"; + theme = musicDir + theme; + + //std::cout << "looking for : " << xml_name << std::endl; + //Check if XML file is present + if(PHYSFS_exists(xml_name.c_str()) && PHYSFS_isDirectory(theme.c_str())) { + + //XML file found, so let's parse it and use as a basis + //for our music theme + std::cerr << "File found: '" << xml_name << "'. Loading song data..." << std::endl; + + //Get the number of songs + XmlReader reader( xml_name ); + + while( reader.read() ) { + if( reader.getNodeType() == XML_READER_TYPE_ELEMENT) + { + const std::string& element = (const char*) reader.getName(); + + if( element == "song" ) { + XmlReader::AttributeIterator iter(reader); + std::string title; + std::string filename; + float lowest_tech_level = 0.0; + float highest_tech_level = 10000.0; + + while( iter.next() ) + { + const char* name = (const char*) iter.getName(); + const char* value = (const char*) iter.getValue(); + + if (strcmp(name, "title" ) == 0) + title = value; + else if (strcmp(name, "filename" ) == 0) { + filename = theme + dirsep + value; + } + else if (strcmp(name, "highest-tech-level" ) == 0) + highest_tech_level = strtod(value, NULL); + else if (strcmp(name, "lowest-tech-level" ) == 0) + lowest_tech_level = strtod(value, NULL); + } + song tempSong; + tempSong.title = title; + tempSong.filename = filename; + tempSong.trackNumber = totalTracks; + tempSong.lowestTechLevel = lowest_tech_level; + if(highest_tech_level == 0) + { highest_tech_level = 10 * MAX_TECH_LEVEL;} + tempSong.highestTechLevel = highest_tech_level; + + playlist.push_back(tempSong); + std::cerr << "Found song: '" << playlist[totalTracks].title << "'" << std::endl; + totalTracks++; + } + else { + std::cerr << "Config::load# Unknown element '" << element << "' in "<< theme << "." << std::endl; + } + } + } + } + else { + std::string directory; + + if (PHYSFS_isDirectory(theme.c_str())) + { directory = theme;} + /* + else if(PHYSFS_isDirectory(folder.c_str())) + directory = folder; + */ + else + { return;} + + //No XML file found, let's just load plain song files to the playlist: + + //TODO not tested. It should work, but who knows? + + std::string filename; + std::string fullname; + std::cerr << "Loading song data from '" << directory << "'..." << std::endl; + + + //list files in 'music/' + char **files= PHYSFS_enumerateFiles(directory.c_str()); + char **fptr=files; + + //reset the pointer + fullname = ""; + + //Fill the playlist with data: + while(*fptr) + { + fullname = directory; + fullname.append( *fptr ); + filename.assign( *fptr ); + std::string format = fullname.substr((fullname.length()-4), 4); + + if(!PHYSFS_isDirectory(fullname.c_str()) && (filename[0]!='.') + && (format == ".ogg") ){ + song tempSong; + tempSong.title = *fptr; + tempSong.filename = directory + dirsep + *fptr; + tempSong.trackNumber = totalTracks; + tempSong.lowestTechLevel = -10; + tempSong.highestTechLevel = 10 * MAX_TECH_LEVEL; + playlist.push_back(tempSong); + //std::cerr << "Found song: '" << playlist[totalTracks].title << "'" << std::endl; + totalTracks++; + } + fptr++; + } + PHYSFS_freeList(files); } - PHYSFS_freeList(rc); } Sound::Sound() @@ -104,9 +304,18 @@ setMusicVolume(getConfig()->musicVolume); setSoundVolume(getConfig()->soundVolume); - // for now... - //playMusic("01 - pronobozo - lincity.ogg"); - playMusic( getConfig()->playSongName ); + totalTracks = 0; + loadMusicTheme(); + + //'totalTracks' gets too high value in while loop. Let's fix it. + totalTracks = totalTracks-1; + + //Load background music. + //First check if there really is something in playlist to prevent crashing + if(!playlist.empty()) { + currentTrack = playlist[0]; + } + playMusic(); } Sound::~Sound() @@ -147,7 +356,7 @@ chunks_t::size_type count = waves.count( name ); if ( count == 0 ) { - std::cout << "Couldn't find audio file '" << name << "'\n"; + std::cout << "Couldn't find audio file '" << name << "'" << std::endl; return; } @@ -155,11 +364,22 @@ for (int i = rand() % count; i > 0; i--) { it++; } - + + Mix_Volume( 0, getConfig()->soundVolume ); + Mix_PlayChannel( 0, it->second, 0 ); +} + +void Sound::playASound(Mix_Chunk *chunk) +{ + if( !getConfig()->soundEnabled ) + { return;} + if( !audioOpen ) + { return;} Mix_Volume( 0, getConfig()->soundVolume ); - Mix_PlayChannel( 0, it->second, 0 ); + Mix_PlayChannel( 0, chunk, 0 ); } + /* * Get ID-String for a given Filename. */ @@ -171,43 +391,106 @@ return filename.substr(0, pos); } +/* + * Change backround music. + * Possible variables can be found from Sound.hpp: enum musicTransport + * Currently there are three of them: NEXT_TRACK, NEXT_OR_FIRST_TRACK, PREV_TRACK + * Sould be self-explanatory. + */ void -Sound::playMusic(const std::string& name) +Sound::changeTrack(MusicTransport command) +{ + + //Something may gone wrong in the initialization: + if(playlist.empty()) + return; + + switch(command) { + case NEXT_TRACK: + if (currentTrack.trackNumber+1 <= totalTracks) { + currentTrack=playlist[currentTrack.trackNumber+1]; + playMusic(); + } + break; + + case NEXT_OR_FIRST_TRACK: + if (currentTrack.trackNumber+1 <= totalTracks) { + currentTrack=playlist[currentTrack.trackNumber+1]; + playMusic(); + } else { + //Jump to the beginning + currentTrack=playlist[0]; + playMusic(); + } + break; + + case PREV_TRACK: + if (currentTrack.trackNumber > 0) { + currentTrack=playlist[currentTrack.trackNumber-1]; + playMusic(); + } else { + //Jump to the beginning + currentTrack=playlist[0]; + playMusic(); + } + break; + } + +} + + +void +Sound::playMusic() { - getConfig()->playSongName = name; if(!audioOpen) return; - musicFile = name; if(getConfig()->musicEnabled) { - if(currentMusic) { - Mix_FreeMusic(currentMusic); + + if(currentMusic) + { + if(Mix_PlayingMusic()) + { Mix_FreeMusic(currentMusic);} currentMusic = 0; } - if(musicFile == "") + + //Check if current track is allowed at this tech level + //This calculates the right tech_level and rounds it by one decimal. + float current_tech = tech_level * (float)100 / MAX_TECH_LEVEL; + current_tech = round(current_tech*10)/10; + + if( getGame() && (current_tech < currentTrack.lowestTechLevel + || current_tech > currentTrack.highestTechLevel) ) + { + //std::cerr << "Next track is " << currentTrack.title + //<< " and it's tech level prerequisites range from " + //<< currentTrack.lowestTechLevel << " to " << currentTrack.highestTechLevel << "." << std::endl; + //std::cerr << "Current tech level is " << current_tech << "." << std::endl; + changeTrack(NEXT_OR_FIRST_TRACK); return; + } // transform filename... because the music commands in SDL_Mixer don't // support reading callbacks to read from physfs directly - std::string filename = "music/"; - filename += name; - const char* dir = PHYSFS_getRealDir(filename.c_str()); + + const char* dir = PHYSFS_getRealDir(currentTrack.filename.c_str()); if(dir == 0) { - std::cerr << "Warning couldn't find music file '" << name << "'.\n"; + std::cerr << "Warning couldn't find music file '" << currentTrack.filename << "'." << std::endl; return; } - filename = dir; - filename += "/music/"; - filename += name; - + std::string filename = dir; + filename += PHYSFS_getDirSeparator(); + filename += currentTrack.filename; + + currentMusic = Mix_LoadMUS(filename.c_str()); if(currentMusic == 0) { std::cerr << "Couldn't load music file '" << filename << "': " - << SDL_GetError() << "\n"; + << SDL_GetError() << std::endl; return; } - Mix_PlayMusic(currentMusic, -1); + Mix_PlayMusic(currentMusic, 1); } } @@ -222,7 +505,7 @@ return; if(enabled) { - playMusic(musicFile); + playMusic(); } else { if(Mix_PlayingMusic()) { Mix_FadeOutMusic(1000); @@ -233,9 +516,10 @@ void Sound::setMusicVolume(int vol) { +#ifdef DEBUG if(vol < 0 || vol > 100) - throw std::runtime_error("Music volume out of range (0..100)"); - + { throw std::runtime_error("Music volume out of range (0..100)");} +#endif getConfig()->musicVolume = vol; float volvalue = vol * MIX_MAX_VOLUME / 100.0; Mix_VolumeMusic(static_cast<int>(volvalue)); @@ -244,11 +528,15 @@ void Sound::setSoundVolume(int vol) { +#ifdef DEBUG if(vol < 0 || vol > 100) - throw std::runtime_error("Music volume out of range (0..100)"); - + { throw std::runtime_error("Sound volume out of range (0..100)");} +#endif getConfig()->soundVolume = vol; float volvalue = vol * MIX_MAX_VOLUME / 100.0; Mix_Volume(-1, static_cast<int>(volvalue)); } + +/** @file lincity-ng/Sound.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Sound.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Sound.hpp --- lincity-ng-2.0/src/lincity-ng/Sound.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Sound.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -20,10 +20,29 @@ #include <map> #include <string> +#include <vector> #include <SDL_mixer.h> #include <SDL.h> #include <SDL_thread.h> +//TODO make use for these: +enum MusicState { + PLAY, PAUSE, STOP +}; + +//Used for changing tracks. +enum MusicTransport { + NEXT_TRACK, PREV_TRACK, NEXT_OR_FIRST_TRACK +}; + +struct song { + std::string title; + std::string filename; + int trackNumber; + float lowestTechLevel; + float highestTechLevel; +}; + class Sound { public: @@ -31,12 +50,19 @@ ~Sound(); void playSound(const std::string& name); - void playMusic(const std::string& name); + void playASound(Mix_Chunk *chunk); + void playMusic(); + void changeTrack(MusicTransport command); void enableMusic(bool enabled); - /** set Music volume 0..100, 0=silent*/ + /** set Music volume 0..100, 0=silent */ void setMusicVolume(int vol); /** set Sound effect volume (0..100) */ void setSoundVolume(int vol); + /** Load song data from theme directory */ + void loadMusicTheme(); + /** information about currently playing track. Title, filename, track number, and tech levels allowed to play it. */ + song currentTrack; + private: static int soundThread(void* ptr); @@ -48,9 +74,13 @@ bool audioOpen; SDL_Thread* loaderThread; Mix_Music* currentMusic; - std::string musicFile; + int totalTracks; + std::vector<song> playlist; }; Sound* getSound(); #endif + +/** @file lincity-ng/Sound.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/TimerInterface.cpp lincity-ng-2.9~git20150314/src/lincity-ng/TimerInterface.cpp --- lincity-ng-2.0/src/lincity-ng/TimerInterface.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/TimerInterface.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -31,3 +31,6 @@ { real_time=SDL_GetTicks()-start_time; } + +/** @file lincity-ng/TimerInterface.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/TimerInterface.hpp lincity-ng-2.9~git20150314/src/lincity-ng/TimerInterface.hpp --- lincity-ng-2.0/src/lincity-ng/TimerInterface.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/TimerInterface.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -22,3 +22,6 @@ void get_real_time(void); #endif + +/** @file lincity-ng/TimerInterface.hpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Util.cpp lincity-ng-2.9~git20150314/src/lincity-ng/Util.cpp --- lincity-ng-2.0/src/lincity-ng/Util.cpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Util.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -81,3 +81,6 @@ findComponent(&result, tree, name); return result; } + +/** @file lincity-ng/Util.cpp */ + diff -Nru lincity-ng-2.0/src/lincity-ng/Util.hpp lincity-ng-2.9~git20150314/src/lincity-ng/Util.hpp --- lincity-ng-2.0/src/lincity-ng/Util.hpp 2009-01-25 20:20:43.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/lincity-ng/Util.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -33,3 +33,6 @@ #endif + +/** @file lincity-ng/Util.hpp */ + diff -Nru lincity-ng-2.0/src/PhysfsStream/PhysfsSDL.cpp lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsSDL.cpp --- lincity-ng-2.0/src/PhysfsStream/PhysfsSDL.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsSDL.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -89,3 +89,6 @@ ops->close = funcClose; return ops; } + +/** @file PhysfsStream/PhysfsSDL.cpp */ + diff -Nru lincity-ng-2.0/src/PhysfsStream/PhysfsSDL.hpp lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsSDL.hpp --- lincity-ng-2.0/src/PhysfsStream/PhysfsSDL.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsSDL.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -25,3 +25,6 @@ #endif + +/** @file PhysfsStream/PhysfsSDL.hpp */ + diff -Nru lincity-ng-2.0/src/PhysfsStream/PhysfsStream.cpp lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsStream.cpp --- lincity-ng-2.0/src/PhysfsStream/PhysfsStream.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsStream.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -123,3 +123,6 @@ delete rdbuf(); } + +/** @file PhysfsStream/PhysfsStream.cpp */ + diff -Nru lincity-ng-2.0/src/PhysfsStream/PhysfsStream.hpp lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsStream.hpp --- lincity-ng-2.0/src/PhysfsStream/PhysfsStream.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/PhysfsStream/PhysfsStream.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -72,3 +72,6 @@ #endif + +/** @file PhysfsStream/PhysfsStream.hpp */ + diff -Nru lincity-ng-2.0/src/tinygettext/findlocale.cpp lincity-ng-2.9~git20150314/src/tinygettext/findlocale.cpp --- lincity-ng-2.0/src/tinygettext/findlocale.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/findlocale.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -551,3 +551,6 @@ } } } + +/** @file tinygettext/findlocale.cpp */ + diff -Nru lincity-ng-2.0/src/tinygettext/findlocale.hpp lincity-ng-2.9~git20150314/src/tinygettext/findlocale.hpp --- lincity-ng-2.0/src/tinygettext/findlocale.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/findlocale.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -61,3 +61,6 @@ void FL_FreeLocale(FL_Locale **locale); #endif /*__findlocale_h_*/ + +/** @file tinygettext/findlocale.hpp */ + diff -Nru lincity-ng-2.0/src/tinygettext/gettext.hpp lincity-ng-2.9~git20150314/src/tinygettext/gettext.hpp --- lincity-ng-2.0/src/tinygettext/gettext.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/gettext.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -1,9 +1,9 @@ #ifndef __GETTEXT_H__ #define __GETTEXT_H__ -#include "tinygettext/TinyGetText.hpp" +#include "tinygettext/tinygettext.hpp" -extern TinyGetText::DictionaryManager* dictionaryManager; +extern tinygettext::DictionaryManager* dictionaryManager; #ifdef NEED_GETTEXT_CHARHACK static inline char* _(const char* message) @@ -21,3 +21,6 @@ #define N_(s) s #endif + +/** @file tinygettext/gettext.hpp */ + diff -Nru lincity-ng-2.0/src/tinygettext/tinygettext.cpp lincity-ng-2.9~git20150314/src/tinygettext/tinygettext.cpp --- lincity-ng-2.0/src/tinygettext/tinygettext.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/tinygettext.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,795 @@ +// $Id: tinygettext.cpp,v 1.4 2004/11/25 13:15:56 matzebraun Exp $ +// +// TinyGetText - A small flexible gettext() replacement +// Copyright (C) 2004 Ingo Ruhnke <grumbel@gmx.de> +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +#include <config.h> + +#include <sys/types.h> +#include <fstream> +#include <iostream> +#include <algorithm> +#include <ctype.h> +#include <errno.h> + +#include "SDL.h" + +#include "tinygettext.hpp" +#include "PhysfsStream/PhysfsStream.hpp" +#include "findlocale.hpp" + +//#define TRANSLATION_DEBUG + +namespace tinygettext { + +/** Convert \a which is in \a from_charset to \a to_charset and return it */ +std::string convert(const std::string& text, + const std::string& from_charset, + const std::string& to_charset) +{ + if (from_charset == to_charset) + return text; + + char *in = new char[text.length() + 1]; + strcpy(in, text.c_str()); + char *out = SDL_iconv_string(to_charset.c_str(), from_charset.c_str(), in, text.length() + 1); + delete[] in; + if(out == 0) + { + std::cerr << "Error: conversion from " << from_charset << " to " << to_charset << " failed" << std::endl; + return ""; + } + std::string ret(out); + SDL_free(out); + return ret; +#if 0 + iconv_t cd = SDL_iconv_open(to_charset.c_str(), from_charset.c_str()); + + size_t in_len = text.length(); + size_t out_len = text.length()*3; // FIXME: cross fingers that this is enough + + char* out_orig = new char[out_len]; + char* in_orig = new char[in_len+1]; + strcpy(in_orig, text.c_str()); + + char* out = out_orig; + ICONV_CONST char* in = in_orig; + size_t out_len_temp = out_len; // iconv is counting down the bytes it has + // written from this... + + size_t retval = SDL_iconv(cd, &in, &in_len, &out, &out_len_temp); + out_len -= out_len_temp; // see above + if (retval == (size_t) -1) + { + std::cerr << strerror(errno) << std::endl; + std::cerr << "Error: conversion from " << from_charset + << " to " << to_charset << " went wrong: " << retval << std::endl; + return ""; + } + SDL_iconv_close(cd); + + std::string ret(out_orig, out_len); + delete[] out_orig; + delete[] in_orig; + return ret; +#endif +} + +bool has_suffix(const std::string& lhs, const std::string rhs) +{ + if (lhs.length() < rhs.length()) + return false; + else + return lhs.compare(lhs.length() - rhs.length(), rhs.length(), rhs) == 0; +} + +bool has_prefix(const std::string& lhs, const std::string rhs) +{ + if (lhs.length() < rhs.length()) + return false; + else + return lhs.compare(0, rhs.length(), rhs) == 0; +} + +int plural1(int ) { return 0; } +int plural2_1(int n) { return (n != 1); } +int plural2_2(int n) { return (n > 1); } +int plural3_lv(int n) { return (n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2); } +int plural3_ga(int n) { return n==1 ? 0 : n==2 ? 1 : 2; } +int plural3_lt(int n) { return (n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2); } +int plural3_1(int n) { return (n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); } +int plural3_sk(int n) { return (n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2; } +int plural3_pl(int n) { return (n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); } +int plural3_sl(int n) { return (n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3); } + +/** Language Definitions */ +//*{ +LanguageDef lang_hu("hu", "Hungarian", 1, plural1); // "nplurals=1; plural=0;" +LanguageDef lang_ja("ja", "Japanese", 1, plural1); // "nplurals=1; plural=0;" +LanguageDef lang_ko("ko", "Korean", 1, plural1); // "nplurals=1; plural=0;" +LanguageDef lang_tr("tr", "Turkish", 1, plural1); // "nplurals=1; plural=0;" +LanguageDef lang_da("da", "Danish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_nl("nl", "Dutch", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_en("en", "English", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_fo("fo", "Faroese", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_de("de", "German", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_nb("nb", "Norwegian Bokmal", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_no("no", "Norwegian", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_nn("nn", "Norwegian Nynorsk", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_sv("sv", "Swedish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_et("et", "Estonian", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_fi("fi", "Finnish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_el("el", "Greek", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_he("he", "Hebrew", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_it("it", "Italian", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_pt("pt", "Portuguese", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_es("es", "Spanish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_eo("eo", "Esperanto", 2, plural2_1); // "nplurals=2; plural=(n != 1);" +LanguageDef lang_fr("fr", "French", 2, plural2_2); // "nplurals=2; plural=(n > 1);" +LanguageDef lang_pt_BR("pt_BR", "Brazilian", 2, plural2_2); // "nplurals=2; plural=(n > 1);" +LanguageDef lang_lv("lv", "Latvian", 3, plural3_lv); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);" +LanguageDef lang_ga("ga", "Irish", 3, plural3_ga); // "nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;" +LanguageDef lang_lt("lt", "Lithuanian", 3, plural3_lt); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);" +LanguageDef lang_hr("hr", "Croatian", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" +LanguageDef lang_cs("cs", "Czech", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" +LanguageDef lang_ru("ru", "Russian", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" +LanguageDef lang_uk("uk", "Ukrainian", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" +LanguageDef lang_sk("sk", "Slovak", 3, plural3_sk); // "nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;" +LanguageDef lang_pl("pl", "Polish", 3, plural3_pl); // "nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); +LanguageDef lang_sl("sl", "Slovenian", 3, plural3_sl); // "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);" +//*} + +LanguageDef& +get_language_def(const std::string& name) +{ + if (name == "hu") return lang_hu; + else if (name == "ja") return lang_ja; + else if (name == "ko") return lang_ko; + else if (name == "tr") return lang_tr; + else if (name == "da") return lang_da; + else if (name == "nl") return lang_nl; + else if (name == "en") return lang_en; + else if (name == "fo") return lang_fo; + else if (name == "de") return lang_de; + else if (name == "nb") return lang_nb; + else if (name == "no") return lang_no; + else if (name == "nn") return lang_nn; + else if (name == "sv") return lang_sv; + else if (name == "et") return lang_et; + else if (name == "fi") return lang_fi; + else if (name == "el") return lang_el; + else if (name == "he") return lang_he; + else if (name == "it") return lang_it; + else if (name == "pt") return lang_pt; + else if (name == "es") return lang_es; + else if (name == "eo") return lang_eo; + else if (name == "fr") return lang_fr; + else if (name == "pt_BR") return lang_pt_BR; + else if (name == "lv") return lang_lv; + else if (name == "ga") return lang_ga; + else if (name == "lt") return lang_lt; + else if (name == "hr") return lang_hr; + else if (name == "cs") return lang_cs; + else if (name == "ru") return lang_ru; + else if (name == "uk") return lang_uk; + else if (name == "sk") return lang_sk; + else if (name == "pl") return lang_pl; + else if (name == "sl") return lang_sl; + else return lang_en; +} + +DictionaryManager::DictionaryManager() + : current_dict(&empty_dict) +{ + parseLocaleAliases(); + // Environment variable LINCITY_LANG overrides language settings. + const char* lang = getenv( "LINCITY_LANG" ); + if( lang ){ + set_language( lang ); + return; + } + // use findlocale to setup language + FL_Locale *locale; + FL_FindLocale( &locale, FL_MESSAGES ); + if(locale->lang) { + if (locale->country) { + set_language( std::string(locale->lang)+"_"+std::string(locale->country) ); + } else { + set_language( std::string(locale->lang) ); + } + } + FL_FreeLocale( &locale ); +} + +void +DictionaryManager::parseLocaleAliases() +{ + // try to parse language alias list + std::ifstream in("/usr/share/locale/locale.alias"); + + char c = ' '; + while(in.good() && !in.eof()) { + while(isspace(static_cast<unsigned char>(c)) && !in.eof()) + in.get(c); + + if(c == '#') { // skip comments + while(c != '\n' && !in.eof()) + in.get(c); + continue; + } + + std::string alias; + while(!isspace(static_cast<unsigned char>(c)) && !in.eof()) { + alias += c; + in.get(c); + } + while(isspace(static_cast<unsigned char>(c)) && !in.eof()) + in.get(c); + std::string language; + while(!isspace(static_cast<unsigned char>(c)) && !in.eof()) { + language += c; + in.get(c); + } + + if(in.eof()) + break; + set_language_alias(alias, language); + } +} + +Dictionary& +DictionaryManager::get_dictionary(const std::string& spec) +{ + + //log_debug << "Dictionary for language \"" << spec << "\" requested" << std::endl; + + std::string lang = get_language_from_spec(spec); + + //log_debug << "...normalized as \"" << lang << "\"" << std::endl; + + Dictionaries::iterator i = dictionaries.find(get_language_from_spec(lang)); + if (i != dictionaries.end()) + { + return i->second; + } + else // Dictionary for languages lang isn't loaded, so we load it + { + //std::cout << "get_dictionary: " << lang << std::endl; + Dictionary& dict = dictionaries[lang]; + + dict.set_language(get_language_def(lang)); + if(charset != "") + dict.set_charset(charset); + + for (SearchPath::iterator p = search_path.begin(); p != search_path.end(); ++p) + { + char** files = PHYSFS_enumerateFiles(p->c_str()); + if(!files) + { + std::cerr << "Error: enumerateFiles() failed on " << *p << std::endl; + } + else + { + for(const char* const* filename = files; + *filename != 0; filename++) { + + // check if filename matches requested language + std::string fname = std::string(*filename); + std::string load_from_file = ""; + if(fname == lang + ".po") { + load_from_file = fname; + } else { + std::string::size_type s = lang.find("_"); + if(s != std::string::npos) { + std::string lang_short = std::string(lang, 0, s); + if (fname == lang_short + ".po") { + load_from_file = lang_short; + } + } + } + + // if it matched, load dictionary + if (load_from_file != "") { + //log_debug << "Loading dictionary for language \"" << lang << "\" from \"" << filename << "\"" << std::endl; + std::string pofile = *p + "/" + *filename; + try { + IFileStream in(pofile); + read_po_file(dict, in); + } catch(std::exception& e) { + std::cerr << "Error: Failure file opening: " << pofile << std::endl; + std::cerr << e.what() << "\n"; + } + } + } + PHYSFS_freeList(files); + } + } + + return dict; + } +} + +std::set<std::string> +DictionaryManager::get_languages() +{ + std::set<std::string> languages; + + for (SearchPath::iterator p = search_path.begin(); p != search_path.end(); ++p) + { + char** files = PHYSFS_enumerateFiles(p->c_str()); + if (!files) + { + std::cerr << "Error: opendir() failed on " << *p << std::endl; + } + else + { + for(const char* const* file = files; *file != 0; file++) { + if(has_suffix(*file, ".po")) { + std::string filename = *file; + languages.insert(filename.substr(0, filename.length()-3)); + } + } + PHYSFS_freeList(files); + } + } + return languages; +} + +void +DictionaryManager::set_language(const std::string& lang) +{ + //log_debug << "set_language \"" << lang << "\"" << std::endl; + language = get_language_from_spec(lang); + //log_debug << "==> \"" << language << "\"" << std::endl; + current_dict = & (get_dictionary(language)); +} + +const std::string& +DictionaryManager::get_language() const +{ + return language; +} + +void +DictionaryManager::set_charset(const std::string& charset) +{ + dictionaries.clear(); // changing charset invalidates cache + this->charset = charset; + set_language(language); +} + +void +DictionaryManager::set_language_alias(const std::string& alias, + const std::string& language) +{ + language_aliases.insert(std::make_pair(alias, language)); +} + +std::string +DictionaryManager::get_language_from_spec(const std::string& spec) +{ + std::string lang = spec; + Aliases::iterator i = language_aliases.find(lang); + if(i != language_aliases.end()) { + lang = i->second; + } + + std::string::size_type s = lang.find("."); + if(s != std::string::npos) { + lang = std::string(lang, 0, s); + } + + s = lang.find("_"); + if(s == std::string::npos) { + std::string lang_big = lang; + std::transform (lang_big.begin(), lang_big.end(), lang_big.begin(), toupper); + lang += "_" + lang_big; + } + + return lang; + +} + +void +DictionaryManager::add_directory(const std::string& pathname) +{ + dictionaries.clear(); // adding directories invalidates cache + search_path.push_back(pathname); + set_language(language); +} + +//--------------------------------------------------------------------------- + +Dictionary::Dictionary(const LanguageDef& language_, const std::string& charset_) + : language(language_), charset(charset_) +{ +} + +Dictionary::Dictionary() + : language(lang_en) +{ +} + +std::string +Dictionary::get_charset() const +{ + return charset; +} + +void +Dictionary::set_charset(const std::string& charset_) +{ + charset = charset_; +} + +void +Dictionary::set_language(const LanguageDef& lang) +{ + language = lang; +} + +std::string +Dictionary::translate(const std::string& msgid, const std::string& msgid2, int num) +{ + PluralEntries::iterator i = plural_entries.find(msgid); + std::map<int, std::string>& msgstrs = i->second; + + if (i != plural_entries.end() && !msgstrs.empty()) + { + int g = language.plural(num); + std::map<int, std::string>::iterator j = msgstrs.find(g); + if (j != msgstrs.end()) + { + return j->second; + } + else + { + // Return the first translation, in case we can't translate the specific number + return msgstrs.begin()->second; + } + } + else + { +#ifdef TRANSLATION_DEBUG + std::cerr << "Warning: Couldn't translate: " << msgid << std::endl; + std::cerr << "Candidates: " << std::endl; + for (PluralEntries::iterator i = plural_entries.begin(); i != plural_entries.end(); ++i) + std::cout << "'" << i->first << "'" << std::endl; +#endif + + if (plural2_1(num)) // default to english rules + return msgid2; + else + return msgid; + } +} + +const char* +Dictionary::translate(const char* msgid) +{ + Entries::iterator i = entries.find(msgid); + if (i != entries.end() && !i->second.empty()) + { + return i->second.c_str(); + } + else + { +#ifdef TRANSLATION_DBEUG + std::cout << "Error: Couldn't translate: " << msgid << std::endl; +#endif + return msgid; + } +} + +std::string +Dictionary::translate(const std::string& msgid) +{ + Entries::iterator i = entries.find(msgid); + if (i != entries.end() && !i->second.empty()) + { + return i->second; + } + else + { +#ifdef TRANSLATION_DBEUG + std::cout << "Error: Couldn't translate: " << msgid << std::endl; +#endif + return msgid; + } +} + +void +Dictionary::add_translation(const std::string& msgid, const std::string& , + const std::map<int, std::string>& msgstrs) +{ + // Do we need msgid2 for anything? its after all supplied to the + // translate call, so we just throw it away + plural_entries[msgid] = msgstrs; +} + +void +Dictionary::add_translation(const std::string& msgid, const std::string& msgstr) +{ + entries[msgid] = msgstr; +} + +class POFileReader +{ +private: + struct Token + { + std::string keyword; + std::string content; + }; + + Dictionary& dict; + + std::string from_charset; + std::string to_charset; + + std::string current_msgid; + std::string current_msgid_plural; + std::map<int, std::string> msgstr_plural; + + int line_num; + + enum { WANT_MSGID, WANT_MSGSTR, WANT_MSGSTR_PLURAL, WANT_MSGID_PLURAL } state; + +public: + POFileReader(std::istream& in, Dictionary& dict_) + : dict(dict_) + { + state = WANT_MSGID; + line_num = 0; + char c = in.get(); + if(c == (char) 0xef) { // skip UTF-8 intro that some texteditors produce + in.get(); + in.get(); + } else { + in.unget(); + } + tokenize_po(in); + } + + void parse_header(const std::string& header) + { + // Seperate the header in lines + typedef std::vector<std::string> Lines; + Lines lines; + + std::string::size_type start = 0; + for(std::string::size_type i = 0; i < header.length(); ++i) + { + if (header[i] == '\n') + { + lines.push_back(header.substr(start, i - start)); + start = i+1; + } + } + + for(Lines::iterator i = lines.begin(); i != lines.end(); ++i) + { + if (has_prefix(*i, "Content-Type: text/plain; charset=")) { + from_charset = i->substr(strlen("Content-Type: text/plain; charset=")); + } + } + + if (from_charset.empty() || from_charset == "CHARSET") + { + std::cerr << "Error: Charset not specified for .po, fallback to ISO-8859-1" << std::endl; + from_charset = "ISO-8859-1"; + } + + to_charset = dict.get_charset(); + if (to_charset.empty()) + { // No charset requested from the dict, use utf-8 + to_charset = "utf-8"; + dict.set_charset(from_charset); + } + } + + void add_token(const Token& token) + { + switch(state) + { + case WANT_MSGID: + if (token.keyword == "msgid") + { + current_msgid = token.content; + state = WANT_MSGID_PLURAL; + } + else if (token.keyword.empty()) + { + //std::cerr << "Got EOF, everything looks ok." << std::endl; + } + else + { + std::cerr << "tinygettext: expected 'msgid' keyword, got " << token.keyword + << " at line " << line_num << std::endl; + } + break; + + case WANT_MSGID_PLURAL: + if (token.keyword == "msgid_plural") + { + current_msgid_plural = token.content; + state = WANT_MSGSTR_PLURAL; + } + else + { + state = WANT_MSGSTR; + add_token(token); + } + break; + + case WANT_MSGSTR: + if (token.keyword == "msgstr") + { + if (current_msgid == "") + { // .po Header is hidden in the msgid with the empty string + parse_header(token.content); + } + else + { + dict.add_translation(current_msgid, convert(token.content, from_charset, to_charset)); + } + state = WANT_MSGID; + } + else + { + std::cerr << "tinygettext: expected 'msgstr' keyword, got " << token.keyword + << " at line " << line_num << std::endl; + } + break; + + case WANT_MSGSTR_PLURAL: + if (has_prefix(token.keyword, "msgstr[")) + { + int num; + if (sscanf(token.keyword.c_str(), "msgstr[%d]", &num) != 1) + { + std::cerr << "Error: Couldn't parse: " << token.keyword << std::endl; + } + else + { + msgstr_plural[num] = convert(token.content, from_charset, to_charset); + } + } + else + { + dict.add_translation(current_msgid, current_msgid_plural, msgstr_plural); + + state = WANT_MSGID; + add_token(token); + } + break; + } + } + + inline int getchar(std::istream& in) + { + int c = in.get(); + if (c == '\n') + line_num += 1; + return c; + } + + void tokenize_po(std::istream& in) + { + enum State { READ_KEYWORD, + READ_CONTENT, + READ_CONTENT_IN_STRING, + SKIP_COMMENT }; + + State state = READ_KEYWORD; + int c; + Token token; + + while((c = getchar(in)) != EOF) + { + //std::cout << "Lexing char: " << char(c) << " " << state << std::endl; + switch(state) + { + case READ_KEYWORD: + if (c == '#') + { + state = SKIP_COMMENT; + } + else if (c == '\n') + { + } + else + { + // Read a new token + token = Token(); + + do { // Read keyword + token.keyword += c; + } while((c = getchar(in)) != EOF && !isspace(static_cast<unsigned char>(c))); + in.unget(); + + state = READ_CONTENT; + } + break; + + case READ_CONTENT: + while((c = getchar(in)) != EOF) + { + if (c == '"') { + // Found start of content + state = READ_CONTENT_IN_STRING; + break; + } else if (isspace(static_cast<unsigned char>(c))) { + // skip + } else { // Read something that may be a keyword + in.unget(); + state = READ_KEYWORD; + add_token(token); + token = Token(); + break; + } + } + break; + + case READ_CONTENT_IN_STRING: + if (c == '\\') { + c = getchar(in); + if (c != EOF) + { + if (c == 'n') token.content += '\n'; + else if (c == 't') token.content += '\t'; + else if (c == 'r') token.content += '\r'; + else if (c == '"') token.content += '"'; + else if (c == '\\') token.content += '\\'; + else + { + std::cout << "Unhandled escape character: " << char(c) << std::endl; + } + } + else + { + std::cout << "Unterminated string" << std::endl; + } + } else if (c == '"') { // Content string is terminated + state = READ_CONTENT; + } else { + token.content += c; + } + break; + + case SKIP_COMMENT: + if (c == '\n') + state = READ_KEYWORD; + break; + } + } + add_token(token); + token = Token(); + } +}; + +void read_po_file(Dictionary& dict_, std::istream& in) +{ + POFileReader reader(in, dict_); +} + +} // namespace TinyGetText + +/* EOF */ + +/** @file tinygettext/TinyGetText.cpp */ + diff -Nru lincity-ng-2.0/src/tinygettext/TinyGetText.cpp lincity-ng-2.9~git20150314/src/tinygettext/TinyGetText.cpp --- lincity-ng-2.0/src/tinygettext/TinyGetText.cpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/TinyGetText.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,792 +0,0 @@ -// $Id: tinygettext.cpp,v 1.4 2004/11/25 13:15:56 matzebraun Exp $ -// -// TinyGetText - A small flexible gettext() replacement -// Copyright (C) 2004 Ingo Ruhnke <grumbel@gmx.de> -// -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -#include <config.h> - -#include <sys/types.h> -#include <fstream> -#include <iostream> -#include <algorithm> -#include <ctype.h> -#include <errno.h> - -#include "SDL.h" - -#include "TinyGetText.hpp" -#include "PhysfsStream/PhysfsStream.hpp" -#include "findlocale.hpp" - -//#define TRANSLATION_DEBUG - -namespace TinyGetText { - -/** Convert \a which is in \a from_charset to \a to_charset and return it */ -std::string convert(const std::string& text, - const std::string& from_charset, - const std::string& to_charset) -{ - if (from_charset == to_charset) - return text; - - char *in = new char[text.length() + 1]; - strcpy(in, text.c_str()); - char *out = SDL_iconv_string(to_charset.c_str(), from_charset.c_str(), in, text.length() + 1); - delete[] in; - if(out == 0) - { - std::cerr << "Error: conversion from " << from_charset << " to " << to_charset << " failed" << std::endl; - return ""; - } - std::string ret(out); - SDL_free(out); - return ret; -#if 0 - iconv_t cd = SDL_iconv_open(to_charset.c_str(), from_charset.c_str()); - - size_t in_len = text.length(); - size_t out_len = text.length()*3; // FIXME: cross fingers that this is enough - - char* out_orig = new char[out_len]; - char* in_orig = new char[in_len+1]; - strcpy(in_orig, text.c_str()); - - char* out = out_orig; - ICONV_CONST char* in = in_orig; - size_t out_len_temp = out_len; // iconv is counting down the bytes it has - // written from this... - - size_t retval = SDL_iconv(cd, &in, &in_len, &out, &out_len_temp); - out_len -= out_len_temp; // see above - if (retval == (size_t) -1) - { - std::cerr << strerror(errno) << std::endl; - std::cerr << "Error: conversion from " << from_charset - << " to " << to_charset << " went wrong: " << retval << std::endl; - return ""; - } - SDL_iconv_close(cd); - - std::string ret(out_orig, out_len); - delete[] out_orig; - delete[] in_orig; - return ret; -#endif -} - -bool has_suffix(const std::string& lhs, const std::string rhs) -{ - if (lhs.length() < rhs.length()) - return false; - else - return lhs.compare(lhs.length() - rhs.length(), rhs.length(), rhs) == 0; -} - -bool has_prefix(const std::string& lhs, const std::string rhs) -{ - if (lhs.length() < rhs.length()) - return false; - else - return lhs.compare(0, rhs.length(), rhs) == 0; -} - -int plural1(int ) { return 0; } -int plural2_1(int n) { return (n != 1); } -int plural2_2(int n) { return (n > 1); } -int plural3_lv(int n) { return (n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2); } -int plural3_ga(int n) { return n==1 ? 0 : n==2 ? 1 : 2; } -int plural3_lt(int n) { return (n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2); } -int plural3_1(int n) { return (n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); } -int plural3_sk(int n) { return (n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2; } -int plural3_pl(int n) { return (n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); } -int plural3_sl(int n) { return (n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3); } - -/** Language Definitions */ -//*{ -LanguageDef lang_hu("hu", "Hungarian", 1, plural1); // "nplurals=1; plural=0;" -LanguageDef lang_ja("ja", "Japanese", 1, plural1); // "nplurals=1; plural=0;" -LanguageDef lang_ko("ko", "Korean", 1, plural1); // "nplurals=1; plural=0;" -LanguageDef lang_tr("tr", "Turkish", 1, plural1); // "nplurals=1; plural=0;" -LanguageDef lang_da("da", "Danish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_nl("nl", "Dutch", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_en("en", "English", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_fo("fo", "Faroese", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_de("de", "German", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_nb("nb", "Norwegian Bokmal", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_no("no", "Norwegian", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_nn("nn", "Norwegian Nynorsk", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_sv("sv", "Swedish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_et("et", "Estonian", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_fi("fi", "Finnish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_el("el", "Greek", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_he("he", "Hebrew", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_it("it", "Italian", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_pt("pt", "Portuguese", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_es("es", "Spanish", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_eo("eo", "Esperanto", 2, plural2_1); // "nplurals=2; plural=(n != 1);" -LanguageDef lang_fr("fr", "French", 2, plural2_2); // "nplurals=2; plural=(n > 1);" -LanguageDef lang_pt_BR("pt_BR", "Brazilian", 2, plural2_2); // "nplurals=2; plural=(n > 1);" -LanguageDef lang_lv("lv", "Latvian", 3, plural3_lv); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);" -LanguageDef lang_ga("ga", "Irish", 3, plural3_ga); // "nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;" -LanguageDef lang_lt("lt", "Lithuanian", 3, plural3_lt); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);" -LanguageDef lang_hr("hr", "Croatian", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" -LanguageDef lang_cs("cs", "Czech", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" -LanguageDef lang_ru("ru", "Russian", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" -LanguageDef lang_uk("uk", "Ukrainian", 3, plural3_1); // "nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);" -LanguageDef lang_sk("sk", "Slovak", 3, plural3_sk); // "nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;" -LanguageDef lang_pl("pl", "Polish", 3, plural3_pl); // "nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2); -LanguageDef lang_sl("sl", "Slovenian", 3, plural3_sl); // "nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);" -//*} - -LanguageDef& -get_language_def(const std::string& name) -{ - if (name == "hu") return lang_hu; - else if (name == "ja") return lang_ja; - else if (name == "ko") return lang_ko; - else if (name == "tr") return lang_tr; - else if (name == "da") return lang_da; - else if (name == "nl") return lang_nl; - else if (name == "en") return lang_en; - else if (name == "fo") return lang_fo; - else if (name == "de") return lang_de; - else if (name == "nb") return lang_nb; - else if (name == "no") return lang_no; - else if (name == "nn") return lang_nn; - else if (name == "sv") return lang_sv; - else if (name == "et") return lang_et; - else if (name == "fi") return lang_fi; - else if (name == "el") return lang_el; - else if (name == "he") return lang_he; - else if (name == "it") return lang_it; - else if (name == "pt") return lang_pt; - else if (name == "es") return lang_es; - else if (name == "eo") return lang_eo; - else if (name == "fr") return lang_fr; - else if (name == "pt_BR") return lang_pt_BR; - else if (name == "lv") return lang_lv; - else if (name == "ga") return lang_ga; - else if (name == "lt") return lang_lt; - else if (name == "hr") return lang_hr; - else if (name == "cs") return lang_cs; - else if (name == "ru") return lang_ru; - else if (name == "uk") return lang_uk; - else if (name == "sk") return lang_sk; - else if (name == "pl") return lang_pl; - else if (name == "sl") return lang_sl; - else return lang_en; -} - -DictionaryManager::DictionaryManager() - : current_dict(&empty_dict) -{ - parseLocaleAliases(); - // Environment variable LINCITY_LANG overrides language settings. - const char* lang = getenv( "LINCITY_LANG" ); - if( lang ){ - set_language( lang ); - return; - } - // use findlocale to setup language - FL_Locale *locale; - FL_FindLocale( &locale, FL_MESSAGES ); - if(locale->lang) { - if (locale->country) { - set_language( std::string(locale->lang)+"_"+std::string(locale->country) ); - } else { - set_language( std::string(locale->lang) ); - } - } - FL_FreeLocale( &locale ); -} - -void -DictionaryManager::parseLocaleAliases() -{ - // try to parse language alias list - std::ifstream in("/usr/share/locale/locale.alias"); - - char c = ' '; - while(in.good() && !in.eof()) { - while(isspace(static_cast<unsigned char>(c)) && !in.eof()) - in.get(c); - - if(c == '#') { // skip comments - while(c != '\n' && !in.eof()) - in.get(c); - continue; - } - - std::string alias; - while(!isspace(static_cast<unsigned char>(c)) && !in.eof()) { - alias += c; - in.get(c); - } - while(isspace(static_cast<unsigned char>(c)) && !in.eof()) - in.get(c); - std::string language; - while(!isspace(static_cast<unsigned char>(c)) && !in.eof()) { - language += c; - in.get(c); - } - - if(in.eof()) - break; - set_language_alias(alias, language); - } -} - -Dictionary& -DictionaryManager::get_dictionary(const std::string& spec) -{ - - //log_debug << "Dictionary for language \"" << spec << "\" requested" << std::endl; - - std::string lang = get_language_from_spec(spec); - - //log_debug << "...normalized as \"" << lang << "\"" << std::endl; - - Dictionaries::iterator i = dictionaries.find(get_language_from_spec(lang)); - if (i != dictionaries.end()) - { - return i->second; - } - else // Dictionary for languages lang isn't loaded, so we load it - { - //std::cout << "get_dictionary: " << lang << std::endl; - Dictionary& dict = dictionaries[lang]; - - dict.set_language(get_language_def(lang)); - if(charset != "") - dict.set_charset(charset); - - for (SearchPath::iterator p = search_path.begin(); p != search_path.end(); ++p) - { - char** files = PHYSFS_enumerateFiles(p->c_str()); - if(!files) - { - std::cerr << "Error: enumerateFiles() failed on " << *p << std::endl; - } - else - { - for(const char* const* filename = files; - *filename != 0; filename++) { - - // check if filename matches requested language - std::string fname = std::string(*filename); - std::string load_from_file = ""; - if(fname == lang + ".po") { - load_from_file = fname; - } else { - std::string::size_type s = lang.find("_"); - if(s != std::string::npos) { - std::string lang_short = std::string(lang, 0, s); - if (fname == lang_short + ".po") { - load_from_file = lang_short; - } - } - } - - // if it matched, load dictionary - if (load_from_file != "") { - //log_debug << "Loading dictionary for language \"" << lang << "\" from \"" << filename << "\"" << std::endl; - std::string pofile = *p + "/" + *filename; - try { - IFileStream in(pofile); - read_po_file(dict, in); - } catch(std::exception& e) { - std::cerr << "Error: Failure file opening: " << pofile << std::endl; - std::cerr << e.what() << "\n"; - } - } - } - PHYSFS_freeList(files); - } - } - - return dict; - } -} - -std::set<std::string> -DictionaryManager::get_languages() -{ - std::set<std::string> languages; - - for (SearchPath::iterator p = search_path.begin(); p != search_path.end(); ++p) - { - char** files = PHYSFS_enumerateFiles(p->c_str()); - if (!files) - { - std::cerr << "Error: opendir() failed on " << *p << std::endl; - } - else - { - for(const char* const* file = files; *file != 0; file++) { - if(has_suffix(*file, ".po")) { - std::string filename = *file; - languages.insert(filename.substr(0, filename.length()-3)); - } - } - PHYSFS_freeList(files); - } - } - return languages; -} - -void -DictionaryManager::set_language(const std::string& lang) -{ - //log_debug << "set_language \"" << lang << "\"" << std::endl; - language = get_language_from_spec(lang); - //log_debug << "==> \"" << language << "\"" << std::endl; - current_dict = & (get_dictionary(language)); -} - -const std::string& -DictionaryManager::get_language() const -{ - return language; -} - -void -DictionaryManager::set_charset(const std::string& charset) -{ - dictionaries.clear(); // changing charset invalidates cache - this->charset = charset; - set_language(language); -} - -void -DictionaryManager::set_language_alias(const std::string& alias, - const std::string& language) -{ - language_aliases.insert(std::make_pair(alias, language)); -} - -std::string -DictionaryManager::get_language_from_spec(const std::string& spec) -{ - std::string lang = spec; - Aliases::iterator i = language_aliases.find(lang); - if(i != language_aliases.end()) { - lang = i->second; - } - - std::string::size_type s = lang.find("."); - if(s != std::string::npos) { - lang = std::string(lang, 0, s); - } - - s = lang.find("_"); - if(s == std::string::npos) { - std::string lang_big = lang; - std::transform (lang_big.begin(), lang_big.end(), lang_big.begin(), toupper); - lang += "_" + lang_big; - } - - return lang; - -} - -void -DictionaryManager::add_directory(const std::string& pathname) -{ - dictionaries.clear(); // adding directories invalidates cache - search_path.push_back(pathname); - set_language(language); -} - -//--------------------------------------------------------------------------- - -Dictionary::Dictionary(const LanguageDef& language_, const std::string& charset_) - : language(language_), charset(charset_) -{ -} - -Dictionary::Dictionary() - : language(lang_en) -{ -} - -std::string -Dictionary::get_charset() const -{ - return charset; -} - -void -Dictionary::set_charset(const std::string& charset_) -{ - charset = charset_; -} - -void -Dictionary::set_language(const LanguageDef& lang) -{ - language = lang; -} - -std::string -Dictionary::translate(const std::string& msgid, const std::string& msgid2, int num) -{ - PluralEntries::iterator i = plural_entries.find(msgid); - std::map<int, std::string>& msgstrs = i->second; - - if (i != plural_entries.end() && !msgstrs.empty()) - { - int g = language.plural(num); - std::map<int, std::string>::iterator j = msgstrs.find(g); - if (j != msgstrs.end()) - { - return j->second; - } - else - { - // Return the first translation, in case we can't translate the specific number - return msgstrs.begin()->second; - } - } - else - { -#ifdef TRANSLATION_DEBUG - std::cerr << "Warning: Couldn't translate: " << msgid << std::endl; - std::cerr << "Candidates: " << std::endl; - for (PluralEntries::iterator i = plural_entries.begin(); i != plural_entries.end(); ++i) - std::cout << "'" << i->first << "'" << std::endl; -#endif - - if (plural2_1(num)) // default to english rules - return msgid2; - else - return msgid; - } -} - -const char* -Dictionary::translate(const char* msgid) -{ - Entries::iterator i = entries.find(msgid); - if (i != entries.end() && !i->second.empty()) - { - return i->second.c_str(); - } - else - { -#ifdef TRANSLATION_DBEUG - std::cout << "Error: Couldn't translate: " << msgid << std::endl; -#endif - return msgid; - } -} - -std::string -Dictionary::translate(const std::string& msgid) -{ - Entries::iterator i = entries.find(msgid); - if (i != entries.end() && !i->second.empty()) - { - return i->second; - } - else - { -#ifdef TRANSLATION_DBEUG - std::cout << "Error: Couldn't translate: " << msgid << std::endl; -#endif - return msgid; - } -} - -void -Dictionary::add_translation(const std::string& msgid, const std::string& , - const std::map<int, std::string>& msgstrs) -{ - // Do we need msgid2 for anything? its after all supplied to the - // translate call, so we just throw it away - plural_entries[msgid] = msgstrs; -} - -void -Dictionary::add_translation(const std::string& msgid, const std::string& msgstr) -{ - entries[msgid] = msgstr; -} - -class POFileReader -{ -private: - struct Token - { - std::string keyword; - std::string content; - }; - - Dictionary& dict; - - std::string from_charset; - std::string to_charset; - - std::string current_msgid; - std::string current_msgid_plural; - std::map<int, std::string> msgstr_plural; - - int line_num; - - enum { WANT_MSGID, WANT_MSGSTR, WANT_MSGSTR_PLURAL, WANT_MSGID_PLURAL } state; - -public: - POFileReader(std::istream& in, Dictionary& dict_) - : dict(dict_) - { - state = WANT_MSGID; - line_num = 0; - char c = in.get(); - if(c == (char) 0xef) { // skip UTF-8 intro that some texteditors produce - in.get(); - in.get(); - } else { - in.unget(); - } - tokenize_po(in); - } - - void parse_header(const std::string& header) - { - // Seperate the header in lines - typedef std::vector<std::string> Lines; - Lines lines; - - std::string::size_type start = 0; - for(std::string::size_type i = 0; i < header.length(); ++i) - { - if (header[i] == '\n') - { - lines.push_back(header.substr(start, i - start)); - start = i+1; - } - } - - for(Lines::iterator i = lines.begin(); i != lines.end(); ++i) - { - if (has_prefix(*i, "Content-Type: text/plain; charset=")) { - from_charset = i->substr(strlen("Content-Type: text/plain; charset=")); - } - } - - if (from_charset.empty() || from_charset == "CHARSET") - { - std::cerr << "Error: Charset not specified for .po, fallback to ISO-8859-1" << std::endl; - from_charset = "ISO-8859-1"; - } - - to_charset = dict.get_charset(); - if (to_charset.empty()) - { // No charset requested from the dict, use utf-8 - to_charset = "utf-8"; - dict.set_charset(from_charset); - } - } - - void add_token(const Token& token) - { - switch(state) - { - case WANT_MSGID: - if (token.keyword == "msgid") - { - current_msgid = token.content; - state = WANT_MSGID_PLURAL; - } - else if (token.keyword.empty()) - { - //std::cerr << "Got EOF, everything looks ok." << std::endl; - } - else - { - std::cerr << "tinygettext: expected 'msgid' keyword, got " << token.keyword - << " at line " << line_num << std::endl; - } - break; - - case WANT_MSGID_PLURAL: - if (token.keyword == "msgid_plural") - { - current_msgid_plural = token.content; - state = WANT_MSGSTR_PLURAL; - } - else - { - state = WANT_MSGSTR; - add_token(token); - } - break; - - case WANT_MSGSTR: - if (token.keyword == "msgstr") - { - if (current_msgid == "") - { // .po Header is hidden in the msgid with the empty string - parse_header(token.content); - } - else - { - dict.add_translation(current_msgid, convert(token.content, from_charset, to_charset)); - } - state = WANT_MSGID; - } - else - { - std::cerr << "tinygettext: expected 'msgstr' keyword, got " << token.keyword - << " at line " << line_num << std::endl; - } - break; - - case WANT_MSGSTR_PLURAL: - if (has_prefix(token.keyword, "msgstr[")) - { - int num; - if (sscanf(token.keyword.c_str(), "msgstr[%d]", &num) != 1) - { - std::cerr << "Error: Couldn't parse: " << token.keyword << std::endl; - } - else - { - msgstr_plural[num] = convert(token.content, from_charset, to_charset); - } - } - else - { - dict.add_translation(current_msgid, current_msgid_plural, msgstr_plural); - - state = WANT_MSGID; - add_token(token); - } - break; - } - } - - inline int getchar(std::istream& in) - { - int c = in.get(); - if (c == '\n') - line_num += 1; - return c; - } - - void tokenize_po(std::istream& in) - { - enum State { READ_KEYWORD, - READ_CONTENT, - READ_CONTENT_IN_STRING, - SKIP_COMMENT }; - - State state = READ_KEYWORD; - int c; - Token token; - - while((c = getchar(in)) != EOF) - { - //std::cout << "Lexing char: " << char(c) << " " << state << std::endl; - switch(state) - { - case READ_KEYWORD: - if (c == '#') - { - state = SKIP_COMMENT; - } - else if (c == '\n') - { - } - else - { - // Read a new token - token = Token(); - - do { // Read keyword - token.keyword += c; - } while((c = getchar(in)) != EOF && !isspace(static_cast<unsigned char>(c))); - in.unget(); - - state = READ_CONTENT; - } - break; - - case READ_CONTENT: - while((c = getchar(in)) != EOF) - { - if (c == '"') { - // Found start of content - state = READ_CONTENT_IN_STRING; - break; - } else if (isspace(static_cast<unsigned char>(c))) { - // skip - } else { // Read something that may be a keyword - in.unget(); - state = READ_KEYWORD; - add_token(token); - token = Token(); - break; - } - } - break; - - case READ_CONTENT_IN_STRING: - if (c == '\\') { - c = getchar(in); - if (c != EOF) - { - if (c == 'n') token.content += '\n'; - else if (c == 't') token.content += '\t'; - else if (c == 'r') token.content += '\r'; - else if (c == '"') token.content += '"'; - else if (c == '\\') token.content += '\\'; - else - { - std::cout << "Unhandled escape character: " << char(c) << std::endl; - } - } - else - { - std::cout << "Unterminated string" << std::endl; - } - } else if (c == '"') { // Content string is terminated - state = READ_CONTENT; - } else { - token.content += c; - } - break; - - case SKIP_COMMENT: - if (c == '\n') - state = READ_KEYWORD; - break; - } - } - add_token(token); - token = Token(); - } -}; - -void read_po_file(Dictionary& dict_, std::istream& in) -{ - POFileReader reader(in, dict_); -} - -} // namespace TinyGetText - -/* EOF */ diff -Nru lincity-ng-2.0/src/tinygettext/tinygettext.hpp lincity-ng-2.9~git20150314/src/tinygettext/tinygettext.hpp --- lincity-ng-2.0/src/tinygettext/tinygettext.hpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/tinygettext.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,162 @@ +// $Id: tinygettext.h,v 1.2 2004/11/24 23:10:01 matzebraun Exp $ +// +// TinyGetText - A small flexible gettext() replacement +// Copyright (C) 2004 Ingo Ruhnke <grumbel@gmx.de> +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +#ifndef HEADER_TINYGETTEXT_H +#define HEADER_TINYGETTEXT_H + +#include <map> +#include <vector> +#include <set> +#include <string> + +namespace tinygettext { + +typedef int (*PluralFunc)(int n); + +struct LanguageDef { + const char* code; + const char* name; + int nplural; + PluralFunc plural; + + LanguageDef(const char* code_, const char* name_, int nplural_, PluralFunc plural_) + : code(code_), name(name_), nplural(nplural_), plural(plural_) + {} +}; + +/** A simple dictionary class that mimics gettext() behaviour. Each + Dictionary only works for a single language, for managing multiple + languages and .po files at once use the DictionaryManager. */ +class Dictionary +{ +private: + typedef std::map<std::string, std::string> Entries; + Entries entries; + + typedef std::map<std::string, std::map<int, std::string> > PluralEntries; + PluralEntries plural_entries; + + LanguageDef language; + std::string charset; +public: + /** */ + Dictionary(const LanguageDef& language_, const std::string& charset = ""); + + Dictionary(); + + /** Return the charset used for this dictionary */ + std::string get_charset() const; + + /** Set a charset for this dictionary, this will NOT convert stuff, + it is for information only, you have to convert stuff yourself + when you add it with \a add_translation() */ + void set_charset(const std::string& charset); + + /** Set the language that is used for this dictionary, this is + mainly needed to evaluate plural forms */ + void set_language(const LanguageDef& lang); + + /** Translate the string \a msgid to its correct plural form, based + on the number of items given by \a num. \a msgid2 is \a msgid in + plural form. */ + std::string translate(const std::string& msgid, const std::string& msgid2, int num); + + /** Translate the string \a msgid. */ + std::string translate(const std::string& msgid); + /** Translate the string \a msgid. */ + const char* translate(const char* msgid); + + /** Add a translation from \a msgid to \a msgstr to the dictionary, + where \a msgid is the singular form of the message, msgid2 the + plural form and msgstrs a table of translations. The right + translation will be calculated based on the \a num argument to + translate(). */ + void add_translation(const std::string& msgid, const std::string& msgid2, + const std::map<int, std::string>& msgstrs); + + /** Add a translation from \a msgid to \a msgstr to the + dictionary */ + void add_translation(const std::string& msgid, const std::string& msgstr); +}; + +/** Manager class for dictionaries, you give it a bunch of directories + with .po files and it will then automatically load the right file + on demand depending on which language was set. */ +class DictionaryManager +{ +private: + typedef std::map<std::string, Dictionary> Dictionaries; + Dictionaries dictionaries; + typedef std::vector<std::string> SearchPath; + SearchPath search_path; + typedef std::map<std::string, std::string> Aliases; + Aliases language_aliases; + std::string charset; + std::string language; + Dictionary* current_dict; + Dictionary empty_dict; + +public: + DictionaryManager(); + + /** Return the currently active dictionary, if none is set, an empty + dictionary is returned. */ + Dictionary& get_dictionary() + { return *current_dict; } + + /** Get dictionary for lang */ + Dictionary& get_dictionary(const std::string& langspec); + + /** Set a language based on a four? letter country code */ + void set_language(const std::string& langspec); + + /** returns the (normalized) country code of the currently used language */ + const std::string& get_language() const; + + /** Set a charset that will be set on the returned dictionaries */ + void set_charset(const std::string& charset); + + /** Define an alias for a language */ + void set_language_alias(const std::string& alias, const std::string& lang); + + /** Add a directory to the search path for dictionaries */ + void add_directory(const std::string& pathname); + + /** Return a set of the available languages in their country code */ + std::set<std::string> get_languages(); + +private: + void parseLocaleAliases(); + /// returns the language part in a language spec (like de_DE.UTF-8 -> de) + std::string get_language_from_spec(const std::string& spec); +}; + +/** Read the content of the .po file given as \a in into the + dictionary given as \a dict */ +void read_po_file(Dictionary& dict, std::istream& in); +LanguageDef& get_language_def(const std::string& name); + +} // namespace TinyGetText + +#endif + +/* EOF */ + +/** @file tinygettext/TinyGetText.hpp */ + diff -Nru lincity-ng-2.0/src/tinygettext/TinyGetText.hpp lincity-ng-2.9~git20150314/src/tinygettext/TinyGetText.hpp --- lincity-ng-2.0/src/tinygettext/TinyGetText.hpp 2009-01-25 20:20:41.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tinygettext/TinyGetText.hpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,159 +0,0 @@ -// $Id: tinygettext.h,v 1.2 2004/11/24 23:10:01 matzebraun Exp $ -// -// TinyGetText - A small flexible gettext() replacement -// Copyright (C) 2004 Ingo Ruhnke <grumbel@gmx.de> -// -// This program is free software; you can redistribute it and/or -// modify it under the terms of the GNU General Public License -// as published by the Free Software Foundation; either version 2 -// of the License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. - -#ifndef HEADER_TINYGETTEXT_H -#define HEADER_TINYGETTEXT_H - -#include <map> -#include <vector> -#include <set> -#include <string> - -namespace TinyGetText { - -typedef int (*PluralFunc)(int n); - -struct LanguageDef { - const char* code; - const char* name; - int nplural; - PluralFunc plural; - - LanguageDef(const char* code_, const char* name_, int nplural_, PluralFunc plural_) - : code(code_), name(name_), nplural(nplural_), plural(plural_) - {} -}; - -/** A simple dictionary class that mimics gettext() behaviour. Each - Dictionary only works for a single language, for managing multiple - languages and .po files at once use the DictionaryManager. */ -class Dictionary -{ -private: - typedef std::map<std::string, std::string> Entries; - Entries entries; - - typedef std::map<std::string, std::map<int, std::string> > PluralEntries; - PluralEntries plural_entries; - - LanguageDef language; - std::string charset; -public: - /** */ - Dictionary(const LanguageDef& language_, const std::string& charset = ""); - - Dictionary(); - - /** Return the charset used for this dictionary */ - std::string get_charset() const; - - /** Set a charset for this dictionary, this will NOT convert stuff, - it is for information only, you have to convert stuff yourself - when you add it with \a add_translation() */ - void set_charset(const std::string& charset); - - /** Set the language that is used for this dictionary, this is - mainly needed to evaluate plural forms */ - void set_language(const LanguageDef& lang); - - /** Translate the string \a msgid to its correct plural form, based - on the number of items given by \a num. \a msgid2 is \a msgid in - plural form. */ - std::string translate(const std::string& msgid, const std::string& msgid2, int num); - - /** Translate the string \a msgid. */ - std::string translate(const std::string& msgid); - /** Translate the string \a msgid. */ - const char* translate(const char* msgid); - - /** Add a translation from \a msgid to \a msgstr to the dictionary, - where \a msgid is the singular form of the message, msgid2 the - plural form and msgstrs a table of translations. The right - translation will be calculated based on the \a num argument to - translate(). */ - void add_translation(const std::string& msgid, const std::string& msgid2, - const std::map<int, std::string>& msgstrs); - - /** Add a translation from \a msgid to \a msgstr to the - dictionary */ - void add_translation(const std::string& msgid, const std::string& msgstr); -}; - -/** Manager class for dictionaries, you give it a bunch of directories - with .po files and it will then automatically load the right file - on demand depending on which language was set. */ -class DictionaryManager -{ -private: - typedef std::map<std::string, Dictionary> Dictionaries; - Dictionaries dictionaries; - typedef std::vector<std::string> SearchPath; - SearchPath search_path; - typedef std::map<std::string, std::string> Aliases; - Aliases language_aliases; - std::string charset; - std::string language; - Dictionary* current_dict; - Dictionary empty_dict; - -public: - DictionaryManager(); - - /** Return the currently active dictionary, if none is set, an empty - dictionary is returned. */ - Dictionary& get_dictionary() - { return *current_dict; } - - /** Get dictionary for lang */ - Dictionary& get_dictionary(const std::string& langspec); - - /** Set a language based on a four? letter country code */ - void set_language(const std::string& langspec); - - /** returns the (normalized) country code of the currently used language */ - const std::string& get_language() const; - - /** Set a charset that will be set on the returned dictionaries */ - void set_charset(const std::string& charset); - - /** Define an alias for a language */ - void set_language_alias(const std::string& alias, const std::string& lang); - - /** Add a directory to the search path for dictionaries */ - void add_directory(const std::string& pathname); - - /** Return a set of the available languages in their country code */ - std::set<std::string> get_languages(); - -private: - void parseLocaleAliases(); - /// returns the language part in a language spec (like de_DE.UTF-8 -> de) - std::string get_language_from_spec(const std::string& spec); -}; - -/** Read the content of the .po file given as \a in into the - dictionary given as \a dict */ -void read_po_file(Dictionary& dict, std::istream& in); -LanguageDef& get_language_def(const std::string& name); - -} // namespace TinyGetText - -#endif - -/* EOF */ diff -Nru lincity-ng-2.0/src/TinyLandGen/ecology.cpp lincity-ng-2.9~git20150314/src/TinyLandGen/ecology.cpp --- lincity-ng-2.0/src/TinyLandGen/ecology.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/ecology.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,262 @@ +/** Tiny Land Generator + * + * @file ecology.cpp + * @author alain.baeckeroot@laposte.net + * @copyright 2010 Alain BAECKEROOT + * @license GPL v3 or later + */ + +#include "lctypes.h" +#include <stdlib.h> +#include <stdio.h> +#include <math.h> + +extern lmap_struct lmap; +extern int alt_min, alt_max, alt_step; + +const int INIT_DIST = 2 * WORLD_SIDE_LEN; // works for d0, d1, d2 distances + +int global_aridity = rand() % 450 - 150; + +void set_mappoint(int x, int y, int type) +{ + MP_TYPE(x,y) = type; +} + +static void do_rand_ecology(int x, int y) +{ + int r = lmap.ecotable[x][y]; + if ((MP_FLAG(x, y) | FLAG_HAS_UNDERGROUND_WATER) == 0) { + /*true desert */ + return; + } + + if (r >= 300) { + /* very dry land */ + int r2 = rand() % 10; + if (r2 <= 6) + set_mappoint(x, y, DESERT); + else if (r2 <= 8) + set_mappoint(x, y, GREEN); + else + set_mappoint(x, y, TREE); + } else if (r >= 160) { + int r2 = rand() % 10; + if (r2 <= 2) + set_mappoint(x, y, DESERT); + else if (r2 <= 6) + set_mappoint(x, y, GREEN); + else + set_mappoint(x, y, TREE); + } else if (r >= 80) { + int r2 = rand() % 10; + if (r2 <= 1) + set_mappoint(x, y, DESERT); + else if (r2 <= 4) + set_mappoint(x, y, GREEN); + else if (r2 <= 6) + set_mappoint(x, y, TREE); + else + set_mappoint(x, y, TREE2); + } else if (r >= 40) { + int r2 = rand() % 40; + if (r2 == 0) + set_mappoint(x, y, DESERT); + else if (r2 <= 12) + set_mappoint(x, y, GREEN); + else if (r2 <= 24) + set_mappoint(x, y, TREE); + else if (r2 <= 36) + set_mappoint(x, y, TREE2); + else + set_mappoint(x, y, TREE3); + } else if (r >= 0) { + /* normal land */ + int r2 = rand() % 40; + if (r2 <= 10) + set_mappoint(x, y, GREEN); + else if (r2 <= 20) + set_mappoint(x, y, TREE); + else if (r2 <= 30) + set_mappoint(x, y, TREE2); + else + set_mappoint(x, y, TREE3); + } else if (r >= -40) { + /* forest */ + int r2 = rand() % 40; + if (r2 <= 5) + set_mappoint(x, y, GREEN); + else if (r2 <= 10) + set_mappoint(x, y, TREE); + else if (r2 <= 25) + set_mappoint(x, y, TREE2); + else + set_mappoint(x, y, TREE3); + } else if (r >= -80) { + int r2 = rand() % 40; + if (r2 <= 0) + MP_TYPE(x, y) = WATER; + else if (r2 <= 6) + set_mappoint(x, y, GREEN); + else if (r2 <= 15) + set_mappoint(x, y, TREE); + else if (r2 <= 28) + set_mappoint(x, y, TREE2); + else + set_mappoint(x, y, TREE3); + } else if (r >= -120) { + int r2 = rand() % 40; + if (r2 <= 1) + MP_TYPE(x, y) = WATER; + else if (r2 <= 6) + set_mappoint(x, y, GREEN); + else if (r2 <= 16) + set_mappoint(x, y, TREE); + else if (r2 <= 30) + set_mappoint(x, y, TREE2); + else + set_mappoint(x, y, TREE3); + } else { + /* wetland */ + int r2 = rand() % 40; + if (r2 <= 3) + MP_TYPE(x, y) = WATER; + else if (r2 <= 8) + set_mappoint(x, y, GREEN); + else if (r2 <= 20) + set_mappoint(x, y, TREE); + else if (r2 <= 35) + set_mappoint(x, y, TREE2); + else + set_mappoint(x, y, TREE3); + } +} + +int dist_to_water( int x, int y) +{ + // Mahattan distance (d1) computed iteratively +#define d2r(x, y) lmap.dist2w[x][y] + int d = INIT_DIST; + if (IS_RIVER(x,y)) + return 0; + + if (x == 0) + if (y == 0) + d = min ( d2r(x,y+1), d2r(x+1,y) ); + else if (y == WORLD_SIDE_LEN) + d = min ( d2r(x, y-1), d2r(x+1,y) ); + else + d = min ( min (d2r(x, y-1), d2r(x, y+1)), d2r(x+1,y)); + else if (x == WORLD_SIDE_LEN) + if (y == 0) + d = min (d2r(x,y+1), d2r(x-1,y) ); + else if (y == WORLD_SIDE_LEN) + d = min (d2r(x, y-1), d2r(x-1,y) ); + else + d = min ( min (d2r(x, y-1), d2r(x, y+1)), d2r(x-1,y)); + else if (y == 0) + d = min ( min (d2r(x-1, y), d2r(x+1, y)), d2r(x,y+1)); + else if (y == WORLD_SIDE_LEN) + d = min ( min (d2r(x-1, y), d2r(x+1, y)), d2r(x,y-1)); + else if (lmap.dist2w[x][y] == INIT_DIST) + d = min( min(d2r(x - 1, y), d2r(x+1,y)), min( d2r(x, y - 1), d2r(x, y + 1)) ); + + // d = distance of neighbours + // Mahattan distance (d1) computed iteratively = the +1 below + return (min(d + 1, lmap.dist2w[x][y])); +} + +void distance_to_river(void) +{ + int newd, number, x, y; + int iter = 0; + number = WORLD_SIDE_LEN * WORLD_SIDE_LEN; + + for (y = 0; y < WORLD_SIDE_LEN ; y++) + for (x = 0; x < WORLD_SIDE_LEN; x++) + if (IS_RIVER(x,y)) { + lmap.dist2w[x][y] = 0; + number--; + } else { + lmap.dist2w[x][y] = INIT_DIST; + } + + //fprintf(stdout,"initial remaining %i \n", number); + while (number > 0) { + for (y = 0; y < WORLD_SIDE_LEN; y++) { + for (x = 0; x < WORLD_SIDE_LEN; x++) { + newd = dist_to_water(x,y); + if ( (newd != 0) && (newd < INIT_DIST)) { + if (lmap.dist2w[x][y] == INIT_DIST) + number--; + lmap.dist2w[x][y] = newd; + //fprintf(stdout," d2w = %i \n", newd); + } + } + //fprintf(stdout," remaining %i \n", number); + } + ++iter; + } + //fprintf(stdout," iteration %i \n", iter); + + +} + +void setup_land() +{ + int x, y, xw, yw; + int aridity = global_aridity; + + distance_to_river(); + + for (y = 0; y < WORLD_SIDE_LEN; y++) { + for (x = 0; x < WORLD_SIDE_LEN; x++) { + int d2w_min = 2 * WORLD_SIDE_LEN * WORLD_SIDE_LEN; + int r; + int arid = aridity; + //int alt0 = 0; + + /* test against IS_RIVER to prevent terrible recursion */ + if (IS_RIVER(x, y)) + continue; + + d2w_min = lmap.dist2w[x][y]; + + /* near river lower aridity */ + if (aridity > 0) { + if (d2w_min < 5) + arid = aridity / 3; + else if (d2w_min < 17) + arid = (aridity * 2) / 3; + } + /* Altitude has same effect as distance */ + r = rand() % (d2w_min / 3 + 1) \ + + arid \ + + abs(ALT(x, y) * 15 / alt_step) \ + + 3 * (ALT(x, y) * ALT(x, y)) / 1000000; + + lmap.ecotable[x][y] = r; + /* needed to setup quasi randome land. The flag is set below */ + MP_FLAG(x, y) |= FLAG_HAS_UNDERGROUND_WATER; + do_rand_ecology(x, y); + + /* preserve rivers, so that we can connect port later */ + if (MP_TYPE(x, y) == WATER) { + int navigable = MP_FLAG(x, y) & FLAG_IS_RIVER; + set_mappoint(x, y, WATER); + MP_FLAG(x, y) |= navigable; + MP_FLAG(x, y) |= FLAG_HAS_UNDERGROUND_WATER; + } + /* set undergroung water according to first random land setup */ + if (MP_TYPE(x, y) == DESERT) { + MP_FLAG(x, y) &= (0xffffffff - FLAG_HAS_UNDERGROUND_WATER); + } + } + } + for (y = 0; y < WORLD_SIDE_LEN; y++) + for (x = 0; x < WORLD_SIDE_LEN; x++) + if (MP_TYPE(x, y) == WATER) + MP_FLAG(x, y) |= FLAG_HAS_UNDERGROUND_WATER; + + //connect_rivers(); +} diff -Nru lincity-ng-2.0/src/TinyLandGen/ground_sea.cpp lincity-ng-2.9~git20150314/src/TinyLandGen/ground_sea.cpp --- lincity-ng-2.0/src/TinyLandGen/ground_sea.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/ground_sea.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,132 @@ +/** Tiny Land Generator + * + * @file ground_sea.cpp + * @author alain.baeckeroot@laposte.net + * @copyright 2010 Alain BAECKEROOT + * @license GPL v3 or later + */ + +#include "lctypes.h" +#include <stdlib.h> +#include <stdio.h> +#include <math.h> + +extern lmap_struct lmap; + +int alt_min; +int alt_max; +int alt_step; + +int global_mountainity = 4000; // nearly useless to have a random one (only impacts do_rand_ecology through ALT(x,y)) + +const int mask_size = 7; // useless to be larger than 3*sigma && Must be < SHIFT +float norm, gauss_mask[2 * mask_size + 1][2 * mask_size + 1]; + +void build_gaussian_mask() +{ + const float sigma = 2.5; + const float ods2 = 1. / (2. * sigma * sigma); + + norm = 0; + for (int i = 0; i < 2 * mask_size + 1; i++) { + for (int j = 0; j < 2 * mask_size + 1; j++) { + float r2 = (i - mask_size) * (i - mask_size) + (j - mask_size) * (j - mask_size); + gauss_mask[i][j] = exp(-r2 * ods2); + norm += gauss_mask[i][j]; + } + } + norm = 1. / norm; +} + +void setup_ground(void) +{ + /* Principle of land generation : + * + * we start with large blocks of land SZ x SZ, and take random height for each + * at each iteration we divide the block size by 2, and Altitude += rand() * mountainity + * + * then we smooth the land, in order to have several local maxima and minima, but not hundreds + * (else we go crazy with river path) + */ + + const int NLOOP = 5; // we stop before reaching 1x1 blocks (which would be for NLOOP=7) + // because we smooth with a gaussian mask, so details would be erased + + const int SZ = 128; // must be >= 2^NLOOP + const int SHIFT = (SZ - WORLD_SIDE_LEN) / 2; // center the visible map in the big one + + /* good values: + * sigma = 3.5 // sigma =2.5 => lots of local minima = small lakes ; + */ + + float tmp[SZ][SZ]; + float t2[SZ][SZ]; + float h; + int i, j, k, l, m, n, size; + + for (i = 0; i < SZ; i++) { + for (j = 0; j < SZ; j++) { + t2[i][j] = 0; + tmp[i][j] = 0; + } + } + + /* fractal iteration for height */ + n = 1; + for (k = 1; k < NLOOP; k++) { + n *= 2; + size = SZ / n; + // n x n block of size + for (l = 0; l < n; l++) { + for (m = 0; m < n; m++) { + // one block + h = rand() % global_mountainity; + for (i = 0; i < size; i++) + for (j = 0; j < size; j++) + t2[l * size + i][m * size + j] += h; + } + } + } + + // put east side at altitude 0 + /* + for (i = WORLD_SIDE_LEN; i < SZ; i++) + for (j = 0; j < SZ; j++) + t2[i][j]=0.; + */ + + //smooth with gaussian mask + for (i = mask_size; i < SZ - mask_size; i++) + for (j = mask_size; j < SZ - mask_size; j++) { + tmp[i][j] = 0; + for (k = -mask_size; k <= mask_size; k++) + for (l = -mask_size; l <= mask_size; l++) + tmp[i][j] += t2[i + k][j + l] \ + * gauss_mask[mask_size + k][mask_size + l]; + } + + float a_max = 0; + float a_min = 1.e9; + // pick our map in the fractal one and normalize it + for (i = 0; i < WORLD_SIDE_LEN; i++) + for (j = 0; j < WORLD_SIDE_LEN; j++) { + ALT(i, j) = (int)(tmp[SHIFT + i][SHIFT + j] * norm); + if (ALT(i, j) > a_max) + a_max = ALT(i, j); + if (ALT(i, j) > 0 && ALT(i, j) < a_min) + a_min = ALT(i, j); + } + // take visible value for maximum color dynamic + a_min -= 1.; + a_max += 1.; + alt_min = (int)a_min; + alt_max = (int)a_max; + alt_step = (alt_max - alt_min) / 10; + + for (i = 0; i < WORLD_SIDE_LEN; i++) + for (j = 0; j < WORLD_SIDE_LEN; j++) + MP_COLOR(i, j) = (unsigned long)((ALT(i, j) - a_min) / (a_max - a_min) * 16777216.); + + //fprintf(stderr, " alt min = %i; max = %i\n", alt_min, alt_max); + +} diff -Nru lincity-ng-2.0/src/TinyLandGen/Jamfile lincity-ng-2.9~git20150314/src/TinyLandGen/Jamfile --- lincity-ng-2.0/src/TinyLandGen/Jamfile 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/Jamfile 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,10 @@ +C++ = g++ ; +CXXFLAGS = -g3 -O3 -march=native ; +LINK = $(C++) ; +LIBS += -g3 ; +LINKLIBS on landgen = -lSDL -lz ; +Library liblandgen : ground_sea.cpp lakes_rivers.cpp ecology.cpp save.cpp ; + +LinkLibraries landgen : liblandgen ; +Main landgen : main.cpp ; + diff -Nru lincity-ng-2.0/src/TinyLandGen/lakes_rivers.cpp lincity-ng-2.9~git20150314/src/TinyLandGen/lakes_rivers.cpp --- lincity-ng-2.0/src/TinyLandGen/lakes_rivers.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/lakes_rivers.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,271 @@ +/** TinyEarth LandGenerator + * + * @file lakes_rivers.cpp + * @author alain.baeckeroot@laposte.net + * @copyright 2010 Alain BAECKEROOT + * @license GPL v3 or later + */ + +#include "lctypes.h" +#include <stdlib.h> +#include <stdio.h> +#include <math.h> + +extern int alt_min, alt_max, alt_step; +extern lmap_struct lmap; + +struct Shoreline { + int x; + int y; + int altitude; + struct Shoreline *next; +}; + +void connect_rivers(void) +{ +} + +static int in_map(int x, int y) +{ + return ((x >= 0) && (x < WORLD_SIDE_LEN) && (y >= 0) && (y < WORLD_SIDE_LEN)); +} + +static int is_border(int x, int y) +{ + if ((x == 0) || (x == (WORLD_SIDE_LEN - 1)) || (y == 0) || (y == (WORLD_SIDE_LEN - 1))) + return 1; + else + return 0; +} + +static void set_river_tile(int i, int j) +{ + MP_TYPE(i, j) = WATER; + MP_FLAG(i, j) |= FLAG_IS_RIVER; + MP_COLOR(i, j) = 128; //dark blue +} + +static void sort_by_altitude(int n, int *tabx, int *taby) +{ + // sort ascending + int tmp_x, tmp_y; + bool sorted = false; + + // bubble sort. n is near 10 so ... + for (int i = 0; i < n && !sorted; i++) { + sorted = true; + for (int j = 1; j < n - i; j++) + if (ALT(tabx[j], taby[j]) < ALT(tabx[j - 1], taby[j - 1])) { + tmp_x = tabx[j - 1]; + tmp_y = taby[j - 1]; + tabx[j - 1] = tabx[j]; + taby[j - 1] = taby[j]; + tabx[j] = tmp_x; + taby[j] = tmp_y; + sorted = false; + } + } +} + +static void free_shore(Shoreline * shore) +{ + Shoreline *tmp; + while (shore->next != NULL) { + tmp = shore; + shore = shore->next; + free(tmp); + } + free(shore); +} + +static Shoreline *init_shore(void) +{ + Shoreline *shore; + + shore = (Shoreline *) malloc(sizeof(struct Shoreline)); + shore->next = (Shoreline *) malloc(sizeof(struct Shoreline)); + + shore->x = -1; + shore->y = -1; + shore->altitude = -1; + shore->next = NULL; + + return shore; +} + +static void add_shore_point(Shoreline * current, int x, int y, int altitude) +{ + Shoreline *newp; + newp = (Shoreline *) malloc(sizeof(struct Shoreline)); + newp->next = (Shoreline *) malloc(sizeof(struct Shoreline)); + newp->x = x; + newp->y = y; + newp->altitude = altitude; + newp->next = current->next; + current->next = newp; +} + +static void try_shore_point(int x, int y, Shoreline * shore) +{ + Shoreline *current; + int a; + current = shore; + a = ALT(x, y); + + while (current->next != NULL) { + if (a < current->next->altitude) { + // insert in beginning of the list + add_shore_point(current, x, y, a); + return; + } else if (a == current->next->altitude) { + while ((current->next != NULL) && (current->next->altitude == a)) { + if ((current->x == x) && (current->y == y)) { + // do not insert the same shore point several times at different places + return; + }; + current = current->next; + }; + //insert the shore point in the list + add_shore_point(current, x, y, a); + return; + }; + current = current->next; + }; + // we reached end of list + // altitude of the point is strict maximum of the list + if ((current->x != x) && (current->y != y)) + add_shore_point(current, x, y, a); +} + +static int setup_one_river(int xx, int yy, int lake_id, Shoreline * shore) +{ + int alt_max, x, y, alt, x0, y0; + // start a river from point (xx, yy) + set_river_tile(xx, yy); + alt_max = ALT(xx, yy); + + x0 = xx; + y0 = yy; + /* follow most important slope and go downward */ + while (((xx != x) || (yy != y)) && (xx != 0) && (xx != (WORLD_SIDE_LEN - 1)) && (yy != 0) + && (yy != WORLD_SIDE_LEN - 1)) { + int m = 0; + x = xx; + y = yy; + alt = ALT(x, y); + for (int n = 0; n < 8; n++) { + if (in_map(x + di[n], y + dj[n])) { + if (ALT(x + di[n], y + dj[n]) < alt) { + xx = x + di[n]; + yy = y + dj[n]; + alt = ALT(xx, yy); + m = n; + } + // find neighbours and update shore line if needed + // may mark as shoreline a point which will be set as river later. We don't care + if (!IS_WATER(x + di[n], y + dj[n])) + try_shore_point(x + di[n], y + dj[n], shore); + } + } + + set_river_tile(xx, yy); + if (m > 3) { + // we did diagonal move, so we need to connect river + if (ALT(x + di[m], y) > ALT(x, y + dj[m])) + set_river_tile(x, y + dj[m]); + else + set_river_tile(x + di[m], y); + } + }; + // We are in a local minimum or at the borders of the map (strictly the lowest points) + +} + +static void overfill_lake(int x, int y, Shoreline * shore, int lake_id) +{ + // Starting point is a local minimum + // Lake growth is done iteratively by flooding the lowest shore point and rising water level + // shore point = neighbour without water + // (at this point we have no water in the map, except other lakes and rivers) + // + // We have a list of shore points sorted by altitude + + int i, level; + + if (is_border(x, y)) + return; + + set_river_tile(x, y); + level = ALT(x, y); + + // find neighbours + for (i = 0; i < 8; i++) { + if (in_map(x + di[i], y + dj[i]) && !IS_WATER(x + di[i], y + dj[i])) + try_shore_point(x + di[i], y + dj[i], shore); + } + + if (shore->next != NULL) { + shore = shore->next; + x = shore->x; + y = shore->y; + + if ((ALT(x, y) < level)) { + set_river_tile(x, y); + // create river and continue to build shoreline + // we will continue to overfill (from a lower point) until we reach border of the map + //fprintf(stdout, "We found a pass x %i, y %i, alt %i \n", x, y, ALT(x,y)); + setup_one_river(x, y, lake_id, shore); + } + overfill_lake(x, y, shore, lake_id); + } else { + // Q: ? Should this happen ? + // A: yes if we are in a lake that was previously filled by a higher one which overfilled here + // else ? it should not happen ? + //fprintf(stderr,"the shoreline list is empty, x = %i, y = %i\n", x, y); + } +} + +void setup_lake_river(void) +{ + // brute search of local minimum + + int lakx[WORLD_SIDE_LEN * WORLD_SIDE_LEN], laky[WORLD_SIDE_LEN * WORLD_SIDE_LEN]; + Shoreline *shore; + int i, j, l, m, alt; + + // Put the gray border (not visible) at alt_min - 1, for easier rivers handling. + for (i = 0; i < WORLD_SIDE_LEN; i++) { + ALT(i, 0) = alt_min - 1; + ALT(i, WORLD_SIDE_LEN - 1) = alt_min - 1; + ALT(0, i) = alt_min - 1; + ALT(WORLD_SIDE_LEN - 1, i) = alt_min - 1; + } + + l = 0; + for (i = 1; i < WORLD_SIDE_LEN - 1; i++) { + for (j = 1; j < WORLD_SIDE_LEN - 1; j++) { + alt = ALT(i, j); + m = -1; + for (int n = 0; n < 8; n++) { + if (ALT(i + di[n], j + dj[n]) < alt) { + m = n; + } + } + if (m == -1) { + lakx[l] = i; + laky[l] = j; + l++; + } + } + } + + sort_by_altitude(l, lakx, laky); + for (i = 0; i < l; i++) { + // start by the lowest lake + //fprintf(stdout, "LAKE %i : %i, %i, alt %f\n", i, lakx[i], laky[i], ALT(lakx[i], laky[i])); + shore = init_shore(); + set_river_tile(lakx[i], laky[i]); + overfill_lake(lakx[i], laky[i], shore, WORLD_SIDE_LEN * lakx[i] + laky[i]); + free_shore(shore); + } +} diff -Nru lincity-ng-2.0/src/TinyLandGen/lctypes.h lincity-ng-2.9~git20150314/src/TinyLandGen/lctypes.h --- lincity-ng-2.0/src/TinyLandGen/lctypes.h 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/lctypes.h 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,73 @@ +/** + * @file lctypes.h + */ + +#ifndef __lctypes_h__ +#define __lctypes_h__ + +// from http://www.ibm.com/developerworks/linux/library/l-gcc-hacks/index.html +#define min(x, y) ({ \ + typeof(x) _min1 = (x); \ + typeof(y) _min2 = (y); \ + (void) (&_min1 == &_min2); \ + _min1 < _min2 ? _min1 : _min2; }) + + +/* Vector for visiting neigbours = ( di(k) , dj(k) ) ; ordered so that diagonal moves are the last 4 */ +static const int di[8] = { -1, 0, 1, 0, 1, 1, -1, -1 }; +static const int dj[8] = { 0, -1, 0, 1, 1, -1, 1, -1 }; + +#define WORLD_SIDE_LEN 100 +#define SIZE 8 +#define SCREEN_SIZE (SIZE * WORLD_SIDE_LEN) + +/* + * needed to save in LinCity-NG format + */ +//gui_interface/pbar_interface.h: +#define PBAR_DATA_SIZE 12 +#define NUM_PBARS 9 + +//gui_interface/shared_globals.h: +#define NUMOF_MODULES 32 + +// src/lincity/lctypes.h CST_stuff +#define GREEN 0 +#define WATER 221 +#define DESERT 350 +#define TREE 351 +#define TREE2 352 +#define TREE3 353 + +// src/lincity/loadsave.h +#define WATERWELL_V2 1322 + +// src/lincity/lintypes.h +#define MAX_NUMOF_SUBSTATIONS 512 +#define MAX_NUMOF_MARKETS 512 + +struct lmap_struct { + float altitude[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; + unsigned long color[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; + int type[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; + int flag[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; + int dist2w[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; // distance to water; manhattan (L1) is fast to compute iteratively + int ecotable[WORLD_SIDE_LEN][WORLD_SIDE_LEN]; // +}; + +#define ALT(x,y) lmap.altitude[x][y] +#define MP_TYPE(x,y) lmap.type[x][y] +#define MP_FLAG(x,y) lmap.flag[x][y] +#define MP_COLOR(x,y) lmap.color[x][y] + +//src/lincity/power.h: +#define IS_WATER(x,y) (MP_TYPE(x,y) == WATER) + +//src/lincity/init_game.cpp: +#define IS_RIVER(x,y) (MP_FLAG(x,y) & FLAG_IS_RIVER) + +// src/lincity/lin-city.h +#define FLAG_IS_RIVER (0x800000) +#define FLAG_HAS_UNDERGROUND_WATER (0x20000000) + +#endif diff -Nru lincity-ng-2.0/src/TinyLandGen/main.cpp lincity-ng-2.9~git20150314/src/TinyLandGen/main.cpp --- lincity-ng-2.0/src/TinyLandGen/main.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/main.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,181 @@ +/** Tiny Land Generator + * + * @file main.cpp + * @author alain.baeckeroot@laposte.net + * @copyright 2010 Alain BAECKEROOT + * @license GPL v3 or later + */ + +#if defined(_MSC_VER) +#include "SDL.h" +#else +#include "SDL/SDL.h" +#endif + +#include <time.h> +#include <math.h> + +#include "lctypes.h" + +SDL_Surface *screen; + +extern void build_gaussian_mask(); +extern void setup_ground(void); +extern void setup_lake_river(void); +extern void setup_land(void); + +extern void save_city_2(char *cname); +extern int alt_min, alt_max, alt_step; + +lmap_struct lmap; + +int key = 0; +unsigned long i = 0; +int redraw = true; + +void erase_map() +{ + + for (int i = 0; i < WORLD_SIDE_LEN; i++) + for (int j = 0; j < WORLD_SIDE_LEN; j++) { + MP_FLAG(i, j) = 0; + MP_TYPE(i, j) = 0; + } +} + +void render() +{ + SDL_Rect rect; + + // Lock surface if needed + if (SDL_MUSTLOCK(screen)) + if (SDL_LockSurface(screen) < 0) + return; + + // Ask SDL for the time in milliseconds + int tick = SDL_GetTicks(); + + // Draw to screen + //SDL_FillRect(screen, NULL, 65536 * i++ ); + for (int i = 0; i < WORLD_SIDE_LEN; i++) { + for (int j = 0; j < WORLD_SIDE_LEN; j++) { + rect.x = (int)(i * SIZE); + rect.y = j * SIZE + 1; + rect.w = SIZE; + rect.h = SIZE; + SDL_FillRect(screen, &rect, MP_COLOR(i, j)); + //SDL_FillRect(screen, &rect, lmap.dist2w[i][j] * 260000); + } + } + + // Unlock if needed + if (SDL_MUSTLOCK(screen)) + SDL_UnlockSurface(screen); + + // Tell SDL to update the whole screen + SDL_UpdateRect(screen, 0, 0, SCREEN_SIZE, SCREEN_SIZE); +} + +int main(void) +{ + char *fname; + fname = (char *) "random_land.scn"; + +#ifdef DEBUG + // Fix random seed for easier debug + srand(1234); +#else + srand(time(0)); +#endif + + // Initialize SDL's subsystems - in this case, only video. + if (SDL_Init(SDL_INIT_VIDEO) < 0) { + fprintf(stderr, "Unable to init SDL: %s\n", SDL_GetError()); + exit(1); + } + // Register SDL_Quit to be called at exit; makes sure things are + // cleaned up when we quit. + atexit(SDL_Quit); + + // Attempt to create a 600x600 window with 32 bit per pixels. + screen = SDL_SetVideoMode(SCREEN_SIZE, SCREEN_SIZE, 24, SDL_SWSURFACE); + + // If we fail, return error. + if (screen == NULL) { + fprintf(stderr, "Unable to set %ix%i video: %s\n", SCREEN_SIZE, SCREEN_SIZE, SDL_GetError()); + exit(1); + } + // gaussian mask of fixed size used for ground smoothing + build_gaussian_mask(); + + // Main loop: loop forever. + while (1) { + // Poll for events, and handle the ones we care about. + SDL_Event event; + while (SDL_PollEvent(&event)) { + switch (event.type) { + case SDL_KEYDOWN: + key = event.key.keysym.sym; + switch (key) { + case SDLK_r: + // 1.0 : generate a new Random field + redraw = true; + break; + + // 1.1 : put sea on this side: North, East, South, West + case SDLK_n: + break; + case SDLK_e: + break; + case SDLK_s: + break; + case SDLK_w: + break; + + case SDLK_UP: + // 1.2 : adjust max altitude + break; + case SDLK_DOWN: + break; + + case SDLK_l: + // 2.0 : lakes and rivers + break; + + case SDLK_RIGHT: + // 3.0 : climate (dryness) + break; + case SDLK_LEFT: + break; + + case SDLK_t: + // 3.1 : trees + break; + + case SDLK_i: + // 4 : isometric view (toggle iso/top) + break; + case SDLK_f: + // 5 : file (save) + save_city_2(fname); + redraw = false; + break; + } + if (redraw) { + erase_map(); + setup_ground(); + setup_lake_river(); + setup_land(); + } + break; + + case SDL_QUIT: + return (0); + } + } + // Render stuff + render(); + SDL_Delay(10); + } + return 0; +} diff -Nru lincity-ng-2.0/src/TinyLandGen/README lincity-ng-2.9~git20150314/src/TinyLandGen/README --- lincity-ng-2.0/src/TinyLandGen/README 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/README 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,13 @@ +Minimalistic land generation for lincity-NG 2.X + + +Work in progress. + +press anykey to generate a new random map + lakes + vegetation + +press "f" to save to file + * a file named random_land.scn is created in current directory + * the keys are no more taken into account until "r" key is hit + +close the window with mouse + diff -Nru lincity-ng-2.0/src/TinyLandGen/save.cpp lincity-ng-2.9~git20150314/src/TinyLandGen/save.cpp --- lincity-ng-2.0/src/TinyLandGen/save.cpp 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/TinyLandGen/save.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,165 @@ + +#include <stdio.h> +#include <zlib.h> + +#include "lctypes.h" + +extern lmap_struct lmap; +extern int global_mountainity, global_aridity; + +void save_city_2(char *cname) +{ + int x, y, p, ldsv_version; + int dumbint = 0; + + int monthgraph_size = 190; + + gzFile ofile = gzopen(cname, "wb"); + if (ofile == NULL) { + fprintf(stderr,"error Saving file <%s> -\n ", cname); + } + /* Now we have upgraded game */ + ldsv_version = WATERWELL_V2; + gzprintf(ofile, "%d\n", ldsv_version); + + for (x = 0; x < WORLD_SIDE_LEN; x++) + for (y = 0; y < WORLD_SIDE_LEN; y++) { + /* TY po fl cr or i1 i2 i3 i4 i5 i6 i7 PL al ec ws gp wa wp ww wn g1 g2 g3 g4 DA TK AN d4 d5 d6 d7 d8 d9 */ + gzprintf(ofile, "%u %d %d %u %u %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n" + , MP_TYPE(x, y) + , 0 //housed population + , MP_FLAG(x, y) + , 0 + , 0 + , 0 + , 0 + , 0 + , 0 + , 0 + , 0 + , 0 + , 0 + , (long int) lmap.altitude[x][y] + , lmap.ecotable[x][y] + , 0 + , 0 + , (long int) lmap.altitude[x][y] + , 0 + , 0 + , 0 // ? TODO map[x][y].water_next ? + // do the water of this tile go to next (one) or to (several) lower neighbours ? + , 0 // int1 TODO distance to river (for vegetation) + , 0 + , 0 + , 0 + , 0 + , 0 + , 0 + , dumbint // d4 could be image index for smooth animation, cf windmill anim_tile + , dumbint // d5 percentage of activity to choose family of pic + , dumbint // d6 + , dumbint // d7 + , dumbint // d8 + , dumbint // d9 + ); + } + + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + + gzprintf(ofile, "%d\n", 0); + for (x = 0; x < MAX_NUMOF_SUBSTATIONS; x++) { + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + } + gzprintf(ofile, "%d\n", 0); + for (x = 0; x < MAX_NUMOF_MARKETS; x++) { + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + } + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 200); // people_pool : needed to start a game + gzprintf(ofile, "%o\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); /* waste_goods is obsolete */ + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); /* Removed diff_old_population, version 1.12 */ + + /* Changed, version 1.12 */ + gzprintf(ofile, "%d\n", monthgraph_size); + for (x = 0; x < monthgraph_size; x++) { + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + } + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + + for (x = 0; x < PBAR_DATA_SIZE; x++) + for (p = 0; p < NUM_PBARS; p++) + gzprintf(ofile, "%d\n", 0); + + for (p = 0; p < NUM_PBARS; p++) { + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + } + + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%f\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%f\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%f\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + gzprintf(ofile, "%d\n", 0); + + for (x = 0; x < NUMOF_MODULES; x++) + gzprintf(ofile, "%d\n", 0); + + gzprintf(ofile, "random land generator\n"); /* 1 */ + + gzprintf(ofile, "%d\n", 0); /* 2 */ + + gzprintf(ofile, "sust %d %d %d %d %d %d %d %d %d %d\n", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0); /* 3 */ + + gzprintf(ofile, "arid %d %d\n", global_aridity, global_mountainity); /* 4 */ + + gzprintf(ofile, "dummy\n"); /* 5 */ + + gzprintf(ofile, "dummy\n"); /* 6 */ + + gzprintf(ofile, "dummy\n"); /* 7 */ + + gzprintf(ofile, "dummy\n"); /* 8 */ + + gzprintf(ofile, "dummy\n"); /* 9 */ + + gzprintf(ofile, "dummy\n"); /* 10 */ + + gzclose(ofile); +} + + diff -Nru lincity-ng-2.0/src/tools/Lindent.sh lincity-ng-2.9~git20150314/src/tools/Lindent.sh --- lincity-ng-2.0/src/tools/Lindent.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tools/Lindent.sh 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,11 @@ +#!/bin/sh +# The original tiny script is use to put linux code in corformance with +# the Linux Coding Style. You should read it :-) +#indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs -cp1 "$@" + +# However for Lincity-ng, due to +# - C++ code which tends to have longs lines +# - NG is graphic so run on rather good hardware => we can afford longer line (120) than linux kernel (80) +# - indent 8 is too much for existing code => indent is 4 +# - tabs causes trouble to some we use spaces intead of tabs. +indent -npro -kr -i4 --no-tabs -sob -l120 -ss -ncs -cp1 "$@" diff -Nru lincity-ng-2.0/src/tools/update_po.sh lincity-ng-2.9~git20150314/src/tools/update_po.sh --- lincity-ng-2.0/src/tools/update_po.sh 1970-01-01 00:00:00.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tools/update_po.sh 2015-05-05 16:32:51.000000000 +0000 @@ -0,0 +1,8 @@ +#!/bin/bash +mkdir -p orig +cp -af *.po *.pot orig +for f in `/bin/ls *.po` +do + msgmerge --no-fuzzy-matching --sort-by-file orig/$f messages.pot>$f + +done diff -Nru lincity-ng-2.0/src/tools/xmlgettext/main.cpp lincity-ng-2.9~git20150314/src/tools/xmlgettext/main.cpp --- lincity-ng-2.0/src/tools/xmlgettext/main.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tools/xmlgettext/main.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -156,3 +156,6 @@ } } } + +/** @file tools/xmlgettext/main.cpp */ + diff -Nru lincity-ng-2.0/src/tools/xmlgettext/XmlReader.cpp lincity-ng-2.9~git20150314/src/tools/xmlgettext/XmlReader.cpp --- lincity-ng-2.0/src/tools/xmlgettext/XmlReader.cpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tools/xmlgettext/XmlReader.cpp 2015-05-05 16:32:51.000000000 +0000 @@ -15,7 +15,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ -#include "XmlReader.hpp" +#include "./XmlReader.hpp" XmlReader::XmlReader(const std::string& filename) { @@ -33,3 +33,6 @@ { xmlFreeTextReader(reader); } + +/** @file tools/xmlgettext/XmlReader.cpp */ + diff -Nru lincity-ng-2.0/src/tools/xmlgettext/XmlReader.hpp lincity-ng-2.9~git20150314/src/tools/xmlgettext/XmlReader.hpp --- lincity-ng-2.0/src/tools/xmlgettext/XmlReader.hpp 2009-01-25 20:20:44.000000000 +0000 +++ lincity-ng-2.9~git20150314/src/tools/xmlgettext/XmlReader.hpp 2015-05-05 16:32:51.000000000 +0000 @@ -151,3 +151,6 @@ #endif + +/** @file tools/xmlgettext/XmlReader.hpp */ +